jquery怎么删除hover事件

jquery中,可以利用unbind()方法来删除hover事件;但不能直接使用“unbind(“hover”)”语句,因为hover是由mouseenter和mouseleave构成的,所以要删除hover效果,只需要移除这两个事件即可,语法“元素对象.unbind(“mouseenter”).unbind(“mouseleave”)”。

jquery怎么删除hover事件

本教程操作环境:windows7系统、jquery3.6.1版本、Dell G3电脑。

今天遇到jquery需要去掉hover的问题,原以为直接unbind(“hover”)就可以搞定,可是搞了半天都不行。

$("button").click(function() {$("p").unbind("hover");});

登录后复制

1.gif

原因其实很简单,hover并不是事件。打开参考手册,hover其实由 mouseenter和mouseleave构成的。这样问题就很明了!

/* 这种方法是错误的 */$(#hover_div).unbind("hover");/* 这种方法也是错误的 */$(#hover_div).unbind("mouseover").unbind("mouseout");/* 这种方法是新增的,在老的版本里是无法使用的 */$(#hover_div).unbind("mouseenter mouseleave");/* 这种方法正确的,新老版本皆可用 */$(#hover_div).unbind("mouseenter").unbind("mouseleave");

登录后复制

上面的代码建议使用第四种,相对安全些。

使用示例:

nbsp;html>$(document).ready(function() {$("p").hover(function() {$("p").css("background-color", "yellow");}, function() {$("p").css("background-color", "pink");});$("button").click(function() {$("p").unbind("mouseenter").unbind("mouseleave");});});

鼠标移动到该段落。

登录后复制

2.gif

说明:unbind()方法

unbind() 方法能够移除所有的或被选的事件处理程序,或者当事件发生时终止指定函数的运行。

该方法也可以通过 event 对象取消绑定的事件处理程序。该方法也用于对自身内部的事件取消绑定(比如当事件已被触发一定次数之后,删除事件处理程序)。

【推荐学习:jQuery视频教程、web前端视频】

以上就是jquery怎么删除hover事件的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2924011.html

(0)
上一篇 2025年3月11日 18:52:56
下一篇 2025年2月18日 06:48:04

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论