首頁 > web前端 > js教程 > 如何將 jQuery 1.8 .live() 程式碼遷移到 jQuery 2.1 .on() 方法?

如何將 jQuery 1.8 .live() 程式碼遷移到 jQuery 2.1 .on() 方法?

Linda Hamilton
發布: 2024-12-08 19:26:11
原創
742 人瀏覽過

How Do I Migrate My jQuery 1.8 .live() Code to the jQuery 2.1 .on() Method?

從jQuery 1.8 .live() 遷移到2.1

jQuery 1.9 對事件處理引入了重大更改,包括刪除.live( ) 方法。本指南解釋了這些更改,並提供如何將程式碼從 .live() 遷移到新的 .on() 語法的範例。

了解 .live() 刪除

由於效能和效率限制,jQuery 1.9 刪除了 .live()。 .live() 將事件綁定到未來的 DOM 元素,即使它們尚不存在。這可能會導致不必要的事件偵聽器和效能問題。

遷移到 .on()

.live() 的建議替代品是 .on( )。但是,需要注意的是 .on() 具有不同的參數。

原始.live() 語法:

.live(events, function)
登入後複製

新.on() 文法:

.on(eventType, selector, function)
登入後複製
新.on() 文法:

$('#mainmenu a').live('click', function)
登入後複製

$('#mainmenu').on('click', 'a', function)
登入後複製

遷移範例1:綁定到子元素

$('.myButton').live('click', function)
登入後複製
之前(使用.live()):

$('#parentElement').on('click', '.myButton', function)
登入後複製
之後(使用.on( )):

在此範例中,子元素(a) 被移到.on() 選擇器。
  • 遷移範例2:綁定到父元素

  • 之前(使用.live()):

之後(使用.on()):在此範例中,元素 .myButton移動到 .on() 選擇器,並使用最近的父元素(最好帶有 ID)。或者,您可以使用 $(document) 作為父元素。

其他遷移提示

不要簡單地將 .live() 替換為 .live() 。 on() 而不考慮參數變化。 確保在 .on() 中指定了(子)選擇器如果需要,如果不需要,請將選擇器設為 null。 有關更多信息,請參閱官方 jQuery 文件和遷移指南。

以上是如何將 jQuery 1.8 .live() 程式碼遷移到 jQuery 2.1 .on() 方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板