切换至深色主题
Web API
重要通知
。
基本概况
- Web API 接口参考:https://developer.mozilla.org/zh-CN/docs/Web/API
存储对象
Web 存储 API 提供了 sessionStorage (会话存储) 和 localStorage(本地存储)两个存储对象来对网页的数据进行添加、删除、修改、查询操作。
- localStorage 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去除。
- sessionStorage 用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。
DOMParser
DOMParser 可以将存储在字符串中的 XML 或 HTML 源代码解析为一个 DOM Document。
- DOMParser.parseFromString(string, mimeType)
const domParser = new DOMParser();
const doc = domparser.parseFromString(
string, // 要解析的 DOMString。它必须包含 HTML、xml、xhtml+xml 或 svg 文档。
mimeType // 一个 DOMString。这个字符串决定方法返回值的类。
);mimeType类型
----------------------------------------------------------------------------------
mimeType doc.constructor
----------------------------------------------------------------------------------
text/html Document
text/xml XMLDocument
application/xml XMLDocument
application/xhtml+xml XMLDocument
image/svg+xml XMLDocument
----------------------------------------------------------------------------------错误处理
如果解析失败, 不会抛出任何异常,而是会返回一个给定的错误文档:DOMParser
<parsererror xmlns="http://www.mozilla.org/newlayout/xml/parsererror.xml">
(error description)
<sourcetext>(a snippet of the source XML)</sourcetext>
</parsererror>DOMParser HTML 扩展
/*
* DOMParser HTML extension
* 2012-09-04
*
* By Eli Grey, http://eligrey.com
* Public domain.
* NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
*/
/*! @source https://gist.github.com/1129031 */
/*global document, DOMParser*/
(function (DOMParser) {
"use strict";
var proto = DOMParser.prototype,
nativeParse = proto.parseFromString;
// Firefox/Opera/IE throw errors on unsupported types
try {
// WebKit returns null on unsupported types
if (new DOMParser().parseFromString("", "text/html")) {
// text/html parsing is natively supported
return;
}
} catch (ex) {}
proto.parseFromString = function (markup, type) {
if (/^\s*text\/html\s*(?:;|$)/i.test(type)) {
var doc = document.implementation.createHTMLDocument("");
if (markup.toLowerCase().indexOf("<!doctype") > -1) {
doc.documentElement.innerHTML = markup;
} else {
doc.body.innerHTML = markup;
}
return doc;
} else {
return nativeParse.apply(this, arguments);
}
};
})(DOMParser);剪贴板 Clipboard API
剪贴板 Clipboard API 提供了响应剪贴板命令(剪切、复制和粘贴)与异步读写系统剪贴板的能力。从权限 Permissions API 获取权限之后,才能访问剪贴板内容;如果用户没有授予权限,则不允许读取或更改剪贴板内容。