DOM-获取页面元素

文档对象模型(Document Object Model),是W3C阻止推荐的处理可扩展标记语言(HTML或者XML)的标准编程接口。W3C已定义了一系列的DOM接口,通过这些DOM接口可以改变网页的内容、结构和样式。

获取页面元素的方法:1.根据id获取(getElementById()获取元素)

<!DOCTYPE html>
<html>

<head>
	<meta charset="utf-8">
	<title></title>

</head>

<body>
	<div id="time">2021-10-11</div>
	<script>
		//1.文档页面从上往下加载,所以先得有标签  所以我们的script写到标签下面
		//2.get获得element元素by通过驼峰命名法
		//3.参数id是大小写敏感的字符串
		//4.返回的是一个元素对象
		var result = document.getElementById('time');
		console.log(result);
		console.log(typeof result);
		//5.console.dir打印我们返回的元素对象更好的查看里面的属性和方法
		console.dir(result);

	</script>
</body>

</html>

2.根据标签名获取(getElementsByTagName('标签名')返回带有指定标签名的对象的集合)

注意:1.因为得到的是一个对象的集合,所以我们想要操作里面的元素就需要遍历。

2.得到元素对象是动态的。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>获取某类标签元素</title>
	</head>
	<body>
		<ul>
			<li>知否知否,应是绿肥红瘦</li>
			<li>知否知否,应是绿肥红瘦</li>
			<li>知否知否,应是绿肥红瘦</li>
			<li>知否知否,应是绿肥红瘦</li>
		</ul>
		<ol id='ol'>
			<li>昨夜雨疏风骤</li>
			<li>昨夜雨疏风骤</li>
			<li>昨夜雨疏风骤</li>
			<li>昨夜雨疏风骤</li>
			<li>昨夜雨疏风骤</li>
		</ol>
		<script>
			//1.返回的是获取元素对象的集合 以伪数组的形式存储的
			var lis=document.getElementsByTagName('li');
			console.log(lis);
			console.log(lis[0]);
			//2.依次打印里面的元素对象可以采用遍历的方式
			for(var i=0;i<lis.length;i++){
				console.log(lis[i]);
			}
			//3.如果页面中只有一个li 返回的还是伪数组的形式
			//4.如果页面中没有这个元素返回的空的伪数组的形式
			//5.element.getElementsByTagName('标签名');
			//var ol=document.getElementsByTagName('ol');
			//console.log(ol[0].getElementsByTagName('li'));
			var ol=document.getElementById('ol');
			console.log(ol.getElementsByTagName('li'));
			
			            //getElementById,getElementsByName,getElementsByTagName,getElementsByClassName四者之间的区别
			//getElementById():这个方法将返回一个与那个有着给定id属性值的元素节点对应的对象。
			//getElementsByName():方法可返回带有指定名称的对象的集合。
			//getElementsByTagName():方法返回一个对象数组,每个对象分别对应着文档里有着给定标签的一个元素。这个理解起来有点拗口。
			//W3school中是这样定义的:此方法可返回带有指定标签名的对象的集合。
			//getElementsByClassName():方法返回文档中所有指定类名的元素集合,作为 NodeList 对象。
		</script>
	</body>
</html>

3.通过HTML5新增的方法获取

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<div class="box">盒子1</div>
		<div class="box">盒子2</div>
		<div id="nav">
			<ul>
				<li>首页</li>
				<li>产品</li>
			</ul>
		</div>
		<script>
			//1.getElementsByClassName根据类名获得某些元素集合
			var boxs=document.getElementsByClassName('box');
			console.log(boxs);
			//2.querySelector 返回指定选择器的第一个元素对象
			var firstBox=document.querySelector('.box');
			console.log(firstBox);
			var nav=document.querySelector('#nav');
			console.log(nav);
			var li=document.querySelector('li');
			console.log(li);
			//3.querySelectorAll('选择器') 返回选择器所有元素
			var allBox=document.querySelectorAll('.box');
			console.log(allBox);
			//获取body元素
			var bodyEle=document.body;
			console.log(bodyEle);
			//获取HTML元素
			var htmlEle=document.documentElement;
			console.log(htmlEle);
			
		</script>
	</body>
</html>

getElementById, getElementsByName, getElementsByTagName, getElementsByClassName四者之间的区别

getElementById(): 这个方法将返回一个与那个有着给定id属性值的元素节点对应的对象。

getElementsByName(): 方法可返回带有指定名称的对象的集合。

getElementsByTagName(): 方法返回一个对象数组,每个对象分别对应着文档里有着给定标签的一个元素。这个理解起来有点拗口。

W3school中是这样定义的:此方法可返回带有指定标签名的对象的集合。

getElementsByClassName(): 方法返回文档中所有指定类名的元素集合,作为 NodeList 对象。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值