我正在尝试构建一个在网页中获取所有元素颜色的函数。 为此,我需要运行身体元素的所有孩子并获得他们所有的后代。
如您所知,儿童可能会有所不同(“桌子”,“P”,“A”,“H1”等等),如下图所示:
此外,通常判断样式属于最后一个后代,如下图所示:
在JAVASCRIPT 中是否有一般方法用于循环元素的所有子元素,无论这个元素是什么类型,并获得最后一个元素的后代? P.S(在上图中,相关的后代是:“P”,“TD”。
谢谢你, 多伦
答案 0 :(得分:1)
var allElements = document.getElementsByTagName("*");
for(var i = 0, l = allElements.length ; i < l; i++) {
//get your colors here
}
答案 1 :(得分:1)
使用Jquery
var colors=[];
$('*').each(function(){
colors.push($(this).css('color'));
});
答案 2 :(得分:1)
这个有效! :)
var myEle = $('html');
$('*',myEle).filter(function(){ return !this.childElementCount });
我的代码适用于所有dom元素。 (因为我在html
上运行了这段代码)
因此,您可以输入html
或#id
或任何.class
而不是tag
,而是选择其所有子项。然后我们过滤掉所有这些,只得到那些自己没有孩子的人。