我有一个包含一些jQuery UI滑块的页面。该页面还包含一些带有mouseenter
/ mouseleave
处理程序的div元素,用于显示工具提示。在div上拖动文本或图像不会像预期的那样触发工具提示。但是,在拖动滑块手柄的同时将鼠标移动到div元素上会触发工具提示。
jsFiddle展示问题:http://jsfiddle.net/JCKYs/4/
在拖动jQuery UI滑块时是否可以阻止所有mouseenter
/ mouseleave
事件?
我想出的一个解决方案是创建一个全局标志,指示是否正在拖动滑块。该标志在页面上所有滑块对象的start
/ stop
处理程序中更新。然后,我可以检查所有mouseenter
处理程序中此标志的状态,以防止显示工具提示。
是否有一个更通用的解决方案,不涉及更新我的所有事件处理程序代码?由于文本/图像拖动已存在此行为,我认为可能有更好的解决方案。
答案 0 :(得分:3)
通过在滑动开始时在鼠标后面添加浮动div可以轻松实现。
演示:http://jsfiddle.net/JCKYs/5/
将第一行的var debug = true;
更改为var debug = false;
以使其透明。