Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >JavaScript-Dom

JavaScript-Dom

作者头像
xiaozhangStu
发布于 2023-05-04 11:15:51
发布于 2023-05-04 11:15:51
53500
代码可运行
举报
文章被收录于专栏:xiaozhangStuxiaozhangStu
运行总次数:0
代码可运行

JavaScript-Dom

简介

DOM:Document Object Model

节点

HTML 文档中的所有内容都是节点

  • 整个文档是一个文档节点
  • 每个 HTML 元素是元素节点
  • HTML 元素内的文本是文本节点
  • 每个 HTML 属性是属性节点
  • 注释是注释节点

document对象

常用属性

名称

说 明

referrer

返回载入当前文档的**URL**

URL

返回当前文档的**URL**

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
document.referrer
document.URL
document常用方法

名称

说 明

getElementById()

返回对拥有指定id的第一个对象的引用

getElementsByName()

返回带有指定名称的对象的集合

getElementsByTagName()

返回带有指定标签名的对象的集合

write()

向文档写文本、HTML表达式或JavaScript代码

节点的属性

属性名称

描述

parentNode

返回节点的父节点

childNodes

返回子节点集合,childNodes[i]

firstChild

返回节点的第一个子节点,最普遍的用法是访问该元素的文本节点

lastChild

返回节点的最后一个子节点

nextSibling

下一个节点

previousSibling

上一个节点

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var obj=document.getElementById("news");
    var str=obj.lastChild.firstChild.nextSibling.nextSibling.innerHTML;
    ////var str=obj.lastChild.lastChild.previousSibling.previousSibling.innerHTML;
    var str=obj.lastElementChild.firstElementChild.innerHTML||obj.lastChild.firstChild.innerHTML;
    alert(str);

element属性

属性名称

描述

firstElementChild

返回节点的第一个子节点,最普遍的用法是访问该元素的文本节点

lastElementChild

返回节点的最后一个子节点

nextElementSibling

下一个节点

previousElementSibling

上一个节点

节点的信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 var nodes=document.getElementById("nodeList");
    var type1=nodes.firstChild.nodeType;
    var type2=nodes.firstChild.firstChild.nodeType;
    var name1=nodes.firstChild.firstChild.nodeName;
    var str=nodes.firstChild.firstChild.nodeValue;
    var con="type1:"+type1+"<br/>type2:"+type2+"<br/>name1:"+name1+"<br/>str:"+str;
    document.getElementById("nodeList").nextSibling.innerHTML=con;

操作节点

操作节点的属性

名称

描述

getAttribute("属性名")

获取属性值

setAttribute("属性名","属性值")

设置属性值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  var ele=document.getElementsByName("book");
        var img=document.getElementById("image");
        if(ele[0].checked){
            img.setAttribute("src","images/dog.jpg");
            img.setAttribute("alt","我和狗狗一起活下来");
            img.nextSibling.innerHTML="我和狗狗一起活下来";
        }
        else if(ele[1].checked){
            img.setAttribute("src","images/mai.jpg");
            img.setAttribute("alt","灰霾来了怎么办");
            img.nextSibling.innerHTML="灰霾来了怎么办";
        }
创建和插入节点

名称

描述

createElement( tagName)

创建一个标签名为tagName的新元素节点

A.appendChild( B)

把B节点追加至A节点的末尾

insertBefore( A,B )

把A节点插入到B节点之前

cloneNode(deep)

