我這樣做是這樣的:所有<img>標記中除去onmouseover事件
$.each($('img'), function() {
this.unbind('onmouseover');
});
這是行不通的。爲什麼?
我這樣做是這樣的:所有<img>標記中除去onmouseover事件
$.each($('img'), function() {
this.unbind('onmouseover');
});
這是行不通的。爲什麼?
嘗試像下面,
$('img').unbind('mouseover');
無需循環..也應該mouseover
不onmouseover
假設:您正在使用.bind
到mouseover
處理
綁定我沒有使用綁定。一些圖像具有onmouseover屬性,我想刪除它們。我嘗試$( 'IMG')。removeAttr( '的onmouseover'),但它仍然無法正常工作
代碼: - 你有什麼(不推薦)各地>
$('img').off('mouseover');
的作品,(Reference)
$('img').on('mouseover', function() {
//Your code
});
和更高版本可以使用.off
拆散他們
$.each($('img'), function() {
$(this).removeAttr('onmouseover');
});
此外,您還可以「菊花鏈」刪除處理方法,jQuery的,因爲每個函數返回相同的集合。每個附加方法都有它自己的刪除方法對,所以使用相應的方法。
最後,爲了去除對DOM元素的處理程序(內聯的事件處理程序)中,將它與null或功能return false
;
這裏的概念代碼:
$('img')
.unbind('mouseover') //remove events attached with bind
.off('mouseover') //remove events attached with on
.die('mouseover'); //remove events attached with live
.each(function(i,el){ //and for each element
el.onmouseover = null //replace the onmouseover event
});
什麼版本的jQuery您使用的是? – Patricia
在你使用的構造中'this''是dom-element而不是jquery對象,因此沒有'unbind'方法。 – Yoshi
jquery版本1.7 – karaxuna