【发布时间】:2014-04-11 19:33:14
【问题描述】:
我想知道如何选择类名为“widget”和“hover”的所有元素,然后从这些元素中删除类“hover”。
我有以下 JavaScript 代码,它选择所有具有类“widget”和“hover”的元素:
var elements = document.getElementsByClassName('widget hover');
console.log(elements);
这似乎工作并输出类似这样的内容(没有错误):
[div#.widget...
问题是,如果我尝试删除“悬停”类,我会收到错误:
var elements = document.getElementsByClassName('widget hover');
console.log(elements);
elements.classList.remove("hover");
这个输出:
[item: function]
length: 0
Uncaught TypeError: Cannot call method 'remove' of undefined
谁能告诉我我做错了什么?
请注意,我有它在 jQuery 中工作:
$('.widget.hover').removeClass('hover');
...但我正在寻找纯 JavaScript 的解决方案。
【问题讨论】:
-
请注意
classList在 IE -
我不关心 IE8 及以下版本,但 IE9 有什么用?
标签: javascript getelementsbyclassname