2

我有一个包含一些 jQuery UI 滑块的页面。该页面还包含一些带有mouseenter/mouseleave处理程序的 div 元素,用于显示工具提示。正如预期的那样,在 div 上拖动文本或图像不会触发工具提示。但是,在拖动滑块手柄的同时将鼠标移到 div 元素上会触发工具提示。

jsFiddle 展示了这个问题:http: //jsfiddle.net/JCKYs/4/

拖动 jQuery UI 滑块时是否可以阻止所有mouseenter/事件?mouseleave

我想出的一个解决方案是创建一个全局标志,指示是否正在拖动滑块。该标志在页面上所有滑块对象的start/处理程序中更新。stop然后,我可以在所有处理程序中检查此标志的状态,mouseenter以防止显示工具提示。

是否有更通用的解决方案不涉及更新我的所有事件处理程序代码?由于文本/图像拖动已经存在这种行为,我认为可能有更好的解决方案。

4

1 回答 1

3

这很容易通过在滑动开始时在鼠标后面添加一个浮动 div 来实现。

演示:http: //jsfiddle.net/JCKYs/5/

更改var debug = true;第一行以var debug = false;使其透明。

于 2013-01-22T04:45:21.443 回答