• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Javascript DOM的简介,节点和获取元素详解

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

DOM

文档:DOM中的“D”,当创建一个网页并把它加载到Web浏览器中时,它把编写的网页文档转换为一个文档对象。

对象:DOM中的“O”,对象是一种自给自足的数据集合。与某个特定对象相关联的变量被称为这个对象的属性,只能通过某个特定对象去调用的函数被称为这个对象的方法

模型:DOM中的“M”,它是某种事物的表现形式。DOM把一份文档表示为一颗家谱树。

节点

节点:文档是由节点构成,节点是文档树上的树枝和树叶。

DOM中有许多不同类型的节点,如元素节点,文本节点和属性节点。

元素节点:

标签的名字就是元素的名字。文本段落元素的名字是“p” ,无序清单元素的名字是“u1”,列表项元素的名字是“1i”。

元素可以包含其他的元素。在我们的“购物清单”文档里,所有的列表项元素都包含在-一个无序清单元素的内部。事实上,没有被包含在其他元素里的唯一元素是元素, 它是我们的节点树的根元素。

文本节点:

元素节点只是节点类型的种。如果一份文档完全由一 些空白元素构成,它将有一个结构,但这份文档本身将不会包含什么内容。在内容为王的互联网上,绝大多数内容都是由文本提供的。如<p>元素包含着的文本是一 个文本节点(text node)。
在XHTML文档里,文本节点总是被包含在元素节点的内部。但并非所有的元素节点都包含文本节点。

属性节点:

属性节点用来对元素做出更具体的描述。如几乎所有的元素都有一个title属性,我们可以利用这个属性对包含在元素里的东西做出准确的描述,属性节点总是包含在元素节点中。

获取元素

有三种DOM方法可以获取元素节点,分别通过元素ID,标签名字和类名字来获取。

getElementById()

DOM提供了一个名为getElementById的方法,这个方法将返回一个与那个有着给定id属性值的元素节点对应的对象,他说document对象特有的函数,函数名的后面必须跟有一对圆括号,这个圆括号包含着函数的参数。getElementById方法只有一个参数,你想获取的那个元素的id属性的值必须放在单引号或双引号里document. getElementById(id)。文档中的每一个元素都是一个对象。DOM提供的方法能得到任何一个对象。例如:

document. getElementById(“purchases”)`

getElementsByTagName()

getElementsByTagName方法返回一个对象数组,每个对象分别对应着文档里有着给定标签的一个元素。这个方法也只有一个参数,它的参数是标签的名字:element.getElementsByTagName(tag) 
但它返回的是一个数组,它与getElementById方法有许多相似之处,如:

document. getElementsByTagName("li");

getElementsByClassName()

这个方法可以可以通过Class属性中的类名来访问元素。getElementsByClassName只接受一个参数,就是类名:

getElementsByClassName(class)

这个方法的返回值与getElementsByTagName()类似,都是一个具有相同类名的元素的数组。如:

document.getElementsByClassName("sale");

使用这个方法还可以查找带有多个类名的元素,只要在字符串参数中使用空格分隔类名即可。

总结:

1、一份文档就是一颗节点数。

2、节点分为不同类型:元素节点、属性节点、和文本节点等。

3、getElementById将返回一个对象,该对象对应着文档里的一个特定的元素。

4、getElementsByTagName和getElementsByClassName将返回一个对象数组,它们分别对应着文档里的一组特定的元素节点。

5、每个节点都是一个对象。

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注极客世界的更多内容!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
一篇文章带你搞懂VUE基础知识发布时间:2022-02-05
下一篇:
JavaScript实现星座查询功能 附详细代码发布时间:2022-02-05
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap