亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    jquery中bind與on的區(qū)別是什么

    jquery中bind與on的區(qū)別是:on綁定比bind綁定多了一個childSelector參數(shù)。bind只能給符合條件的元素本身添加事件,on可以將子元素的事件委托給父元素進行處理。

    jquery中bind與on的區(qū)別是什么

    環(huán)境:

    本文適用于所有品牌的電腦。

    (推薦教程:jquery視頻教程)

    區(qū)別分析:

    bind和on都是給元素綁定事件用的,其最大的區(qū)別就是事件冒泡。

    事件冒泡也是委托事件的原型,事件委托就是子類的事情委托給父類的去做。最直觀的區(qū)別就是on綁定比bind綁定多一個參數(shù) 'childSelector'。

    語法:

    $(selector).on(event,childSelector,data,function)

    參數(shù):

    jquery中bind與on的區(qū)別是什么

    $(selector).bind(event,data,function,map)

    參數(shù):

    jquery中bind與on的區(qū)別是什么

    bind只能給符合條件的元素本身添加事件,on可以將子元素的事件委托給父元素進行處理,而且可以給動態(tài)添加的元素加上綁定事件

    也就是對于新添加的元素如果是on綁定,符合條件的新元素也會綁定事件,如果是bind則不影響新元素。

    舉例:

    <ul>     <li>第一個子元素<li/>     <li>第二個子元素<li/>     <li>第三個子元素<li/> </ul>

    我們想給所有l(wèi)i添加click事件,可以用on:

     $('ul').on('click','li', function () {            console.log($(this).text()); });

    也可以用bind:

     $('ul li').bind('click', function () {          console.log($(this).text()); });

    區(qū)別:

    第一用on綁定實際上是委托給了父級ul,也就是只給 一個元素綁定了事件

    第二個是用選擇器選擇了ul下的所有l(wèi)i元素 依次綁定了事件

    假如有很多很多子元素區(qū)別就很大了, bind會嚴重影響性能!

    假如這時候新添一個li:

    $('ul').append('<li>第四個子元素<li>');

    如果是on綁定則這個li也會有點擊事件;如果是bind則沒有。

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號