复制某个指定的节点

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  var ele=document.getElementsByName("book");
        var bName=document.getElementsByTagName("div")[0];
        if(ele[0].checked){
            var img=document.createElement("img");
            img.setAttribute("src","images/dog.jpg");
            img.setAttribute("alt","我和狗狗一起活下来");
            bName.appendChild(img);
        }
        else if(ele[1].checked){
            var img=document.createElement("img");
            img.setAttribute("src","images/mai.jpg");
            img.setAttribute("alt","灰霾来了怎么办");
            img.setAttribute("onclick","copyNode()")
            bName.appendChild(img);
删除和替换节点

名称

描述

removeChild( node)

删除指定的节点

replaceChild( newNode, oldNode)属性attr

用其他的节点替换指定的节点

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var delNode=document.getElementById("first");
delNode.parentNode.removeChild(delNode);var oldNode=document.getElementById("second");
var newNode=document.createElement("img");
newNode.setAttribute("src","images/f03.jpg");
oldNode.parentNode.replaceChild(newNode,oldNode);
操作节点样式
改变style属性
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
document.getElementById("titles").style.color="#ff0000"; 
document.getElementById("titles").style.fontSize="25px ";
改变className属性
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 document.getElementById("cart").className="cartOver";
 document.getElementById("cartList").className="cartListOver";
获取元素的样式
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
document.getElementById("cartList").display
document.getElementById("cartList").currentStyle.display
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-02-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JavaScript DOM基础
DOM(Document Object Model)即文档对象模型,针对HTML和XML文档的API(应用程序接口)。 一.DOM介绍 DOM中的三个字母,D(文档)可以理解为整个Web加载的网页文档;O(对象)可以理解为类似window对象之类的东西,可以调用属性和方法,这里我们说的是document对象;M(模型)可以理解为网页文档的树型结构。 DOM有三个等级,分别是DOM1、DOM2、DOM3,并且DOM1在1998年10月成为W3C标准。DOM1所支持的浏览器包括IE6+、Firefox、Safa
汤高
2018/01/11
1.5K0
JavaScript学习总结(七)
这一讲我们来学习DOM编程(十分重要),有了DOM编程,我们就可以操作任意的HTML元素了。
roobtyan
2019/02/21
5910
Javascript中的DOM节点类型
var elem = document.getElementById(‘elem_id’);
宅蓝三木
2024/10/09
3810
javascript 操作dom
Node往往被翻译为节点,在一个对象(可以简单的理解为是HTML页面中),一个属性name="aaa"可以是一个节点,一个< div id="aaa">……< /div>也可以是一个节点,在< body>……< /body>中的,也是一个大大的节点。下面是一些有关Node的属性和方法,并没有包含部分不兼容IE和FF内容的讲解。
jack.yang
2025/04/05
2490
javascript入门笔记9-认识DOM
认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。DOM 将HTML文档呈现为带有元素、属性和文本的树结构(节点树)。 将HTML代码
方志朋
2017/12/29
1.4K0
javascript入门笔记9-认识DOM
03_JavaScript学习笔记整理-DOM
DOM :DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范,DOM是一种与浏览器
全栈程序员站长
2021/07/13
7950
DOM(文档对象模型)基础加强
DOM(文档对象模型)基础加强 文档:标记型文档 对象:封装了属性和行为的实例,可以直接被调用。 模型:所有的标记型文档都具有一些共性特征的一个体现。    用来将标记型文档封装成对象,并将标记型文档中的所有内容(标签、文本、属性)都封装成对象。    封装成对象的目的:是为了更方便的操作这些文档及其文档中的所有内容。因为对象包含属性和行为。 标记型文档包含标签、属性、标签中封装的数据。只要是标记型文档,DOM这种技术都可以对其进行操作。 常见的标记型文档包括:HTML、XML。 DOM要操作标记型
黑泽君
2018/10/11
9640
DOM(文档对象模型)基础加强
DOM 节点遍历:掌握遍历 XML文档结构和内容的技巧
XML 经常包含节点之间的换行符或空格字符。当文档由简单编辑器(如记事本)编辑时,通常会出现这种情况。
小万哥
2024/03/31
8700
DOM 节点遍历:掌握遍历 XML文档结构和内容的技巧
JavaScript学习笔记
【如果大家对程序员,web前端感兴趣,想要学习的,关注一下小编吧。加群:731771211。免费赠送web前端系统的学习资料!!前端学习必备公众号ID:mtbcxx】
一墨编程学习
2018/09/14
1.9K0
【收藏】JavaScript DOM操作简易速查手册
本文中简要罗列了JavaScript操作Dom的基本方法,其中包括元素查询、文档结构遍历、属性及内容操作、创建节点、插入节点及删除节点等内容。虽然JQuery更便利,但我还是喜欢用原生的API。
毛瑞
2019/05/06
1.3K0
【收藏】JavaScript DOM操作简易速查手册
DOM「建议收藏」
当创建了一个网页并把它加载到web浏览器中时,DOM就悄然而生。浏览器根据网页文档创建一个文档对象。
全栈程序员站长
2022/09/21
1.2K0
DOM「建议收藏」
DOM笔记2
<!– 节点类型检查 if(someNode.nodeType==ElementNode){ alert(“Node is an element”); } 或者 if(someNode.nodeType==1){ alert(“Node is an element”); } 使用nodeName和nodeValue这两个属性 if(someNode.nodeType==1){ var someNode.nodeName();//nodeName的值是元素的标签名 } 每一个节点都有一个childNodes属性。当中保存NodeList对象,NodeList是一种类型数组对象,用于保存一组有序的节点 这个对象也有length属性,能够通过位置来訪问这些节点 var firstChild=someNode.childNodes[0]; var secondChild=someNode.childNodes.item(1); var length=someNode.childNodes.length; 每一个节点都有一个parentNode属性。该属性指向文档树中的父节点 if(someNode.nextSibling===null){ alert(“last node in the parent’s childNodes list…”); }else if(someNode.previousSibling===null){ alert(“First node in the parent’s childNodes list…”); 假设列表中仅仅有一个节点,那么该节点的nextSibling和previousSibling都为null } 父节点和第一个子节点和最后一个子节点也存在关系 firstChild lastChild 即存在这种关系 (someNode.childNodes[0]===someNode.firstChild) (someNode..childNodes[childNodes.length-1]===someNode.lastChild) 操作节点 最经常使用的方法是appendChilde();//用于向childNodesd的末尾加入一个节点 var returnNode=somenNode.appendChild(newNode); alert(returnNode==newNode);//true alert(someNode.lastChild==newNode);//true 使用insertBefore()方法将节点附加到ChildNodes的任何位置 var returnNode=someNode.appendChild(newNode,null); alert(returnNode==someNode.lastNode);//true //插入后成为一个子节点 var returnNode=someNode.appendChild(newNode,someNode.firstNode); alert(returnNode===newNode); alert(returnNode===someNode.firstNode); //插入后成为最后一个节点的前一个节点 var returnNode=someNode.appendChild(newNode,someNode.lastNode); alert(returnNode===someNode.childNodes.length-2);//true alert(returnNode===newNode);//true //注意:appendChild()和insertBefore不会删除节点 //replaceChild()方法接受两个參数,要插入的节点和要替换的节点,要替换的节点将由这种方法返回并从文档树中删除 //替换第一个子节点 var retuenNode=someNode.replaceChild(newNode,someNode.firstChild); //替换最后一个子节点 var returnNode=somNode.replaceChild(newNode,someNode.lastChild); //使用removeChild()方法删除一个子节点 var formerFirstNode=someNode.removeChild(someNode.firstNode); //删除最后一个子节点 var lastNode=someNode.removeChild(someNode.lastNode); //parentNode属性 。。。
全栈程序员站长
2022/07/06
2560
document对象(DOM)–认识DOM
文档对象模型DOM(Document Object Model)定义访问和处理 HTML文档的标准方法。DOM 将HTML文档呈现为带有元素、属性和文 本的树结构(节点树)。
全栈程序员站长
2022/11/04
1.9K0
JavaScript(十)
DOM(文档对象模型)是针对 HTML 和 XML 文档的一个 API。DOM 描绘了一个层次化的节点树,允许开发人员添加、移除和修改页面的某一部分。
1ess
2021/11/01
8620
DOM常用方法
注意:为了保证兼容性,要判断元素节点的节点类型(nodeType),若nodeType==1,再执行删除操作。通过这个方法,就可以在 IE和 Mozilla 完成正确的操作。
专注APP开发
2019/11/07
5360
系统学习javaweb-06-javascript
parseFloat() 整数字符串仍转换为整数 IsNaN (is not a muber)不是数字返回true,是数字返回false
csxiaoyao
2019/02/20
1.1K0
再谈BOM和DOM(5):各个大流浪器DOM和BOM里面的那些坑—兼容性
所有浏览器的focus/blur事件都不冒泡,万幸的是大部分浏览器支持focusin/focusout事件,不过可恶的firefox连这个都不支持。
周陆军
2021/07/13
1.3K0
前端语言基础【第二篇:JavaScript】
在js里面需要获取到input里面的值,如果把script标签放到head 里面会出现问题。
BWH_Steven
2019/08/19
2.5K0
【JavaScript】之文档对象模型(DOM)详解
JavaScript 的强大之处在于它能够与 HTML 和 CSS 交互,动态地修改网页内容和样式。而实现这一功能的核心就是 DOM(文档对象模型)。
艾伦耶格尔
2025/08/28
1710
【JavaScript】之文档对象模型(DOM)详解
javaScript操作DOM
文档对象模型(Document Object Model, DOM),在控制面板中用window.document获取
河马嘴不大
2022/12/24
7680
javaScript操作DOM
相关推荐
JavaScript DOM基础
更多 >
LV.1
这个人很懒,什么都没有留下~
作者相关精选
加入讨论
的问答专区 >
Java开发擅长1个领域
    领券
    一站式MCP教程库,解锁AI应用新玩法
    涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    本文部分代码块支持一键运行,欢迎体验
    本文部分代码块支持一键运行,欢迎体验