要素が持つかもしれないすべての単一クラスに対して個別に$("#item").removeClass()
を呼び出す代わりに、与えられた要素からすべてのCSSクラスを削除することができる単一の関数がありますか?
JQueryと生のJavaScriptの両方が機能します。
$("#item").removeClass();
パラメータなしでremoveClass
を呼び出すと、アイテムのすべてのクラスが削除されます。
あなたはまた使うことができます(しかし必ずしも推奨されるわけではありません、 正しい 方法は上のものです):
$("#item").removeAttr('class');
$("#item").attr('class', '');
$('#item')[0].className = '';
あなたがjQueryを持っていなかったなら、これはほとんどあなたの唯一の選択肢でしょう:
document.getElementById('item').className = '';
何も指定しないとremoveClass()はデフォルトですべてのクラスを削除しませんか。そう
$("#item").removeClass();
独自にそれを行います...
もちろん。
$('#item')[0].className = '';
// or
document.getElementById('item').className = '';
実際のDOM要素のclassName
属性を''
に設定するだけです(何もしません)。
$('#item')[0].className = ''; // the real DOM element is at [0]
編集: removeClass
を呼び出すだけでうまくいくと言う人もいます - http://savedbythegoog.appspot.com/?id=ag5zYXzlZGJ5dGhlZ29vZ3ISCxIJU2F2ZWRDb2RlGIS61gEMでこれをテストしました ...それそれ動作します。だからあなたはまた、このようにそれを行うことができます:
$("#item").removeClass();
ええと、同様の答えを探しています。それからそれは私を襲った。
特定のクラスを削除
$('.class').removeClass('class');
要素がclass = "class another-class"であるとします
最短の方法
$('#item').removeAttr('class').attr('class', '');
あなたはただ試すことができます
$(document).ready(function() {
$('body').find('#item').removeClass();
});
クラス名を指定せずにその要素にアクセスする必要がある場合、たとえば新しいクラス名を追加する必要がある場合は、次のようにします。
$(document).ready(function() {
$('body').find('#item').removeClass().addClass('class-name');
});
私は私のプロジェクトでその機能を使用して、htmlビルダーのクラスを削除して追加します。がんばろう。
$('#Elm').removeAttr('class');
class attrは「Elm」に存在しなくなりました。
1。
// remove all items all class
const items = document.querySelectorAll('item');
for (let i = 0; i < items.length; i++) {
items[i].className = '';
}
2。
// only remove all class of first item
const item1 = document.querySelector('item');
item1.className = '';
$("#item").removeClass();
$("#item").removeClass("class1 ... classn");
すべてのバージョンのjQueryが同じように作成されているわけではないので、$( "#item")を呼び出すことを意味する同じ問題に遭遇するかもしれません。実際にはクラスを削除しません。 (おそらくバグ)
より信頼できる方法は、単純に生のJavaScriptを使用してクラス属性を完全に削除することです。
document.getElementById("item").removeAttribute("class");
removeClass
で試してください
例えば :
var nameClass=document.getElementsByClassName("clase1");
console.log("after", nameClass[0]);
$(".clase1").removeClass();
var nameClass=document.getElementsByClassName("clase1");
console.log("before", nameClass[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="clase1">I am Div with class="clase1"</div>
この例を使ってみましょう。たぶんあなたはあなたのウェブサイトのユーザーにフィールドが有効であることを知ってほしいか、それはフィールドの背景色を変えることによって注意を必要とします。ユーザーがresetを押した場合、コードはデータを持つフィールドのみをリセットし、ページ上の他のすべてのフィールドをループ処理しなくてもすみます。
このjQueryフィルタは、このクラスを持つ入力フィールドまたは選択フィールドについてのみ、クラス "highlightCriteria"を削除します。
$form.find('input,select').filter(function () {
if((!!this.value) && (!!this.name)) {
$("#"+this.id).removeClass("highlightCriteria");
}
});