1.Element Traversal API 为DOM元素新增了5个属性:
①childElementCount:返回子元素(不包括文本节点和注释)的个数。
②firstElementChild:指向第一个子元素;firstChild的元素版。
③lastElementChild:指向最后一个子元素;lastChild的元素版。
④previousElementSibling:指向前一个同辈元素;previousSibling的元素版。
⑤nextElementSibling:指向后一个同辈元素;nextSibling的元素版。
2. innerHTML属性:
①IE和Opera会将所有标签转换为大写形式;
②Safari、Chrome、Firefox:原原本本按照原文档的格式返回HTML,包括空格和缩进。
3.大多数浏览器通过innerHTML插入<script>元素不会执行其中的脚本。IE8及更早版本是唯一能在这种情况下执行脚本的浏览器。其执行条件:
①必须为<script>元素指定defer属性
②<script>元素必须位于(微软所谓的)“有作用域的元素”之后。若通过innerHTML插入的字符串开头就是一个“无作用域的元素”,那么IE会在解析这个字符串前线删除该元素。
4.在使用innerHTML、outerHTML属性和insertAdjacentHTML()方法时,最好先手工删除要被替换的元素的所有事件处理程序和JavaScript对象属性。
5. IE9为止有4种文档模式:
①IE5:以混杂模式渲染页面。IE8及更高版本的新功能都无法使用
②IE7:以IE7标准模式渲染页面。IE8及更高版本的新功能都无法使用
③IE8:以IE8标准模式渲染页面。IE9中的新功能无法使用
④IE9:以IE9标准模式渲染页面。这个文档模式是最高级的模式
6.强制浏览器以某种模式渲染页面:
①使用HTTP头部信息X-UA-Compatible
②通过等价的<meta>标签设置:<meta http-equiv="X-UA-Compatible" content="IE=IEVersion">
7.IEVersion有以下值:
①Edge:始终以最新的文档模式来渲染页面
②EmulateIE9:如果有文档类型什么,则以IE9标准模式渲染页面,否则将文档模式设置为IE5
③EmulateIE8:如果有文档类型什么,则以IE8标准模式渲染页面,否则将文档模式设置为IE5
④EmulateIE7:如果有文档类型什么,则以IE7标准模式渲染页面,否则将文档模式设置为IE5
⑤9:强制以IE9标准模式渲染页面,忽略文档类型声明
⑥8:强制以IE8标准模式渲染页面,忽略文档类型声明
⑦7:强制以IE7标准模式渲染页面,忽略文档类型声明
⑧5:强制以IE5标准模式渲染页面,忽略文档类型声明
8.①scrollIntoView()和scrollIntoViewIfNeeded()的作用对象时元素的容器
②scrollByLines()和scrollByPages()影响的是元素自身
9.DOM扩展的规范:
①Selectors API:定义了两个方法(querySelector()和querySelectorAll()),让开发人员能够给予CSS选择符从DOM中取得元素
②Element Traversal:为DOM元素定义了额外的属性,让开发人员能够更方便地从一个元素跳到另一个元素。之所以会出现这个扩展,是因为浏览器处理DOM元素间空白符的方式不一样
③HTML5:为标准的DOM定义了很多扩展功能。其中包括在innerHTML属性这样的事实标准基础上提供的标准定义,以及为管理焦点、设置字符集、滚动页面而规定的扩展API
网友评论