Web API 一览表
浏览器的所有 API 及对应标准
这部分将梳理浏览器上的所有 API,即 window
的全局属性。
以 Chrome 为例,在开发者工具的 Console 选项卡里执行 Object.getOwnPropertyNames(window)
共得到了 1020 个属性。
// Chrome 98.0.4758.80 (Official Build) (x86_64)
let all = Object.getOwnPropertyNames(window);
console.log('总数', all.length); // 1020
我们知道,浏览器的 API 大致分为以下 4 类:
JavaScript 固有对象
DOM API
CSSOM API
HTML 相关
接下来,我们就逐类处理下。
1. JavaScript 固有对象
这部分由标准规定,是随着 JavaScript 运行时环境的创建而自动创建的对象实例。在任何 JavaScript 代码执行之前,它们就已经被创建好了,类似于基础库的角色。
在 ECMA262 标准中,可以找到 47 个“顶级”固有对象,过滤的脚本如下:
// https://tc39.es/ecma262/multipage/ecmascript-data-types-and-values.html#sec-well-known-intrinsic-objects
let IntrinsicObjects = new Set();
document.querySelector('#table-7').querySelectorAll('td:nth-child(2)').forEach(item => {
let name = item.innerText.split('.')[0];
if (name) {
IntrinsicObjects.add(name)
}
});
console.log(IntrinsicObjects); // 47个
再加 3 个和 bigInt 相关的、4 个值属性、3 个内存管理和 5 个 Generator,一共 62 个。转成字符串方便查看,如下:
// 47个JS固有对象 https://tc39.es/ecma262/multipage/ecmascript-data-types-and-values.html#sec-well-known-intrinsic-objects
// 3个BigInt https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-bigint-objects
// 4个值属性+3个内存管理 https://tc39.es/ecma262/multipage/global-object.html#sec-value-properties-of-the-global-object
// 5个Generator https://tc39.es/ecma262/multipage/control-abstraction-objects.html#sec-generator-objects
const JS_IntrinsicObjects = [
'globalThis', 'undefined', 'NaN', 'Infinity', // 值属性(4个)
'Boolean', 'String', 'Number', 'BigInt', 'Symbol', 'Object', // 基本对象
'eval', 'isFinite', 'isNaN', 'parseFloat', 'parseInt', 'decodeURI', 'encodeURI', 'encodeURIComponent', 'decodeURIComponent', // 函数属性
'AggregateError', 'FinalizationRegistry', 'WeakRef', // 内存管理(3个)
'Array', 'Int8Array', 'Int16Array', 'Int32Array', 'Float32Array', 'Float64Array', 'Uint8Array', 'Uint16Array', 'Uint32Array', 'Uint8ClampedArray', 'BigInt64Array', 'BigUint64Array', // 索引集合
'ArrayBuffer', 'SharedArrayBuffer', 'DataView', // 二进制操作
'Map', 'Set', 'WeakMap', 'WeakSet', // 键集合
'Date', 'RegExp', 'Promise', 'Proxy', 'Function', // 基础功能和数据结构
'Math', 'JSON', 'Reflect', 'Atomics', // 命名空间
'Error', 'SyntaxError', 'TypeError', 'URIError', 'EvalError', 'RangeError', 'ReferenceError',
'Generator', 'GeneratorFunction', 'AsyncFunction', 'AsyncGenerator', 'AsyncGeneratorFunction' // Generator(5个)
];
值属性(2个)
globalThis
Infinity
数据类型
原始值(2个)
undefined
NaN
原始类型(5个)
Boolean
String
Number
BigInt
Symbol
对象类型(1个)
Object
最常用
基础功能(6个)
Array
数组(索引集合)
Date
RegExp
Promise
Proxy
Function
键集合(4个)
Map
, WeakMap
Set
, WeakSet
函数属性(9个)
eval()
isFinite()
isNaN()
parseFloat()
parseInt()
decodeURI()
encodeURI()
encodeURIComponent()
decodeURIComponent()
命名空间(4个)
Math
JSON
Reflect
Atomics
其它
二进制(3个)
ArrayBuffer
SharedArrayBuffer
DataView
类型数组(11个)
Int8Array
Int16Array
Int32Array
Float32Array
Float64Array
Uint8Array
Uint16Array
Uint32Array
Uint8ClampedArray
BigInt64Array
BigUint64Array
Error 类型(7个)
Error
SyntaxError
TypeError
ReferenceError
URIError
EvalError
RangeError
更多
内存管理(3个)
AggregateError
FinalizationRegistry
WeakRef
Generator(5个)
Generator
GeneratorFunction
AsyncFunction
AsyncGenerator
AsyncGeneratorFunction
2. DOM API
DOM 标准主要定义了:
事件:可以用代码过滤出来,即判断其是否为
Event
的实例节点:也可以用代码过滤,即判断其是否为
Node
的实例DOM Range 及其它
下面是与 DOM 标准相关的 window 全局属性(含部分事件和节点)。
const DOM = [
'Event', 'CustomEvent', 'EventTarget', 'AbortController', 'AbortSignal', 'NonElementParentNode', 'DocumentOrShadowRoot', 'ParentNode', 'NonDocumentTypeChildNode', 'ChildNode', 'Slottable', 'NodeList', 'HTMLCollection', 'MutationObserver', 'MutationRecord', 'Node', 'Document', 'XMLDocument', 'DOMImplementation', 'DocumentType', 'DocumentFragment', 'ShadowRoot', 'Element', 'NamedNodeMap', 'Attr', 'CharacterData', 'Text', 'CDATASection', 'ProcessingInstruction', 'Comment', 'AbstractRange', 'StaticRange', 'Range', 'NodeIterator', 'TreeWalker', 'DOMTokenList', 'XPathResult', 'XPathExpression', 'XPathEvaluatorBase', 'XPathEvaluator', 'XSLTProcessor', // [data-dfn-type='interface']
'EventListener', 'MutationCallback', 'NodeFilter', 'XPathNSResolver', // [data-dfn-type='callback']
'addEventListener', 'removeEventListener', 'dispatchEvent' // [data-dfn-type='method']
];
3. CSSOM API
这部分主要对应 2 个标准:
CSS Object Model (CSSOM):和 CSS 的语言特性一一对应
CSSOM View Module:是浏览器提供的关于操作页面渲染后视图的属性和方法
const CSSOM = [
'MediaList', 'StyleSheet', 'CSSStyleSheet', 'StyleSheetList', 'LinkStyle', 'CSSRuleList', 'CSSRule', 'CSSStyleRule', 'CSSImportRule', 'CSSGroupingRule', 'CSSPageRule', 'CSSMarginRule', 'CSSNamespaceRule', 'CSSStyleDeclaration', 'ElementCSSInlineStyle', 'getComputedStyle'
];
const CSSOM_View = [
'matchMedia', 'Screen', 'MediaQueryList', 'MediaQueryListEvent', 'CaretPosition', 'GeometryUtils',
'moveTo', 'moveBy', 'resizeTo', 'resizeBy', // browsing context
'innerWidth', 'innerHeight', // viewport
'scrollX', 'pageXOffset', 'scrollY', 'pageYOffset', 'scroll', 'scrollTo', 'scrollBy', // viewport scrolling
'screenX', 'screenLeft', 'screenY', 'screenTop', 'outerWidth', 'outerHeight', 'devicePixelRatio' // client
];
此外,还有很多名字里包含“CSS”字符串的属性/接口,这里就不一一列出来了(详见附录),因为代码里可以直接用 string pattern 过滤掉。
4. HTML 相关
这部分主要分为:
7.3 The Window object 定义了 window 对象上的全局属性,详见下方
HTMLSpec_Window
变量里的内容4.1 The document element 定义了元素对应的 DOM 接口,也是全局的(可以用代码过滤,同 Node节点)
其它接口,详见下方
HTMLSpec_Others
变量里的内容
// https://html.spec.whatwg.org/multipage/window-object.html#the-window-object
const HTMLSpec_Window = [
'window', 'self', 'document',
'name', 'location', 'history', 'customElements', // the current browsing context
'locationbar', 'menubar', ' personalbar', 'scrollbars', 'statusbar', 'toolbar', 'personalbar',
'status', 'close', 'closed', 'stop', 'focus', 'blur',
'frames', 'length', 'top', 'opener', 'parent', 'frameElement', 'open', // other browsing contexts
'navigator', 'clientInformation', 'originAgentCluster', // the user agent
'alert', 'confirm', 'prompt', 'print', 'postMessage', // user prompts
];
const HTMLSpec_Others = [
'Storage', 'WindowSessionStorage', 'WindowLocalStorage', 'StorageEvent',
'sessionStorage', 'localStorage',
'atob', 'btoa', 'createImageBitmap',
'crossOriginIsolated', 'isSecureContext', 'origin', 'setTimeout', 'clearTimeout', 'setInterval', 'clearInterval', 'queueMicrotask', 'structuredClone', // 'For web developers (non-normative)'
'cancelAnimationFrame', 'requestAnimationFrame',
'HTMLAllCollection', 'HTMLFormControlsCollection', 'RadioNodeList', 'HTMLOptionsCollection',
'DOMParser', 'DOMException', 'DOMStringList', 'DOMStringMap', 'HTMLHyperlinkElementUtils',
'MediaError', 'AudioTrackList', 'AudioTrack', 'VideoTrackList',
'VideoTrack', 'TextTrackList', 'TextTrack', 'TextTrackCueList', 'TextTrackCue', 'TimeRanges', 'TrackEvent', 'ValidityState', 'SubmitEvent', 'FormDataEvent',
'CanvasRenderingContext2D', 'CanvasState', 'CanvasTransform', 'CanvasCompositing', 'CanvasImageSmoothing', 'CanvasFillStrokeStyles', 'CanvasShadowStyles', 'CanvasFilters', 'CanvasFilter', 'CanvasRect', 'CanvasDrawPath', 'CanvasUserInterface', 'CanvasText', 'CanvasDrawImage', 'CanvasImageData', 'CanvasPathDrawingStyles', 'CanvasTextDrawingStyles', 'CanvasPath', 'CanvasGradient', 'CanvasPattern', 'TextMetrics', 'ImageData', 'Path2D', 'ImageBitmapRenderingContext', 'OffscreenCanvas',
'OffscreenCanvasRenderingContext2D', 'CustomElementRegistry', 'ElementInternals', 'ElementContentEditable',
'DataTransfer', 'DataTransferItemList', 'DataTransferItem', 'DragEvent', 'Window', 'BarProp', 'History', 'Location',
'PopStateEvent', 'HashChangeEvent', 'PageTransitionEvent', 'BeforeUnloadEvent', 'ErrorEvent', 'PromiseRejectionEvent', 'GlobalEventHandlers', 'WindowEventHandlers', 'DocumentAndElementEventHandlers', 'WindowOrWorkerGlobalScope', 'DOMParser', 'Navigator', 'NavigatorID', 'NavigatorLanguage', 'NavigatorOnLine', 'NavigatorContentUtils', 'NavigatorCookies', 'ImageBitmap', 'AnimationFrameProvider', 'MessageEvent', 'EventSource', 'WebSocket', 'CloseEvent', 'MessageChannel', 'MessagePort', 'BroadcastChannel', 'WorkerGlobalScope', 'DedicatedWorkerGlobalScope', 'SharedWorkerGlobalScope', 'AbstractWorker', 'Worker', 'SharedWorker', 'NavigatorConcurrentHardware', 'WorkerNavigator', 'WorkerLocation', 'FakeWorkletGlobalScope', 'WorkletGlobalScope', 'Worklet', 'External'
];
5. WHATWG 的其它标准
const WHATWG_Others = [
'console', // https://console.spec.whatwg.org
'XMLHttpRequestEventTarget', 'XMLHttpRequestUpload', 'XMLHttpRequest', 'FormData', 'FormDataEntryValue', 'ProgressEvent', // https://xhr.spec.whatwg.org
'fetch', 'Headers', 'Body', 'Request', 'Response', // https://fetch.spec.whatwg.org/
'URL', 'URLSearchParams', // https://url.spec.whatwg.org
'NavigatorStorage', 'StorageManager', // https://storage.spec.whatwg.org/
'Notification', 'NotificationEvent', // https://notifications.spec.whatwg.org/#api
'WritableStream', 'WritableStreamDefaultWriter', 'WritableStreamDefaultController', // https://streams.spec.whatwg.org
'TextDecoder', 'TextEncoder', 'TextDecoderStream', 'TextEncoderStream', // https://encoding.spec.whatwg.org/#dom-textencoder
'ReadableStream', 'ReadableStreamDefaultReader', 'ReadableStreamBYOBReader', 'ReadableStreamDefaultController', 'ReadableByteStreamController', 'ReadableStreamBYOBRequest', 'WritableStream', 'WritableStreamDefaultWriter', 'WritableStreamDefaultController', 'TransformStream', 'TransformStreamDefaultController', 'ByteLengthQueuingStrategy', 'CountQueuingStrategy' // https://streams.spec.whatwg.org/#blqs-class
];
6. ECMA402
const ECMA402 = [
'Intl' // 国际化, https://tc39.es/ecma402/#intl-object
];
7. W3C 的其它标准
// 内容较多,为了可读性就不全贴了
// 详见源码 https://github.com/anjia/blog/blob/master/src/browserAPIs.html
const W3C_Others = [
'StylePropertyMap', 'StylePropertyMapReadOnly', // W3C, CSS Typed OM Level 1
'FontFace', 'FontFaceSet', 'FontFaceSetLoadEvent', // W3C, CSS Font Loading 3
'AnimationEvent', // W3C, CSS Animations
'TransitionEvent', // W3C, CSS Transitions
'indexedDB', // W3C, Indexed Database API
'crypto', // W3C, Web Cryptography API
'caches', // W3C, Service Workers
'performance', // W3C, Navigation Timing
'Selection', // W3C, ED, Selection API
...
...
'DOMRectList', 'DOMRect', 'DOMQuad', 'DOMRectReadOnly', 'DOMPointReadOnly', 'DOMPoint', 'DOMMatrixReadOnly', 'DOMMatrix' // W3C, Geometry Interfaces Module Level 1
];
8. 其它组织
const Other_Orgs = [
'WebAssembly', // https://webassembly.github.io/spec/js-api/#webassembly-namespace
'InputDeviceCapabilities', // https://wicg.github.io/input-device-capabilities
'XRCompositionLayer', 'XRProjectionLayer', 'XRQuadLayer', 'XRCylinderLayer', 'XREquirectLayer', 'XRCubeLayer', 'XRSubImage', 'XRWebGLSubImage', 'XRWebGLBinding', 'XRMediaBinding', 'XRLayerEvent', // https://immersive-web.github.io/layers/
'XRLightEstimate', 'XRLightProbe', // https://immersive-web.github.io/lighting-estimation/
'XRHitTestSource', 'XRTransientInputHitTestSource', 'XRHitTestResult', 'XRTransientInputHitTestResult', 'XRRay', // https://immersive-web.github.io/hit-test/, WebXR Hit Test Module
'SVGElement', 'SVGBoundingBoxOptions', 'SVGGraphicsElement', 'SVGGeometryElement', 'SVGNumber', 'SVGLength', 'SVGAngle', 'SVGNumberList', 'SVGLengthList', 'SVGStringList', 'SVGAnimatedBoolean', 'SVGAnimatedEnumeration', 'SVGAnimatedInteger', 'SVGAnimatedNumber', 'SVGAnimatedLength', 'SVGAnimatedAngle', 'SVGAnimatedString', 'SVGAnimatedRect', 'SVGAnimatedNumberList', 'SVGAnimatedLengthList', 'SVGUnitTypes', 'SVGTests', 'SVGFitToViewBox', 'SVGURIReference', // https://svgwg.org/svg2-draft/types.html
'SVGTransform', 'SVGTransformList', 'SVGAnimatedTransformList', 'SVGPreserveAspectRatio', 'SVGAnimatedPreserveAspectRatio', // https://svgwg.org/svg2-draft/coords.html
'SVGRectElement', 'SVGCircleElement', 'SVGEllipseElement', 'SVGLineElement', 'SVGAnimatedPoints', 'SVGPointList', 'SVGPolylineElement', 'SVGPolygonElement', // https://svgwg.org/svg2-draft/shapes.html
'MIDIInputMap', 'MIDIOutputMap', 'MIDIAccess', 'MIDIPort', 'MIDIInput', 'MIDIOutput', 'MIDIMessageEvent', 'MIDIConnectionEvent', // Web MIDI API, https://webaudio.github.io/web-midi-api/#midiaccess-interface
'WebGLQuery', 'WebGLSampler', 'WebGLSync', 'WebGLTransformFeedback', 'WebGLVertexArrayObject', 'WebGL2RenderingContextBase', 'WebGL2RenderingContextOverloads', 'WebGL2RenderingContext', 'WebGLObject', 'WebGLBuffer', 'WebGLFramebuffer', 'WebGLProgram', 'WebGLRenderbuffer', 'WebGLShader', 'WebGLTexture', 'WebGLUniformLocation', 'WebGLActiveInfo', 'WebGLShaderPrecisionFormat', 'WebGLRenderingContextBase', 'WebGLRenderingContext', 'WebGLContextEvent' // WebGL
];
过滤完以上提到的所有内容,还剩 41 个属性,它们有些是已经废弃/过时了的,有些是尚未标准化的,具体内容详见源码,代码的运行结果如下图所示。
9. 总结
这部分介绍并梳理了浏览器的所有 API 及其对应标准,旨在对其有个概况性的认识。
JavaScript 固有对象(62个)
DOM API:节点、事件、Range 等
CSSOM:CSSOM、CSSOM View
HTML:全局属性、元素及事件等
其它
WHATWG 的其它标准:console, fetch, xhr, url, storage 等
代码详见:https://github.com/anjia/blog/blob/master/src/browserAPIs.html
9.1 主要标准
9.2 扩展阅读
9.3 附录
// Node 159
// Event 75, on 110
// CSS 46
// webkit 13, Error 15
let pattern = {
"Node": ["Option","Image","Audio","XMLDocument","Text","ShadowRoot","SVGViewElement","SVGUseElement","SVGTitleElement","SVGTextPositioningElement","SVGTextPathElement","SVGTextElement","SVGTextContentElement","SVGTSpanElement","SVGSymbolElement","SVGSwitchElement","SVGStyleElement","SVGStopElement","SVGSetElement","SVGScriptElement","SVGSVGElement","SVGRectElement","SVGRadialGradientElement","SVGPolylineElement","SVGPolygonElement","SVGPatternElement","SVGPathElement","SVGMetadataElement","SVGMaskElement","SVGMarkerElement","SVGMPathElement","SVGLinearGradientElement","SVGLineElement","SVGImageElement","SVGGraphicsElement","SVGGradientElement","SVGGeometryElement","SVGGElement","SVGForeignObjectElement","SVGFilterElement","SVGFETurbulenceElement","SVGFETileElement","SVGFESpotLightElement","SVGFESpecularLightingElement","SVGFEPointLightElement","SVGFEOffsetElement","SVGFEMorphologyElement","SVGFEMergeNodeElement","SVGFEMergeElement","SVGFEImageElement","SVGFEGaussianBlurElement","SVGFEFuncRElement","SVGFEFuncGElement","SVGFEFuncBElement","SVGFEFuncAElement","SVGFEFloodElement","SVGFEDropShadowElement","SVGFEDistantLightElement","SVGFEDisplacementMapElement","SVGFEDiffuseLightingElement","SVGFEConvolveMatrixElement","SVGFECompositeElement","SVGFEComponentTransferElement","SVGFEColorMatrixElement","SVGFEBlendElement","SVGEllipseElement","SVGElement","SVGDescElement","SVGDefsElement","SVGComponentTransferFunctionElement","SVGClipPathElement","SVGCircleElement","SVGAnimationElement","SVGAnimateTransformElement","SVGAnimateMotionElement","SVGAnimateElement","SVGAElement","ProcessingInstruction","Node","HTMLVideoElement","HTMLUnknownElement","HTMLUListElement","HTMLTrackElement","HTMLTitleElement","HTMLTimeElement","HTMLTextAreaElement","HTMLTemplateElement","HTMLTableSectionElement","HTMLTableRowElement","HTMLTableElement","HTMLTableColElement","HTMLTableCellElement","HTMLTableCaptionElement","HTMLStyleElement","HTMLSpanElement","HTMLSourceElement","HTMLSlotElement","HTMLSelectElement","HTMLScriptElement","HTMLQuoteElement","HTMLProgressElement","HTMLPreElement","HTMLPictureElement","HTMLParamElement","HTMLParagraphElement","HTMLOutputElement","HTMLOptionElement","HTMLOptGroupElement","HTMLObjectElement","HTMLOListElement","HTMLModElement","HTMLMeterElement","HTMLMetaElement","HTMLMenuElement","HTMLMediaElement","HTMLMarqueeElement","HTMLMapElement","HTMLLinkElement","HTMLLegendElement","HTMLLabelElement","HTMLLIElement","HTMLInputElement","HTMLImageElement","HTMLIFrameElement","HTMLHtmlElement","HTMLHeadingElement","HTMLHeadElement","HTMLHRElement","HTMLFrameSetElement","HTMLFrameElement","HTMLFormElement","HTMLFontElement","HTMLFieldSetElement","HTMLEmbedElement","HTMLElement","HTMLDocument","HTMLDivElement","HTMLDirectoryElement","HTMLDialogElement","HTMLDetailsElement","HTMLDataListElement","HTMLDataElement","HTMLDListElement","HTMLCanvasElement","HTMLButtonElement","HTMLBodyElement","HTMLBaseElement","HTMLBRElement","HTMLAudioElement","HTMLAreaElement","HTMLAnchorElement","Element","DocumentType","DocumentFragment","Document","Comment","CharacterData","CDATASection","Attr"],
"Event": ["WheelEvent","WebGLContextEvent","UIEvent","TransitionEvent","TrackEvent","TouchEvent","TextEvent","SubmitEvent","StorageEvent","SecurityPolicyViolationEvent","RTCTrackEvent","RTCPeerConnectionIceEvent","RTCPeerConnectionIceErrorEvent","RTCErrorEvent","RTCDataChannelEvent","RTCDTMFToneChangeEvent","PromiseRejectionEvent","ProgressEvent","PopStateEvent","PointerEvent","PageTransitionEvent","OfflineAudioCompletionEvent","MutationEvent","MouseEvent","MessageEvent","MediaStreamTrackEvent","MediaStreamEvent","MediaQueryListEvent","MediaEncryptedEvent","KeyboardEvent","InputEvent","IDBVersionChangeEvent","HashChangeEvent","GamepadEvent","FormDataEvent","FontFaceSetLoadEvent","FocusEvent","Event","ErrorEvent","DragEvent","CustomEvent","CompositionEvent","CloseEvent","ClipboardEvent","BlobEvent","BeforeUnloadEvent","BeforeInstallPromptEvent","AudioProcessingEvent","AnimationEvent","CookieChangeEvent","DeviceMotionEvent","DeviceOrientationEvent","MIDIConnectionEvent","MIDIMessageEvent","MediaKeyMessageEvent","SensorErrorEvent","HIDConnectionEvent","HIDInputReportEvent","PaymentMethodChangeEvent","PresentationConnectionAvailableEvent","PresentationConnectionCloseEvent","USBConnectionEvent","XRInputSourceEvent","XRInputSourcesChangeEvent","XRReferenceSpaceEvent","XRSessionEvent","AnimationPlaybackEvent","PaymentRequestUpdateEvent","PictureInPictureEvent","TaskPriorityChangeEvent","SpeechSynthesisErrorEvent","SpeechSynthesisEvent","VirtualKeyboardGeometryChangeEvent","webkitSpeechRecognitionError","webkitSpeechRecognitionEvent"],
"on": ["onsearch","onappinstalled","onbeforeinstallprompt","onbeforexrselect","onabort","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextmenu","oncuechange","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onload","onloadeddata","onloadedmetadata","onloadstart","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onmousewheel","onpause","onplay","onplaying","onprogress","onratechange","onreset","onresize","onscroll","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onstalled","onsubmit","onsuspend","ontimeupdate","ontoggle","onvolumechange","onwaiting","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel","onauxclick","ongotpointercapture","onlostpointercapture","onpointerdown","onpointermove","onpointerup","onpointercancel","onpointerover","onpointerout","onpointerenter","onpointerleave","onselectstart","onselectionchange","onanimationend","onanimationiteration","onanimationstart","ontransitionrun","ontransitionstart","ontransitionend","ontransitioncancel","onafterprint","onbeforeprint","onbeforeunload","onhashchange","onlanguagechange","onmessage","onmessageerror","onoffline","ononline","onpagehide","onpageshow","onpopstate","onrejectionhandled","onstorage","onunhandledrejection","onunload","ondevicemotion","ondeviceorientation","ondeviceorientationabsolute","onpointerrawupdate"],
"CSS": ["CSSVariableReferenceValue","CSSUnparsedValue","CSSUnitValue","CSSTranslate","CSSTransformValue","CSSTransformComponent","CSSSupportsRule","CSSStyleValue","CSSStyleSheet","CSSStyleRule","CSSStyleDeclaration","CSSSkewY","CSSSkewX","CSSSkew","CSSScale","CSSRuleList","CSSRule","CSSRotate","CSSPropertyRule","CSSPositionValue","CSSPerspective","CSSPageRule","CSSNumericValue","CSSNumericArray","CSSNamespaceRule","CSSMediaRule","CSSMatrixComponent","CSSMathValue","CSSMathSum","CSSMathProduct","CSSMathNegate","CSSMathMin","CSSMathMax","CSSMathInvert","CSSKeywordValue","CSSKeyframesRule","CSSKeyframeRule","CSSImportRule","CSSImageValue","CSSGroupingRule","CSSFontFaceRule","CSSCounterStyleRule","CSSConditionRule","CSS","CSSAnimation","CSSTransition"],
"webkit": ["webkitURL","webkitRTCPeerConnection","webkitMediaStream","WebKitMutationObserver","WebKitCSSMatrix","webkitStorageInfo","webkitCancelAnimationFrame","webkitRequestAnimationFrame","webkitSpeechGrammar","webkitSpeechGrammarList","webkitSpeechRecognition","webkitRequestFileSystem","webkitResolveLocalFileSystemURL"],
"Error": ["Error","AggregateError","EvalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError","RTCError","OverconstrainedError","MediaError","GeolocationPositionError","DOMError","reportError","WebTransportError"],
};
Last updated