Javascript--HTML DOM基础知识
1.HTML DOM是什么,以及它的作用:
w3c对DOM有一系列的解释和定义,用自己理解的话来说就是:HTML DOM是html的标准对象模型,可以使JavaScript去操作(获取,修改,删除,添加,)HTML对象。
2.DOM 如何获取HTML元素?
在DOM中访问HTML元素的方法有多种 :
1.DOM 节点:
(在核心DOM中访问父子,兄弟节点)
node.parentNode 访问父节点
node.childNodes 访问所有子节点
node.firstChild 访问第一个子节点
node.lastChild 访问最后一个子节点
node.nextSibling 访问下一个兄弟节点
node.previousSibling 访问上一个兄弟节点
(由核心DOM精简出的HTML DOM访问父子、兄弟节点)
element.parentElement 访问父元素
element.childern 访问所有子元素
element.firstElementChild 访问第一个子元素
element.lastElementChild 访问最后一个子元素
element.nextElementChild 访问下一个子元素
element.perviousElementChild 访问上一个子元素
这两者之间的区别就在于 核心DOM无论访问的是父子节点还是兄弟节点 都会将空格,换行符当做节点 这就会造成使用的不便,而精简的HTML DOM 只会访问HTML中的元素。
2.DOM 方法
getElementById(id属性值) 返回带有id的元素
getElementsByTagName(标签名) 返回指定标签名的所有元素 以数组的形式存储
getElementsByClassName(class属性值) 返回是定类名的所有元素 以数组形式存储
getElementsByName(name属性值)
3.css选择器
document.querySelectorAll(" ") 通过选择器获取元素 返回一个数组
document.querySelector(" ") 通过选择器获取元素 返回一个元素
3.DOM 如何修改HTML元素的内容、属性、样式
1.修改其内容(element表示某个元素)
对于双标签:element.innerHTML = “……”
element.text/textcontent = " …… "
这两者的差别在于 innerHTML 修改的是包含标签的文本内容 而text、textcontent修改的是纯文本内容
对于单标签:element.value = " ……"
2.修改其属性
element.class = " " 修改class属性
element.href = " " 修改超链接href属性
当赋值为空时相当于移除这个元素的属性
3.修改其样式
element.style.fontSize = "16px" 修改字体大小
获取标签的样式:getcomputedstyle("标签名") 通过这种方式获取到的样式 只可以查看 不可以修改
4.DOM 如何添加HTML元素
1.追加
element.appendChild(elem) 向父元素element追加一个子元素elem
2.插入
element.insertBefore(elem,oldElem) 向父元素的oldElem元素前插入一个elem元素
3.替换
element.replaceChild(elem,oldElem) 将父元素element的oldElem替换为elem元素
向DOM树添加新元素的方法有多种,使用方法视情况而定,这里举例一种最常用的方法:
1.创建一个新的元素 var div = document.createElement("div")
2.设置其内容:div.innerHTML = " " (若是不需要添加内容可以省略)
3.追加到父元素或者HTML中:parent.appendChild(div)
需要注意的是 由于每向DOM中添加一次元素都会重新对每个元素进行计算和定位 非常耗时 所以尽量将需要添加的元素结构先在内存中构造好 再整体一次性添加到DOM树中
5.DOM如何删除HTML元素
parentNode.removeChild(elem) 删除父节点的elem子节点
Javascript--HTML DOM基础知识的更多相关文章
- javascript中DOM基础知识介绍
1.1. 基本概念 1.1.1. DOM DOM Document Object Model 文档对象模型 就是把HTML文档模型化,当作对象来处理 DOM提供的一系列属性和方法可以 ...
- HTML DOM基础知识
HTML DOM基础知识 一.什么是DOM? 1.HTML DOM 定义了访问和操作HTML文档的标准方法. 2.HTML DOM 把 HTML 文档呈现为带有元素.属性和文本的树结构(节点树). 3 ...
- javascript之正则表达式基础知识小结
javascript之正则表达式基础知识小结,对于学习正则表达式的朋友是个不错的基础入门资料. 元字符 ^ $ . * + ? = ! : | \ / ( ) [ ] { } 在使用这些符号时需要 ...
- ArcGIS API for JavaScript开发初探——基础知识
1.前言 在ArcGIS Web API开发体系中一共有四大类,分别为: ArcGIS API for Flex ArcGIS API for JavaScript ArcGIS API for RE ...
- HTML DOM 基础知识,成为javascript晋级高手的必备手册
一.DOM 简介,什么是 DOM? 文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口. 标记语言,也称置标语言,是一种将文本( ...
- javascript——对象的基础知识
一.javascript作为脚本语言可以完成以下任务: 操纵浏览器对象,如窗口的打开与关闭: 操纵Dom树: 通过XMLHttpRequest对象与服务器端进行异步通信: XML编程,借助于Activ ...
- DOM基础知识整理
--<JavaScript高级程序设计>Chapter10学习笔记 一.节点层次 1.Node类型 1)(Node).nodeType属性 节点nodeType属性有12种. 检测node ...
- JavaScript进阶【三】JavaScript面向对象的基础知识复习
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JavaScript之DOM基础
概述 DOM(Document Object Model)文档对象模型,针对Html和XML的文档的对象API,是一项 W3C (World Wide Web Consortium) 标准.文档对象模 ...
随机推荐
- 三种实现PHP伪静态页面的方法
PHP伪静态写法--其一 伪静态又名:URL重写 主要是为了SEO而生的.(SEO是什么?这个不用问我吧.呵呵-搞网络的不懂SEO那就----) 方法一: 比如这个网页 /soft.php/1,10 ...
- jpeglib.h jerror.h No such file or directory 以及 SDL/SDL.h: 没有那个文件
1. error: jpeglib.h jerror.h No such file or directory 没有那个文件或目录 jpeg.cc:19:21:error: jpeglib.h: 没有那 ...
- Foxmail找回密码 及 Wireshark 使用【我】
Foxmail中设置了密码,但是时间长忘了,现在要用,需要弄出来 首先,安装 Wireshark 抓包工具 一路下一步即可, 安装完确保这个图标表示的组件已经安装: 如果没有安装,在Wireshark ...
- 阶段5 3.微服务项目【学成在线】_day09 课程预览 Eureka Feign_09-课程详情页面静态化-静态页面测试
4 课程详情页面静态化 4.1 静态页面测试 4.1.1 页面内容组成 我们在编写一个页面时需要知道哪些信息是静态信息,哪些信息为动态信息,下图是页面的设计图: 打开静态页面,观察每部分的内容. 红色 ...
- transition css3 渐变效果
div { width:100px; transition: width 2s; -moz-transition: width 2s; /* Firefox 4 */ -webkit-transiti ...
- python 函数、参数及参数解构
函数 数学定义 y=f(x), y是x函数,x是自变量.y=f(x0,x1...xn) Python函数 由若干语句组成的语句块,函数名称,参数列表构成,它是组织代码的最小单位 完成一定的功能 函数作 ...
- jQuery BlockUI Plugin Demo 4(Element Blocking Examples)
Element Blocking Examples This page demonstrates how to block selected elements on the page rather t ...
- 白嫖百度 Tesla V100 笔记(在 AI Studio 上使用 tensorflow 和 pytorch 的方法)
登陆百度 AI Studio 并按照教程创建新项目 启动项目并进入控制台 下载 Anaconda3/Miniconda3 安装脚本 安装在 ~/work/*conda3 目录 输入命令 source ...
- 移动架构之MVP框架
MVP是在开发中常用的框架,要了解其原理,先要从了解MVC开始,这里就对MVP框架做一个简单的介绍 MVC MVC为Model,View与Controllor的缩写 Model:业务逻辑和实体模型 V ...
- Ie浏览器请求400错误,谷歌火狐等浏览器正常请求.
做项目的时候,遇到一个小的问题.一个location.href="请求的url"在其它浏览器上是可以正常请求的.但是在ie浏览器上确出现奇怪的http请求400错误,我们先来对于h ...