HTML DOM之属性的各种操作方法
来源:互联网 发布:山东双轨直销软件 编辑:程序博客网 时间:2024/06/05 08:11
1.element.getAttribute(attributename)方法用来返回指定属性名的属性值,返回的类型是字符串类型
2.element.getAttributeNode(attributename)方法从当前元素节点(nodeType值为1的节点)element中通过名称获取属性节点(nodeType值为2的节点),返回值是指定的属性节点
3.element.setAttribute(attributename,attributevalue)方法添加指定的属性,并为其赋指定的值。如果这个指定的属性已存在,则仅设置/更改值,无返回值
4.element.setAttributeNode(attributenode)方法用来向元素中添加指定的属性节点。如果这个指定的属性已存在,则此方法会替换它
5.element.removeAttribute(attributename)方法用来删除指定的属性。没有返回值
注意:此方法与 removeAttributeNode() 方法的差异是:removeAttributeNode() 方法删除指定的 Attr 对象,而此方法删除具有指定名称的属性。结果是相同的。同时此方法不返回值,而 removeAttributeNode() 方法返回被删除的属性,以 Attr 对象的形式
6.element.removeAttributeNode(attributenode)方法用来删除指定的属性,并以 Attr Node 对象返回被删除的属性。返回值是Attr类型的对象
7.element.hasAttribute(attributename)方法用来判断如果存在指定属性,则 hasAttribute() 方法返回 true,否则返回 false
8.node.hasAttributes()方法用来判断节点(不仅仅是元素节点element)是否拥有属性,拥有属性则返回true,否则返回false。如果指定节点不是元素节点,则返回值始终是 false。
注意:
**- Node(节点)是DOM层次结构中的任何类型对象的通用名称,Node有很多类型,如元素节点(element),属性节点(attr),文本节点(text),注释节点(comments)等,通过NodeType区分
**- Element继承了Node类,也就是说Element是Node多种类型中的一种,即当NodeType为1时Node即为ElementNode,另外Element扩展了Node,Element拥有id、class、children等属性
**- 简单的说就是Node是一个基类,DOM中的Element,Text和Comment都继承于它。 换句话说,Element,Text和Comment是三种特殊的Node,它们分别叫做ELEMENT_NODE, TEXT_NODE和COMMENT_NODE
那么下面为什么”document.body.childNodes.length”的结果是9呢?
实际上Node表示的是DOM树的结构,在html中,节点与节点之间是可以插入文本的,这个插入的空隙就是TEXT_NODE
这下就顺理成章了,body的直系元素(3)+ COMMENT_NODE(1) + TEXT_NODE(5) = 9
注意:我们用childNodes找到了NodeList,但我们操作DOM时往往不想操作Node(我只想操作元素Element),那么如何获取ElementList呢?其实我们经常使用的getElementsByXXX返回的就是一个ElementList,只不过它的真实名字是ElementCollection。就像NodeList是Node的集合一样,ElementCollection也是Element的集合。但需要特别注意的是:NodeList和ElementCollcetion都不是真正的数组。如果document.getElementsByTagName(‘a’) instanceof Array,那么必然是false。
阅读全文
0 0
- HTML DOM之属性的各种操作方法
- HTML DOM之标签操作方法
- HTML DOM之节点操作方法(1)
- HTML DOM之节点操作方法(2)
- jQuery中DOM操作方法 之 html,text,val
- 解密jQuery内核 DOM操作方法 之 html,text,val
- 03 JS-DOM之--节点属性操作方法(2种)
- HTML属性与DOM属性的区别
- DOM属性和HTML属性的区别
- html之DOM属性查找,操作
- DOM操作表格的各种属性
- DOM操作表格的各种属性[z]
- JavaScript DOM节点操作方法之我的见解
- Ext 各种dom属性
- Dom模型之dataset属性/Html元素标签的data-*属性
- HTML DOM节点的属性获取
- JS的HTML DOM disabled 属性
- HTML Dom 对象,属性,事件的整理
- 矩形面积并、矩形面积交、矩形周长并(线段树、扫描线总结)
- Widget 桌面小控件
- SQL truncate 、delete和drop的异同
- [LeetCode] Palindrome Pairs
- MyBatis动态查询(where trim set)
- HTML DOM之属性的各种操作方法
- 【MongoDB】mongo时间问题
- JavaScript 跨域访问的问题和解决过程
- calico iptables详解
- 小明的调查作业
- Linux中安装numpy,scipy,matplotib,opencv等函数库
- HTTP 2.0 Client & HTTP 2.0 Server & HTTP 2.0 Proxy
- Android事件分发机制二
- MongoDB(3)——Index的创建流程1