分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

JS-DOM对象

发布时间:2023-09-06 01:59责任编辑:胡小海关键词:DOM

DOM对象

一、DOM对象

  DOM 是 W3C(万维网联盟)的标准。DOM 定义了访问 HTML 和 XML 文档的标准。W3C 文档对象模型(DOM)是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。本文中只介绍基于HTML的 DOM。HTML DOM 定义了所有 HTML 元素的对象和属性,以及访问它们的方法。

 

二、DOM结点

各个结点对象

 ???document     // 整个文档是一个文档节点 ???element      //每个 HTML 元素是元素节点 ???text         //HTML 元素内的文本是文本节点 ???attribute    //每个 HTML 属性是属性节点 ???comment      //注释是注释节点

 

各结点属性

 ???attributes ???//节点(元素)的属性节点 ???nodeType ?????//节点类型 ???nodeValue ????//节点值 ???nodeName ?????//节点名称 ???innerHTML ????//节点所包含的所有元素 ???innerText ????//节点所包含的所有文本元素

 

导航属性

 ???parentNode ??????//节点(元素)的父节点 (推荐) ???firstChild ??????//节点下第一个子元素 ???lastChild ???????//节点下最后一个子元素 ???childNodes ??????//节点(元素)的子节点

 

推荐导航属性

 ???parentElement ???????????????//父节点标签元素 ???children ????????????????????//所有子标签 ???firstElementChild ???????????//第一个子标签元素 ???lastElementChild ????????????//最后一个子标签元素 ???nextElementtSibling ?????????//下一个兄弟标签元素 ???previousElementSibling ??????//上一个兄弟标签元素

 访问HTML属性

 ???getElementById() ?????????//通过id属性访问,不支持局部查找 ???getElementsByTagName() ???//通过标签名字访问 ???getElementsByClassName() ?//通过class名字访问 ???getElementsByName() ??????//通过属性名字访问,不支持局部查找

DOM结点的具体用法

  下面是用于测试的HTML的body内容

 ???<div class="divTag1"> ???????大家好才是真的好! ???????<p name="pTag1" class="pTag2">P标签</p> ???????<div class="divTag2" id="id_Div"> ???????????从你的世界路过 ???????????<div>今天世界很美好</div> ???????????<a href="www.baidu.com">百度</a> ???????</div> ???????<span>成熟是一种明亮而不刺眼的光辉</span> ???</div> ???<span>span标签2</span> ???<div>div标签</div>

  下面是用于测试的JavaScript内容

getElementsByClassName的使用

 ???//getElementsByClassName返回的是一个集合,所以必须取第一个元素 ???var ele = document.getElementsByClassName("divTag1")[0]; ???console.log(ele); ???????????????//显示内部的所有元素 ???console.log(ele.innerHTML); ?????//显示内部的所有元素 ???console.log(ele.innerText); ?????//显示内部的所有文本元素

getElementsByTagName的使用

 ???var ele = document.getElementsByTagName("p"); ???console.log(ele); ??????????//获取所有P标签的集合 ???console.log(ele[0]); ???????//获取所有P标签集合中的第一个元素

getElementsByid的使用

 ???//ID是唯一的,所以通过id获取的标签只有一个 ???var ele = document.getElementById("id_Div"); ???console.log(ele) ??????????????//获取id为id_Div标签 ???console.log(ele.innerHTML); ???//显示标签的元素

getElementsByName的使用

 ???var ele = document.getElementsByName("pTag1"); ???console.log(ele) ????????????????//显示结点列表NodeList(1) ???console.log(ele[0].innerHTML) ???//显示的值为:P标签

导航属性

 ???var ele = document.getElementsByClassName("divTag1")[0]; ???console.log(ele) ???????????????????????//显示集合第一个元素的所有内容 ???console.log(ele.children) ??????????????//显示子元素的所有内容 ???console.log(ele.children[0]) ???????????//子元素的第一个元素 ???console.log(ele.children[0].children) ??//集合为空

局部查找

  在属性导航中,所谓局部查找的意思是在访问HTML属性的基础上进一步访问HTML属性。但需要特别注意的是getElementById()和getElementsByName()不支持局部查找的。

 ???var ele1 = document.getElementsByClassName("divTag1")[0]; ???//在ele1的基础上继续查找 ???var ele2 = ele1.getElementsByTagName("span"); ???console.log(ele2);

 

 

 

 

JS-DOM对象

原文地址:https://www.cnblogs.com/Lynnblog/p/9158012.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved