删除一个父元素下面的所有子元素:
document.getElementById("ok").innerHTML = ""
删除其中的一个:
document.getElementById("ok").remove(document.getElementById("ok").children(i))
//删除id为"ok"下的第i-1个子元素
使用jquery获取某DIV的子元素,通常有以下两种方法:
子元素选择器(>),例如 $("div>img") 获取div下的img子元素;
遍历函数children(),例如 $("div").children("img") 同样是获取div下的img子元素。
如果想要获取DIV下的不仅是子元素,而且还包括其他后代元素(孙辈、曾孙辈元素...),那么,相应的两种方法是:
后代元素选择器(空格),例如 $("div img") 获取div下的所有级别的img后代元素;
遍历函数find(),例如 $("div").find("img") 获取div下的所有级别的ing后代子元素。
两种方式:第一种纯js,使用递归:
<script>
/*
*第一个参数为页面元素对象或者数组
*第二个参数为回调函数【回调函数默认传递一个函数,即当前对象】
*/
function Each(obj,fun){
if('function'!==typeof(fun) || !obj){
return false
}
if('undefined'!==typeof(obj.length)){
for(var i=0i<obj.lengthi++){
var o=obj[i]var r=fun(o)||true
if(r===true){
r=Each(o.children,fun)
if(!r) return false
}
}
}else{
var r=fun(obj)||true
if(r===true){
r=Each(obj.children,fun)
if(!r) return false
}
}
}
</script>
用法:
//
Each(document.getElementsByTagName("body"),function(obj){
if(obj.nodeName==="UL")//obj为当前遍历到的对象
return false//如果返回false就会停止遍历
alert(obj.nodeName)
})
第二种方法,使用jquery:
$("body *").each(function(i, obj){
alert( "Item #" + i + ": " + obj )
})