#import #import #import #import #import #import #import #import #import #import #import #import #import #import #import #import enum ScrollLogicalPosition { "start", "center", "end", "nearest" }; dictionary ScrollIntoViewOptions : ScrollOptions { ScrollLogicalPosition block = "start"; ScrollLogicalPosition inline = "nearest"; }; // https://dom.spec.whatwg.org/#element [Exposed=Window] interface Element : Node { readonly attribute DOMString? namespaceURI; readonly attribute DOMString? prefix; readonly attribute DOMString localName; readonly attribute DOMString tagName; DOMString? getAttribute(DOMString qualifiedName); DOMString? getAttributeNS([FlyString] DOMString? namespace, [FlyString] DOMString localName); [CEReactions] undefined setAttribute(DOMString qualifiedName, DOMString value); [CEReactions] undefined setAttributeNS([FlyString] DOMString? namespace , [FlyString] DOMString qualifiedName , DOMString value); [CEReactions] Attr? setAttributeNode(Attr attr); [CEReactions] Attr? setAttributeNodeNS(Attr attr); [CEReactions] undefined removeAttribute([FlyString] DOMString qualifiedName); [CEReactions] undefined removeAttributeNS([FlyString] DOMString? namespace, [FlyString] DOMString localName); [CEReactions] boolean toggleAttribute(DOMString qualifiedName, optional boolean force); boolean hasAttribute(DOMString qualifiedName); boolean hasAttributeNS([FlyString] DOMString? namespace, [FlyString] DOMString localName); boolean hasAttributes(); [SameObject] readonly attribute NamedNodeMap attributes; sequence getAttributeNames(); Attr? getAttributeNode([FlyString] DOMString qualifiedName); Attr? getAttributeNodeNS([FlyString] DOMString? namespace, [FlyString] DOMString localName); HTMLCollection getElementsByTagName(DOMString tagName); HTMLCollection getElementsByTagNameNS(DOMString? namespace, DOMString localName); HTMLCollection getElementsByClassName(DOMString className); [Reflect, CEReactions] attribute DOMString id; [Reflect=class, CEReactions] attribute DOMString className; [SameObject, PutForwards=value] readonly attribute DOMTokenList classList; [Reflect, CEReactions, Unscopable] attribute DOMString slot; ShadowRoot attachShadow(ShadowRootInit init); readonly attribute ShadowRoot? shadowRoot; boolean matches(DOMString selectors); Element? closest(DOMString selectors); // legacy alias of .matches [ImplementedAs=matches] boolean webkitMatchesSelector(DOMString selectors); readonly attribute Element? nextElementSibling; readonly attribute Element? previousElementSibling; DOMRect getBoundingClientRect(); DOMRectList getClientRects(); attribute unrestricted double scrollTop; attribute unrestricted double scrollLeft; readonly attribute long scrollWidth; readonly attribute long scrollHeight; readonly attribute long clientTop; readonly attribute long clientLeft; readonly attribute long clientWidth; readonly attribute long clientHeight; [CEReactions] Element? insertAdjacentElement(DOMString where, Element element); undefined insertAdjacentText(DOMString where, DOMString data); [CEReactions] undefined insertAdjacentHTML(DOMString position, DOMString text); undefined scrollIntoView(optional (boolean or ScrollIntoViewOptions) arg = {}); undefined scroll(optional ScrollToOptions options = {}); undefined scroll(unrestricted double x, unrestricted double y); [ImplementedAs=scroll] undefined scrollTo(optional ScrollToOptions options = {}); [ImplementedAs=scroll] undefined scrollTo(unrestricted double x, unrestricted double y); }; dictionary ShadowRootInit { required ShadowRootMode mode; boolean delegatesFocus = false; SlotAssignmentMode slotAssignment = "named"; }; Element includes ParentNode; Element includes ChildNode; Element includes InnerHTML; // https://www.w3.org/TR/wai-aria-1.2/#idl_element Element includes ARIAMixin; Element includes Slottable; // https://www.w3.org/TR/web-animations-1/#extensions-to-the-element-interface Element includes Animatable;