525得票38回答
如何使用JavaScript最佳地检测“触屏”设备?

我编写了一个适用于桌面和移动设备的jQuery插件。我想知道是否有一种JavaScript方法可以检测设备是否具有触摸屏功能。我正在使用jquery-mobile.js来检测触摸屏事件,并且它在iOS、Android等设备上工作正常,但是我还想编写基于用户设备是否具有触摸屏的条件语句。 这种...

295得票16回答
如何给UIView添加触摸事件?

我该如何在UIView上添加触摸事件? 我的尝试:UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, nextY)] autorelease]; [h...

281得票20回答
防止 Android 活动对话框在外部触摸时关闭

我有一个使用Theme.Dialog样式的活动,使其成为另一个活动上方的浮动窗口。然而,当我单击对话框窗口之外的区域(即背景活动)时,对话框会关闭。如何停止这种行为?

280得票9回答
考虑将事件处理程序标记为“被动”的,以使页面更加响应。

我正在使用锤子进行拖动,当加载其他内容时变得卡顿,就像这个警告消息所告诉我的。 由于主线程繁忙,'touchstart'输入事件的处理被延迟了X毫秒。考虑将事件处理程序标记为'passive'以使页面更具响应性。 因此,我尝试在监听器中添加'passive',如下所示:Hammer...

253得票18回答
如何在触屏设备上删除/忽略:hover CSS样式

如果用户通过触摸设备访问我们的网站,我希望忽略所有的 :hover CSS 声明。因为 :hover 在这种情况下是没有意义的,而且如果一个平板电脑在点击/轻敲时触发它,则可能会一直持续到元素失去焦点,甚至可能会干扰用户体验。说实话,我不知道为什么触摸设备需要首先触发 :hover,但这是现实...

229得票11回答
如何在没有使用JQuery的情况下将多个事件绑定到一个监听器?

当处理浏览器事件时,我开始使用Safari的touchEvents来处理移动设备上的事件。我发现addEventListener与条件语句一起使用会导致堆积的问题。该项目不能使用jQuery。 一个标准的事件监听器:/* option 1 */ window.addEventListener...

215得票13回答
Android:如何在触摸移动(ACTION_MOVE)时移动视图

我想做一个简单的控制:一个带有视图的容器。如果我触摸容器并移动手指,我希望视图跟随我的手指移动。 应该使用什么类型的容器(布局)?如何实现这一点? 我不需要使用表面,只需要一个简单的布局即可。

213得票30回答
如何在触摸设备上防止按钮粘滞悬停效果

我创建了一个旋转木马,并添加了上一个和下一个按钮,这些按钮始终可见。这些按钮有悬停状态,它们会变成蓝色。在iPad等触摸设备上,悬停状态是粘性的,因此在点击后按钮会保持蓝色。但我不希望出现这种情况。 我可以为每个按钮添加一个no-hover类,并在ontouchend时更改CSS如下:bu...

179得票18回答
在触摸设备上禁用浏览器的双击“缩放”选项

我希望可以在浏览器上(在触摸设备上)禁用指定元素的双击缩放功能,而不影响所有缩放功能。例如:一个元素需要多次点击才能发生某些事情,在桌面浏览器上正常工作(如预期),但是在触摸设备浏览器上会发生缩放。

178得票23回答
检测浏览器是否没有鼠标且仅支持触摸操作

我正在开发一个Web应用程序(不是有趣文本页面的网站),它具有非常不同的触摸界面(当您单击时,手指会隐藏屏幕)和鼠标界面(严重依赖悬停预览)。如何检测我的用户没有鼠标以向他呈现正确的界面?我计划为拥有鼠标和触摸功能的人留下一个开关(例如某些笔记本电脑)。 浏览器中的触摸事件能力实际上并不意味...