2016-03-31 24 views
1

HTMLコード内の1つのdivにのみアクティブなタブのクラスがあります。私はdivからアクティブタブのクラスを削除したいと思います。html要素のクラス名が変更されないのはなぜですか?

var activeTab = document.querySelector('.active-tab'); 
activeTab.className.replace("active-tab",''); 

上記のコードは機能していないようです。理由を説明してください。

PS - 私にjQueryの回答を与えないでください。あなたはclassNameを設定する必要が

+1

あなたは 'activeTab.className = activeTab.className.replace(" active-tab "、 '');' – LGSon

答えて

5

var activeTab = document.querySelector('.active-tab'); 
activeTab.className = activeTab.className.replace("active-tab",''); 

あなたは、単にそれを操作し、一人でその文字列を残して、(文字列)をclassNameの結果を得ています。変更した文字列をその要素のclassNameプロパティに設定して、タスクを完了する必要があります。

+1

を追加するだけで、文字列はJavaScriptに変更されないので、 'activeTab.className.replace( '" active -tab "、" '); 'は文字列自体を変更できないので動作しません。代わりに、上のように上書きされた変更を加えた新しい文字列を返します。 – Fizz

関連する問題