一开始没发现是什么问题,后来进过多方排查,总之就是判断出了是子元素点击的时候出发了父元素的滑入滑出事件。
我就纳闷了,为什么点击事件会影响划过滑出事件。更诡异的是只有chrome有问题,火狐啥的都好使……
百度了一下,试了很多方法,就是用阻止冒泡解决的。简化一下模型大概就是这么解决的:
html:
<div id="father">
<span id="son"></span>
</div>
js:
$("#father").on("mouseenter",function(){}).on("mouseleave",function(){});
$("#son").on("click",function(){});
$("#son").on("mouseenter",function(e){
e.stopPropagation();
}).on("mouseleave",function(e){
e.stopPropagation();
});