使用 JavaScript/jQuery 的鼠标按下计时器
我如何知道用户按住鼠标按钮(网页上的任何位置)的时间有多长?我想在用户按住鼠标按钮至少 2-3 秒时执行一个功能(最好在此过程中取消鼠标按下)。这可能吗?
How can I know how long a user has been holding the mouse button down (anywhere on a webpage)? I want to execute a function when the user held the mouse button for at least 2-3 seconds (preferably cancelling the mouse down in the process). Is this possible?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
在这里:
现场演示: http://jsfiddle.net/simevidas/Pe9sq/2/< /a>
Here you go:
Live demo: http://jsfiddle.net/simevidas/Pe9sq/2/
我会立即使用 jQuery 和
$("body").mouseup(function(){})
$("body").mousedown(function(){})
进行实验/代码>。我想你可以启动一个计时器,它会在 2 到 3 秒内调用函数。如果发生mouseup
事件,那么您可以取消计时器。您可以使用简单的脚本对其进行测试,但您可能必须查看由于单击页面上的链接或按钮而可能发生点击
的情况。但作为起点,我会尝试使用$("body").mousedown
和$("body").mouseup
。如果有机会,我会看看是否可以发送代码示例。Off hand I would experiment with
$("body").mousedown(function(){})
using jQuery and$("body").mouseup(function(){})
. I guess you can start a timer which will call function in 2 to 3 seconds. If themouseup
event occurs, then you can cancel the timer. You could probably test it with a simple script but you might have to look at cases where theclick
might have occurred because a link or button was clicked on the page. But as a starting point I would experiment with the$("body").mousedown
and$("body").mouseup
. If I have chance I'll see if I can send a code sample.试试这个:
Try this:
看看这个。
http://jsfiddle.net/b1Lzo60n/
Mousedown 启动一个计时器,检查 1 秒后鼠标是否仍然按下。
代码:
Check out this one.
http://jsfiddle.net/b1Lzo60n/
Mousedown starts a timer that checks if mouse is still down after 1 second.
Code: