循环遍历一个 div 元素的所有后代元素 - 仅限 JavaScript
- 论坛
- 循环遍历一个 div 元素的所有后代元素 - 仅限 JavaScript
5 浏览
循环遍历一个 div 元素的所有后代元素 - 仅限 JavaScript
我一直在使用jQuery来完成这个任务:
$element.find("*").each(function() { var $this = $(this); $this.removeAttr("style width align"); if ($this.is("embed")) { $element.append(""); $this.attr("width", 640).attr("height", 360).parent().appendTo("#" + element + " .video"); }; });
但我读到jQuery的.each()
方法在与简单的for循环相比时速度较慢(jsPerf)。我的问题是如何使用纯JS来模仿这个功能?找到一个div
内的所有元素,然后遍历这些节点。
我尝试搜索,但好像只能找到jQuery的答案 - 到处都是。
我尝试了其他方法,但这是我能找到的最接近选择所有后代的方法:
var children = document.getElementById('id').getElementsByTagName('*'); for( var i = 0; i