移动中使用mouseenter和mouseleave事件的bug

时间:2013-11-23 02:53:06

标签: javascript jquery ipad

我的复选框需要点击两次以便在移动设备中进行检查,因为它位于我应用mouseenter和mouseleave事件的li中。什么黑客来处理这个问题?

1 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,我遇到的修复程序(不记得在哪里)是:

var el = document.createElement('div'),
mouseDown= ('ontouchstart' in el)?'touchstart':'mousedown',
mouseUp= ('ontouchend' in el)?'touchend':'mouseup',
mouseMove= ('ontouchmove' in el)?'touchmove':'mousemove';

然后将这些变量用作预期事件

$(someSelector).on(mouseDown, mouseDown_TouchStart_Handler);
$(someSelector).on(mouseUp, mouseUp_TouchEnd_Handler);
$(someSelector).on(mouseMove, mouseMove_TouchMove_Handler);

希望这有帮助