有什麼用或.click
?差( '點擊' 和.off( '點擊')。在( '點擊'
$('#link').off('click').on('click',function(){});
Vs的
$('#link').on('click',function(){});
結合
.off
型動物
有什麼優勢Combining
他們
有什麼用或.click
?差( '點擊' 和.off( '點擊')。在( '點擊'
$('#link').off('click').on('click',function(){});
Vs的
$('#link').on('click',function(){});
結合
.off
型動物
有什麼優勢Combining
他們
這增加了一個新的click
事件處理程序:?
$('#link').on('click', function(){});
這消除附着與.on()
(如果有的話),然後將所有現有click
事件處理程序增加了一個新的click
事件處理程序:
$('#link').off('click').on('click', function(){});
從jQuery文檔,
的。 off()方法刪除使用 .on()附加的事件處理程序。有關更多信息,請參閱關於 該頁的委派和直接綁定事件的討論。調用沒有參數的.off() 會刪除所有連接到元素的處理程序。通過提供事件名稱,名稱空間,選擇器或處理函數名稱的組合,可以在元素上刪除特定事件處理程序 。當給出多個 過濾參數時,所提供的所有參數必須與要移除的事件處理程序匹配 。
在你的問題,
$('#link').off('click').on('click',function(){});
它只是去除附着在事件的任何一個事件處理程序,並創建一個新的。
我們使用$('#link').on('click',function(){});
當我們知道沒有其他點擊功能已經綁定到這個元素,或者即使另一個點擊功能是一個綁定,那麼這並不妨礙我們的點擊功能。我們使用.off從這個元素的所有地方解除(停止)點擊功能,然後使用.on點擊來僅綁定我們的點擊功能。
你的答案簡單易懂。但是''.off''行爲可以通過'event.preventdefault()'來實現。 ? – weBBer
呃,不是。你想在哪裏放置'event.preventdefault()'? –
如果在我當前的'click'中有其他'click'事件處理程序 - 我可以通過'event.preventdefault()'來防止它。什麼是不同的。? – weBBer