2012-02-13 17 views
9

position:fixedが設定されているすべての要素にjQueryコードを少し追加しようとしています。この種のことは可能ですか?それがあれば非常に役立つので、私はすべてのコードと固定されているオブジェクトへの余分なクラスを通過する必要はありません。jQuery特定のCSSを持つ要素を選択する

答えて

22

の詳細この1つはすべてのケースをカバーする必要がありますCSSプロパティは別のルールから継承されています(here)。

+0

私はちょうど同じ正確なコードを投稿しようとしていました。私はコードに邪魔をしながらそれに遭遇し、あなたと同じことをしました。完璧に、ありがとうございます –

+1

@mgibsonbr:私よりも良い答えです。 +1 –

4

より速く、コリンの答えよりも安全:

$('*').filter(function() { 
    return $(this).css("position") === 'fixed'; 
}); 

ないように高速qwertymkの答えとして、だけでなく、場合は動作:

$('*').filter(function(){ return this.style && this.style.position === 'fixed'; }); 

jQuery filter()

+3

'this.style'と' this.style.position === 'fixed'が別々に書かれているときに何が返されるのか不思議です。 – kushalvm

+3

@MegaRacer 'this.style'が' undefined'ならば保護チェックです 'this.style.position'はコンパイラが左から右にチェックするので' this.style.position'が '未定義のプロパティの位置を読むことができません' === undefined' '&&'の前に式を失敗させ、エラーは発生しません。 –