Javascript 选择具有GetElementsByCassName的所有类,然后单击
我似乎不能点击全班的Javascript 选择具有GetElementsByCassName的所有类,然后单击,javascript,class,html,Javascript,Class,Html,我似乎不能点击全班的 document.getElementsByClassName('node closed')[0].click(); 这可以工作,但只会单击第一个类,我需要它来单击所有名为“node closed”的类 感谢您只需删除[0],它将访问所有匹配的元素,因为[0]点仅指向第一个元素。[0]表示仅由getElementsByClassName返回的节点列表的第一个元素 您必须执行GetElementsByCassName并遍历所有匹配的元素,如下所示: var el = doc
document.getElementsByClassName('node closed')[0].click();
这可以工作,但只会单击第一个类,我需要它来单击所有名为“node closed”的类
感谢您只需删除[0],它将访问所有匹配的元素,因为[0]点仅指向第一个元素。[0]表示仅由getElementsByClassName返回的节点列表的第一个元素 您必须执行GetElementsByCassName并遍历所有匹配的元素,如下所示:
var el = document.getElementsByClassName('node closed');
for (var i=0;i<el.length; i++) {
el[i].click();
}
在循环中迭代结果,并将单击指定给每个元素:
var list=document.getElementsByClassName('node closed')
for(var i=0;i<list.length;i++){
list[i].click()
}
document.getElementsByClassName在IE中存在一些问题 使用jquery
window.onload=function(){
$(.yourclass).each(function(){
$(this).trigger('click');
});
}
我尝试了这个,但我只是得到了错误:TypeError:Object没有方法“click”是的,很抱歉我正要编辑我的帖子。单击方法在节点列表上不起作用。您必须遍历从节点列表返回的所有元素。这可以工作,但似乎不能全部激活它们。有没有办法激活onclick事件?@MaxPort检查一下。我修改了它以适应你的结构。onclick函数被编码为将元素的id打印到控制台日志中。可能是在jQuery中,但不是在vanilla JS中。在这种情况下,问题应该更具描述性。提供的解决方案与javascript中用于索引元素的常规逻辑一致。jQuery对象具有该常规逻辑,但不具有getElementsByClassName返回的s。
$(".node closed").filter(function() {
return $(this).click();
});