網頁在完全載入之後,所有的 dom 事件也一併做完,但是有時候我們會利用動態方式,給網頁新增一個新的 dom 時,它就沒有被賦予到,必須還要做一次。所以當初這個 live() 就是用來處理這樣子的狀態,免去 dom 還要重做一次。

但是這個 .live() 並不完美,存在一些缺點(效能)和 bug,詳細細節請查看 http://api.jquery.com/live/ 說明。於是官方在 1.7 版本時請大家捨棄了這個過時的 function ,並建議改使用 .on() 取代 .live()。

使用方法:

$( selector ).live( events, data, handler );                // jQuery 1.3+
$( document ).delegate( selector, events, data, handler );  // jQuery 1.4.3+
$( document ).on( events, selector, data, handler );        // jQuery 1.7+

例如:

$( document ).on( ‘click’, ‘a.class’, function(){
  alert(‘hello’);
} );