
两种方式:
第一种纯js,使用递归:
<script>
/
第一个参数为页面元素对象或者数组
第二个参数为回调函数回调函数默认传递一个函数,即当前对象
/
function Each(obj,fun){
if('function'!==typeof(fun) || !obj){
return false;
}
if('undefined'!==typeof(objlength)){
for(var i=0;i<objlength;i++){
var o=obj[i];var r=fun(o)||true;
if(r===true){
r=Each(ochildren,fun);
if(!r) return false;
}
}
}else{
var r=fun(obj)||true;
if(r===true){
r=Each(objchildren,fun);
if(!r) return false;
}
}
}
</script>
用法:
//
Each(documentgetElementsByTagName("body"),function(obj){
if(objnodeName==="UL")//obj为当前遍历到的对象
return false;//如果返回false就会停止遍历
alert(objnodeName);
});
第二种方法,使用jquery:
$("body ")each(function(i, obj){
alert( "Item #" + i + ": " + obj );
});
如果你只需要获取最里层的第一个 li 的话,可以用documentquerySelector("on > ul >on")
如果还想获取最里层的所有 li 的话 ,可以用documentquerySelectorAll("on > ul >on")
,最好是给每个ul 加个类名,选择子元素的时候,就不用写那么多层了。
假设HTML结构如下:
<div class="parent"><div id="child1"></div>
<div id="child2"></div>
</div>
则对应的JS代码为:
var child1 = documentgetElementById('child1'),child2 = documentgetElementById('child2');
var height = Mathmax(child1offsetHeight, child2offsetHeight);
child1parentNodestyleheight = height + 'px';
以上就是关于js 怎么获取body中的所有元素 不只是body的子元素,还有子元素的子元素全部的内容,包括:js 怎么获取body中的所有元素 不只是body的子元素,还有子元素的子元素、<ul>标签两层嵌套如何在js中找到第二层<li>标签,不用获取id的方法。两层<li>标签的class是一样的。、JS jq 获取两个子元素高度 判断最大值赋值给父元素 动态加载的 怎麽弄等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)