jQueryでは、ドキュメントが他のすべてのものと同じように選択するための文字列として渡されず、文字列として渡されないものがあるのはなぜですか?jQueryでドキュメントが文字列として渡されないのはなぜですか?
たとえば、h1要素があるとします。
$("document").click(function(){
$("h1").after("<p>lorem ipsum</p>"); //doesn't work
})
$(document).click(function(){
$("h1").after("<p>lorem ipsum</p>"); //works
})
文字列がdocument.querySelectorAll方法に置かれwindow.documentないだろう。文書の内部を検索します。したがって、document.querySelectorAll( "document")は空のコレクションを返します。 –
jQueryは、jQueryオブジェクトを作成するためのパラメータとして文字列(通常はCSSセレクタ)またはDOMノードを受け入れます。 'document'はDOMノードです。' 'h1 ''はセレクタである文字列です。 '' document "'はセレクタでもDOMノードでもありません。 – sabithpocker
'jQuery'関数は、異なる文字列を扱う異なる引数型を受け取るためにオーバーロードされます。要素やドキュメントを直接渡すことができます。これらのノードを参照する新しいjQueryオブジェクトが作成されます。文字列を渡すときは、セレクタ文字列を意図したものか、新しい要素を作成するためのHTMLかどうかを調べる必要があります。関数を渡すと、ページがロードされたときに呼び出されます。 –