javascript – 如何确保触摸事件在Firefox桌面浏览器中启用?

前端之家收集整理的这篇文章主要介绍了javascript – 如何确保触摸事件在Firefox桌面浏览器中启用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在具有触摸功能Windows 7桌面上使用了一个简单的测试.
为了简单起见,它是这样的:
temp_div.addEventListener('touchstart',function(e){ /*confirm */ },false)
temp_div.addEventListener('pointerdown',false)
temp_div.addEventListener('mousedown',false)

在chrome中,“touchstart”被确认.
在IE中,“指针”被确认.
在Firefox中,“mousedown”得到证实.

在故障排除之后,我最终不得不在Firefox和
将“dom.w3c_touch_events.enabled”值从0更改为1.这导致在Firefox中确认“touchstart”.

我的问题是这些:

触摸式机器上是否应该启用此功能
IE和Chrome配置正确,Firefox没有配置. (这是Firefox 31的全新下载).

有没有在这样的情况下远程启用触摸事件,以便Firefox的行为与其他浏览器类似?

谢谢

解决方法

为了在桌面版Firefox中启用触摸事件,在浏览器的地址栏中输入“about:config”,点击“我会小心,我保证!”按钮并向下滚动,直到找到“dom.w3c_touch_events.enabled”….当您单击此项目时,将出现一个对话框,允许您更改设置的值.

disable =(0)enable =(1)auto-detect =(2)

这应该默认设置为“自动检测”,但是目前,由于某些bug,桌面版本的Firefox被设置为“禁用”.

有关此设置的信息可以在这里找到:
https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Touch_events

摘抄:

可以使用dom.w3c_touch_events.enabled三态偏好来禁用(0),启用(1)和自动检测(2)支持标准触摸事件;默认情况下,它们是自动检测(2).更改首选项后,必须重新启动浏览器才能使更改生效.

注意:截至Gecko 24.0,Gecko 18.0引入的触摸事件支持已在桌面版Firefox上停用,因为Google和Twitter等热门网站无法正常工作.一旦修复错误,API将再次启用.包含Firefox和Firefox操作系统的移动版本不受此更改的影响.此外,在Windows 8的Metro风格版本的Firefox上启用了API.

猜你在找的JavaScript相关文章