私は$('.elem',elem)
,$('.elem',elem).tabs()
のようなコードを使用しています。
$(".elem")
は、そのクラスの要素を選択するために使用されます。
しかし、次のカンマの後には何がありますか?それの使用は何ですか?
私は$('.elem',elem)
,$('.elem',elem).tabs()
のようなコードを使用しています。
$(".elem")
は、そのクラスの要素を選択するために使用されます。
しかし、次のカンマの後には何がありますか?それの使用は何ですか?
$('.elem',elem)
が$(elem).find('.elem')
でください
それは
と同じです。実際、それがjQueryがカバーしていることです。 elem
要素の子孫であるクラス"elem"
のすべての要素を検索します。
これはthe API documentationでカバーされています。それを最初から最後まで読んで1時間を費やす価値があります。そこにはよく知られていない、あらゆる種類の有益なものがあります。 :-)(私はこれが彼らの1人であると言っているわけではありません。私はそれ自身のファンではなく、一般的にそこには多くの有益なものがあります)。
は、find()に対してコンテキストを使用する利点がないようですが、それは本当ですか? –
@roasted:右。 *まあ*、それはより少ない文字だと指摘する人もいると思います。 :-)しかし、 "jQueryがそれを使って何をしているのか"と言うとき、私はまさにそれを意味しています:あなたが '$( 'elem'、elem)'を実行したことを文字通り検出し、 '$(elem ).find( '。elem') '。したがって、 '$( 'elem'、elem)'フォームは単に別の関数呼び出しを追加します(本当に重要ではありません)。 –
これは、検索が行われるコンテキストです。 documentation here
第2パラメータjQuery関数に渡されると、最初のセレクタのスコープまたはコンテキストが定義されます。
jQueryは、2番目のパラメータで指定された要素内で、クラスがelem
のすべての要素を見つけるようにjQueryに指示します。クラス.elem
の外の要素はelem
の外には選択されません。
を考えると、次のHTML:
console.log($("input", "#included").length); //2 only those inside included
console.log($("input").length); //4 all inputs
私はセレクタを.find()メソッドで使用しました。 $( "。elem"、elem)は.find()よりうまく動作しています。だからfind()メソッドは有用かどうか? – Natesan
私は、コンテキスト指定子がfindが行うことができないことが何もないかどうかはわかりません。私は 'find'は少し直感的で読みやすいと思います。 –
それは[コンテキストセレクタ](HTTPです:
これらのセレクタは、次の出力を生成する// ($ elem).find( '。elem'); ' – billyonecan
私はjQueryをほぼ2年間使っています。b utはそれにあまり注意を払わなかった。 :) +1 –