搜索页面文档特定节点的三个方法

       Document接口提供了如下三个方法:

   getElementById():根据id值返回某个标记对应的DOM节点,不存在返回null。
   getElementsByTagName():返回页面所有相同名称的标记对应的DOM对象,返回值为一个集合,不存在返回一个length为0的空集。
   getElementsByName():返回具有相同name属性值的标记对应的节点。

 

	<div>1</div>
	<div>2</div>
	<div>3</div>
 <script type="text/javascript">
	var d =document.getElementsByTagName("div");
	alert(d.length);  //3
	document.body.removeChild(d[2]);
	var d1 =document.getElementsByTagName("div");
	alert(d.length);   //2
	alert(d1.length);  //2 
	//d和d2都指向同一组DOM元素的集合
 </script>

     Element接口也定义了getElementByTagName()方法,不过仅在当前节点包含的子节点中搜索,而不是在整个页面文档中搜索。

<script type="text/javascript">
	var d =document.getElementsByTagName("div");
	alert(d.length);  //0
</script>
<body>
	<div>1</div>
	<div>2</div>
	<div>3</div>
 </body>

 
 

      要注意:页面上频繁使用getElementById()和getElementByTagName()事实上并不会降低页面效率,因为大多数浏览器都针对DOM进行了查询优化,预先准备了id和TagName的索引。不过这样一来,appendChild、removeChild和insertBefore以及对id的赋值操作反而会影响性能。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值