我有此代码:
<div class="d-none d-js-block">
...
</div>
如何使用javascript选择器删除class属性。 我正在使用以下代码:
var element = document.getElementsByClassName("d-none d-js-block");
element.classList.remove("d-none d-js-block");
我也在使用此代码:
`var element = document.getElementsByClassName("d-d-none d-js-block");
element.removeAttr("class");`
此代码也无法正常工作; 如何删除课程?
答案 0 :(得分:1)
getElementsByClassName返回一个集合。因此,您需要传递该集合中元素的索引。
或者,您可以使用querySelectorAll
并使用classList.remove
这里使用setTimeout
只是为了演示该类的删除。在您的代码中,您可以避免这种情况
var element = document.querySelectorAll('.d-js-block');
setTimeout(function() {
element.forEach(function(item) {
item.classList.remove("d-none");
item.classList.remove("d-js-block");
})
}, 3000)
.d-none {
color: green;
}
.d-js-block {
text-decoration: underline;
}
<div class="d-none d-js-block">
test</div>
答案 1 :(得分:0)
您需要在remove()
函数中指定逗号分隔的类名。如果您只有一个元素来选择和删除类,也可以使用querySelector()
:
var element = document.querySelector(".d-none.d-js-block");
element.classList.remove("d-none", "d-js-block");
.d-none.d-js-block{
color: red;
}
<div class="d-none d-js-block">
some HTML
</div>