JavaScript_DOM

简介: 版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/54848178 DOM(document object model) 即文档对象模型。
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/twilight_karl/article/details/54848178

DOM(document object model) 即文档对象模型。
DOM中共有三种类型的节点,元素节点、文本节点、属性节点。

getElementsById()

通过ID获取元素
一个ID只能使用一次,所以,该方法会返回一个唯一的对象
注:可以使用typeof判断变量的类型

typedof + 变量名

以下面这段代码为例:

<html lang="en">
    <head>
        <meta charset="utf-8"/>
        <title>Shopping list</title>
    </head>
    <body>
        <h1>What to by</h1>
        <p title="a gentle reminder">Don't forget to buy this stuff</p>
        <ul id="purchases">
            <li>A tin of beans</li>
            <li class="sale">Cheese</li>
            <li class="sale implement">Milk</li>
        </ul>

    <script src="JS/test1.js"></script>
    </body>
</html>
var temp = document.getElementById("purchases");
alert(typeof temp);

结果为object

getElementsByTagName()

根据标签名返回一个对象数组

使用以下JavaScript语句:

var temp = document.getElementsByTagName("li");
alert(temp.length);

结果是3 ,表示一个长度为3的数组。也可以将函数参数改为通配符*,这样表示获取DOM中的所有标签。

getElementsByClassName()

通过类名获取元素,返回一个数组。参数为类名,类名可以不唯一,多个类名表示同时含有多个类名的元素,类名顺序可以不固定
这个方法比较新,不是所有浏览器都支持

获取/更改标签中的属性值

可以通过getAttribute(attribute)获取元素中的属性值,通过setAttribute(attribute,value)来更改属性的值,如果一个元素原来没有这个属性,使用setAttribute会先创建这个属性在给这个属性赋值,虽然创建了这个属性,但是网页的源码并不会因此发生任何改变,

var temp = document.getElementsByTagName("p");
for(var i = 0 ; i < temp.length; i++){
    alert(temp[i].getAttribute("title"));
    temp[i].setAttribute("title","s");
    alert(temp[i].getAttribute("title"));
}

结果是先弹出a gentle reminder,再弹出s,因为title的值被更改为s。

相关文章
|
2月前
|
缓存 JavaScript 前端开发
【JavaScript 技术专栏】DOM 操作全攻略:从基础到进阶
【4月更文挑战第30天】本文深入讲解JavaScript与DOM交互,涵盖DOM基础、获取/修改元素、创建/删除元素、事件处理结合及性能优化。通过学习,开发者能掌握动态改变网页内容、结构和样式的技能,实现更丰富的交互体验。文中还讨论了DOM操作在实际案例、与其他前端技术结合的应用,助你提升前端开发能力。
|
22天前
|
JavaScript 前端开发 UED
JavaScript基础-DOM操作:查找、创建、修改
【6月更文挑战第12天】本文介绍了DOM基础,包括查找元素(getElementById、getElementsByClassName等)、创建新节点(createElement、createTextNode)和修改节点(innerText、innerHTML、setAttribute等)。强调了易错点,如ID唯一性、性能考量和安全问题,并提供了代码示例。熟练掌握DOM操作对前端开发至关重要,但应注意性能优化,适时使用框架或库。
JavaScript基础-DOM操作:查找、创建、修改
|
7天前
|
JavaScript 前端开发 算法
虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。
【6月更文挑战第27天】虚拟DOM是React的关键技术,它是个轻量的JS对象树,模拟实际DOM结构。当状态改变,React不直接修改DOM,而是先构建新的虚拟DOM树。通过 diff 算法比较新旧树,找到最小变更,仅更新必要部分,提高性能,避免频繁DOM操作。虚拟DOM还支持跨平台应用,如React Native。它优化了更新流程,简化开发,并提升了用户体验。
15 1
|
22天前
|
JavaScript 前端开发 安全
【JavaScript 】DOM操作快速入门
【JavaScript 】DOM操作快速入门
16 2
|
3天前
|
JavaScript 前端开发
JavaScript 遍历DOM
JavaScript 遍历DOM
4 0
|
6天前
|
前端开发 JavaScript 程序员
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
探索JavaScript宝库:打开基础知识与实用技能之门(数据类型与变量+ 条件与循环+函数与模块+DOM+异常+ES6)
7 0
|
9天前
|
Web App开发 移动开发 JavaScript
探索 JavaScript 宇宙:DOM与BOM的星际邂逅
探索 JavaScript 宇宙:DOM与BOM的星际邂逅
|
16天前
|
移动开发 JavaScript 前端开发
原生js如何获取dom元素的自定义属性
原生js如何获取dom元素的自定义属性
19 0
|
2月前
|
XML JavaScript 前端开发
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
JavaScript简介&引入方式(JavaScript基础语法、JavaScript对象、BOM、DOM、事件监听)
20 2
|
2月前
|
JavaScript Java
JavaSE精选-JS&DOM
JavaSE精选-JS&DOM
22 1