DOM获取

本文通过实例解析HTML DOM结构,展示如何使用JavaScript获取DOM元素、判断子节点、获取属性、创建新节点及使用innerHTML的方法。
1.
<html>
<head>
<title>dom</title>
<script>
function searchDom()
{
	var oLi = document.getElementsByTagName("li");
	alert(oLi.length+" "+oLi[0].tagName+" "+oLi[3].childNodes[0].nodeValue);
	var oUl = document.getElementsByTagName("ul");
	var oLi2 = oUl[1].getElementsByTagName("li");
	alert(oLi2.length+" "+oLi2[0].tagName+" "+oLi2[1].childNodes[0].nodeValue);
}

</script>

</head>
<body onload="searchDom()">
	<ul>客户端语言
		<li>HTML</li>
		<li>JS</li>
		<li>CSS</li>
	</ul>
	<ul>服务器端语言
		<li>ASP</li>
		<li>JSP</li>
		<li>PHP</li>
	</ul>
</body>
</html>

上面代码结果为6 LI ASP

    3 LI JSP



2.判断是否有子节点可以使用
oLi.hasChildNodes()
3.根据dom对象获取属性,oLi.getAttribute("title");
4.创建新节点
var op = document.createElement("p");
var text = document.createTextNode("我是中国人");
op.appendChild(text);
document.body.append(op);
5.innerHTML的使用
var myDiv = document.getElementById("aaa");
myDiv.innerHTML会输出所有该节点下的内容,包括代码标签
也可以直接进行写操作,比如:myDiv.innerHTML = "<img src="11.jpg"/>";


获取DOM的全部子元素,可以使用以下方法: 1. 使用原生JavaScript: - 使用`childNodes`属性可以获取DOM的所有子节点,包括空白节点。例如,`let cc = c.childNodes;`\[1\] - 使用`children`属性可以获取DOM的所有子元素节点,不包括空白节点。例如,`let cc = c.children;`\[1\] - 使用`firstChild`属性可以获取DOM的第一个子节点,包括空白节点。例如,`let first = c.firstChild;`\[1\] - 使用`firstElementChild`属性可以获取DOM的第一个子元素节点,不包括空白节点。例如,`let first = c.firstElementChild;`\[1\] - 使用`lastChild`属性可以获取DOM的最后一个子节点,包括空白节点。例如,`let last = c.lastChild;`\[1\] - 使用`lastElementChild`属性可以获取DOM的最后一个子元素节点,不包括空白节点。例如,`let last = c.lastElementChild;`\[1\] 2. 使用jQuery: - 使用`children()`方法可以返回DOM的所有直接子元素节点。例如,`$("dom").children();`\[3\] - 使用`contents()`方法可以返回DOM的所有内容,包括节点和文本。例如,`$("dom").contents();`\[3\] 综上所述,以上是获取DOM全部子元素的方法。 #### 引用[.reference_title] - *1* [4.DOM(三)1....全部子元素①空白c.childNodes②无空白c.children 3获取第一个和最后一个子元素](https://blog.csdn.net/lazylYYY/article/details/119572165)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [JS DOM获取 兄弟和子 元素节点](https://blog.csdn.net/qq_46275230/article/details/124235525)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [js获取dom元素的子元素,父元素,兄弟元素小记](https://blog.csdn.net/ClearLoveQ/article/details/89277575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值