2017-04-03 18 views
0

ナビゲーションメニューがあります。私は<ul>タグにクラスを.containerとして追加したいが、その要素がたとえば "megamenu"というクラスを持っている場合にのみ追加する。どうすれば達成できますか?私は "メガメニュー"として1つだけのドロップダウンを持っているので。JSを使用してサブ要素にクラスを追加する方法

ありがとうございます。

+2

'のvar要素= document.querySelectorAll( "megamenuドロップダウン。")の子にクラスを適用する必要があり;'。今すぐループしてクラスを追加してください – Rajesh

答えて

2

classNameあなたは純粋なJavascriptで以下のコードを試してみたいです。そうでなければjQueryで簡単に同じことをすることができます。

//lets find the element with that class. 
var menu = document.querySelectorAll('.megamenu'); 

// lets verify only one menu with '.megamenu' 
if(menu.length == 1) 
{ 
    //set the class 
    menu[0].className = " " + "anotherClassName"; 
} 

更新

我々はmegamenu

// lets verify only one menu with '.megamenu' 
if(menu.length == 1) 
{ 
    // set the class to the child '.container' 
    // I'm expecting only one '.container' inside megamenu 
    // if you have multiple and want apply for all use .querySelectorAll 
    menu[0].querySelector('.container').className = " " + "anotherClassName"; 
} 
+0

ありがとうございます。それはほとんど動作しますが、正確には私が望む通りではありません。 HTMLの ルック構造 '

' これは '.megamenu'クラス' .container'の下にあります。これは上のクラスメガメニューの場合に追加したいところです。ちょっと混乱してしまいましたが、 –

+0

に返信してください'.megamenu'の子である' .container' ??それも簡単です、np、私は答えを更新し、それがあなたの問題を解決するならば、これを答えとしてマークすることを忘れないでください他のユーザーにも役立ちます.. –

関連する問題