2017-02-13 1 views
1

要素からクラスを削除する単純なjavascript関数があります。私が使用していたスクリプトは、私が使用していますhtmlコードが与えられたクラスのいずれかがjavacriptを使って一致する場合、クラスから要素を削除する

<div id="mine" class="hide show success fail">Class will be removed from here</div> 
<button onclick="removeclass('mine', 'fail show success')" type="button">Remove Class</button> 

彼らが存在する場合は削除クラスボタンをクリックするが、それは1から渡されたクラス1を交換する必要があるときに、今私が欲しいです

function removeclass(elementId, elementClass) { 
    document.getElementById(elementId).className = document.getElementById(elementId).className.replace(' '+elementClass , ''); 
} 

ですdiv。どうやってやるの ?

答えて

3

elementClassを分割してそれぞれを削除できるようにする必要があります。また、これはclassListプロパティを使用してclassNameよりも簡単です。

function removeclass(elementId, elementClass) { 
    var classes = elementClass.split(' '); 
    var classList = document.getElementById(elementId).classList; 
    classList.remove.apply(classList, classes); 
} 
0

"not-so-much-good"の解決策です。

function removeClass(eId, klassName) { 
 
    var el = document.getElementById(eId); 
 
    klassName.split(" ").forEach(function(e){ 
 
     el.classList.remove(e); 
 
    }); 
 
    }
<div id="mine" class="hide show success">Class will be removed from here</div> 
 
<button onclick="removeClass('mine', 'success show fail show')" type="button">Remove Class</button>

関連する問題