首页 测试 体会 查看内容

浏览器兼容性测试小记-DOM篇(二)

2014-6-25 14:32| 发布者: tianzc| 查看: 637| 评论: 0

摘要:   1、DOM中的所有节点都继承自Node类型,IE9之前将DOM节点作为COM对象来实现;每个DOM节点都有一个nodeType属性来表明节点类型,总共有12个类型:1 Node.ELEMENT_NODE2 Node.ATTRIBUTE_NODE3 Node.TEXT_NODE4 Node ...
1     <ul id="mylist">2       <li>li1</li>3       <li>li2</li>4       <li>li3</li>5     </ul>6     mylist.childNodes === 3; //IE87     mylist.childNodes === 7; //FF  如果只想访问元素子节点可以使用如下api:1       childElementCount       //返回子元素节点个数2       firstElementChild       //第一个元素子节点3       lastElementChild        //最后一个元素子节点4       previousElementSibling  //前一个兄弟元素5       nextElementSibling      //后一个兄弟元素6       children                //返回所有的元素子节点相关文章:浏览器兼容性测试小记-DOM篇(一)
  6、所有HTML元素都是HTMLElement类型的实例,继承自Element类,比如:HTMLBodyElement、HTMLFormElement、HTMLFrameElement等,除IE外的浏览器都可以访问这些类型的构造函数及原型。IE中将comment节点作为element类型的派生类,因此调用document.getElementsByTagName('*')会将comment节点一并返回。  7、html元素有Attribute(特性)跟Property(属性)的区分。  操作特性的方法主要有getAttribute()、setAttribute()、removeAttribute(),这三个方法可以操作以HTMLElement类型属性形式定义的特性(id、class、title、lang、dir),和自定义属性。如:<div id="element" myAttr="myself"></div> element.getAttribute("myAttr")。  属性是指该元素作为javascript对象,除以上特性外一切可以通过点语法访问的属性,如innerHTML、nodeType等。  特性可以出现在html元素声明中,属性不可以(出了也没用);特性可以通过css属性选择符语法来查询元素,属性不可以  8、element.attributes属性是一个NamedNodeMap对象,与NodeList类似。该属性返回所有在element中声明的特性,IE中会返回所有可能的特性,但在声明的特性中有一个specified属性,该属性为true则为以声明特性。  9、IE9之前不会解析文本之间的空白节点,如下:
123

鲜花

握手

雷人

路过

鸡蛋

扫一扫关注最新动态

毒镜头:老镜头、摄影器材资料库、老镜头样片、摄影
爱评测 aipingce.com  
返回顶部