jqueryアップグレードの世代交代

1668 ワード

実は昨年から1.9以上の新版jqueryではtoggleメソッドやliveメソッドはサポートされていません.
Liveはonメソッドで代用します.
ところで、この方法は确かに便利ですが、どのように交互にクリックするのか、htmlのchecked属性はあまり使いにくいと思います.cssのdisplay:noneの文字列を使うと、中間移行时の状态の间违いを避けることができません.
実はjqueryにはもう一つの偽属性があります
 :visible
isメソッドでvisibleの状態が本当かどうかを判断すればよい
たとえば
$("#id").on('click',function(){

   if($("#id a").is(":visible")){

      $("#id a").css({display:"none"});  

    }else{

       $("#id a").css({display:"block"});  

    }  

});

クリックイベントをonでバインドします.
現在流行しているオブジェクト属性のモダンな書き方
$("#id").on({



    click:function(){

    

    }



    mouseenter:function(){



    }



    mouseleave:function(){



    }

});

onはライブに代わるだけでなくdelegateイベント依頼も統合
$(function(){

    $('body').on('click','.id',function(e){

         alert("click");

    });

    $("<div class='id'>appen one div</div>").insertAfter("#id_0");

});

イベント委任の利点:ページ上の要素上のイベントがトリガーされると、DOM継承関係では、この要素のすべてのサブ要素もこのイベントを受信できます.この場合、親要素上のイベントプロセッサを使用して処理(イベント委任で処理)することができます.複数のサブ要素上のイベントリスナーを使用して処理するのではなく(バインドはリスナーを確立することである).