2009-09-22 15 views

答えて

26
$("#mydiv a").removeClass("active"); 
+0

私はこのコードを使用しました:$( "div")。remove( "。com_blog> .blog_post_detail");リンク(a)のために削除する別のクラスを追加できるように調整することは可能ですか? –

5

ええ。

$("div a .className").removeClass("className") 

それとも、あなただけの限りのdivセットid属性を持っているとして、あなたがこれを行うことができ、特定のdivの上でそれをしたいと仮定:

$("#divIDValue a .className").removeClass("className") 

あなたはこのようにそれを行いますjQueryセレクタでは、id属性がそのテキストに設定されているオブジェクト(div、span、anchorなど)を参照した後、テキストで#を使用します。ピリオドとは、ピリオドの後に来るテキストに一致するクラス名を持つすべてのオブジェクトを指します。上で示したように、セレクタテキストをネストすることができます。したがって、上記の例では、ここで何が起こるかです:

例1

  1. すべてのdivを探すには、すべてのdiv内のすべてのアンカー
  2. が持っている#2からのアンカーのすべてを検索します検索しますクラス.className

例#2

  1. 「divIDValue」に設定id属性を持つdiv要素を探す
  2. クラス名と一致するアンカータグのそのリスト内のすべてのアンカータグを探すことDIV
  3. 内のすべてのアンカータグを探すclassName

ページ内のすべてのオブジェクトでは、特定のオブジェクトが特定のid値を持つことができます。したがって、idが 'divIDValue'に設定された2つのオブジェクトを持つことはできますが、ページはおそらくOKのように見えますが、jQueryは最初のアイテムをidとしか見つけません。一方、クラスは複数の項目に使用できます(おそらくすでに分かっているように)。

7

検索がクラスである場合:

$("div.search a").removeClass("active"); 

検索がIDの場合:

$("#search a").removeClass("active"); 
3

すべての可能な要素からクラスを削除するために、より汎用的なソリューションを提供します。これは、ラッパー内のすべての要素に影響します

// I like to use find as I usually have my wrapper in a variable. 
$('#my-wrapper').find('.active').removeClass('active'); 

それとも

$('#my-wrapper .active').removeClass('active'); 

:などスパン、H3、DIV、李、TD、HTML 5で100個の可能なタグの上に今があります。

関連する問題