jQuery 1.11版本引入了Live和On方法,這兩個方法都用于綁定事件處理程序,但它們具有不同的行為和使用方式。
首先,我們來看一下Live方法。它的作用是在文檔載入之后,為所有匹配元素的指定事件類型綁定一個事件處理程序,即使匹配元素在之后被添加到文檔中,也能夠正常觸發該事件。
$(selector).live(event, handler);
例如:
$(document).ready(function(){ $("p").live("click", function(){ $(this).after("Another paragraph!
"); }); });
這段代碼會在文檔載入之后為所有的p元素綁定一個click事件處理程序,當用戶點擊任何一個p元素時,會在該元素后面添加一個新的p元素。
然而,Live方法在jQuery 1.7版本之后已經被棄用了,不推薦繼續使用,取而代之的是On方法。
On方法的使用方式與Live方法類似,但是它更加靈活。它可以為現有的元素綁定事件處理程序,也可以為未來的元素綁定事件處理程序,甚至可以指定一個選擇器字符串來限定事件源元素。
$(selector).on(event, childSelector, data, handler);
例如:
$("ul").on("click", "li", function(){ $(this).toggleClass("selected"); });
這段代碼會為頁面中所有的ul元素的li子元素綁定一個click事件處理程序,當用戶點擊任意一個li元素時,該元素的class屬性將被切換為"selected"。
總之,在使用jQuery進行事件綁定時,我們應該優先選擇On方法,它可以更好地滿足各種需求,而Live方法已經不再被推薦使用。