HTML DOM节点的增删改查
2015-12-08 19:50
411 查看
上篇博客中,我们已经初步接触了DOM基础,但是我们学习是为了能够更好地应用,今天我们就来看看DOM节点的增删改查。
不管在哪里,我们想要操作一个东西,总是应该先去获得它。那么我们怎么获得呢?
HTML的每个成分都可以看作是节点(文档节点、元素节点、文本节点、属性节点、注释节点,其中,属性节点属于元素节点)。
W3C 提供了比较方便简单的定位节点的方法和属性,以便我们快速的对节点进行操作。
分别为:getElementById()、getElementsByTagName()、getElementsByName()、getAttribute()、setAttribute()和removeAttribute()。
1.getElementById()方法
getElementById()方法,接受一个参数:获取元素的ID。如果找到相应的元素则返回该
元素的 HTMLDivElement对象,如果不存在,则返回null。
PS:id表示一个元素节点的唯一性,不能同时给两个或以上的元素节点创建同一个命名的id。当我们通过getElementById()获取到特定元素节点时,这个节点对象就被我们获取到了,而通过这个节点对象,我们可以访问它的一系列属性。
2.getElementsByTagName()方法
getElementsByTagName()方法将返回一个对象数组HTMLCollection(NodeList),这个数组保存着所有相同元素名的节点列表。
不管是 getElementById还是getElementsByTagName,在传递参数的时候,并不是所有浏览器都必须区分大小写,为了防止不必要的错误和麻烦,我们必须坚持养成区分大小写的习惯。
3.getElementsByName()方法
getElementsByName()方法可以获取相同名称(name)的元素,返回一个对象数组HTMLCollection(NodeList)。
4.getAttribute()方法
getAttribute()方法将获取元素中某个属性的值。它和直接使用.属性获取属性值的方法有
一定区别。
5.setAttribute()方法
setAttribute()方法将设置元素中某个属性和值。它需要接受两个参数:属性名和值。如果属性本身已存在,那么就会被覆盖。
6.removeAttribute()方法
removeAttribute()可以移除HTML属性。
三.DOM节点
1.node节点属性
节点可以分为元素节点、属性节点和文本节点,而这些节点又有三个非常有用的属性,分别为:nodeName、nodeType和nodeValue。
2.层次节点属性
节点的层次结构可以划分为:父节点与子节点、兄弟节点这两种。当我们获取其中一个元素节点的时候,就可以使用层次节点属性来获取它相关层次的节点。
四.节点操作
DOM 不单单可以查找节点,也可以创建节点、复制节点、插入节点、删除节点和替换节点。
这些方法我们都可以将之进行联系起来,这样我们才可以编成一张大的知识网,当然仅仅知道还是不够的,我们要多运用,多找联系,多去总结。
不管在哪里,我们想要操作一个东西,总是应该先去获得它。那么我们怎么获得呢?
HTML的每个成分都可以看作是节点(文档节点、元素节点、文本节点、属性节点、注释节点,其中,属性节点属于元素节点)。
W3C 提供了比较方便简单的定位节点的方法和属性,以便我们快速的对节点进行操作。
分别为:getElementById()、getElementsByTagName()、getElementsByName()、getAttribute()、setAttribute()和removeAttribute()。
1.getElementById()方法
getElementById()方法,接受一个参数:获取元素的ID。如果找到相应的元素则返回该
元素的 HTMLDivElement对象,如果不存在,则返回null。
document.getElementById('box'); //获取id 为 box 的元素节点
PS:id表示一个元素节点的唯一性,不能同时给两个或以上的元素节点创建同一个命名的id。当我们通过getElementById()获取到特定元素节点时,这个节点对象就被我们获取到了,而通过这个节点对象,我们可以访问它的一系列属性。
2.getElementsByTagName()方法
getElementsByTagName()方法将返回一个对象数组HTMLCollection(NodeList),这个数组保存着所有相同元素名的节点列表。
document.getElementsByTagName('*'); //获取所有元素
不管是 getElementById还是getElementsByTagName,在传递参数的时候,并不是所有浏览器都必须区分大小写,为了防止不必要的错误和麻烦,我们必须坚持养成区分大小写的习惯。
3.getElementsByName()方法
getElementsByName()方法可以获取相同名称(name)的元素,返回一个对象数组HTMLCollection(NodeList)。
document.getElementsByName('add') //获取input元素document.getElementsByName('add')[0].value //获取input元素的 value值document.getElementsByName('add')[0].checked//获取input元素的checked值
4.getAttribute()方法
getAttribute()方法将获取元素中某个属性的值。它和直接使用.属性获取属性值的方法有
一定区别。
document.getElementById('box').getAttribute('id');//获取元素的id 值 document.getElementById('box').id;//获取元素的id 值 document.getElementById('box').getAttribute('mydiv');//获取元素的自定义属性值
5.setAttribute()方法
setAttribute()方法将设置元素中某个属性和值。它需要接受两个参数:属性名和值。如果属性本身已存在,那么就会被覆盖。
document.getElementById('box').setAttribute('align','center');//设置属性和值document.getElementById('box').setAttribute('bbb','ccc');//设置自定义的属性和值
6.removeAttribute()方法
removeAttribute()可以移除HTML属性。
document.getElementById('box').removeAttribute('style');//移除属性
三.DOM节点
1.node节点属性
节点可以分为元素节点、属性节点和文本节点,而这些节点又有三个非常有用的属性,分别为:nodeName、nodeType和nodeValue。
2.层次节点属性
节点的层次结构可以划分为:父节点与子节点、兄弟节点这两种。当我们获取其中一个元素节点的时候,就可以使用层次节点属性来获取它相关层次的节点。
四.节点操作
DOM 不单单可以查找节点,也可以创建节点、复制节点、插入节点、删除节点和替换节点。
这些方法我们都可以将之进行联系起来,这样我们才可以编成一张大的知识网,当然仅仅知道还是不够的,我们要多运用,多找联系,多去总结。
相关文章推荐
- HTML 介绍
- html name标签命名规范
- 设置overflow:auto表格没有滚动条的解决办法
- HTML实现页面自动跳转的五种方法
- HTML 占满工作区
- HTML页面3秒后自动跳转的三种常见方法
- Html.BeginForm与Ajax.BeginForm
- html页面中阻止用户选中、复制文本,阻止长按保存图片,阻止拖动元素等……
- win10系统ie浏览器不能打开html的解决办法
- HTML 表单和验证事件
-  |"|&|<|>等html字符转义
- HTML学习笔记
- 首页自动生成静态化html
- 关于html居中的几种方式
- html之页面元素印射
- PHP全站过滤提交的HTML代码
- C#正则表达式通过HTML提取网页中的图片src
- mac系统sublime text2安装HTMLPrettify插件 过程及问题解决方案
- 【html】【1】html的简单结构
- 【html】【0】开始的序言