jQuery中delegate與on的用法與區別

    時間:2024-09-11 16:04:21 jQuery 我要投稿
    • 相關推薦

    jQuery中delegate與on的用法與區別

      在jQuery1.7中 .delegate()已被.on()取代。對于早期版本,它仍然使用事件委托的最有效手段。

      在事件綁定和委派,delegate()和on在一般情況下,這兩種方法是等效的。

      .delegate() 指定的元素(屬于被選元素的子元素)添加一個或多個事件處理程序,并規定當這些事件發生時運行的函數。

      復制代碼 代碼如下:

      // jQuery 1.4.3+

      $( elements ).delegate( selector, events, data, handler );

      // jQuery 1.7+

      $( elements ).on( events, [selector], data, handler );

      例如:.delegate() code:

      復制代碼 代碼如下:

      $("table").delegate("td","click",function(){

      alert("hello");

      });

      .on() code:

      復制代碼 代碼如下:

      $("table").on("click", "td", function() {

      alert("hi");

      });

      PS: 兩者區別是seleter和events順序不同

      delegate和on方法被選元素的子元素必須是"合法的"子元素。比如

      復制代碼 代碼如下:

      $("table").delegate("button","click",function(){...});

      $("table").on("click", "p", function(){...});

      就不起作用,因為正常情況下,table子元素應為tr,td...

      on(events,[selector],[data],fn),參數[selector]是可選,

      一個選擇器字符串用于過濾器的觸發事件的選擇器元素的后代。

      例如:

      復制代碼 代碼如下:

      $("table").on("click", ".td1", function() {

      alert("hi");

      });

      過濾class為td1的table子元素

      而delegate的selector是必需的。

    【jQuery中delegate與on的用法與區別】相關文章:

    jQuery中prev()方法用法07-16

    jQuery中replaceAll()方法用法10-15

    PHP中MySQL、MySQLi和PDO的用法和區別07-01

    as,when,while的用法區別詳解10-24

    俄語詞выйти和сойти的用法與區別10-24

    辨析替代詞用法的區別09-20

    jQuery中parent()和siblings()的問題10-16

    詞語辨析:cost, spend, take的用法區別01-14

    Javascript中typeof 用法歸納09-27

    粵語中“好”字的用法10-25

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      亚洲不卡免费观看 | 亚洲综合精品一二三区在线 | 亚洲日韩欧美在线午夜 | 亚洲欧美在线人成最新按摩 | 亚洲欧美中文高清在线专区 | 永久精品一区二区三区亚洲 |