qtreewidget 获取根节点_javascript:什么是Dom节点?

d22a95f8a9a2917a1b57b7b33580bd5e.png

大家好,我是专注前端开发,Web前端,可爱又迷人的前端小姐姐,本期为大家带来的前端入门新知识是”javascript:什么是Dom节点?“,有兴趣做前端开发的朋友,和我一起来看看吧!

本节主要内容:

  1. 什么是DOM?
  2. Document对象
  3. Dom节点分类
  4. Document节点属性
  5. 获取页面元素节点
  6. 创建页面元素
  7. 操作页面元素属性

学习目标:

977503310fc492a179873267c02e4a1f.png

一、什么是DOM?

DOM Document Object Model,文档对象模型,DOM可以以一种独立于平台和语言的方式访问和修改html文档的内容和结构。

efa04fcc4b9b9bffc546ccae7e9a899f.png

二、Document对象

Document 对象是 HTML 文档的根节点。

Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。

Document 对象是 Window 对象的一部分,可通过 window.document 属性对其进行访问

三、DOM节点分类

在 HTML DOM (Document Object Model) 中 , 每一个元素都是 节点:

文档是一个文档节点。

所有的HTML元素都是元素节点。

所有 HTML 属性都是属性节点。

文本插入到 HTML 元素是文本节点。are text nodes。

注释是注释节点。

四、Document节点属性

3.1返回文档内部的某个节点doctype,documentElement,body,head

  1. doctype

a357b14ecbf04de28598aca215c9c9b6.png

2. documentElement

dab4a4bac205497bec9dc37107f4306a.png

3. Body

79152b3152a6a39caa85141f22983fd8.png

4. Head

26e3d04008948a95f8b7ebccc4783f80.png

367c61edc684bbcb6b3ad82a125f1076.png

3.2返回文档指定信息

documentURI,URL,domain,lastModified,location,title,readyState属性

1、documentURI:返回当前的网址(url)

46efd5cc5234149810d61694b99f941c.png

2、URL

e91322477fd57cbc1ccf140dc10f06c6.png

b78a35612a06ffb7432081028eff0ca0.png

3、domain:返回当前的域名

5dfba15891ec2a27db711da554c5b6d5.png

lastModified

bf82466c432bd04a8e42e5b9909ea236.png

2a34f7b143e550d560285b474c3b74ed.png

Location:

location.assign('传递一个url');

window.location = '传递一个url';

location.href = '传递一个url';

1ab028131c90d7503c0055870f749d75.png

Title:

79c5969a5a04eefdcc91654ef1826b06.png

readyState

readyState属性返回当前文档的状态。

共有三种可能值:

加载HTML代码阶段(尚未完成解析)是“loading”,

加载外部资源阶段是“interactive”,

全部加载完成是“complete”。

729afa9c564c281eb3f4a004ee54a288.png

ac1f07b4ad3d2a10a166e97a201dbdd2.png

963a47ec686c9ad46acd5f583c69fa4b.png

3.3返回文档内部特定节点的集合

anchors,forms,images,links,scripts

0aae275e4c6a0855fc750eba5fdec3c6.png

113f91aad3424e44b5753b4c44400745.png

五、获取元素节点(重点)

4.1 getElementById()

getElementById():通过标签的id属性获取元素

4.2 getElementsByTagName()

getElementsByTagName():通过标签名来获取元素。(数组)

4.3 getElementsByName()

getElementsByName():通过标签的name属性获取元素。(数组),

4.4 getElementsByClassName()

getElementsByClassName():通过标签的class属性来获取元素。(数组),有浏览器兼容性,主要是ie8以下。

4.5 querySelector()

querySelector():通过css选择器来获取元素

4.6 querySelectorAll()

querySelectorAll():通过css选择器来获取元素(数组)

4.7 getElement和querySelector的区别

query选择符选出来的元素及元素数组是静态的,而getElement这种方法选出的元素是动态的。静态的就是说选出的所有元素的数组,不会随着文档操作而改变. 在使用的时候getElement这种方法性能比较好,query选择符则比较方便.

1.得到的元素不是需要很麻烦的多次getElementBy..的话,尽量使用getElementBy..,因为他快些。

2.得到的元素需要很麻烦的多次getElementBy..组合才能得到的话使用querySelector,方便。

3.看实际情况,你决定方便优先还是性能优先。

c00221ffdace88aefcbd8be3de9305b8.png

创建li元素,getElement创建元素,会造成死循环,而使用querySelecotor创建的li元素是可以的

3c708b76e3162cfa2e8813400ac9cabf.png

4.7.1实例:修改一个通过单击div块的内容

4.8 作业:日历的制作

4.9 实例:选项卡的制作

833d97583e211c95c1a28873fed89c95.png

普通实现:

bae7b691312643bf68288cc4326bc6e8.png

8de41d3af328ba0e296e3b13ad274010.png

3c90a3ebe8cf5d3c8fe9c71d265f8a68.png

1b7a50dafb90ce52f7b1bc5ca01736a6.png

使用let实现

3b02785c92532bffb28ad7f4d2499372.png

作业:选项卡闭包的实现

作业:创建一张图片,并添加属性,给图片添加边框样式

c23ee094aa39f73e504a3ac26478d5d0.png

2cba47041339120553246765c76325fa.png

六、创建页面元素(重点)

6.1 createElement():创建元素节点

6.2 createTextNode():创建文本节点

86cf7f29006eac2c1b1980c6905905e2.png

6.3 createAttribute():创建属性

7cd4d096962048de96886c9b57195cab.png

6.4 className的使用

6.5 实例:创建一个菜单

创建哪些元素

Ul ,li,

设置属性:样式

685cc1f75f835851f15a2fcb97464762.png

b3b9e8e71ca76114b374633c19272297.png

377bd5e2b00878713df8a56f56b85eca.png

七、操作页面元素属性

7.1 元素属性节点的操作

语法:

setAttribute('属性名','属性值'):给节点元素设置属性

getAttribute('属性名'):获取属性的值

removeAttribute('属性名'):删除属性

750d9564c4382c67cbc508165e5d9d1b.png

1b532caafb5443f448b97422ed0eb97f.png

7.2 style属性的操作

style对象的cssText属性

004ad263b89dc505845c8425c52bafd4.png

65bef1b50d41a2be4cbc3b1a1ac02779.png

7.3 style属性其他方法的操作

style对象提供了三个方法来读写行内css规则:

setProperty(propertyName,value):设置某个CSS属性。

getPropertyValue(propertyName):读取某个CSS属性的值。

removeProperty(propertyName):删除某个CSS属性。

139b526725e4dc4bbe4a9ecf56d225de.png

5481aa88061896157882e14c45e30824.png

4e49ba33bbdd3ef204e64e9d0e25ff69.png

6e6ea8f72c10b762f14827827b163162.png

7.4 setAttribute和createAttribute的区别

ca296d0361678a49a2a5a423acd6ca29.png

b52181b2e8fee997ce40d006d1565fec.png

7.5 作业:创建一个宽度500,高度300,背景蓝色的div块元素。

好了,本期的前端开发知识“javascript:什么是Dom节点?”内容到此结束了,喜欢我的文章的话,点个赞呗,我们下期再见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>