を表面では、あなたが最初に一致を得るためにfirst()
(docs)メソッドを使用することができますように、それは思われます。
$('div.rColInnerL:first, div.box300.bdr.search:first, h2.blt13:first').first()
もちろん、これは最初のものが常に正しいものに依存します。セレクタと一致する要素の使用には多少のバリエーションがあるように思われるため、問題になる可能性があります。
jQueryは、必ずしもセレクタの順ではなく、ページ上に表示される順番で要素を返すので、必ずしも排他的ORの振る舞いを再現するわけではありません。
より正確には、あなたがより明示的に何か必要があると思います:
var el = $('div.rColInnerL:first');
if(!el.length) {
el = $('div.box300.bdr.search:first');
if(!el.length) {
el = $('h2.blt13:first');
}
}
をここでセレクタの順序で要素を返さないのjQueryの例です:
<body>
<div id="first">first</div>
<div id="second">second</div>
</body>
alert($('#second, #first')[0].id); // alerts "first" instead of "second"
#second
が最初の選択であっても最初の一致は#first
要素として表示されます。なぜなら、最初に一致する要素がドキュメント内にあるからです。
例:http://jsfiddle.net/XxXXc/
はあなたが達成しようとしているものにビットを言えてもらえますか?正確な行動とは何か、あなたは何を期待していますか? – treeface
彼のdivは1つ以上のクラスを持つことができるようですので、複数回選択することができます。 –
はい、しかし、「これらのうちの1つのみを使用する」と言われると、最初のもの(「first()」を使用して見つけることができる)またはそのページに最も関連するもの、 – treeface