我使用twitter-bootstrap开发可以在多个设备上呈现的Web应用程序。
现在我想处理'tap'事件。所以我的问题是:
答案 0 :(得分:5)
点击事件是一个jQuery Mobile事件,并不是具有规范的实际HTML5事件。 HTML5 specifies touch events,supported on Android and iOS,Twitter Bootstrap已经在其某些插件中使用了这些事件。
然而,根据一个常识概念,点击事件可能是什么,人们可以根据一系列触摸事件轻松触发它们。这是一个尝试:
// listen for a touchstart event
$('body').on('touchstart.tap',function (e) {
// listen for a touchend event
$(e.target).one('touchend.tap',function() {
$(e.target).trigger('tap');
});
// cancel it in 150ms
setTimeout(function () {
$(e.target).off('touchend.tap');
},150);
});
如果 touchend 在150ms内跟随 touchstart (当然您可以调整),则会触发点击事件。如果点击事件就是你所追求的,你可以尝试使用它来代替包含jQuery mobile。
答案 1 :(得分:2)
我终于点击了处理触摸及其相应鼠标事件的Touchable-jQuery-Plugin。