JavaScript DOM基础操作详解:节点、获取元素与属性管理
本文系统讲解JavaScript DOM操作的核心概念,包括文档、对象与模型的定义,以及元素、文本和属性节点的区别。重点介绍了通过ID、标签名和类名获取元素的三种方法,并演示了getAttribute与setAttribute对元素属性的读取与修改,为编写基础DOM脚本提供实用指南。
DOM基础概念与节点类型
本文通过具体实例解析JavaScript中的DOM操作技术,旨在帮助读者理解并掌握相关知识点,供学习参考。
一、DOM概念
1. "D":Docment,指的是文档 2. “O”:Object,指的是对象,在javascript有三种对象:用户定义对象、内建对象(JavaScript语言对象。如Math,Array)、宿主对象(浏览器对象) 3. "M":Model,值得是Model,某种事物的表现形式
二、节点
1. 元素节点 :<body> <p> <ul>等 2. 文本节点:<p>文本节点</p>、<li>文本节点</li>等 3. 属性节点:title id class 等
获取元素的三种核心方法
三、获取元素
三种方法:通过元素ID、通过标签名字、通过类名字来获取
请看下面实例:
<h1>What do you want to buy</h1>
<p title="a gentle reminder">Donnot Forget TO Buy This Stuff</p>
<ul id="purchases">
<li>A tin of beans</li>
<li class="sale">Cheese</li>
<li class="sale important">Milk</li>
</ul>
1、getElementsById(id) 返回一个对象
var obj=document.getElementById("purchases");
2、getElementsByTagName() 返回一个对象数组
var obj=document.getElementsByTagName('li')
alert(typeof obj);
alert(obj.length);
for(var i=0;i<obj.length;i++){
alert(typeof obj[i]);
}
3、getElementsByClassName() 返回一个对象数组
var obj=document.getElementsByClassName('sale');
alert("具有sale类的元素个数:"+obj.length);
//important sale顺序颠倒不影响 ----getElementsByClassName('sale important')
var obj_1=document.getElementsByClassName(' important sale');
alert("同时具有important 和sale类的元素个数:"+obj_1.length);
元素属性的读取与设置
四、获取和设置属性
1、getAttribue(attribute)?
var pa=document.getElementsByTagName('p');
for(var i=0;i<pa.length;i++){
var text=pa[i].getAttribute('title');
if(text) alert(text);
}
2、serAttribute(attribue,value)
var shoppping=document.getElementById('purchases');
shoppping.setAttribute('title','A list of goods');
alert(shoppping.getAttribute('title'));
五、小结
- getElementById
- getElementsByTagName
- getElementsByClassName
- getAttribute
- setAttribute
上面5个常见方法是编写DOM脚本的基石
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
JS在setTimeout或Ajax回调中打开新标签页失败怎么处理
2026-11-05 15:50:12
JS直播协议选型:HLS、FLV与WebRTC的延迟与兼容性对比
2026-11-05 12:16:14
JS实现回到顶部:scrollTop赋值与浏览器兼容性处理
2026-11-04 23:43:35
JS使用classList动态添加、移除和切换CSS类名
2026-11-04 23:40:58
在 D3.js 中实现平滑过渡动画的技巧
2026-11-03 23:46:09
