我正在创建一个jQuery移动应用程序,应该可以在移动设备和PC上工作。我使用了jQuery插件手指(http://ngryman.sh/jquery.finger/)来检测手指的事件:jQuery手机点击事件触发vclick
$('body').on('tap', 'image', function(e) {
console.log(e);
});
的问题是,水龙头事件被触发两次。
[1] v.Event {type: "tap", x: 600, y: 374, orientation: null, end: false…}
[2] v.Event {originalEvent: v.Event, type: "tap", timeStamp: 1440756290573, jQuery183031088717421516776: true, toElement: image#7…}
当我崩溃的开发人员工具的第二个事件信息,类型显示为“V单击”。
...
shiftKey: false
srcElement: image#7
target: image#7
timeStamp: 14407565
toElement: image#7
type: "vclick"
view: Window
which: 1
__proto__: Object
...
我该如何防止这种情况发生,因此事件只运行jQuery手指点击事件而不是vclick?
你试过'e.preventDefault()'和'Ë .stopPropagation()'或简单忽略'vclick'事件? – Regent
我已经尝试过他们两个。我不能忽略它,因为我用它来调用一个只能运行一次的函数。 – Sam
您可以忽略第一个电话或第二个电话。或者,您可以收集第一个电话的一些信息,收集第二个电话的一些信息,并在此之后调用您需要的任何功能。 – Regent