/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "nsIDOMElement.idl" #include "nsIVariant.idl" interface nsIDOMDOMStringMap; interface nsIDOMHTMLMenuElement; interface nsIDOMHTMLPropertiesCollection; /** * The nsIDOMHTMLElement interface is the primary [X]HTML element * interface. It represents a single [X]HTML element in the document * tree. * * This interface is trying to follow the DOM Level 2 HTML specification: * http://www.w3.org/TR/DOM-Level-2-HTML/ * * with changes from the work-in-progress WHATWG HTML specification: * http://www.whatwg.org/specs/web-apps/current-work/ */ [scriptable, uuid(9a677a5b-e6f7-4e2e-9ef9-22c2ac9967b3)] interface nsIDOMHTMLElement : nsIDOMElement { // metadata attributes attribute DOMString id; attribute DOMString title; attribute DOMString lang; attribute DOMString dir; attribute DOMString className; readonly attribute nsIDOMDOMStringMap dataset; attribute boolean itemScope; attribute nsIVariant itemType; attribute DOMString itemId; readonly attribute nsIDOMHTMLPropertiesCollection properties; // The following attributes are really nsDOMSettableTokenList, which has // PutForwards, so we express them as nsIVariants to deal with this. attribute nsIVariant itemValue; attribute nsIVariant itemProp; attribute nsIVariant itemRef; // user interaction /** * Indicates that the element is not yet, or is no longer, relevant. * * See . */ attribute boolean hidden; void click(); attribute long tabIndex; void focus(); void blur(); attribute DOMString accessKey; readonly attribute DOMString accessKeyLabel; attribute boolean draggable; attribute DOMString contentEditable; readonly attribute boolean isContentEditable; readonly attribute nsIDOMHTMLMenuElement contextMenu; attribute boolean spellcheck; // DOM Parsing and Serialization attribute DOMString innerHTML; attribute DOMString outerHTML; void insertAdjacentHTML(in DOMString position, in DOMString text); // CSSOM View [optional_argc] void scrollIntoView([optional] in boolean top); readonly attribute nsIDOMElement offsetParent; readonly attribute long offsetTop; readonly attribute long offsetLeft; readonly attribute long offsetWidth; readonly attribute long offsetHeight; };