触点端再次触点启动
Touchend fires on touchstart second time around
有人知道为什么touchend事件会在touchstart事件期间触发吗?这只会在第二次出现。
一个快速代码片段:
function touchstart (event) {
$(event.target).one('touchend', function () {
alert('fired');
}
}
这是第一次触发,它工作得很好。第二次触发touchstart的警报
http://jsfiddle.net/8SVFR/编辑:看起来这可能只是iPhone的问题
原来…在触端事件中触发警报会导致各种问题。当你点击'ok'它会触发touchstart所以touchend会在下次你触摸元素时被触发。幸运的是,我使用警报来检查我的代码-所以一旦它被删除,我的代码工作完美!
将"touchend"处理程序的代码放在setTimeout中,设置为0ms。这样的:
$(someElement).on("touchend",
function(){
setTimeout(function(){
/*Your code*/
}, 0);
});
相关文章:
- 如何在所有ng点击事件AngularJS上启动一个方法
- 点击启动弹出事件未显示
- 一次点击,两次'单击'事件已启动
- mootools点击:继电器没有在ipad/iphone上启动
- 点击事件启动,但ajax未发生
- 谷歌地图Api v3:点击信息窗口中的按钮时启动一个操作
- 点击按钮即可启动完整日历视图
- Rails4-启动多个点击事件处理程序不起作用
- 在JavaScript点击事件中创建的聚合物纸按钮未启动
- 点击一次的按钮没有启动
- 一页网站上的启动切换菜单在点击时不会失效
- Jquery点击监听器没有在根路径Rails/Devise上启动
- AngularJS ng点击未启动
- 点击通知后启动Firefox OS应用程序
- 启动日期选择器beforeShowDay只有在第一次点击后才能工作
- 点击事件未启动!(backbone.js)
- ngCordova触点在角度控制器内不可用
- 为ios、android等平台开发游戏是否需要触点启动和触点结束?
- 触点端再次触点启动
- 如何用主干停止触端事件在触端启动上的触发