1

誰かが次の構文を説明できますか

$(function(){
    $(".myPage").live("click", myHandler);  // NOT THIS BIT!!
});

それが何か違いを生むのであれば、それはグローバルに定義されているように見えますか?

4

3 に答える 3

2
$(function(){});

jQuery.fn.readyの短縮形です。

乗算フレームワークを使用している場合、tahtは$非常にスマートであるため、コールバックへの最初の引数としてjQueryを送信します。

jQuery(function($) {
    // $ is here 100% synonym for jQuery. 
});

コールバック内で、イベントをセレクターにバインドします.myPage。ただし、実際には、セレクターをドキュメントにバインドしてから、event.targetまたはevent.target.parentNがセレクターと一致するかどうかを確認しています。

擬似コード:

$(document).on("click", function(event) {
    if ( $(event.target).is(".myPage") || $(event.target).closest(".myPage") ) {
        // call my original callback (myHandler)
    }
}); 
于 2012-11-16T10:48:10.690 に答える
1

$(somefunction)somefunctionDOMの準備ができたら、jQueryに関数を実行するように要求します。

ドキュメントから:

この関数は、準備ができているDOMに依存するページ上の他の$()操作をラップするために使用する必要があるという点で、$(document).ready()と同じように動作します。この関数は、技術的には連鎖可能ですが、実際にはそれに対して連鎖することはあまりありません。

これにより、DOMのオブジェクトが使用可能になる前にそれらにアクセスしようとしないようになります。このようなコールバックの本文の最後にあるスクリプト要素にメインコードを埋め込むことをお勧めします。

そのようなブロックを追加するさまざまなスクリプトがある場合があることに注意してください。すべてのコールバックは、挿入順に実行されます。これは、多くのスクリプトを含む大きなアプリケーションがある場合に知っておくことが特に重要です。

于 2012-11-16T10:47:34.437 に答える
0

この関数は、現在および将来、現在のセレクター(.myPage)に一致するすべての要素のイベントハンドラー(myhandler)をアタッチします。ライブの詳細については、http://api.jquery.com/live/をご覧ください。

于 2012-11-16T10:48:35.013 に答える