2

我已经搜索过,这个问题似乎已经被问过多次,但我似乎无法在我的示例中使用它。

这里有一些代码可以玩:http: //jsfiddle.net/vol7ron/w8QsZ/2/

我正在寻找类似于flowplayer tooltip的东西,其中:

  • 有一个触发器导致悬停时出现菜单
  • 离开触发器菜单消失
  • 如果用户将鼠标悬停在菜单(或工具提示)上,则弹出窗口应保持打开状态

我的猜测是触发器应该使用一些延迟hoverOut调用消失setTimeout(),但是在菜单上mouseenter(),应该清除超时。

我还是 jQuery 的新手,不确定在哪里存储生成的 timeoutID 以及在哪里调用它。

注意:同一菜单将用于多个触发器。


更新:好的,我有一些工作:这里
有人可以帮我清理它并提高效率。更重要的是,我不想对 timeoutID 使用全局变量。也许有更好的方法将它存储在对象中?

4

1 回答 1

0

我最近刚做了这样的事情。我会做的是

var timer = setTimeout(/*blah*/);
$('#my_selector').data('timer') = timer;

我将 timeoutID 放入该元素的数据中,然后每当我以后需要对其进行处理时(clearTimeout),我就可以从那里获取它。

注意我使用了这种方法,它适用于动态数量的元素,这是我认为你想要的。如果您需要更多解释,请告诉我!

于 2010-11-16T22:21:04.507 回答