Google Chrome 触摸事件未触发
我正在信息亭中使用 Chrome (7.0.536.2 dev) 构建触摸屏信息亭 具有多点触控显示屏的 Windows 7 PC 上的模式。
我可以看到 ontouchstart 事件可用(通过检查 Webkit Web Inspector 中的 window 对象),但它永远不会触发。如果我写 下面的代码,当我触摸屏幕时触发 onclick 事件 但 ontouchstart 事件却没有。
window.onclick = function() { alert("click"); }
window.ontouchstart = function() { alert("touchstart"); }
在 Firefox 4 中,MozTouchDown 事件触发没有任何问题。
JavaScript 还不能使用这些事件吗?
I'm building a touchscreen kiosk using Chrome (7.0.536.2 dev) in kiosk
mode on a Windows 7 PC with multi-touch display.
I can see that the ontouchstart event is available (by inspecting the
window object in Webkit Web Inspector) but it never fires. If I write
the following code, the onclick event fires when I touch the screen
but the ontouchstart event doesn't.
window.onclick = function() { alert("click"); }
window.ontouchstart = function() { alert("touchstart"); }
In Firefox 4 the MozTouchDown event fires without any problems.
Are these events not yet available to JavaScript?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
有一个命令行开关可以启用触摸事件,更改快捷方式添加“chrome.exe --enable-touch”。不幸的是,如果 ('ontouchstart' in window) 返回 true,则事件永远不会被触发。刚刚在 Canary 频道上的 Windows7 触摸平板电脑上对此进行了测试。令人失望...!
There is a command-line switch to enable touch events, change your shortcut adding "chrome.exe --enable-touch". Unfortunately, if ('ontouchstart' in window) returns true then, event is never fired. Just tested this on a Windows7 touch-enabled tablet on canary channel. Disappointing... !
从 chrome 20 开始,您可以从“about://flags”内部实验网页启用触摸事件,
我确实注意到这会破坏 fastClick,如果您正在使用它 - 我是:)
as of chrome 20, you can enable touch events from the "about://flags" internal experiments webpage
I did notice that this breaks fastClick, if you're using that - I was :)
我在开发 iPad Web 应用程序并尝试在 Chrome 中测试它时遇到了这种情况。事实证明,Chrome 可以识别这些事件,但目前不会触发它们。这有点令人沮丧,因为它破坏了 JavaScript 中的支持检测。
I experienced this when developing an iPad webapp and tried to test it in Chrome. It turned out, that Chrome recognizes those events, but does not fire them at the moment. This is a bit frustrating, since it breaks support detection in JavaScript.