如何在悬停时停止 jQuery 函数?
我有一个在 setInterval() 上运行的 jQuery 函数; 我想要做的是,当我将鼠标悬停在正在显示的 div 上时停止间隔,一旦将鼠标悬停在 div 上,就再次开始间隔(也称为继续循环浏览 div)。
关于如何以最简单的形式做到这一点的任何想法?
谢谢! 阿米特
I have a jQuery function that is running on setInterval();
What I want to do is stop the interval when I hover over the div being displayed, and once I hover off the div, start the interval again (aka continue cycling through the divs).
any idea on how to do this in the simplest form possible?
Thanks!
Amit
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
当您调用
clearInterval()
时,还要确保interval
没有超出范围make sure also that
interval
is not out of scope when you callclearInterval()
有Reigel 的方式,有效一种享受,或者当然只是设置一个您的函数检查的标志,仅在未设置该标志时才进行处理。如果已经有一些可以使用的悬停指示(例如,与实际的专用标志相对),如果您想在几个时间间隔内执行此操作,等等
并将其连接起来,则特别方便,基本上:
请注意,这些不'不要声明自己的自己
悬停
,就像下面阿米特的评论所做的那样;他们使用在封闭范围内声明的hovering
。更彻底的例子:
我在这里使用了一个计数器而不是一个简单的标志,但那是我偏执。
HTML:
JavaScript (ticktock.js):
There's Reigel's way, which works a treat, or of course just set a flag that your function checks, only doing its processing if the flag isn't set. Particularly convenient if there's already some indication of hovering that you can use (e.g., as opposed to an actual dedicated flag), if you want to do this for several intervals, etc.
and to hook that up, basically:
Note that those don't declare their own
hovering
, as Amit's comment below does; they use thehovering
declared in the enclosing scope.More thorough example:
I used a counter here instead of a simple flag, but that's me being paranoid.
HTML:
JavaScript (ticktock.js):
使用clearInterval函数
use clearInterval function