您好,登錄后才能下訂單哦!
這篇文章主要介紹了jquery如何刪除hover事件的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇jquery如何刪除hover事件文章都會有所收獲,下面我們一起來看看吧。
在jquery中,可以利用unbind()方法來刪除hover事件;但不能直接使用“unbind("hover")”語句,因為hover是由mouseenter和mouseleave構成的,所以要刪除hover效果,只需要移除這兩個事件即可,語法“元素對象.unbind("mouseenter").unbind("mouseleave")”。
遇到jquery需要去掉hover的問題,原以為直接unbind("hover")
就可以搞定,可是搞了半天都不行。
$("button").click(function() {
$("p").unbind("hover");
});
原因其實很簡單,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");
上面的代碼建議使用第四種,相對安全些。
使用示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script src="js/jquery-3.6.1.min.js"></script>
<script>
$(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");
});
});
</script>
</head>
<body>
<p>鼠標移動到該段落。</p>
<button>刪除hover</button>
</body>
</html>
說明:unbind()方法
unbind() 方法能夠移除所有的或被選的事件處理程序,或者當事件發生時終止指定函數的運行。
該方法也可以通過 event 對象取消綁定的事件處理程序。該方法也用于對自身內部的事件取消綁定(比如當事件已被觸發一定次數之后,刪除事件處理程序)。
關于“jquery如何刪除hover事件”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“jquery如何刪除hover事件”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。