2017-11-11 20 views
0

jqueryの.hasClassメソッドに関する質問があります。特定のクラスを持つ要素が他の要素にsthする場合

たとえば、.showクラスのdiv要素がある場合、メニューボタンの色を赤にしたいとします。

だから私は

if ($(".navbar-collapse").hasClass("show")) 
    $(".menuIcon").css("color", "red"); 

この解決策を説明したが、私がテストしたとき、このコードは動作しませんでしたため、このコードを書かれている... は、どのように私はこの問題を解決することができますか?

+0

ターゲットコードを投稿できますか? –

答えて

0

はこれを試してみてください:

$(".navbar-collapse.show").find(".menuIcon").css("color", "red"); 

あなたはメニューを変更するイベントに関連付けることができます。 CSSのみで

+0

いいえそれは約{}ではない私は別の例をテストするときに動作します –

+0

Ok、更新を読んで:)あなたは状態を避けることができます。 – Nick

0

.navbar-collapse.show { 
    color:red!important; 
} 
1

あなたのコードが完全に正確である、そしてそれは作品をすべきです。
1- jqueryライブラリが存在し、coreectlyロードされていることを確認してください。
2コードに関連付けられているスタイルがページに存在し、true
内にコードを入れて、コードが実行される前にスタイルがロードされていることを確認します。

$(document).ready(function(){ 
    if ($(".navbar-collapse").hasClass("show")){ 
     $(".menuIcon").css("color", "red"); 
     } 
}); 
+0

あなたは本当ですか?なぜなら私のショークラスは静的ではなく、それは要素になるからです。 –

0

あなたのコードがOKになりそうだが、あなたが経験している行動が原因次の1つ以上にすることができます:

  • あなたはscriptを使用して、それを含める(jqueryのを含めるために存在しない可能性がありますタグそうであれば)
  • あなたがshowclassを持つあなたのタグを作成または前にされる前に、あなたのコンソールにエラー(もしそうならそれを修正)
  • あなたのコードが実行される可能性があります可能性がありますclassshowclassあなたはbackground-color代わりのcolor
  • 別のJavaScriptを無効にしたい場合があります別のタグ
  • に追加される可能性がありますタグ
  • に追加されていることを取得するには、あなたの希望の動作

を上書きしてしまうことがありますより正確な回答を得るには、より正確な質問をする必要があります。

+0

私はこれを後で試してみる.... –

+0

私はそれが約あるかもしれないと思う!CSSの重要なキーワード –

+0

@ mr.md!importantは他のどのルールよりも優先されます。あなたの場合、どんなルールが重要ですか? –

関連する問題