2016-07-26 6 views
0

私はまだウェブデザインの縄を学んでいますが、いくつかのことがうまくいくかを理解することができません...

私はnavbarヘッダーの背景色を切り替える機能を作成しました。真なぜわからないように、次の

作品:

$(".navbar.navbar-inverse".click(function() { 
    $(this).toggleClass("highlight"); 
}); 

が(ナビゲーションバーとナビゲーションバー-逆ところでスペース)は動作しません:

$(".navbar .navbar-inverse".click(function() { 
     $(this).toggleClass("highlight"); 
    }); 
私は、ナビゲーションバー-トグルにこの機能を適用した場合0

は同様に、逆は真である:

ワークス(スペースところでナビゲーションバーとナビゲーションバー-トグル):

$(".navbar .navbar-toggle").click(function() { 
       $(".navbar-inverse").toggleClass("highlight"); 
      }); 

は動作しません:

$(".navbar.navbar-toggle").click(function() { 
        $(".navbar-inverse").toggleClass("highlight"); 
       }); 

ボーナス...

は、このアプローチを使用したナビゲーションバー、トグルの背景を変更することはできません:

が機能しない:

$(".navbar .navbar-toggle").click(function() { 
       $(this).toggleClass("highlight"); 
      }); 

答えて

4

最初のものは、もう一つは.navbarの子孫である.navbar-toggleを指し、クラスnavbarnavbar-toggleと要素を意味します。スペースを置くのはこれです:

+0

ているすべての要素を選択する意味ありがとうございます!なぜ最後のビットが機能しないのかについての提案 - 記述された方法を使用して、navbar-toggleボタンの背景色を変更することはできませんか?または、そのコードをもっと必要としますか? –

+0

@Nateスペースを取ってみますか? – nicael

+0

動作していないようです。それが私のjsfiddleが助けるならばここにあります: https://jsfiddle.net/m9m9q8mo/2/ –

1

this answerのように、「navbar.navbar-inverse」で特定のクラス(「navbar-inverse」)を含む要素(「navbar」など)を選択できます。あなたはこれら二つの間に空白を追加した場合、それは基本的に

がクラスナビゲーションバー-逆を持っているし、ナビゲーションバーの子供

乾杯

+0

回答リンクはとても役に立ちました、ありがとう!ニカイアの印は正しいが、簡潔さのためだけである。 –

関連する問題