IDL Index
[LegacyUnenumerableNamedProperties]
interface HTMLAllCollection
{
readonly attribute unsigned long length;
getter Element? (unsigned long index
);
getter (HTMLCollection or Element)? namedItem(DOMString name
);
legacycaller (HTMLCollection or Element)? item(optional DOMString nameOrItem
);
};
interface HTMLFormControlsCollection
: HTMLCollection {
// inherits length and item()
getter (RadioNodeList or Element)? namedItem(DOMString name
); // shadows inherited namedItem()
};
interface RadioNodeList
: NodeList {
attribute DOMString value;
};
interface HTMLOptionsCollection
: HTMLCollection {
// inherits item(), namedItem()
attribute unsigned long length; // shadows inherited length
setter void (unsigned long index
, HTMLOptionElement? option
);
void add((HTMLOptionElement or HTMLOptGroupElement) element
, optional (HTMLElement or long)? before
= null);
void remove(long index
);
attribute long selectedIndex;
};
interface DOMStringList {
readonly attribute unsigned long length;
getter DOMString? item(unsigned long index
);
boolean contains(DOMString string
);
};
enum DocumentReadyState
{ "loading"
, "interactive"
, "complete"
};
typedef (HTMLScriptElement or SVGScriptElement) HTMLOrSVGScriptElement
;
[OverrideBuiltins]
partial interface Document {
// resource metadata management
[PutForwards=href, Unforgeable] readonly attribute Location? location;
attribute USVString domain;
readonly attribute USVString referrer;
attribute USVString cookie;
readonly attribute DOMString lastModified;
readonly attribute DocumentReadyState readyState;
// DOM tree accessors
getter object (DOMString name
);
[CEReactions] attribute DOMString title;
attribute DOMString dir;
attribute HTMLElement? body;
readonly attribute HTMLHeadElement? head;
[SameObject] readonly attribute HTMLCollection images;
[SameObject] readonly attribute HTMLCollection embeds;
[SameObject] readonly attribute HTMLCollection plugins;
[SameObject] readonly attribute HTMLCollection links;
[SameObject] readonly attribute HTMLCollection forms;
[SameObject] readonly attribute HTMLCollection scripts;
NodeList getElementsByName(DOMString elementName
);
readonly attribute HTMLOrSVGScriptElement? currentScript; // classic scripts in a document tree only
// dynamic markup insertion
Document open(optional DOMString type
= "text/html", optional DOMString replace
= "");
WindowProxy open(DOMString url
, DOMString name
, DOMString features
, optional boolean replace
= false);
[CEReactions] void close();
[CEReactions] void write(DOMString... text
);
[CEReactions] void writeln(DOMString... text
);
// user interaction
readonly attribute WindowProxy? defaultView;
readonly attribute Element? activeElement;
boolean hasFocus();
[CEReactions] attribute DOMString designMode;
[CEReactions] boolean execCommand(DOMString commandId
, optional boolean showUI
= false, optional DOMString value
= "");
boolean queryCommandEnabled(DOMString commandId
);
boolean queryCommandIndeterm(DOMString commandId
);
boolean queryCommandState(DOMString commandId
);
boolean queryCommandSupported(DOMString commandId
);
DOMString queryCommandValue(DOMString commandId
);
// special event handler IDL attributes that only apply to Document objects
[LenientThis] attribute EventHandler onreadystatechange
;
};
Document implements GlobalEventHandlers;
Document implements DocumentAndElementEventHandlers;
[HTMLConstructor]
interface HTMLElement
: Element {
// metadata attributes
[CEReactions] attribute DOMString title;
[CEReactions] attribute DOMString lang;
[CEReactions] attribute boolean translate;
[CEReactions] attribute DOMString dir;
[SameObject] readonly attribute DOMStringMap dataset;
// user interaction
[CEReactions] attribute boolean hidden;
void click();
[CEReactions] attribute long tabIndex;
void focus();
void blur();
[CEReactions] attribute DOMString accessKey;
[CEReactions] attribute boolean draggable;
[CEReactions] attribute boolean spellcheck;
void forceSpellCheck();
[CEReactions, TreatNullAs=EmptyString] attribute DOMString innerText;
};
HTMLElement implements GlobalEventHandlers;
HTMLElement implements DocumentAndElementEventHandlers;
HTMLElement implements ElementContentEditable;
// Note: intentionally not [HTMLConstructor]
interface HTMLUnknownElement
: HTMLElement { };
[OverrideBuiltins]
interface DOMStringMap
{
getter DOMString (DOMString name
);
[CEReactions] setter void (DOMString name
, DOMString value
);
[CEReactions] deleter void (DOMString name
);
};
interface HTMLHtmlElement
: HTMLElement {};
interface HTMLHeadElement
: HTMLElement {};
interface HTMLTitleElement
: HTMLElement {
attribute DOMString text;
};
interface HTMLBaseElement
: HTMLElement {
attribute DOMString href;
attribute DOMString target;
};
interface HTMLLinkElement
: HTMLElement {
[CEReactions] attribute USVString href;
[CEReactions] attribute DOMString? crossOrigin;
[CEReactions] attribute DOMString rel;
[CEReactions] attribute DOMString rev;
[CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
[CEReactions] attribute DOMString media;
[CEReactions] attribute DOMString nonce;
[CEReactions] attribute DOMString hreflang;
[CEReactions] attribute DOMString type;
[CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList sizes;
[CEReactions] attribute DOMString referrerPolicy;
};
HTMLLinkElement implements LinkStyle;
interface HTMLMetaElement
: HTMLElement {
attribute DOMString name;
attribute DOMString httpEquiv;
attribute DOMString content;
};
interface HTMLStyleElement
: HTMLElement {
attribute DOMString media;
attribute DOMString nonce;
attribute DOMString type;
};
HTMLStyleElement implements LinkStyle;
interface HTMLBodyElement
: HTMLElement {
};
HTMLBodyElement implements WindowEventHandlers;
interface HTMLHeadingElement
: HTMLElement {};
interface HTMLParagraphElement
: HTMLElement {};
interface HTMLHRElement
: HTMLElement {};
interface HTMLPreElement
: HTMLElement {};
interface HTMLQuoteElement
: HTMLElement {
attribute DOMString cite;
};
interface HTMLOListElement
: HTMLElement {
attribute boolean reversed;
attribute long start;
attribute DOMString type;
};
interface HTMLUListElement
: HTMLElement {};
interface HTMLLIElement
: HTMLElement {
attribute long value;
};
interface HTMLDListElement
: HTMLElement {};
interface HTMLDivElement
: HTMLElement {};
interface HTMLAnchorElement
: HTMLElement {
attribute DOMString target;
attribute DOMString download;
attribute DOMString rel;
attribute DOMString rev
;
[SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
attribute DOMString hreflang;
attribute DOMString type;
attribute DOMString text;
attribute DOMString referrerPolicy
;
};
HTMLAnchorElement implements HTMLHyperlinkElementUtils;
interface HTMLDataElement
: HTMLElement {
attribute DOMString value;
};
interface HTMLTimeElement
: HTMLElement {
attribute DOMString dateTime;
};
interface HTMLSpanElement
: HTMLElement {};
interface HTMLBRElement
: HTMLElement {};
interface HTMLModElement
: HTMLElement {
attribute DOMString cite;
attribute DOMString dateTime;
};
interface HTMLPictureElement
: HTMLElement {};
interface HTMLSourceElement
: HTMLElement {
attribute DOMString src;
attribute DOMString type;
attribute DOMString srcset;
attribute DOMString sizes;
attribute DOMString media;
};
[NamedConstructor=Image(optional unsigned long width
, optional unsigned long height
)]
interface HTMLImageElement
: HTMLElement {
attribute DOMString alt;
attribute DOMString src;
attribute DOMString srcset;
attribute DOMString sizes;
attribute DOMString? crossOrigin;
attribute DOMString useMap;
attribute DOMString longDesc;
attribute boolean isMap;
attribute unsigned long width;
attribute unsigned long height;
readonly attribute unsigned long naturalWidth;
readonly attribute unsigned long naturalHeight;
readonly attribute boolean complete;
readonly attribute DOMString currentSrc;
attribute DOMString referrerPolicy;
};
interface HTMLIFrameElement
: HTMLElement {
attribute DOMString src;
attribute DOMString srcdoc;
attribute DOMString name;
[SameObject, PutForwards=value] readonly attribute DOMTokenList sandbox;
attribute boolean allowFullscreen;
attribute boolean allowPaymentRequest;
attribute DOMString width;
attribute DOMString height;
attribute DOMString referrerPolicy;
readonly attribute Document? contentDocument;
readonly attribute WindowProxy? contentWindow;
};
interface HTMLEmbedElement
: HTMLElement {
attribute DOMString src;
attribute DOMString type;
attribute DOMString width;
attribute DOMString height;
legacycaller any (any... arguments
);
};
interface HTMLObjectElement
: HTMLElement {
attribute DOMString data;
attribute DOMString type;
attribute boolean typeMustMatch;
attribute DOMString name;
readonly attribute HTMLFormElement? form;
attribute DOMString width;
attribute DOMString height;
readonly attribute Document? contentDocument;
readonly attribute WindowProxy? contentWindow;
readonly attribute boolean willValidate
;
readonly attribute ValidityState validity
;
readonly attribute DOMString validationMessage
;
boolean checkValidity
();
boolean reportValidity
();
void setCustomValidity
(DOMString error
);
legacycaller any (any... arguments
);
};
interface HTMLParamElement
: HTMLElement {
attribute DOMString name;
attribute DOMString value;
};
interface HTMLVideoElement
: HTMLMediaElement {
attribute unsigned long width;
attribute unsigned long height;
readonly attribute unsigned long videoWidth;
readonly attribute unsigned long videoHeight;
attribute DOMString poster;
};
[NamedConstructor=Audio(optional DOMString src
)]
interface HTMLAudioElement
: HTMLMediaElement {};
interface HTMLTrackElement
: HTMLElement {
attribute DOMString kind;
attribute DOMString src;
attribute DOMString srclang;
attribute DOMString label;
attribute boolean default;
const unsigned short NONE = 0;
const unsigned short LOADING = 1;
const unsigned short LOADED = 2;
const unsigned short ERROR = 3;
readonly attribute unsigned short readyState;
readonly attribute TextTrack track;
};
enum CanPlayTypeResult
{ ""
/* empty string */, "maybe"
, "probably"
};
typedef (MediaStream or MediaSource or Blob) MediaProvider
;
interface HTMLMediaElement
: HTMLElement {
// error state
readonly attribute MediaError? error;
// network state
attribute DOMString src;
attribute MediaProvider? srcObject;
readonly attribute DOMString currentSrc;
attribute DOMString? crossOrigin;
const unsigned short NETWORK_EMPTY = 0;
const unsigned short NETWORK_IDLE = 1;
const unsigned short NETWORK_LOADING = 2;
const unsigned short NETWORK_NO_SOURCE = 3;
readonly attribute unsigned short networkState;
attribute DOMString preload;
readonly attribute TimeRanges buffered;
void load();
CanPlayTypeResult canPlayType(DOMString type
);
// ready state
const unsigned short HAVE_NOTHING = 0;
const unsigned short HAVE_METADATA = 1;
const unsigned short HAVE_CURRENT_DATA = 2;
const unsigned short HAVE_FUTURE_DATA = 3;
const unsigned short HAVE_ENOUGH_DATA = 4;
readonly attribute unsigned short readyState;
readonly attribute boolean seeking;
// playback state
attribute double currentTime;
void fastSeek
(double time
);
readonly attribute unrestricted double duration;
object getStartDate();
readonly attribute boolean paused;
attribute double defaultPlaybackRate;
attribute double playbackRate;
readonly attribute TimeRanges played;
readonly attribute TimeRanges seekable;
readonly attribute boolean ended;
attribute boolean autoplay;
attribute boolean loop;
void play();
void pause();
// controls
attribute boolean controls;
attribute double volume;
attribute boolean muted;
attribute boolean defaultMuted;
// tracks
[SameObject] readonly attribute AudioTrackList audioTracks;
[SameObject] readonly attribute VideoTrackList videoTracks;
[SameObject] readonly attribute TextTrackList textTracks;
TextTrack addTextTrack(TextTrackKind kind
, optional DOMString label
= "", optional DOMString language
= "");
};
interface MediaError
{
const unsigned short MEDIA_ERR_ABORTED = 1;
const unsigned short MEDIA_ERR_NETWORK = 2;
const unsigned short MEDIA_ERR_DECODE = 3;
const unsigned short MEDIA_ERR_SRC_NOT_SUPPORTED = 4;
readonly attribute unsigned short code;
};
interface AudioTrackList
: EventTarget {
readonly attribute unsigned long length;
getter AudioTrack (unsigned long index
);
AudioTrack? getTrackById(DOMString id
);
attribute EventHandler onchange;
attribute EventHandler onaddtrack;
attribute EventHandler onremovetrack;
};
interface AudioTrack
{
readonly attribute DOMString id;
readonly attribute DOMString kind;
readonly attribute DOMString label;
readonly attribute DOMString language;
attribute boolean enabled;
};
interface VideoTrackList
: EventTarget {
readonly attribute unsigned long length;
getter VideoTrack (unsigned long index
);
VideoTrack? getTrackById(DOMString id
);
readonly attribute long selectedIndex;
attribute EventHandler onchange;
attribute EventHandler onaddtrack;
attribute EventHandler onremovetrack;
};
interface VideoTrack
{
readonly attribute DOMString id;
readonly attribute DOMString kind;
readonly attribute DOMString label;
readonly attribute DOMString language;
attribute boolean selected;
};
interface TextTrackList
: EventTarget {
readonly attribute unsigned long length;
getter TextTrack (unsigned long index
);
TextTrack? getTrackById(DOMString id
);
attribute EventHandler onchange;
attribute EventHandler onaddtrack;
attribute EventHandler onremovetrack;
};
enum TextTrackMode
{ "disabled", "hidden", "showing" };
enum TextTrackKind
{ "subtitles"
, "captions"
, "descriptions"
, "chapters"
, "metadata"
};
interface TextTrack
: EventTarget {
readonly attribute TextTrackKind kind;
readonly attribute DOMString label;
readonly attribute DOMString language;
readonly attribute DOMString id;
readonly attribute DOMString inBandMetadataTrackDispatchType;
attribute TextTrackMode mode;
readonly attribute TextTrackCueList? cues;
readonly attribute TextTrackCueList? activeCues;
void addCue(TextTrackCue cue
);
void removeCue(TextTrackCue cue
);
attribute EventHandler oncuechange;
};
interface TextTrackCueList
{
readonly attribute unsigned long length;
getter TextTrackCue (unsigned long index
);
TextTrackCue? getCueById(DOMString id
);
};
interface TextTrackCue
: EventTarget {
readonly attribute TextTrack? track;
attribute DOMString id;
attribute double startTime;
attribute double endTime;
attribute boolean pauseOnExit;
attribute EventHandler onenter;
attribute EventHandler onexit;
};
[Constructor
(double startTime
, double endTime
, ArrayBuffer data
)]
interface DataCue
: TextTrackCue {
attribute ArrayBuffer data;
};
interface TimeRanges
{
readonly attribute unsigned long length;
double start(unsigned long index
);
double end(unsigned long index
);
};
[Constructor
(DOMString type
, optional TrackEventInit eventInitDict
)]
interface TrackEvent
: Event {
readonly attribute (VideoTrack or AudioTrack or TextTrack)? track;
};
dictionary TrackEventInit
: EventInit {
(VideoTrack or AudioTrack or TextTrack)? track
= null;
};
interface HTMLMapElement
: HTMLElement {
attribute DOMString name;
[SameObject] readonly attribute HTMLCollection areas;
[SameObject] readonly attribute HTMLCollection images;
};
interface HTMLAreaElement
: HTMLElement {
attribute DOMString alt;
attribute DOMString coords;
attribute DOMString shape;
attribute DOMString target;
attribute DOMString download;
attribute DOMString rel;
[SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
attribute DOMString hreflang;
attribute DOMString type
;
attribute DOMString referrerPolicy;
};
HTMLAreaElement implements HTMLHyperlinkElementUtils;
[NoInterfaceObject]
interface HTMLHyperlinkElementUtils
{
stringifier attribute USVString href;
readonly attribute USVString origin;
attribute USVString protocol;
attribute USVString username;
attribute USVString password;
attribute USVString host;
attribute USVString hostname;
attribute USVString port;
attribute USVString pathname;
attribute USVString search;
attribute USVString hash;
};
interface HTMLTableElement
: HTMLElement {
attribute HTMLTableCaptionElement? caption;
HTMLTableCaptionElement createCaption();
void deleteCaption();
attribute HTMLTableSectionElement? tHead;
HTMLTableSectionElement createTHead();
void deleteTHead();
attribute HTMLTableSectionElement? ;
HTMLTableSectionElement ();
void ();
[SameObject] readonly attribute HTMLCollection tBodies;
HTMLTableSectionElement createTBody();
[SameObject] readonly attribute HTMLCollection rows;
HTMLTableRowElement insertRow(optional long index
= -1);
void deleteRow(long index
);
};
interface HTMLTableCaptionElement
: HTMLElement {};
interface HTMLTableColElement
: HTMLElement {
attribute unsigned long span;
};
interface HTMLTableSectionElement
: HTMLElement {
[SameObject] readonly attribute HTMLCollection rows;
HTMLElement insertRow(optional long index
= -1);
void deleteRow(long index
);
};
interface HTMLTableRowElement
: HTMLElement {
readonly attribute long rowIndex;
readonly attribute long sectionRowIndex;
[SameObject] readonly attribute HTMLCollection cells;
HTMLElement insertCell(optional long index
= -1);
void deleteCell(long index
);
};
interface HTMLTableDataCellElement
: HTMLTableCellElement {};
interface HTMLTableHeaderCellElement
: HTMLTableCellElement {
attribute DOMString ;
attribute DOMString ;
};
interface HTMLTableCellElement
: HTMLElement {
attribute unsigned long colSpan;
attribute unsigned long rowSpan;
[SameObject, PutForwards=value] readonly attribute DOMTokenList ;
readonly attribute long cellIndex;
};
[OverrideBuiltins]
interface HTMLFormElement
: HTMLElement {
attribute DOMString acceptCharset;
attribute DOMString action;
attribute DOMString autocomplete;
attribute DOMString enctype;
attribute DOMString encoding;
attribute DOMString method;
attribute DOMString name;
attribute boolean noValidate;
attribute DOMString target;
[SameObject] readonly attribute HTMLFormControlsCollection elements;
readonly attribute unsigned long length;
getter Element (unsigned long index
);
getter (RadioNodeList or Element) (DOMString name
);
void submit();
void reset();
boolean checkValidity();
boolean reportValidity();
};
interface HTMLLabelElement
: HTMLElement {
readonly attribute HTMLFormElement? form;
attribute DOMString htmlFor;
readonly attribute HTMLElement? control;
};
interface HTMLInputElement
: HTMLElement {
attribute DOMString accept;
attribute DOMString alt;
attribute DOMString autocomplete;
attribute boolean autofocus;
attribute boolean defaultChecked;
attribute boolean checked;
attribute DOMString dirName;
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
readonly attribute FileList? files;
attribute DOMString formAction;
attribute DOMString formEnctype;
attribute DOMString formMethod;
attribute boolean formNoValidate;
attribute DOMString formTarget;
attribute unsigned long height;
attribute boolean indeterminate;
readonly attribute HTMLElement? list;
attribute DOMString max;
attribute long maxLength;
attribute DOMString min;
attribute long minLength;
attribute boolean multiple;
attribute DOMString name;
attribute DOMString pattern;
attribute DOMString placeholder;
attribute boolean readOnly;
attribute boolean _required;
attribute unsigned long size;
attribute DOMString src;
attribute DOMString step;
attribute DOMString type;
attribute DOMString defaultValue;
[TreatNullAs=EmptyString] attribute DOMString value;
attribute object? valueAsDate;
attribute unrestricted double valueAsNumber;
attribute unsigned long width;
void stepUp(optional long n
= 1);
void stepDown(optional long n
= 1);
readonly attribute boolean willValidate;
readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
[SameObject] readonly attribute NodeList labels;
void select();
attribute unsigned long? selectionStart;
attribute unsigned long? selectionEnd;
attribute DOMString? selectionDirection;
void setRangeText(DOMString replacement
);
void setRangeText(DOMString replacement
, unsigned long start
, unsigned long end
, optional SelectionMode selectionMode
= "preserve");
void setSelectionRange(unsigned long start
, unsigned long end
, optional DOMString direction
);
};
interface HTMLButtonElement
: HTMLElement {
attribute boolean autofocus;
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
attribute DOMString formAction;
attribute DOMString formEnctype;
attribute DOMString formMethod;
attribute boolean formNoValidate;
attribute DOMString formTarget;
attribute DOMString name;
attribute DOMString type;
attribute DOMString value;
readonly attribute boolean willValidate;
readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
[SameObject] readonly attribute NodeList labels;
};
interface HTMLSelectElement
: HTMLElement {
attribute DOMString autocomplete;
attribute boolean autofocus;
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
attribute boolean multiple;
attribute DOMString name;
attribute boolean _required;
attribute unsigned long size;
readonly attribute DOMString type;
[SameObject] readonly attribute HTMLOptionsCollection options;
attribute unsigned long length;
getter Element? item(unsigned long index
);
HTMLOptionElement? namedItem(DOMString name
);
void add
((HTMLOptionElement or HTMLOptGroupElement) element
, optional (HTMLElement or long)? before
= null);
void remove(); // ChildNode overload
void remove
(long index
);
setter void (unsigned long index
, HTMLOptionElement? option
);
[SameObject] readonly attribute HTMLCollection selectedOptions;
attribute long selectedIndex;
attribute DOMString value;
readonly attribute boolean willValidate;
readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
[SameObject] readonly attribute NodeList labels;
};
interface HTMLDataListElement
: HTMLElement {
[SameObject] readonly attribute HTMLCollection options;
};
interface HTMLOptGroupElement
: HTMLElement {
attribute boolean disabled;
attribute DOMString label;
};
[NamedConstructor=Option(optional DOMString text
= "", optional DOMString value
, optional boolean defaultSelected
= false, optional boolean selected
= false)]
interface HTMLOptionElement
: HTMLElement {
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
attribute DOMString label;
attribute boolean defaultSelected;
attribute boolean selected;
attribute DOMString value;
attribute DOMString text;
readonly attribute long index;
};
interface HTMLTextAreaElement
: HTMLElement {
attribute DOMString autocomplete;
attribute boolean autofocus;
attribute unsigned long cols;
attribute DOMString dirName;
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
attribute long maxLength;
attribute long minLength;
attribute DOMString name;
attribute DOMString placeholder;
attribute boolean readOnly;
attribute boolean _required;
attribute unsigned long rows;
attribute DOMString wrap;
readonly attribute DOMString type;
attribute DOMString defaultValue;
[TreatNullAs=EmptyString] attribute DOMString value;
readonly attribute unsigned long textLength;
readonly attribute boolean willValidate;
readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
[SameObject] readonly attribute NodeList labels;
void select();
attribute unsigned long? selectionStart;
attribute unsigned long? selectionEnd;
attribute DOMString? selectionDirection;
void setRangeText(DOMString replacement
);
void setRangeText(DOMString replacement
, unsigned long start
, unsigned long end
, optional SelectionMode selectionMode
= "preserve");
void setSelectionRange(unsigned long start
, unsigned long end
, optional DOMString direction
);
};
interface HTMLOutputElement
: HTMLElement {
[SameObject, PutForwards=value] readonly attribute DOMTokenList htmlFor;
readonly attribute HTMLFormElement? form;
attribute DOMString name;
readonly attribute DOMString type;
attribute DOMString defaultValue;
attribute DOMString value;
readonly attribute boolean willValidate;
readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
[SameObject] readonly attribute NodeList labels;
};
interface HTMLProgressElement
: HTMLElement {
attribute double value;
attribute double max;
readonly attribute double position;
[SameObject] readonly attribute NodeList labels;
};
interface HTMLMeterElement
: HTMLElement {
attribute double value;
attribute double min;
attribute double max;
attribute double low;
attribute double high;
attribute double optimum;
[SameObject] readonly attribute NodeList labels;
};
interface HTMLFieldSetElement
: HTMLElement {
attribute boolean disabled;
readonly attribute HTMLFormElement? form;
attribute DOMString name;
readonly attribute DOMString type;
[SameObject] readonly attribute HTMLCollection elements;
readonly attribute boolean willValidate;
[SameObject] readonly attribute ValidityState validity;
readonly attribute DOMString validationMessage;
boolean checkValidity();
boolean reportValidity();
void setCustomValidity(DOMString error
);
};
interface HTMLLegendElement
: HTMLElement {
readonly attribute HTMLFormElement? form;
};
enum SelectionMode
{
"select",
"start",
"end",
"preserve" // default
};
interface ValidityState
{
readonly attribute boolean valueMissing;
readonly attribute boolean typeMismatch;
readonly attribute boolean patternMismatch;
readonly attribute boolean tooLong;
readonly attribute boolean tooShort;
readonly attribute boolean rangeUnderflow;
readonly attribute boolean rangeOverflow;
readonly attribute boolean stepMismatch;
readonly attribute boolean badInput;
readonly attribute boolean customError;
readonly attribute boolean valid;
};
interface HTMLDetailsElement
: HTMLElement {
attribute boolean open;
};
interface HTMLDialogElement
: HTMLElement {
attribute boolean open;
attribute DOMString returnValue;
void show(optional (MouseEvent or Element) anchor
);
void showModal(optional (MouseEvent or Element) anchor
);
void close(optional DOMString returnValue
);
};
interface HTMLScriptElement
: HTMLElement {
attribute DOMString src;
attribute DOMString type;
attribute DOMString charset;
attribute boolean async;
attribute boolean defer;
attribute DOMString? crossOrigin;
attribute DOMString text;
attribute DOMString nonce;
};
[Exposed=Window,
HTMLConstructor]
interface HTMLTemplateElement
: HTMLElement {
readonly attribute DocumentFragment content;
};
typedef (CanvasRenderingContext2D or WebGLRenderingContext) RenderingContext
;
interface HTMLCanvasElement
: HTMLElement {
attribute unsigned long width;
attribute unsigned long height;
RenderingContext? getContext
(DOMString contextId
, any... arguments
);
boolean probablySupportsContext
(DOMString contextId
, any... arguments
);
DOMString toDataURL(optional DOMString type
, any... arguments
);
void toBlob
(BlobCallback _callback
, optional DOMString type
, any... arguments
);
};
callback BlobCallback
= void (Blob? blob
);
[NoInterfaceObject]
interface ElementContentEditable
{
attribute DOMString contentEditable;
readonly attribute boolean isContentEditable;
};
interface DataTransfer
{
attribute DOMString dropEffect;
attribute DOMString effectAllowed;
[SameObject] readonly attribute DataTransferItemList items;
void setDragImage
(Element image
, long x
, long y
);
/* old interface */
[SameObject] readonly attribute DOMString[] types;
DOMString getData(DOMString format
);
void setData(DOMString format
, DOMString data
);
void clearData(optional DOMString format
);
[SameObject] readonly attribute FileList files;
};
interface DataTransferItemList
{
readonly attribute unsigned long length;
getter DataTransferItem (unsigned long index
);
DataTransferItem? add(DOMString data
, DOMString type
);
DataTransferItem? add(File data
);
void remove
(unsigned long index
);
void clear();
};
interface DataTransferItem
{
readonly attribute DOMString kind;
readonly attribute DOMString type;
void getAsString(FunctionStringCallback? _callback
);
File? getAsFile();
};
callback FunctionStringCallback
= void (DOMString data
);
[Constructor
(DOMString type
, optional DragEventInit eventInitDict
)]
interface DragEvent
: MouseEvent {
readonly attribute DataTransfer? dataTransfer;
};
dictionary DragEventInit
: MouseEventInit {
DataTransfer? dataTransfer
= null;
};
[PrimaryGlobal, LegacyUnenumerableNamedProperties]
/*sealed*/ interface Window
: EventTarget {
// the current browsing context
[Unforgeable] readonly attribute WindowProxy window;
[Replaceable] readonly attribute WindowProxy self;
[Unforgeable] readonly attribute Document document;
attribute DOMString name;
[PutForwards=href, Unforgeable] readonly attribute Location location;
readonly attribute History history;
[Replaceable] readonly attribute BarProp locationbar;
[Replaceable] readonly attribute BarProp ;
[Replaceable] readonly attribute BarProp personalbar;
[Replaceable] readonly attribute BarProp scrollbars;
[Replaceable] readonly attribute BarProp statusbar;
[Replaceable] readonly attribute BarProp toolbar;
attribute DOMString status;
void close();
readonly attribute boolean closed;
void stop();
void focus();
void blur();
// other browsing contexts
[Replaceable] readonly attribute WindowProxy frames;
[Replaceable] readonly attribute unsigned long length;
[Unforgeable] readonly attribute WindowProxy top;
attribute any opener;
[Replaceable] readonly attribute WindowProxy parent;
readonly attribute Element? frameElement;
WindowProxy open(optional DOMString url
= "about:blank", optional DOMString target
= "_blank", [TreatNullAs=EmptyString] optional DOMString features
= "", optional boolean replace
= false);
getter WindowProxy (unsigned long index
);
getter object (DOMString name
);
// Since this is the global object, the IDL named getter adds a NamedPropertiesObject exotic
// object on the prototype chain. Indeed, this does not make the global object an exotic object.
// Indexed access is taken care of by the WindowProxy exotic object.
// the user agent
readonly attribute Navigator navigator;
// user prompts
void alert();
void alert(DOMString message
);
boolean confirm(optional DOMString message
= "");
DOMString? prompt(optional DOMString message
= "", optional DOMString default
= "");
void print();
unsigned long requestAnimationFrame(FrameRequestCallback callback
);
void cancelAnimationFrame(unsigned long handle
);
};
Window implements GlobalEventHandlers;
Window implements WindowEventHandlers;
callback FrameRequestCallback
= void (DOMHighResTimeStamp time
);
interface BarProp
{
readonly attribute boolean visible;
};
enum ScrollRestoration
{ "auto"
, "manual"
};
interface History
{
readonly attribute unsigned long length;
attribute ScrollRestoration scrollRestoration;
readonly attribute any state;
void go(optional long delta
= 0);
void back();
void forward();
void pushState
(any data
, DOMString title
, optional DOMString? url
= null);
void replaceState
(any data
, DOMString title
, optional DOMString? url
= null);
};
interface Location
{
[Unforgeable] stringifier attribute USVString href;
[Unforgeable] readonly attribute USVString origin;
[Unforgeable] attribute USVString protocol;
[Unforgeable] attribute USVString host;
[Unforgeable] attribute USVString hostname;
[Unforgeable] attribute USVString port;
[Unforgeable] attribute USVString pathname;
[Unforgeable] attribute USVString search;
[Unforgeable] attribute USVString hash;
[Unforgeable] void assign(USVString url
);
[Unforgeable] void replace(USVString url
);
[Unforgeable] void reload();
[Unforgeable, SameObject] readonly attribute USVString[] ancestorOrigins;
};
[Constructor
(DOMString type
, optional PopStateEventInit eventInitDict
), Exposed=(Window,Worker)]
interface PopStateEvent
: Event {
readonly attribute any state;
};
dictionary PopStateEventInit
: EventInit {
any state
= null;
};
[Constructor
(DOMString type
, optional HashChangeEventInit eventInitDict
), Exposed=(Window,Worker)]
interface HashChangeEvent
: Event {
readonly attribute USVString oldURL;
readonly attribute USVString newURL;
};
dictionary HashChangeEventInit
: EventInit {
USVString oldURL
= "";
USVString newURL
= "";
};
[Constructor
(DOMString type
, optional PageTransitionEventInit eventInitDict
), Exposed=(Window,Worker)]
interface PageTransitionEvent
: Event {
readonly attribute boolean persisted;
};
dictionary PageTransitionEventInit
: EventInit {
boolean persisted
= false;
};
interface BeforeUnloadEvent
: Event {
attribute DOMString returnValue;
};
[NoInterfaceObject, Exposed=(Window, Worker)]
interface NavigatorOnLine
{
readonly attribute boolean onLine;
};
[Constructor
(DOMString type
, optional ErrorEventInit eventInitDict
), Exposed=(Window, Worker)]
interface ErrorEvent
: Event {
readonly attribute DOMString message;
readonly attribute DOMString filename;
readonly attribute unsigned long lineno;
readonly attribute unsigned long colno;
readonly attribute any error;
};
dictionary ErrorEventInit
: EventInit {
DOMString message
= "";
DOMString filename
= "";
unsigned long lineno
= 0;
unsigned long colno
= 0;
any error
= null;
};
[Constructor
(DOMString type
, PromiseRejectionEventInit eventInitDict
), Exposed=(Window,Worker)]
interface PromiseRejectionEvent
: Event {
readonly attribute Promise<any> promise;
readonly attribute any reason;
};
dictionary PromiseRejectionEventInit
: EventInit {
required Promise<any> promise
;
any reason
;
};
[TreatNonObjectAsNull]
callback EventHandlerNonNull
= any (Event event
);
typedef EventHandlerNonNull? EventHandler
;
[TreatNonObjectAsNull]
callback OnErrorEventHandlerNonNull
= any ((Event or DOMString) event
, optional DOMString source
, optional unsigned long lineno
, optional unsigned long column
, optional any error
);
typedef OnErrorEventHandlerNonNull? OnErrorEventHandler
;
[TreatNonObjectAsNull]
callback OnBeforeUnloadEventHandlerNonNull
= DOMString? (Event event
);
typedef OnBeforeUnloadEventHandlerNonNull? OnBeforeUnloadEventHandler
;
[NoInterfaceObject]
interface GlobalEventHandlers
{
attribute EventHandler onabort;
attribute EventHandler onblur;
attribute EventHandler oncancel;
attribute EventHandler oncanplay;
attribute EventHandler oncanplaythrough;
attribute EventHandler onchange;
attribute EventHandler onclick;
attribute EventHandler onclose;
attribute EventHandler oncuechange;
attribute EventHandler ondblclick;
attribute EventHandler ondrag;
attribute EventHandler ondragend;
attribute EventHandler ondragenter;
attribute EventHandler ondragexit;
attribute EventHandler ondragleave;
attribute EventHandler ondragover;
attribute EventHandler ondragstart;
attribute EventHandler ondrop;
attribute EventHandler ondurationchange;
attribute EventHandler onemptied;
attribute EventHandler onended;
attribute OnErrorEventHandler onerror;
attribute EventHandler onfocus;
attribute EventHandler oninput;
attribute EventHandler oninvalid;
attribute EventHandler onkeydown;
attribute EventHandler onkeypress;
attribute EventHandler onkeyup;
attribute EventHandler onload;
attribute EventHandler onloadeddata;
attribute EventHandler onloadedmetadata;
attribute EventHandler onloadstart;
attribute EventHandler onmousedown;
[LenientThis] attribute EventHandler onmouseenter;
[LenientThis] attribute EventHandler onmouseleave;
attribute EventHandler onmousemove;
attribute EventHandler onmouseout;
attribute EventHandler onmouseover;
attribute EventHandler onmouseup;
attribute EventHandler onwheel;
attribute EventHandler onpause;
attribute EventHandler onplay;
attribute EventHandler onplaying;
attribute EventHandler onprogress;
attribute EventHandler onratechange;
attribute EventHandler onreset;
attribute EventHandler onresize;
attribute EventHandler onscroll;
attribute EventHandler onseeked;
attribute EventHandler onseeking;
attribute EventHandler onselect;
attribute EventHandler onshow;
attribute EventHandler onstalled;
attribute EventHandler onsubmit;
attribute EventHandler onsuspend;
attribute EventHandler ontimeupdate;
attribute EventHandler ontoggle;
attribute EventHandler onvolumechange;
attribute EventHandler onwaiting;
};
[NoInterfaceObject]
interface WindowEventHandlers
{
attribute EventHandler onafterprint;
attribute EventHandler onbeforeprint;
attribute OnBeforeUnloadEventHandler onbeforeunload
;
attribute EventHandler onhashchange;
attribute EventHandler onlanguagechange;
attribute EventHandler onmessage;
attribute EventHandler onoffline;
attribute EventHandler ononline;
attribute EventHandler onpagehide;
attribute EventHandler onpageshow;
attribute EventHandler onrejectionhandled;
attribute EventHandler onpopstate;
attribute EventHandler onstorage;
attribute EventHandler onunhandledrejection;
attribute EventHandler onunload;
};
[NoInterfaceObject]
interface DocumentAndElementEventHandlers
{
attribute EventHandler oncopy;
attribute EventHandler oncut;
attribute EventHandler onpaste;
};
typedef (DOMString or Function) TimerHandler
;
[NoInterfaceObject, Exposed=(Window, Worker)]
interface WindowOrWorkerGlobalScope
{
[Replaceable] readonly attribute USVString origin
;
// Base64 utility methods (WindowBase64)
DOMString btoa
(DOMString btoa
);
DOMString atob
(DOMString atob
);
// Timers (WindowTimers)
long setTimeout
((Function or DOMString) handler
, optional long timeout
= 0, any... arguments
);
void clearTimeout
(optional long handle
= 0);
long setInterval
((Function or DOMString) handler
, optional long timeout
= 0, any... arguments
);
void clearInterval
(optional long handle
= 0);
// ImageBitmap, Images (ImageBitmapFactories)
Promise<ImageBitmap> createImageBitmap
(ImageBitmapSource image
);
Promise<ImageBitmap> createImageBitmap
(ImageBitmapSource image
, long sx
, long sy
, long sw
, long sh
);
};
Window implements WindowOrWorkerGlobalScope;
WorkerGlobalScope implements WindowOrWorkerGlobalScope;
interface Navigator
{
// objects implementing this interface also implement the interfaces given below
};
Navigator implements NavigatorID;
Navigator implements NavigatorLanguage;
Navigator implements NavigatorOnLine;
Navigator implements NavigatorContentUtils;
Navigator implements NavigatorCookies;
[NoInterfaceObject, Exposed=(Window, Worker)]
interface NavigatorID
{
[Exposed=Window] readonly attribute DOMString appCodeName; // constant "Mozilla"
readonly attribute DOMString appName; // constant "Netscape"
readonly attribute DOMString appVersion;
readonly attribute DOMString platform;
[Exposed=Window]readonly attribute DOMString product; // constant "Gecko"
readonly attribute DOMString userAgent;
};
[NoInterfaceObject, Exposed=(Window, Worker)]
interface NavigatorLanguage
{
readonly attribute DOMString? language;
readonly attribute DOMString[] languages;
};
[NoInterfaceObject]
interface NavigatorContentUtils
{
// content handler registration
void registerProtocolHandler
(DOMString scheme
, DOMString url
, DOMString title
);
void registerContentHandler
(DOMString mimeType
, DOMString url
, DOMString title
);
DOMString isProtocolHandlerRegistered
(DOMString scheme
, DOMString url
);
DOMString isContentHandlerRegistered
(DOMString mimeType
, DOMString url
);
void unregisterProtocolHandler
(DOMString scheme
, DOMString url
);
void unregisterContentHandler
(DOMString mimeType
, DOMString url
);
};
[NoInterfaceObject]
interface NavigatorCookies
{
readonly attribute boolean cookieEnabled;
};
[Exposed=(Window, Worker), Serializable, Transferable]
interface ImageBitmap
{
readonly attribute unsigned long width;
readonly attribute unsigned long height;
};
typedef (HTMLImageElement or
HTMLVideoElement or
HTMLCanvasElement or
Blob or
ImageData or
CanvasRenderingContext2D or
ImageBitmap) ImageBitmapSource
;
// Note: intentionally not [HTMLConstructor]
interface HTMLAppletElement
: HTMLElement {
attribute DOMString align;
attribute DOMString alt;
attribute DOMString archive;
attribute DOMString code;
attribute USVString codeBase;
attribute DOMString height;
attribute unsigned long hspace;
attribute DOMString name;
attribute USVString _object; // the underscore is not part of the identifier
attribute unsigned long vspace;
attribute DOMString width;
};
[HTMLConstructor]
interface HTMLMarqueeElement
: HTMLElement {
[CEReactions] attribute DOMString behavior;
[CEReactions] attribute DOMString bgColor;
[CEReactions] attribute DOMString direction;
[CEReactions] attribute DOMString height;
[CEReactions] attribute unsigned long hspace;
[CEReactions] attribute long loop;
[CEReactions] attribute unsigned long scrollAmount;
[CEReactions] attribute unsigned long scrollDelay;
[CEReactions] attribute boolean trueSpeed;
[CEReactions] attribute unsigned long vspace;
[CEReactions] attribute DOMString width;
attribute EventHandler onbounce;
attribute EventHandler onfinish;
attribute EventHandler onstart;
void start();
void stop();
};
[HTMLConstructor]
interface HTMLFrameSetElement
: HTMLElement {
[CEReactions] attribute DOMString cols;
[CEReactions] attribute DOMString rows;
};
HTMLFrameSetElement implements WindowEventHandlers;
[HTMLConstructor]
interface HTMLFrameElement
: HTMLElement {
[CEReactions] attribute DOMString name;
[CEReactions] attribute DOMString scrolling;
[CEReactions] attribute USVString src;
[CEReactions] attribute DOMString frameBorder;
[CEReactions] attribute USVString longDesc;
[CEReactions] attribute boolean noResize;
readonly attribute Document? contentDocument;
readonly attribute WindowProxy? contentWindow;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString marginHeight;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString marginWidth;
};
partial interface HTMLAnchorElement {
[CEReactions] attribute DOMString coords;
[CEReactions] attribute DOMString charset;
[CEReactions] attribute DOMString name;
[CEReactions] attribute DOMString shape;
};
partial interface HTMLAreaElement {
[CEReactions] attribute boolean noHref;
};
partial interface HTMLBodyElement {
[CEReactions, TreatNullAs=EmptyString] attribute DOMString text;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString link;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString vLink;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString aLink;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor;
attribute DOMString background;
};
partial interface HTMLBRElement {
[CEReactions] attribute DOMString clear;
};
partial interface HTMLTableCaptionElement {
[CEReactions] attribute DOMString align;
};
partial interface HTMLTableColElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString ch;
[CEReactions] attribute DOMString chOff;
[CEReactions] attribute DOMString vAlign;
[CEReactions] attribute DOMString width;
};
[HTMLConstructor]
interface HTMLDirectoryElement
: HTMLElement {
[CEReactions] attribute boolean compact;
};
partial interface HTMLDivElement {
[CEReactions] attribute DOMString align;
};
partial interface HTMLDListElement {
[CEReactions] attribute boolean compact;
};
partial interface HTMLEmbedElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString name;
};
[HTMLConstructor]
interface HTMLFontElement
: HTMLElement {
[CEReactions, TreatNullAs=EmptyString] attribute DOMString color;
[CEReactions] attribute DOMString face;
[CEReactions] attribute DOMString size;
};
partial interface HTMLHeadingElement {
[CEReactions] attribute DOMString align;
};
partial interface HTMLHRElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString color;
[CEReactions] attribute boolean noShade;
[CEReactions] attribute DOMString size;
[CEReactions] attribute DOMString width;
};
partial interface HTMLHtmlElement {
[CEReactions] attribute DOMString version;
};
partial interface HTMLIFrameElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString scrolling;
[CEReactions] attribute DOMString frameBorder;
[CEReactions] attribute USVString longDesc;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString marginHeight;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString marginWidth;
};
partial interface HTMLImageElement {
[CEReactions] attribute DOMString name;
[CEReactions] attribute USVString lowsrc;
[CEReactions] attribute DOMString align;
[CEReactions] attribute unsigned long hspace;
[CEReactions] attribute unsigned long vspace;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString border;
};
partial interface HTMLInputElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString useMap;
};
partial interface HTMLLegendElement {
[CEReactions] attribute DOMString align;
};
partial interface HTMLLIElement {
[CEReactions] attribute DOMString type;
};
partial interface HTMLLinkElement {
[CEReactions] attribute DOMString charset;
[CEReactions] attribute DOMString target;
};
partial interface {
[CEReactions] attribute boolean ;
};
partial interface HTMLMetaElement {
[CEReactions] attribute DOMString scheme;
};
partial interface HTMLObjectElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString archive;
[CEReactions] attribute DOMString code;
[CEReactions] attribute boolean declare;
[CEReactions] attribute unsigned long hspace;
[CEReactions] attribute DOMString standby;
[CEReactions] attribute unsigned long vspace;
[CEReactions] attribute DOMString codeBase;
[CEReactions] attribute DOMString codeType;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString border;
};
partial interface HTMLOListElement {
[CEReactions] attribute boolean compact;
};
partial interface HTMLParagraphElement {
[CEReactions] attribute DOMString align;
};
partial interface HTMLParamElement {
[CEReactions] attribute DOMString type;
[CEReactions] attribute DOMString valueType;
};
partial interface HTMLPreElement {
[CEReactions] attribute long width;
};
partial interface HTMLScriptElement {
[CEReactions] attribute DOMString event;
[CEReactions] attribute DOMString htmlFor;
};
partial interface HTMLTableElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString border;
[CEReactions] attribute DOMString frame;
[CEReactions] attribute DOMString rules;
[CEReactions] attribute DOMString summary;
[CEReactions] attribute DOMString width;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString cellPadding;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString cellSpacing;
};
partial interface HTMLTableSectionElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString ch;
[CEReactions] attribute DOMString chOff;
[CEReactions] attribute DOMString vAlign;
};
partial interface HTMLTableCellElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString axis;
[CEReactions] attribute DOMString height;
[CEReactions] attribute DOMString width;
[CEReactions] attribute DOMString ch;
[CEReactions] attribute DOMString chOff;
[CEReactions] attribute boolean noWrap;
[CEReactions] attribute DOMString vAlign;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor;
};
partial interface HTMLTableRowElement {
[CEReactions] attribute DOMString align;
[CEReactions] attribute DOMString ch;
[CEReactions] attribute DOMString chOff;
[CEReactions] attribute DOMString vAlign;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor;
};
partial interface HTMLUListElement {
[CEReactions] attribute boolean compact;
[CEReactions] attribute DOMString type;
};
partial interface Document {
[CEReactions, TreatNullAs=EmptyString] attribute DOMString fgColor;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString linkColor;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString vlinkColor;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString alinkColor;
[CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor;
[SameObject] readonly attribute HTMLCollection anchors;
[SameObject] readonly attribute HTMLCollection applets;
void clear();
void captureEvents();
void releaseEvents();
[SameObject] readonly attribute HTMLAllCollection all;
};
partial interface Window {
void captureEvents();
void releaseEvents();
[Replaceable, SameObject] readonly attribute External external;
};
[NoInterfaceObject]
interface External
{
void AddSearchProvider();
void IsSearchProviderInstalled();
};
Navigator implements NavigatorPlugins;
[NoInterfaceObject]
interface NavigatorPlugins
{
[SameObject] readonly attribute PluginArray plugins;
[SameObject] readonly attribute MimeTypeArray mimeTypes;
boolean javaEnabled();
};
interface PluginArray
{
void refresh(optional boolean reload
= false);
readonly attribute unsigned long length;
getter Plugin? item
(unsigned long index
);
getter Plugin? namedItem
(DOMString name
);
};
interface MimeTypeArray
{
readonly attribute unsigned long length;
getter MimeType? item
(unsigned long index
);
getter MimeType? namedItem
(DOMString name
);
};
interface Plugin
{
readonly attribute DOMString name;
readonly attribute DOMString description;
readonly attribute DOMString filename;
readonly attribute unsigned long length;
getter MimeType? item
(unsigned long index
);
getter MimeType? namedItem
(DOMString name
);
};
interface MimeType
{
readonly attribute DOMString type;
readonly attribute DOMString description;
readonly attribute DOMString suffixes; // comma-separated
readonly attribute Plugin enabledPlugin;
};