Javascript:如何遍历页面上的所有DOM元素?

我试图遍历页面上的所有元素,所以我想检查此页面上存在的每个元素是否有特殊类。

那么,我怎么说我要检查每个元素?

回答:

您可以将传递给*getElementsByTagName()以便它将返回页面中的所有元素:

var all = document.getElementsByTagName("*");

for (var i=0, max=all.length; i < max; i++) {

// Do something with the element here

}

请注意querySelectorAll(),如果可用(可以使用IE9+,IE8中的CSS),可以使用来查找具有特定类的元素。

if (document.querySelectorAll)

var clsElements = document.querySelectorAll(".mySpeshalClass");

else

// loop through all elements instead

对于现代浏览器来说,这无疑会加速事情的发展。


浏览器现在在NodeList上支持foreach。这意味着您可以直接循环元素,而不用编写自己的for循环。

document.querySelectorAll('*').forEach(function(node) {

// Do whatever you want with the node object.

});

-尽最大努力确定您要寻找的内容。通用选择器可以根据页面的复杂性返回很多节点。即使您确实需要浏览别人可能看到的'body *'所有head内容,这也意味着您可以用作选择器来剪切所有内容。

以上是 Javascript:如何遍历页面上的所有DOM元素? 的全部内容, 来源链接: utcz.com/qa/430805.html

回到顶部