2016-05-13 10 views
-2

私はターゲットIDとクラス名を削除したいと受け取る単純なクラスの削除機能を達成しようとしています。しかし、私は具体的なクラス名var xからdocument.getElementByIdを使って得る方法がわかりません。要素のIDを取得したクラスのリストから特定のクラスを選択するにはどうすればよいですか?

は、以下を参照してください。

removeClass: function (selector, string) { 
var x = document.getElementById(selector); 
for (i = 0; i < x.length; i++) { 
    x[i].classList.remove(string); 
} 
}, 
+0

問題やエラーが発生しましたか? –

+1

idは一意である必要があります。どのようにあなたがそれをやっているかを示してください。 –

+0

HTMLを表示してください。同じIDを持つ要素が複数ある場合や、IDの子やその他のものを対象にしたい場合は、明確ではありません。 – JJJ

答えて

1

var removeClass = function (strElementId, strClassToRemove) { 
 

 
var x = document.getElementById(strElementId); 
 
    x.classList.remove(strClassToRemove); 
 
} 
 

 
removeClass('a', 'b');
<div id="a" class="a b c"> 
 
test 
 
</div>

ただ、そのIDによって要素を取得(HTMLページで一意である必要があります)とクラス名キーでremoveを使用しています。

コアJavaScriptを使用したクラス操作の詳細については、下記のリンクをご覧ください。

http://www.w3schools.com/jsref/prop_element_classlist.asp

-1

要素は、そのクラスを持っているかどうかをまずチェック。それに基づいてそれを削除します。

removeClass: function (selector, str) { 
var x = document.querySelectorAll(selector); 
for (i = 0; i < x.length; i++) { 
    if ($(x[i]).hasClass(str)) { 
    $(x[i]).removeClass(str); 
    } 
} 
} 
+1

なぜjqueryを使用しましたか?それはここでは完全に不要です。 –

関連する問題