Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #include "nsIDOMElement.idl"
7 #include "nsIVariant.idl"
9 interface nsIDOMHTMLMenuElement;
11 /**
12 * The nsIDOMHTMLElement interface is the primary [X]HTML element
13 * interface. It represents a single [X]HTML element in the document
14 * tree.
15 *
16 * This interface is trying to follow the DOM Level 2 HTML specification:
17 * http://www.w3.org/TR/DOM-Level-2-HTML/
18 *
19 * with changes from the work-in-progress WHATWG HTML specification:
20 * http://www.whatwg.org/specs/web-apps/current-work/
21 */
22 [scriptable, uuid(e29ddc73-ac40-40fe-8bbd-14bf2d52c53a)]
23 interface nsIDOMHTMLElement : nsIDOMElement
24 {
25 // metadata attributes
26 attribute DOMString id;
27 attribute DOMString title;
28 attribute DOMString lang;
29 attribute DOMString dir;
30 [binaryname(DOMClassName)]
31 attribute DOMString className;
32 readonly attribute nsISupports dataset;
34 attribute boolean itemScope;
35 attribute nsIVariant itemType;
36 attribute DOMString itemId;
37 readonly attribute nsISupports properties;
38 // The following attributes are really nsDOMSettableTokenList, which has
39 // PutForwards, so we express them as nsIVariants to deal with this.
40 attribute nsIVariant itemValue;
41 attribute nsIVariant itemProp;
42 attribute nsIVariant itemRef;
44 // user interaction
45 /**
46 * Indicates that the element is not yet, or is no longer, relevant.
47 *
48 * See <http://www.whatwg.org/html5/#the-hidden-attribute>.
49 */
50 attribute boolean hidden;
51 [binaryname(DOMClick)]
52 void click();
53 attribute long tabIndex;
54 void focus();
55 [binaryname(DOMBlur)]
56 void blur();
57 attribute DOMString accessKey;
58 readonly attribute DOMString accessKeyLabel;
59 attribute boolean draggable;
60 attribute DOMString contentEditable;
61 readonly attribute boolean isContentEditable;
62 readonly attribute nsIDOMHTMLMenuElement contextMenu;
63 attribute boolean spellcheck;
66 // DOM Parsing and Serialization
67 attribute DOMString innerHTML;
68 attribute DOMString outerHTML;
69 void insertAdjacentHTML(in DOMString position,
70 in DOMString text);
73 // CSSOM View
74 [optional_argc] void scrollIntoView([optional] in boolean top);
75 readonly attribute nsIDOMElement offsetParent;
76 readonly attribute long offsetTop;
77 readonly attribute long offsetLeft;
78 readonly attribute long offsetWidth;
79 readonly attribute long offsetHeight;
80 };