Jquery mobile 在taphold上捕获哪些事件
我监听一个元素上的taphold事件,然后打开一个包含操作选项的弹出窗口。问题是,打开弹出窗口后,会触发新的鼠标/手指事件。因此,我的解决方案是捕获所有后续鼠标/手指事件,直到touchend事件:Jquery mobile 在taphold上捕获哪些事件,jquery-mobile,Jquery Mobile,我监听一个元素上的taphold事件,然后打开一个包含操作选项的弹出窗口。问题是,打开弹出窗口后,会触发新的鼠标/手指事件。因此,我的解决方案是捕获所有后续鼠标/手指事件,直到touchend事件: function tapholdTriggered() { $.mcm.mobile.$d.on('vclick.taphold vmousedown.taphold click.taphold mousedown.taphold tap.taphold taphold.taphold t
function tapholdTriggered() {
$.mcm.mobile.$d.on('vclick.taphold vmousedown.taphold click.taphold mousedown.taphold tap.taphold taphold.taphold touchstart.taphold touchmove.taphold', function (event) {
event.preventDefault();
event.stopImmediatePropagation();
})
.on('touchend.taphold', function (event) {
event.preventDefault();
event.stopImmediatePropagation();
$.mcm.mobile.$d.off('.taphold');
});
}
所以基本上我会监听taphold事件,调用tapholdTriggered(),然后打开弹出窗口
我的问题是,我认为我过度捕捉事件。我不知道各种鼠标/手指事件的触发顺序。因此,如果有人能帮我优化被困事件,我将不胜感激
谢谢。我使用了一个覆盖身体的屏幕,然后在touchend、mouseup和vmouseup上移除。我完成这项工作的方式有点不同。检查这一点我正在尝试做的。这是可行的,但正如我所说的,我可能对被困事件太过火了,因为我不知道顺序: