2012-02-24 8 views
0

したがって、特定のクラスのCSSでdivまたはspanを非表示にしたいとします。複数のHTMLクラスをすべて選択する

最初のX個のインスタンスに対してはこれを実行する方法はありますか、それとも最後のインスタンス以外のすべてのインスタンスに対して行うのが良いですか?私はこれがjavascriptを必要とすると思います。私は正しい軌道に乗ってこの

if divname.class = "XYZ" { 
select all instances -1 
execute code that inserts random programmatic id into each class 
execute code that hides all ids except the last one 
} 

アム私のように見えるだろうと考えています

擬似コード?それとももっと簡単な方法がありますか?

+1

いいえJQuery? – RSG

答えて

1

あなたはjQueryとその素敵な擬似セレクターを使用することができれば、あなたはSOのホームページ上でテストすることができます

$('.question-summary:not(:last)') 

ような何かを行うことができます。

+0

彼はjQueryを使用していません。問題のタグはありません:) – Sarfraz

+0

@Sarfraz:しかし、彼はまたそれを使用しないと言っていませんでした。 –

+0

問題はありませんが、私たちはタグが記載されていないダウンホントを目撃しました。それが彼に役立つかどうかを見てみましょう:) – Sarfraz

0

インスタンスの最初のX数のためにそうか、まだ良く 、最後の一つを除いてすべてのためにそれを行うにはとにかくはありますか?私はこの にjavascriptが必要と思います。

あなたが試すことができます:上記のループでは

var elms = document.getElementsByClassName('XYZ'), total = elms.length; 

for (var i = 0; i < total; i++){ 
    elms[i].style.display = 'none'; 
} 

iの各要素のインデックスが含まれます、あなたは条件を置くかではなく、削除するものを指定する範囲とすることができます。たとえば、あなたはすべての最後の一つを除いて非表示にしたい場合は、あなたが好きそれを修正します:あなたはこのような何かを行うことができ

for (var i = 0; i < total - 1; i++){ 
    elms[i].style.display = 'none'; 
} 
0

var class_div = document.getElementsByClassName("class_name"); 
var i =0; 

for(i=0;i<class_div.length-1;i++){ 
    //do whatever you want with class_div[n-1] elements. 
} 

は、私はあなたがこれを行う方法がわかりませんjqueryが、これはjavascriptのための1つの可能な解決策です。

0

あなたはjQueryのを使用していた場合...ここ

$('.class_name').hide().last().show(); 
0

屋行く -

http://jsfiddle.net/uUK6G/同じクラスにすべてのあなたのdivに設定します。そして最後のものをフィルタリングするためにjQueryを使います。

$('.myDiv').filter(':not(:last)').hide();​ 
関連する問題