つまりjQuery()、関数であり、ドキュメントは関数のパラメータとして使用されるオブジェクトjQuery()です。
jQuery(document)関数は、ready()メソッドを持つオブジェクトを返すと思いますか?それが正しいか?その場合、どのようなオブジェクトがjQuery(document)返されますか?
つまりjQuery()、関数であり、ドキュメントは関数のパラメータとして使用されるオブジェクトjQuery()です。
jQuery(document)関数は、ready()メソッドを持つオブジェクトを返すと思いますか?それが正しいか?その場合、どのようなオブジェクトがjQuery(document)返されますか?
jQuery は多くの魔法を使用します (たとえば、 を使用する必要を避けるためnew)。
jQuery(...)渡された 0 個以上の要素 (引数に応じて) を含む新しい jQuery オブジェクトを常に作成します。
jQuery にはreadyメソッドがあるため、任意の jQuery オブジェクトで呼び出すことができます。$().ready()または$(document).ready()またはを使用するかどうかは問題ではありません。$('whatever').ready()常に同じことを行います。
ready: function( fn ) {
// Attach the listeners
jQuery.bindReady();
// Add the callback
readyList.add( fn );
return this;
},
ご覧のとおり、thisはチェーンに対してのみ返されます。関数の実際のロジックではまったく使用されません。
その場合、どのようなオブジェクトが
jQuery(document)返されますか?
jQuery オブジェクトを返します。
jQuery オブジェクトには、HTML 文字列から作成された、またはドキュメントから選択されたドキュメント オブジェクト モデル (DOM) 要素のコレクションが含まれています。
jQueryメソッド自体はここに文書化されています: http://api.jquery.com/jQuery/#jQuery1
この関数の 2 番目と 3 番目の定式化では、他の方法で既に選択されている 1 つ以上の DOM 要素を使用して jQuery オブジェクトを作成します。この機能の一般的な用途は、コールバック関数に渡された要素で jQuery メソッドを呼び出すことです...
jQuery(...)関数は、次のように一般的に省略$(...)されます。
$(document)
基本的に、これは jQuery ライブラリーへの最初の共通フックです。次のように使用されることがよくあります。
$(document).ready(function() {
// This code gets called once the document has finished loading
// to the point where you'd want to use the jQuery library against the DOM
});
.readyメソッドに関するドキュメントは次のとおりです。
JavaScript は、ページのレンダリング時にコードを実行するためのロード イベントを提供しますが、このイベントは、画像などのすべてのアセットが完全に受信されるまでトリガーされません。ほとんどの場合、スクリプトは DOM 階層が完全に構築されるとすぐに実行できます。.ready() に渡されたハンドラーは、DOM の準備が整った後に実行されることが保証されているため、これは通常、他のすべてのイベント ハンドラーをアタッチして他の jQuery コードを実行するのに最適な場所です ...
jQuery のドキュメントを参照してください。
http://api.jquery.com/jQuery/jQuery( element ) - 関数のバージョンに興味がありjQueryます。jQuery渡した要素を新しいオブジェクトでラップします。このオブジェクトには、イベント ハンドラーを関数として渡すことができる.ready()メソッドが含まれます。
typeof document を取ると object が得られるので、jQuery(document) は document の jQuery オブジェクトを与えます。
これを jQuery オブジェクトとして扱うために $(this) のようにしたかもしれません。javascript キーワード this を使用すると、すべての dom メソッド/プロパティを呼び出すことができますが、jQuery メソッドおよびプロパティは呼び出すことができません。同様に $(this) を使用すると、すべての jquery メソッド/プロパティを呼び出すことができますが、基本的な dom メソッドおよびプロパティは呼び出すことができません。
$(document).ready() は、dom オブジェクト ドキュメントを取得して jQuery オブジェクトに変換し、ready 関数をアタッチすることを意味します。
詳細を説明するために、Chrome コンソールで指定したいくつかのコマンドを次に示します。
typeof document
"object"
$(document).ready
function (a){e.bindReady(),A.add(a);return this}
document.ready
undefined
ここで、未定義を示す document.ready は、dom に認識されていないことを明確にしており、$(document).ready は、jquery を使用してその定義を示しています。