summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibWeb/DOM/Element.idl
blob: 536c4120e96570d7bfa0e2158b555ccaae064932 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
interface Element : Node {
    readonly attribute DOMString? namespaceURI;
    readonly attribute DOMString? prefix;
    readonly attribute DOMString localName;
    readonly attribute DOMString tagName;

    DOMString? getAttribute(DOMString qualifiedName);
    undefined setAttribute(DOMString qualifiedName, DOMString value);
    undefined removeAttribute(DOMString qualifiedName);
    boolean hasAttribute(DOMString qualifiedName);
    boolean hasAttributes();

    HTMLCollection getElementsByTagName(DOMString tagName);
    HTMLCollection getElementsByClassName(DOMString className);

    [LegacyNullToEmptyString] attribute DOMString innerHTML;
    [Reflect] attribute DOMString id;
    [Reflect=class] attribute DOMString className;

    readonly attribute Element? nextElementSibling;
    readonly attribute Element? previousElementSibling;

    [ImplementedAs=style_for_bindings] readonly attribute CSSStyleDeclaration style;

    // FIXME: These should all come from a ParentNode mixin
    readonly attribute Element? firstElementChild;
    readonly attribute Element? lastElementChild;
    readonly attribute unsigned long childElementCount;

    Element? querySelector(DOMString selectors);
    ArrayFromVector querySelectorAll(DOMString selectors);
};