《JavaScript高级程序设计》总结——第11章:DOM扩展

版权声明:转载请先告知哦 https://blog.csdn.net/PINK789/article/details/87161395

一:选择符API

  • querySelector("#test");
  • querySelectorAll("#test")[0];

二:元素遍历

(不返回文本节点和注释)

  • childElementCount;
  • firstElementChild;
  • lastElementChild;
  • previousElementSibling;
  • nextElementChildSibling;

三:HTML5

与类相关的扩充

  • getElementByClassName(“test”)[0];
  • classList(很多浏览器不支持);

焦点管理

  • 元素获取焦点的方法a:页面加载;b:用户输入(通常是按tab键)c:btn.focus()
  • btn.focus()——使btn获取焦点;
  • document.activeElement——当前焦点元素;
  • document.hasFocus()——用于确定文档是否获取焦点;

HTMLDocument

  • document.readyState属性
    • loading,正在加载文档;
    • complete,文档加载完成;
  • 兼容模式document.compatMode属性——用于确定页面的渲染模式;
    • CSS1Compat:混杂模式;
    • BackCompat:标准模式;
  • head属性 var head = document,head || document.getElementsByTagName("head")[0];

字符集属性
- document.charset;
- document.defaultCharset(IE,safari,chrome)

插入标记

  • innerHTML属性div.innerHTML = "Hello World!"

四:专有扩展

文档模式

  • IE规定的,表示页面可以使用呢个层面的CSS,js中可以使用哪些API,以及如何使用doctype
  • 强制浏览器以某种模式渲染页面<meta http-equiv="X-UA-Compatible" content="IE=IEversion">

contains()方法

  • father.contains(child); //true

插入文本

  • innerText属性
  • outerText属性

五:小结

虽然 DOM 为与 XML 及 HTML 文档交互制定了一系列核心 API,但仍然有几个规范对标准的 DOM进行了扩展。这些扩展中有很多原来是浏览器专有的,但后来成为了事实标准,于是其他浏览器也都提供了相同的实现。本章介绍的三个这方面的规范如下。

  • Selectors API,定义了两个方法,让开发人员能够基于 CSS 选择符从 DOM 中取得元素,这两个
    方法是 querySelector()和 querySelectorAll()。
  • Element Traversal,为 DOM 元素定义了额外的属性,让开发人员能够更方便地从一个元素跳到另一个元素。之所以会出现这个扩展,是因为浏览器处理 DOM 元素间空白符的方式不一样。
  • HTML5,为标准的 DOM 定义了很多扩展功能。其中包括在 innerHTML 属性这样的事实标准基础上提供的标准定义,以及为管理焦点、设置字符集、滚动页面而规定的扩展 API。

猜你喜欢

转载自blog.csdn.net/PINK789/article/details/87161395