下面是編寫事件處理程序的兩種不同的方式:jQuery的事件處理程序的差異
$('element').on("click",function(){
// do stuff
});
VS
$('element').click(function(){
// do stuff
});
什麼是兩者之間的主要區別?什麼情況會比另一種更適合?
下面是編寫事件處理程序的兩種不同的方式:jQuery的事件處理程序的差異
$('element').on("click",function(){
// do stuff
});
VS
$('element').click(function(){
// do stuff
});
什麼是兩者之間的主要區別?什麼情況會比另一種更適合?
According to jQuery's API documentation
的。對()方法附加事件處理程序到當前選定集jQuery對象元件。從jQuery 1.7開始,.on()方法提供了附加事件處理程序所需的全部功能。有關從較舊的jQuery事件方法轉換的幫助,請參閱.bind(),.delegate()和.live()。要移除使用.on()綁定的事件,請參閱.off()。要附加僅運行一次然後自行刪除的事件,請參閱.one()
.on(...)
函數利用所有其他事件綁定機制。它應該始終工作。 According to jQuery's API documentation
此方法是前兩種變體中的.on(「click」,處理程序)和第三種中的.trigger(「click」)的快捷方式。當鼠標指針位於元素上方並且鼠標按鈕被按下並釋放時,click事件被髮送到元素。任何HTML元素都可以接收此事件。例如,考慮HTML:
.click(...)
是一個捷徑element.on("click", ...)
點擊()是一個方便快捷的()。從上的區別,唯一的方法()是,如果你不帶任何參數調用它,它會調用:
$(element).trigger('click');
http://stackoverflow.com/questions/8018760/jquery-difference-between-點擊並點擊 – 0xcaff
如果你使用第二個,jQuery內部使用第一個。這簡直就是速記。使用'on()'獲得更可靠的向前兼容性。 – Archer
http://stackoverflow.com/questions/9122078/difference-between-onclick-vs-click – 0xcaff