Search completed in 1.44 seconds.
About Scriptable Interfaces - Interfaces
most of the information of this document is based on http://www.mozilla.org/scriptable/ and creating xpcom components scriptable
interfaces
interfaces allow xpcom components to expose their functionality to the outside world while hiding the inner details of the component implementation.
...
interfaces are written in an
interface description language.
... when we label an
interface as scriptable, we're saying that components exporting this
interface can be referenced (through this
interface) from scripts (e.g javascript), and that we can write new components implementing the
interface using script languages.
...And 2 more matches
XPCOM Interfaces - Archive of obsolete content
calling native objects by using xul we can build a complex user
interface.
... we can attach scripts which modify the
interface and perform tasks.
... mozilla provides many xpcom components and
interfaces.
...And 51 more matches
Implementing QueryInterface
this document describes the right way to write query
interface().
... a reference implementation of query
interface ns_imethodimp nsmyimplementation::query
interface( refnsiid aiid, void** ainstanceptr ) { ns_assertion(ainstanceptr, "query
interface requires a non-null destination!"); // it's a logic error, not a runtime error, to call me without any place to put my answer!
... if ( !ainstanceptr ) return ns_error_null_pointer; nsisupports* found
interface; if ( aiid.equals(nscomtypeinfo<nsix>::getiid()) ) found
interface = ns_static_cast(nsix*, this); else if ( aiid.equals(nscomtypeinfo<nsiy>::getiid()) ) found
interface = ns_static_cast(nsiy*, this); // ...as many cases as needed...
...And 15 more matches
USBAlternateInterface - Web APIs
the usbalternate
interface interface of the webusb api provides information about a particular configuration of an
interface provided by the usb device.
... an
interface includes one or more alternate settings which can configure a set of endpoints based on the operating mode of the device.
... constructor usbalternate
interface.usbalternate
interface creates a new usbalternate
interface object which will be populated with information about the alternate
interface of the provided usb
interface with the given alternate setting number.
...And 15 more matches
Working with Multiple Versions of Interfaces
the problem in this short note we illustrate how one can update an xpcom module in order for it to work in both firefox 2 and firefox 3, even if the
interfaces have changed in the interim.
... nscomptr<nsiaccessible> accnode; rv = refp->getaccessiblefor(node, getter_addrefs(accnode)); if(ns_failed(rv)){ return self; } void *wh = null; nscomptr<nsiaccessibledocument> accdocnode; accdocnode = do_query
interface(accnode, &rv); if(ns_failed(rv)){ return self; } rv = accdocnode->getwindowhandle(&wh); if(ns_succeeded(rv)){ self = static_cast<hwnd>(wh); } return self; } this approach worked, as is, for versions as early as firefox 1.5.
...what happens is that the call to do_createinstance fails with nsresult ns_error_no_
interface.
...And 13 more matches
Components.interfaces
components.
interfaces is a read-only object whose properties are
interfaces indexed by their names.
... introduction components.
interfaces is a read-only object whose properties implement the nsijsiid
interface.
... each object represents one of the xpcom
interfaces -- that some component or another might or might not implement.
...And 8 more matches
USBInterface - Web APIs
the usb
interface interface of the webusb api provides information about an
interface provided by the usb device.
... an
interface represents a feature of the device which implements a particular protocol and may contain endpoints for bidirectional communication.
... constructor usb
interface.usb
interface creates a new usb
interface object which will be populated with information about the
interface on the provided usbconfiguration with the given
interface number.
...And 8 more matches
Interface Compatibility
as we add new features to the web and to our applications, programming
interfaces change.
... the rules which govern
interface changes are different depending on the consumers and the languages involved.
...these apis may be removed or replaced with standard
interfaces in future releases of mozilla.
...And 6 more matches
nsIInterfaceRequestor
xpcom/base/nsi
interfacerequestor.idlscriptable this
interface defines a generic
interface for requesting
interfaces that a given object might provide access to.
... inherits from: nsisupports last changed in gecko 0.9.5 this is similar to nsisupports.query
interface().
... the main difference is that
interfaces returned are not required to provide a way back to the object implementing nsi
interfacerequestor.
...And 6 more matches
XUL user interfaces - Archive of obsolete content
this page illustrates mozilla's specialized language for creating user
interfaces.
...information: user
interfaces although html has some support for user
interfaces, it does not support all the features that you need to make a standalone application.
... mozilla overcomes this limitation by providing a specialized language for creating user
interfaces: xul (xml user-
interface language, usually pronounced like "zool").
...And 5 more matches
Components.interfacesByID
components.
interfacesbyid is a read-only array of classes indexed by iid.
... introduction components.
interfacesbyid is a read-only array of objects which implement the nsijsiid
interface.
... each object represents one of the xpcom
interfaces -- that some component or another might or might not implement.
...And 4 more matches
Interface development guide
xpcom
interfaces define classes that are implemented to provide key functionality in the mozilla platform.
... the articles linked from this page offer guidelines for developing and using these
interfaces.
... documentation xpidl the xpcom
interface description language is used to specify xpcom
interface classes.
...And 3 more matches
Dynamically modifying XUL-based user interface - Archive of obsolete content
this article discusses manipulating xul
interfaces, using dom and other apis.
... introduction as you know, xul is an xml language used in various mozilla-based applications, such as firefox and thunderbird, to describe the user
interface.
...they are the
interfaces that are used in any interaction of a script and a document.
...And 2 more matches
Mozilla XForms User Interface - Archive of obsolete content
introduction this article is a quick reference of the xforms user
interface elements.
...the xforms specs define two kinds of xforms ui elements, called 'form controls' and 'xforms user
interface'.
...the set of "xforms user
interface" elements exist to aid form authors in combining host language markup and xforms markup together in order to build user
interfaces.
...And 2 more matches
XPCOM Interface Reference
this is a reference to the xpcom
interfaces provided by the mozilla platform.
...history3nsihtmleditornsihttpheaderlistenernsihapticfeedbacknsihttpactivitydistributornsihttpactivityobservernsihttpchannelnsihttpchannelinternalnsihttpheadervisitornsihttpservernsihttpupgradelistenernsiidnservicensiiframeboxobjectnsiiniparsernsiiniparserfactorynsiiniparserwriternsiioservicensiidleservicensiinprocesscontentframemessagemanagernsiinputstreamnsiinputstreamcallbacknsiinstalllocationnsi
interfacerequestornsijscidnsijsidnsijsiidnsijsonnsijetpacknsijetpackservicensijumplistbuildernsijumplistitemnsilivemarkservicensiloadgroupnsilocalfilensilocalfilemacnsilocalensilocaleservicensilogininfonsiloginmanagernsiloginmanagercryptonsiloginmanageriemigrationhelpernsiloginmanagerprompternsiloginmanagerstoragensiloginmetainfonsimimeinputstreamnsimacdocksupportnsimarkupdocumentviewernsimemorynsimemorymu...
...iprivatebrowsingservicensiprocessnsiprocess2nsiprocessscriptloadernsiprofilensiprofilelocknsiprofileunlockernsiprogramminglanguagensiprogresseventsinknsipromptnsipromptservicensipropertiesnsipropertynsipropertybagnsipropertybag2nsipropertyelementnsiprotocolhandlernsiprotocolproxycallbacknsiprotocolproxyfilternsiprotocolproxyservicensiproxyinfonsipushmessagensipushservicensipushsubscriptionnsiradio
interfacelayernsirandomgeneratornsirequestnsirequestobservernsiresumablechannelnsirunnablensishentrynsishistorynsishistorylistenernsisockssocketinfonsisslerrorlistenernsisslsocketcontrolnsiscreennsiscreenmanagernsiscripterrornsiscripterror2nsiscriptableionsiscriptableinputstreamnsiscriptableunescapehtmlnsiscriptableunicodeconverternsiscrollablensisearchenginensisearchsubmissionnsisecuritycheckedcomponentns...
...And 2 more matches
XPCOM Interface Reference by grouping
01, 2010) list of mozilla
interfaces as listed on the xpcom
interface reference page where that page lists items by alphabetical sorting, this page attempts to group them by function.
... security this section contains apis for secure channel communications system this section contains application level
interfaces including calls to external support elements (such as device calls).
...treeselection nsitreeview xform nsixformsmodelelement nsixformsnsinstanceelement nsixformsnsmodelelement xmlhttprequest nsixmlhttprequesteventtarget favicon nsifavicondatacallback nsifaviconservice frame nsichromeframemessagemanager nsiframeloader nsiframeloaderowner nsiframemessagelistener nsiframemessagemanager
interface nsijsxmlhttprequest jetpack nsijetpack nsijetpackservice offlinestorage nsiapplicationcache nsiapplicationcachechannel nsiapplicationcachecontainer nsiapplicationcachenamespace nsiapplicationcacheservice places nsiannotationobserver rss feed nsifeed nsifeedcontainer nsifeedelementbase nsifeedentry nsifeedge...
...And 2 more matches
USBDevice.claimInterface() - Web APIs
the claim
interface() method of the usbdevice
interface returns a promise that resolves when the requested
interface is claimed for exclusive access.
... syntax var promise = usbdevice.claim
interface(
interfacenumber) parameters
interfacenumber the index of one of the
interfaces supported by the device.
...
interfaces are device-specific.
...And 2 more matches
USBDevice.selectAlternateInterface() - Web APIs
the selectalternate
interface() method of the usbdevice
interface returns a promise that resolves when the specified alternative endpoint is selected.
... syntax var promise = usbdevice.selectalternate
interface(
interfacenumber, alternatesetting) parameters
interfacenumber the index of one of the
interfaces supported by the device.
...
interfaces are device-specific.
...And 2 more matches
Template Builder Interface - Archive of obsolete content
both types of builders implement the nsixultemplatebuilder
interface, while the tree builder also implements the nsixultreebuilder
interface.
...the builder property is a property of the nsidomxulelement
interface, so all xul elements will have this property, although, as mentioned earlier, is will be set to null for most elements.
...it implements the nsirdfcompositedatasource
interface.
... getservice(components.
interfaces.nsirdfservice); var ds = rdf.getdatasource("http://www.xulplanet.com/ndeakin/tests/xul/template-guide-streets.rdf"); var tree = document.getelementbyid("thetree"); tree.database.adddatasource(ds); tree.builder.rebuild(); this is the typical way to add a datasource to an element, in this case to the tree with the id 'thetree'.
Message Interfaces
nsimsghdr nsimsghdr - this
interface describes headers for all mail messages.
...nsimsgdbhdr nsimsgdbhdr - this
interface describes headers for mail messages.
...nsimsgthread nsimsgthread - this
interface is used to interact with threads in thunderbird.
... nsimsgdbview nsimsgdbview - the nsimsgdbview
interface handles the display of mail in the threadpane and preview pane of thunderbird and other xpcom based mail cients.
Using the Mozilla JavaScript interface to XSL Transformations - XSLT: Extensible Stylesheet Language Transformations
this document describes the javascript
interface in mozilla 1.2 and up to the xslt processing engine (transformiix).
...see the xslt/javascript
interface in gecko for an example.
... resources the following reflect the
interface of the xsltprocessor object: nsixsltprocessor.idl xsltprocessor.webidl using xsltprocessor from xpcom components instantiating an xsltprocessor from an xpcom component requires a different syntax as the constructor is not defined inside components.
... instead of this: var processor = new xsltprocessor(); do this: var processor = components.classes["@mozilla.org/document-transformer;1?type=xslt"] .createinstance(components.
interfaces.nsixsltprocessor); see also the xslt javascript
interface in gecko document.load() regarding the loading of xml documents (as used above) original document information author(s): mike hearn last updated date: december 21, 2005 copyright information: copyright (c) mike hearn ...
DOM Interfaces - Archive of obsolete content
the nsidomdocumentxbl
interface the nsidomdocumentxbl
interface contains methods for manipulating xbl bindings.
... the
interface is implemented by all dom documents.
... idl definition
interface nsidomdocumentxbl { nodelist getanonymousnodes(in element elt); element getanonymouselementbyattribute(in element elt, in domstring attrname, in domstring attrvalue); element getbindingparent(in node node); void loadbindingdocument(in domstring documenturl); }; methods getanonymousnodes the getanonymousnodes method retrieves the anonymous children of the specified element.
RFE to the Custom Controls Interfaces - Archive of obsolete content
introduction this page contains requests for enhancement to the custom control
interfaces.
...in short, we have the following
interfaces: nsixformsaccessors - serves to get/set the value of the instance data node that the xforms element is bound to as well as getting the various states of that node nsixformsdelegate - used to obtain the nsixformsaccessors
interface nsixformsuiwidget - used by the xforms processor to update the value/state of an xforms element when its bound node's value/state is changed our current mechanism that allows authors to build custom controls assumes that the controls will be bound to instance nodes of simple content type.
...if you need to have a custom control that works with complext content or you find our
interfaces too limiting to create the type of control that you have in mind, then this is the right place to pass along your requirements and any usecase that you are trying to solve.
nsISupportsInterfacePointer
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for xpcom objects.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
USBConfiguration.interfaces - Web APIs
the
interfaces read-only property of the usbconfiguration
interface returns an array containing instances of the usb
interface describing each
interface supported by this configuration.
... syntax var
interfaces[] = usbconfiguration.
interfaces value an array containing instances of usb
interface.
... specifications specification status comment unknownthe definition of '
interfaces' in that specification.
USBDevice.releaseInterface() - Web APIs
the release
interface() method of the usbdevice
interface returns a promise that resolves when a cliamed
interface is released from exclusive access.
... syntax var promise = usbdevice.release
interface(
interfacenumber) parameters
interfacenumber the device-specific index of the currently-claimed
interface.
... specifications specification status comment webusbthe definition of 'release
interface()' in that specification.
nsIRadioInterfaceLayer
dom/system/gonk/nsiradio
interfacelayer.idlscriptable used to implement the
interface between the telephony api and the radio hardware in a telephone.
...to create an instance, use: var radio
interfacelayer = components.classes["@mozilla.org/telephony/system-worker-manager;1"] .getservice(components.
interfaces.nsi
interfacerequestor) .createinstance(components.
interfaces.nsiradio
interfacelayer); method overview void answercall(in unsigned long callindex); void deactivatedatacall(in domstring cid, in domstring reason); void dial(in domstring number); void enumeratecalls(in nsiriltelephonycallback callback); void getdatacalllist(); unsigned short getnumberofmessage...
CSS Basic User Interface - CSS: Cascading Style Sheets
css basic user
interface is a css module that lets you define the rendering and functionality of features related to the user
interface.
... specifications specification status comment css basic user
interface module level 4 working draft css basic user
interface module level 3 recommendation css level 2 (revision 1) recommendation initial definition.
Necko Interfaces Overview
nsiioservice central necko service manages protocol handlers thin layer over protocol handlers provides
interface for creating uri objects from uri strings maps uri scheme to appropriate nsiprotocolhandler impl nsiuri (nsiurl, nsifileurl, nsistandardurl) represents an uri, with getters and setters for various uri parts (eg.
getInterfaces
this content is now available at nsiclassinfo.get
interfaces().
getInterface
this content is now available at nsi
interfacerequestor.get
interface().
Fuzzing Interface
documentation moved in-tree: https://firefox-source-docs.mozilla.org/tools/fuzzing/fuzzing_
interface.html ...
Traversing an HTML table with JavaScript and DOM Interfaces - Web APIs
<head> <title>sample code - traversing an html table with javascript and dom
interfaces</title> <script> function start() { // get the reference for the body var mybody = document.getelementsbytagname("body")[0]; // creates <table> and <tbody> elements mytable = document.createelement("table"); mytablebody = document.createelement("tbody"); // creating all cells for(var j = 0; j < 3; j++) { // creates a <tr> ...
Index - Web APIs
below is a list of all the apis and
interfaces (object types) that you may be able to use while developing your web app or site.
... 6 abortcontroller api, abortcontroller, experimental,
interface, reference the abortcontroller
interface represents a controller object that allows you to abort one or more dom requests as and when desired.
... 8 abortcontroller.abort() api, abortcontroller, experimental, fetch, method, reference, abort() the abort() method of the abortcontroller
interface aborts a dom request (e.g.
...And 2271 more matches
Index
to this end, there exist xpcom
interfaces to read and write registry data.
... this article will show you how to use the available
interfaces in several mozilla products.
...if the component uses only "frozen" xpcom
interfaces, there is a good chance the same binary component will work with different versions of gecko (version 1.8 and 1.9, for example).
...And 773 more matches
WebIDL bindings
note that if you're adding new
interfaces, then the test at dom/tests/mochitest/general/test_
interfaces.html will most likely fail.
...resist the urge to just add your
interfaces to the moz.build list without the review; it will just annoy the dom peers and they'll make you get the review anyway.
... the configuration file, dom/bindings/bindings.conf, is basically a python dict that maps
interface names to information about the
interface, called a descriptor.
...And 142 more matches
Introduction to XPCOM for the DOM
i will introduce nscomptr's,
interfaces, reference counting, and the nsisupports
interface.
... a tutorial about how to add a new
interface is also provided, and eventually, a more detailed discussion of class inheritance in c++.
...
interfaces object-oriented programming is based on the used of inheritance between classes.
...And 128 more matches
Starting WebLock
when a gecko application starts up, registered components are created and notified via the general-purpose observer
interface nsiobserver.
...the method at the core of this
interface is observe: void observe(in nsisupports asubject, in string atopic, in wstring adata); there aren't really any restrictions on what the three parameters (asubject, atopic and adata) may represent.
...if your object would like to register for this or other events, it first must implement the nsiobserver
interface.
...And 109 more matches
Index - Archive of obsolete content
5 navigator api, navigator features that used to hang off the navigator
interface, but have since been removed.
... 27 modules add-ons, extensions a module is a self-contained unit of code, which is usually stored in a file, and has a well defined
interface.
... 51 panel add-on sdk, add-ons, extensions creates transient dialogs to implement part of an add-on's user
interface.
...And 90 more matches
Overview of Mozilla embedding APIs
introduction the mozilla public api consists of a collection of services and components which are accessed via xpcom
interfaces.
...together, these two services provide a centralized point for gaining access to all of the public mozilla
interfaces.
...the webbrowser exposes a set of
interfaces which allow the embedding application to control activity and respond to changes within this client area.
...And 86 more matches
Mozilla DOM Hacking Guide
in this document i will try to outline the main aspects of the implementation, beginning with the class info mechanism, which lies at the heart of the dom, then with the description of various
interfaces and classes.
...the goals of class info are twofold:
interface flattening, and implementing behaviors that are not possible with idl alone.
...for example, when we ask for |document.getelementbyid("myid");|, xpconnect will find that |document| is a property of the window object, so it will look on the
interface nsidomwindow, and it will find the getdocument() method.
...And 76 more matches
Parser API
all node types implement the following
interface:
interface node { type: string; loc: sourcelocation | null; } the type field is a string representing the ast variant type.
...you can use this field to determine which
interface a node implements.
...if the parser produced no information about the node's source location, the field is null; otherwise it is an object consisting of a start position (the position of the first character of the parsed source region) and an end position (the position of the first character after the parsed source region):
interface sourcelocation { source: string | null; start: position; end: position; } each position object consists of a line number (1-indexed) and a column number (0-indexed):
interface position { line: uint32 >= 1; column: uint32 >= 0; } programs
interface program <: node { type: "program"; body: [ statement ]; } a complete program source tree.
...And 76 more matches
An Overview of XPCOM
in order to allow interoperability between components within an application, xpcom separates the implementation of a component from the
interface, which we discuss in
interfaces.
...
interfaces how do you decide when to break apart your code?
...the communication channels between different component form boundaries between those components, and when those boundaries are formalized they are known as
interfaces.
...And 72 more matches
Getting Started Guide
nscomptr is smart in that, unlike a raw c++ pointer to an xpcom object, nscomptr manages addref, release, and query
interface for you.
... with nscomptr, you can write code that is shorter, cleaner, clearer, and safer, than you can with raw xpcom
interface pointers.
...they reference it only through a pointer to an `
interface', i.e., the static type of the pointer is a pointer to an abstract base class, the actual object pointed to is a class derived from that abstract base class.
...And 57 more matches
Reference Manual
the basics design an nscomptr is designed to be a complete replacement for raw xpcom
interface pointers where they are used as owning references.
... almost any place you could use a raw xpcom
interface pointer, you should be able to use an nscomptr.
... an nscomptr is the exact same size and shape as a raw xpcom
interface pointer.
...And 49 more matches
Modularization techniques - Archive of obsolete content
the basics
interfaces the basic building blocks of modules are c++ pure virtual
interfaces.
... a pure virtual
interface is simply a class where every method is defined as pure virtual, that is: virtual int foo(int bar) = 0; pure virtual
interfaces provide an easy mechanism for passing function tables between modules that may reside in separate, possibly dynamically loaded, libraries.
... each
interface is assigned a unique
interface identifier, or iid.
...And 46 more matches
Using XPCOM Components
« previousnext » one of the best ways to begin working with xpcom - especially when you are designing the
interface to a component that will be used by others, as we do in starting weblock - is to look at how clients are already using xpcom components.
...in fact, virtually all of the functionality that you associate with a browser - navigation, window management, managing cookies, bookmarks, security, searching, rendering, and other features - is defined in xpcom components and accessed by means of those component
interfaces.
...the cookie manager dialog shows user
interface[cookie-manager-ui] that is presented to the user in mozilla for working with the cookiemanager component.
...And 46 more matches
Creating the Component Code
an xpcom component needs to implement at least three
interfaces that xpcom requires, and often others as well.
...web lock user
interface shows the icon that is used to activate the web lock mode (leftmost in the status bar) once you have installed the weblock component and the extra user
interface.
... web lock user
interface most of the actual work in the weblock component is preparing the component itself, finding the xpcom
interfaces the component needs to use, and hooking into existing functionality within the gecko browser.
...And 43 more matches
Finishing the Component
using frozen
interfaces the core functionality of blocking sites is still missing, however.
... the
interfaces needed to block certain urls from loading are not frozen, and there is still some debate about how exactly this functionality should be exposed to embedders and component developers, so the apis are not ready to be published.
... this puts you in the same situation as many developers using mozilla - you want to use some specific functionality, but the
interfaces seem to change on a daily basis.
...And 43 more matches
Web Audio API - Web APIs
web audio api
interfaces the web audio api has a number of
interfaces and associated events, which we have split up into nine categories of functionality.
... audiocontext the audiocontext
interface represents an audio-processing graph built from audio modules linked together, each represented by an audionode.
... audionode the audionode
interface represents an audio-processing module like an audio source (e.g.
...And 42 more matches
XPCOM Objects - Archive of obsolete content
most of the objects and functions in the lower layers are hidden from the chrome; those that need to be publicized are exposed through xpcom components and
interfaces.
...those two methods always receive the
interface identifier as an argument.
... similarly to cc, ci (components.
interfaces) is an index of available
interfaces.
...And 37 more matches
XPIDL
xpidl is an
interface description language used to specify xpcom
interface classes.
...
interface description languages (idl) are used to describe
interfaces in a language- and machine-independent way.
... idls make it possible to define
interfaces which can then be processed by tools to autogenerate language-dependent
interface specifications.
...And 37 more matches
Index - Archive of obsolete content
found 1218 pages: # page tags and summary 1 xul landing, mozilla, xul xul (xml user
interface language) is mozilla's xml-based language for building user
interfaces of applications like firefox.
...in contrast to the mozilla jargon file, this article describes items of specific interest to the web or content developer looking to establish a context for understanding mozilla's new technologies -- and in particular mozilla's xml-based user
interface language, xul.
... 422 deprecated and defunct markup reference, xul {many elements on this page are wrongly marked as deprecated, this page needs review} 423 dynamically modifying xul-based user
interface add-ons, dom, extensions, xul this article discusses manipulating xul
interfaces, using dom and other apis.
...And 29 more matches
Building the WebLock UI
the xpcom
interfaces and tools you've used have been general, cross-platform, and available in the gecko runtime environment or in any gecko-based application after mozilla 1.2 (when the gre began to be used).
... in this chapter, however, we are going to be building a user
interface for the weblock component that's meant to be added to the existing mozilla browser[other-mozlike-browsers].
... it uses xul, which is an xml language that gecko knows how to render as user
interface, but it also interacts with particular parts of the mozilla user
interface, where it must install itself as an extension to the ui.
...And 29 more matches
Source code directories overview - Archive of obsolete content
idl contains the xpidl (cross platform
interface definition language)
interface files.
...
interfaces are used so functionality can be available to both javascript scripts and c code with as little effort as possible.
...as more code is written with or converted to xpidl
interfaces, the value of the public directory diminishes.
...And 27 more matches
Multiprocess on Windows
interceptors are, essentially, wrapper objects which implement the same
interfaces as the object that they are wrapping.
...the interceptor is also aware that any outparams, which contain
interfaces, must also be wrapped with interceptors of their own.
... ensuring that the interceptor supports your
interfaces this information is current, but is likely to change when bug 1346957 is landed.
...And 26 more matches
Document - Web APIs
the document
interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the dom tree.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="mi...
...ef="/docs/web/api/document" target="_top"><rect x="266" y="1" width="80" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="306" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">document</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} the document
interface describes the common properties and methods for any kind of document.
...And 26 more matches
The HTML DOM API - Web APIs
the html dom api is made up of the
interfaces that define the functionality of each of the elements in html, as well as any supporting types and
interfaces they rely upon.
... access to the browser navigation history supporting and connective
interfaces for other apis such as web components, web storage, web workers, websocket, and server-sent events.
... structure of an html document the document object model (dom) is an architecture that describes the structure of a document; each document is represented by an instance of the
interface document.
...And 26 more matches
Mail composition back end
pizzarro <rhp@netscape.com> contents overview sending messages nsimsgsend sending listener
interfaces nsimsgsendlistener nsimsgcopyservicelistener copy operations copy to sent folder drafts templates "send later" sending unsent messages sending unsent messages listener quoting sample programs overview i've done considerable work in the past few weeks reorganizing the mail composition back end, so i thought it would be helpful to put together a small doc on the new
interfaces and how one can use them.
...several (but not all) of these
interfaces are specified in idl.
...the
interface that accomplishes this task is the nsimsgsend
interface.
...And 25 more matches
platform/xpcom - Archive of obsolete content
usage the xpcom module makes it simpler to perform three main tasks: implement xpcom object
interfaces implement and register xpcom factories implement and register xpcom services if all you need to do is use xpcom objects that someone else has implemented, then you don't need to use this module.
... implementing xpcom
interfaces this module exports a class called unknown which implements the fundamental xpcom
interface nsisupports.
... by subclassing unknown, either using standard javascript inheritance or using the sdk's heritage module, you can provide your own implementations of xpcom
interfaces.
...And 23 more matches
Chapter 5: Let's build a Firefox extension - Archive of obsolete content
listing 9: content for clock.dtd locale\en-us\clock.dtd: <!entity helloworld.clock "clock"> <!entity helloworld.currenttime "current time"> locale\fr-fr\clock.dtd: <!entity helloworld.clock "horloge"> <!entity helloworld.currenttime "heure courante"> replacing user
interface messages within javascript files with properties references it may happen your extension displays some useful messages such as alerts to the user.
... var gmyextensionbundle = components.classes["@mozilla.org/intl/stringbundle;1"].getservice(components.
interfaces.nsistringbundleservice); var _bundle = gmyextensionbundle.createbundle("chrome://myextension/locale/myextension.properties") you can now use your string substitutes in the .js where they are needed: see examples below if ( password == userpassword ) { oprefs.setboolpref("access.authenticated", true); } else { alert (_bundle.getstringfromname("wrongpassmessage")); function clear() { ...
... phase 1: test install figure 12 shows what the
interface for the session-management extension will look like.
...And 23 more matches
Introduction to the DOM - Web APIs
the document object model (dom) is a programming
interface for html and xml documents.
...alert(paragraphs[0].nodename); all of the properties, methods, and events available for manipulating and creating web pages are organized into objects (for example, the document object that represents the document itself, the table object that implements the special htmltableelement dom
interface for accessing html tables, and so forth).
... data type (
interface) description document when a member returns an object of type document (e.g., the ownerdocument property of an element returns the document to which it belongs), this object is the root document object itself.
...And 23 more matches
Component Internals
it gets called during registration and unregistration of the component, and when xpcom wants to discover what
interfaces or classes the module/library implements.
... as a component in the xpcom framework illustrates, in addition to the nsgetmodule entry point, there are nsimodule and nsifactory
interfaces that control the actual creation of the component, and also the string and xpcom glue parts, which we'll discuss in some detail in the next section (see xpcom glue).
... a set of default libraries stored in this components directory makes up a typical gecko installation, providing functionality that consists of networking, layout, composition, a cross-platform user
interface, and others.
...And 22 more matches
Using XPCOM Utilities to Make Things Easier
xpcom module macros macro description ns_impl_nsgetmodule(name, components) implements the nsimodule
interface with the module name of name and the component list in components.
...unless you have very special requirements for managing reference counting or handling
interface discovery, theimplementation macros that xpcom provides can be used.
... instead of implementing the nsisupports yourself, ns_impl_isupports1 can expand to the implementation of addref, release, and query
interface for any object.
...And 22 more matches
Performance API - Web APIs
the high resolution time standard defines a performance
interface that supports client-side latency measurements within applications.
... the performance
interfaces are considered high resolution because they are accurate to a thousandth of a millisecond (subject to hardware or software constraints).
... the
interfaces support a number of use cases including calculating frame-rates (potentially important in animations) and benchmarking (such as the time to load a resource).
...And 22 more matches
File I/O - Archive of obsolete content
only use these legacy
interfaces if os.file is not available to you.
...for legacy reasons, there is also an nsilocalfile
interface.
... createinstance(components.
interfaces.nsilocalfile); file.initwithpath("/home"); note: the path should be in the "native" form (for example"c:\\windows").
...And 21 more matches
Chapter 4: Using XPCOM—Implementing advanced processes - Archive of obsolete content
reference materials to get an idea of what kinds of functions embedded xpcom can handle, take a look at the api reference and the
interface definitions from xpidl in the actual source code.
... note:
interface definition language (idl) is a language for giving standard definitions of objects, methods, and so forth.
...if you’re having trouble with any of the details of the
interface, it is helpful to search on the source code for usage examples within firefox.
...And 21 more matches
Accessing the Windows Registry Using XPCOM
to this end, there exist xpcom
interfaces to read and write registry data.
... this article will show you how to use the available
interfaces in several mozilla products.
...the
interface follows the windows api fairly closely, but with many of the low-level details taken care of for you.
...And 21 more matches
Preferences - Archive of obsolete content
the
interfaces dealing with preferences are fairly well documented, so using the methods not mentioned here should be straightforward.
... xpcom
interfaces for preferences system mozilla exposes its preferences system through a few xpcom
interfaces.
... look in the resources section below for the link to a list of preferences-related
interfaces.
...And 20 more matches
A bird's-eye view of the Mozilla framework
it examines what happens when the user performs a simple user
interface (ui) action such as clicking a link in the contents panel of the help viewer window shown below.
...thehelp viewer files referenced in the article are located in /seamonkey/extensions/help/ this article also assumes you are familiar with the javascript and c++ programming languages, object-oriented programming (oop) terminology and design concepts, the microsoft® component object model (com), and the corba omg
interface definition language (idl).
... user
interface (ui) widgets and services the x window system toolkit defines the termwidget as a pre-defined object that encapsulates both the command actions and data associated with a graphical user
interface (gui) control.
...And 20 more matches
Index
account
interfaces provides an overview of the related
interfaces.
... see an overview of thunderbird components for a general description of the thunderbird user
interface and related programmatic
interfaces.
... 4 account
interfaces code snippets, extension development, thunderbird this page contains a list of the
interfaces that you'll will most likely use when writing extensions that work with email or other accounts.
...And 19 more matches
XPCOMUtils.jsm
if not // provided, the default factory is used, which returns // |(new mycomponent()).query
interface(iid)| in its createinstance().
...] }], // query
interface implementation, e.g.
... using the generateqi helper query
interface: xpcomutils.generateqi( [components.
interfaces.nsiobserver, components.
interfaces.nsimy
interface, "nsifoo", "nsibar" ]), // [optional] classinfo implementation, e.g.
...And 18 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
5 api codingscripting, glossary, infrastructure an api (application programming
interface) is a set of features and rules that exist inside a software program (the application) enabling interaction with it through software - as opposed to a human user
interface.
... the api can be seen as a simple contract (the
interface) between the application offering it and other items, such as third party software or hardware.
... 100 dmz glossary, networking, security a dmz is a way to provide an insulated secure
interface between an internal network (corporate or private) and the outside untrusted world — usually the internet.
...And 17 more matches
Mozilla accessibility architecture
readers of this document should be familiar with
interfaces, the w3c dom, xul and the concept of a layout object tree.
...accessible nodes and
interfaces every node in the dom tree could be important to 3rd party assistive technology.
... accessibility apis on each operating system have built-in assumptions about what is the most important information, and how an accessibility server like mozilla should use the api's programmatic
interfaces to expose this information to an accessibility client (the assistive technology).
...And 17 more matches
Displaying Places information using views
all places views implement or own an instance of
interface nsinavhistoryresultviewer, which is the point of interaction between a view and its results.
...like all places views, the built-in tree view implements this
interface, which provides broad methods such as getting the view's nsinavhistoryresult instance and examining the view's selection.
...this view is an object that implements three
interfaces: from most specific to most general, nsinavhistoryresulttreeviewer, nsinavhistoryresultobserver , and nsitreeview.
...And 17 more matches
How to build an XPCOM component in JavaScript
defining the
interface if you want to use your component in other xpcom components, you must define the
interfaces that you want exposed.
... there are many
interfaces already defined in mozilla applications, so you may not need to define a new one.
... you can browse existing xpcom
interfaces at various locations in the mozilla source code, or using xpcomviewer, a gui for browsing registered
interfaces and components.
...And 16 more matches
XPCOM Stream Guide
primitive input streams type native class contract id
interface how to bind to a data source generic nsstorageinputstream n/a nsiinputstream, nsiseekablestream storagestream.newinputstream(); string (8-bit characters) nsstringstream @mozilla.org/io/string-input-stream;1 nsistringinputstream stream.setdata(data, length); file nsfileinputstream @mozilla.org/network/file-input-stream;1 n...
... primitive output streams type native class contract id
interface how to bind to a data target generic nsstoragestream @mozilla.org/storagestream;1 nsistoragestream stream.getoutputstream(); // returns nsioutputstream file nsfileoutputstream @mozilla.org/network/file-output-stream;1 nsifileoutputstream stream.init(file, ioflags, perm, behaviorflags); file nssafefileoutputstream @mozilla.org/network/safe-file-output-stream;1 nsisafefileoutputstream, nsifileoutputstream ...
...to solve this, there is a special nsiscriptableinputstream
interface and "scriptable stream" wrapper.
...And 16 more matches
Weak reference
it's key to note that an nsweakptr has exactly the same
interface as an nscomptr.
... by now you've probably noticed that this particular weak reference implementation doesn't give you exactly the
interface you were hoping for.
... why can't i just directly call my
interfaces methods on the weak reference?
...And 16 more matches
Address Book examples
note: thunderbird and seamonkey user
interfaces now reference 'contacts' not 'cards' however, as the backend still uses the 'cards' terminology, that is what is used here this article provides examples on accessing and manipulating thunderbird address books.
... address book
interfaces provides an overview of the related
interfaces.
... see an overview of thunderbird components for a general description of the thunderbird user
interface and related programmatic
interfaces.
...And 16 more matches
A XUL Bestiary - Archive of obsolete content
in contrast to the mozilla jargon file, this article describes items of specific interest to the web or content developer looking to establish a context for understanding mozilla's new technologies -- and in particular mozilla's xml-based user
interface language, xul.
...in general, chrome refers to a xul
interface and all of its supporting files; chrome means the xul content and structure, plus the css skin, plus whatever localization and platform-specific files are part of that xul
interface.
...a package is a chunk of
interface code that sits in a particular place within mozilla's package hierarchy.
...And 15 more matches
RDF in Mozilla FAQ - Archive of obsolete content
the rdf back-end architecture document describes in more detail how mozilla's rdf implementation works, and gives a quick overview of the
interfaces that are involved.
... you can either create an rdf/xml datasource using the rdf service's getdatasource() method: // get the rdf service var rdf = components .classes["@mozilla.org/rdf/rdf-service;1"] .getservice(components.
interfaces.nsirdfservice); // ...and from it, get the datasource.
... // note that ds will load asynchronously, so assertions will not // be immediately available alternatively, you can create one directly using the xpcom component manager, as the following code fragment illustrates: // create an rdf/xml datasource using the xpcom component manager var ds = components .classes["@mozilla.org/rdf/datasource;1?name=xml-datasource"] .createinstance(components.
interfaces.nsirdfdatasource); // the nsirdfremotedatasource
interface has the
interfaces // that we need to setup the datasource.
...And 15 more matches
Gecko info for Windows accessibility vendors
the base of our support for these products is msaa (microsoft active accessibility), external readonly dom support, and the keyboard api/user
interface.
... microsoft active accessibility (msaa) an api devised by microsoft so that accessibility aids can track what's going on inside the user
interface of any software package that supports it.
... xul: extensible user-
interface language the xml-based language used by firefox and mozilla to develop the ui.
...And 15 more matches
XPCOM array guide
this array is read-only, and the
interface does not provide any methods that will allow adding and removing members.
...this
interface actually derives from nsiarray.
... are all the things you are storing
interface pointers to instances of the same
interface?
...And 15 more matches
nsIVariant
we mark the
interface [scriptable] so that js can use methods that refer to this
interface.
... nsresult getasarray(out pruint16 type, out nsiid iid, out pruint32 count, out voidptr ptr); violates the xpcom
interface guidelines astring getasastring(); native code only!
... nsresult getasid(out nsid retval); violates the xpcom
interface guidelines print16 getasint16(); native code only!
...And 15 more matches
XPCOM reference
this reference describes the
interfaces and functions provided by the xpcom library.
... core xpcom functionsxpcom provides a number of global functions which are used to initialize and shut down the xpcom library, as well as to allocate memory, get access to services, and to instantiate
interfaces.foldersthe folder classes all implement the nsimsgfolder
interface.
...this macro is meant for critical errors; like assertions, ns_errors should not be reachable.ns_if_addrefmacrons_if_releasemacrons_releasemacrons_warningmacronsgetmoduleprocthis function prototype provides the xpcom entry-point into a module.nsiabcard/thunderbird3the nsiabcard
interface is used to represent and manipulate cards in the address book.
...And 15 more matches
Mozilla Application Framework in Detail - Archive of obsolete content
related: xulrunner:what xulrunner provides, xulrunner hall of fame ui in mozilla mozilla's philosophy of using "the right tool for the right job" is manifested most prominently in the design of the user
interface.
... we provide an xml-based language called xul for defining the user
interface of your application.
...javascript, considered by many to be the best scripting language ever designed is ideal for specifying the behavior of your
interface widgets.
...And 14 more matches
Performance Timeline - Web APIs
the performance timeline api defines extensions to the performance
interface to support client-side latency measurements within applications.
... the extensions provide
interfaces to retrieve performance entry metrics based on specific filter criteria.
... the standard also includes
interfaces that allow an application to define performance observer callbacks that are notified when specific performance events are added to the browser's performance timeline.
...And 14 more matches
Tabbed browser - Archive of obsolete content
from a sidebar basically, if your extension code is a sidebar you can use: var mainwindow = window.query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsiwebnavigation) .query
interface(components.
interfaces.nsidocshelltreeitem) .roottreeitem .query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsidomwindow); ...
... mainwindow.gbrowser.addtab(...); from a dialog if your code is running in a dialog opened directly by a browser window, you can use: window.opener.gbrowser.addtab(...); if window.opener doesn't work, you can get the most recent browser window using this code: var wm = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator); var mainwindow = wm.getmostrecentwindow("navigator:browser"); mainwindow.gbrowser.addtab(...); opening a url in a new tab // add tab gbrowser.addtab("http://www.google.com/"); // add tab, then make active gbrowser.selectedtab = gbrowser.addtab("http://www.google.com/"); manipulating content of a new tab if you want to work on the content of the newly opened tab, you'll need to wait until...
... function openandreuseonetabperurl(url) { var wm = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator); var browserenumerator = wm.getenumerator("navigator:browser"); // check each browser instance for our url var found = false; while (!found && browserenumerator.hasmoreelements()) { var browserwin = browserenumerator.getnext(); var tabbrowser = browserwin.gbrowser; // check each tab of this browser instance var numtabs = tabbrowser.browsers.length; ...
...And 13 more matches
mozIRegistry
it's not really about any "registry
interface" so much as it's about how mozilla supports a more dynamic binding between
interface clients and the code that actually provides the implementation of those
interfaces.
...the intent is that such services themselves be built on top of the new moziregistry
interface.
... we are proposing a new "moziregistry" xpcom
interface that provides the same level of function as is currently provided by the "netscape registry" implemented in libreg.
...And 13 more matches
nsIMsgDBView
the nsimsgdbview
interface handles the display of mail in the threadpane and preview pane of thunderbird and other xpcom based mail cients.
...to create an instance, use: var dbview = components.classes[@mozilla.org/messenger/msgdbview;1?type=] .createinstance(components.
interfaces.nsimsgdbview); where type designates different types of view's available.
...defined in the
interface: nsmsgviewsorttype.
...And 13 more matches
Commenting IDL for better documentation
this article will help you understand how you can format your comments to help ensure that the conversion process can be automated as much as possible in order to ensure that your
interface gets properly documented.
...but by following the guidelines here, you can help make sure that our tools can generate a "good start" version of the documentation for your
interfaces, and that the writers will be able to easily figure out what the tools are not able to do automatically.
...use doxygen style comments only for information that is directly useful to someone using or implementing the
interface.
...And 12 more matches
XPCOM
interfaces in xpcom are defined in a dialect of idl called xpidl.
...to this end, there exist xpcom
interfaces to read and write registry data.
... this article will show you how to use the available
interfaces in several mozilla products.aggregating the in-memory datasourcealready_addrefedalready_addrefed in association with nscomptr allows you to assign in a pointer without addrefing it.binary compatibilityif mozilla decides to upgrade to a compiler that does not have the same abi as the current version, any built component may fail.
...And 12 more matches
WebRTC API - Web APIs
connections between two peers are represented by the rtcpeerconnection
interface.
... media streams can consist of any number of tracks of media information; tracks, which are represented by objects based on the mediastreamtrack
interface, may contain one of a number of types of media data, including audio, video, and text (such as subtitles or even chapter names).
... you can also use the connection between two peers to exchange arbitrary binary data using the rtcdatachannel
interface.
...And 12 more matches
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
msaa provides information in several different ways: a com
interface (iaccessible) that allows applications to expose the tree of data nodes that make up each window in the user
interface currently being interacted with and custom
interface extensions via
interfaces via query
interface and queryservice.
...you will have to expose
interfaces that contain more info than msaa does.
...zoomtext and dragon can get by with your msaa support., and jaws can be scripted (even by external developers) to support alternative
interfaces.
...And 12 more matches
Creating JavaScript callbacks in components
callback patterns in idl xpcom components use idl to create
interfaces.
... these
interfaces are used to manipulate the component in c++ and javascript.
... a common pattern used with
interfaces to create a bi-directional communication between two groups of code is the observer (or listener) pattern.
...And 11 more matches
Places Developer Guide
if (type == ci.nsinavhistoryresultnode.result_type_uri) { var uri = childnode.uri; } else if (type == ci.nsinavhistoryresultnode.result_type_folder) { childnode.query
interface(ci.nsinavhistorycontainerresultnode); childnode.containeropen = true; // now you can iterate over a subfolder's children } } ther available node types are documented in the idl.
... deleting bookmark items with the bookmarks service: removeitem(aitemid) - works for all types removefolder(aitemid) - works for folders and livemarks removefolderchildren(aitemid) - works for folders and livemarks observing bookmark events the nsinavbookmarkobserver
interface is used for observing bookmarks activity such as item additions, changes and deletions.
... // observers can use this to suspend updates to the user-
interface, for example // while a batch change is occurring.
...And 11 more matches
nsISecurityCheckedComponent
extensions can define their own capabilities and use this
interface to only allow access to code trusted with that capability.
...this
interface is used in mozilla by xpconnect and a handful of things that need special handing (xul controllers, the ui for the <video> tag, etc.).
... method overview string cancallmethod(in nsiidptr iid, in wstring methodname); string cancreatewrapper(in nsiidptr iid); string cangetproperty(in nsiidptr iid, in wstring propertyname); string cansetproperty(in nsiidptr iid, in wstring propertyname); methods cancallmethod() returns a capability string indicating what permissions are required to call the specified method on the given
interface.
...And 11 more matches
nsIWebBrowser
embedding/browser/webbrowser/nsiwebbrowser.idlscriptable this
interface is implemented by web browser objects.
... embedders use this
interface during initialization to associate the new web browser instance with the embedders chrome and to register any listeners.
... the
interface may also be used at runtime to obtain the content dom window and from that the rest of the dom.
...And 11 more matches
CSS Typed Object Model API - Web APIs
css typed object model api provides
interfaces to interact with underlying values, by representing them with specialized js objects that can be manipulated and understood more easily and more reliably than string parsing and concatenation.
...
interfaces cssstylevalue the cssstylevalue
interface of the the css typed object model api is the base class of all css values accessible through the typed om api.
... cssstylevalue.parse(property, csstext) the parse() method of the cssstylevalue
interface allows a cssnumericvalue to be constructed from a css string.
...And 11 more matches
RTCPeerConnection - Web APIs
the rtcpeerconnection
interface represents a webrtc connection between the local computer and a remote peer.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,...
...tion, which represents a connection between the local device and a remote peer.propertiesalso inherits properties from: eventtargetcantrickleicecandidatesthe read-only rtcpeerconnection property cantrickleicecandidates returns a boolean which indicates whether or not the remote peer can accept trickled ice candidates.connectionstate the read-only connectionstate property of the rtcpeerconnection
interface indicates the current state of the peer connection by returning one of the string values specified by the enum rtcpeerconnectionstate.currentlocaldescription read only the read-only property rtcpeerconnection.currentlocaldescription returns an rtcsessiondescription object describing the local end of the connection as it was most recently successfully negotiated since the last time the rtcpeercon...
...And 11 more matches
JS XPCOM - Archive of obsolete content
interfaces every xpcom object implements one or more
interfaces.
... an
interface is simply a list of constants and methods that can be called on the object, an example is nsifile.
... every xpcom object must implement the nsisupports
interface.
...And 10 more matches
XForms Custom Controls - Archive of obsolete content
work has just started in the w3c xforms working group to investigate the custom control issue, so eventually (hopefully?) there will be an "official" and common way to customize your form's user
interface across all xforms processors.
...to get started, you really only need to know the language where you'd like to use xforms (like xhtml or xul), some xbl and javascript, and the xpcom
interfaces we are exposing for your use.
... details
interfaces this section describes
interfaces you need to know.
...And 10 more matches
Embedding Tips
a service is a singleton object implementing one or more xpcom
interfaces and registered with gecko during startup.
... get thensiwebnavigation
interface on your webbrowser and call the loaduri method with the appropriate uri and flags.
... this
interface also has methods for reloading, stopping a load and going back and forward in the history.
...And 10 more matches
Scripting Java
implementing java
interfaces now that we can access java classes, create java objects, and access fields, methods, and properties of those objects, we have a great deal of power at our fingertips.
... however, there are a few instances where that is not enough: many apis in java work by providing
interfaces that clients must implement.
... to address this need, rhino provides the ability to create new java objects that implement
interfaces.
...And 10 more matches
Aggregating the In-Memory Datasource
say you were writing a datasource2, and the way you chose to implement it was to "wrap" the in-memory datasource; i.e., myclass : public nsimy
interface, public nsirdfdatasource { private: nscomptr<nsirdfdatasource> minner; public: // nsirdfdatasource methods ns_imethod init(const char* auri) { return minner->init(auri); } ns_imethod geturi(char* *auri) { return minner->geturi(auri); } // etc., for each method in nsirdfdatasource!
... }; very painful, prone to errors, and fragile as the
interfaces are still in flux (a wee bit).
...also, instead of keeping an nscomptr<nsirdfdatasource>, you'll just want an nscomptr<nsisupports>: class myclass : public nsimy
interface { ...
...And 10 more matches
Mail event system
interfaces the key
interfaces here are: nsifolder.idl is an
interface for storing a hierarchy of objects with properties.
... this
interface is not (should not be) mail-related.
... nsifolderlistener.idl is an
interface that an object can implement if it is interested in listening to changes on single folder or on all folders.
...And 10 more matches
Element - Web APIs
for example, the htmlelement
interface is the base
interface for html elements, while the svgelement
interface is the basis for all svg elements.
... languages outside the realm of the web platform, like xul through the xulelement
interface, also implement element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
...And 10 more matches
Sensor APIs - Web APIs
the sensor apis are a set of
interfaces built to a common design that expose device sensors in a consistent way to the web platform.
... sensor apis concepts and usage although the generic sensor api specification defines a sensor
interface, as a web developer you will never use it.
...for example, the accelerometer
interface returns the acceleration of the device along all three axes at the time it is read.
...And 10 more matches
Window - Web APIs
the window
interface represents a window containing a dom document; the document property points to the dom document loaded in that window.
... the window
interface is home to a variety of functions, namespaces, objects, and constructors which are not necessarily directly associated with the concept of a user
interface window.
... however, the window
interface is a suitable place to include these items that need to be globally available.
...And 10 more matches
XUL Migration Guide - Archive of obsolete content
user
interface components xul-based add-ons typically implement a user
interface using a combination of two techniques: xul overlays and xul windows.
...in this way an extension can integrate its user
interface into the browser: for example, adding menu items, buttons, and toolbars.
...to add user
interface components to the browser, there are a few different options.
...And 9 more matches
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
and for users it usually doesn't begin to approach the seamlessness and usability of good application user
interfaces.
...one such model is inner-browsing, which is our name for a model in which all navigation occurs within a single page, as in a typical application
interface.
...an implementation can also use other transport technologies such as soap-based remote procedure calls, xmlhttprequest
interfaces, or dom 3 load.
...And 9 more matches
XML - Archive of obsolete content
xul syntax & rules xul is a standards-based
interface definition language.
...using a combination of xul's ready-made widgets (e.g., menubar, scrollbar, progressmeter, and so on) and xul's incorporation of such standards as html4, dom1/2, and cascading stylesheets, you can design any
interface that you can imagine, using any number of different features, tools, and methodologies.
...in order to provide flexibility to you as adesigner of
interfaces, xul offers no flexibility to you as acoder.
...And 9 more matches
tree - Archive of obsolete content
the view object implements the nsitreeview
interface.
...the second column lists the
interfaces available via the tree's view property.
... tree type view
interfaces has dom nodes?
...And 9 more matches
Creating Sandboxed HTTP Connections
to create an nsiuri from an string, we use the newuri method of nsiioservice: // the io service var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); // create an nsiuri var uri = ioservice.newuri(myurlstring, null, null); once the nsiuri has been created, a nsichannel can be generated from it using nsiioservice's newchannelfromuri method: // get a channel for that nsiuri var channel = ioservice.newchannelfromuri(uri); to initiate the connection, the asyncopen method is called.
...below is an example: // global channel var gchannel; // init the channel // the io service var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); // create an nsiuri var uri = ioservice.newuri(myurlstring, null, null); // get a channel for that nsiuri gchannel = ioservice.newchannelfromuri(uri); // get an listener var listener = new streamlistener(callbackfunc); gchannel.notificationcallbacks = listener; gchannel.asyncopen(listener, null); function streamlistener(acallbackfunc) { this.mcallbackfunc = acallbackfunc; }...
... streamlistener.prototype = { mdata: "", // nsistreamlistener onstartrequest: function (arequest, acontext) { this.mdata = ""; }, ondataavailable: function (arequest, acontext, astream, asourceoffset, alength) { var scriptableinputstream = components.classes["@mozilla.org/scriptableinputstream;1"] .createinstance(components.
interfaces.nsiscriptableinputstream); scriptableinputstream.init(astream); this.mdata += scriptableinputstream.read(alength); }, onstoprequest: function (arequest, acontext, astatus) { if (components.issuccesscode(astatus)) { // request was successfull this.mcallbackfunc(this.mdata); } else { // request failed this.mcallbackfunc(null); } gchannel = null; }, // nsichanneleventsink onc...
...And 9 more matches
Embedding the editor
this type of embedding requires that the composer code is agnostic to where its ui is coming from; communication between the core editor and the ui needs to go through one or more
interfaces that insulate the editor from its host application.
...editor needs to call through one or more
interfaces when communicating with the ui.
...this will involve: making a new
interface, nsieditorframe, that is implemented by nsdocshell or a related class.
...And 9 more matches
How to implement a custom autocomplete search component
thunderbird 2.x and seamonkey 1.1.x support the toolkit
interfaces, although they do not use the same autocomplete widget.
...to do so you need the following: create an xpcom component that implements the nsiautocompletesearch
interface.
... implement the list of matched strings using the nsiautocompleteresult
interface.
...And 9 more matches
AT APIs Support
they typically use standard windows controls for their user
interface -- the area outside of the client content window, plus the context menu.
... on mac platform camino - web browser for os x xul applications xul applications make full use of the gecko architecture, not only for html content, but also for the entire user
interface.
... widgets such as menus, tab panels, tree views and dialogs are provided via an xml language called xul (extensible user-
interface language).
...And 9 more matches
nsIPromptService
embedding/components/windowwatcher/public/nsipromptservice.idlscriptable this
interface can be used to display simple dialogs.
... note: some of these
interface methods use out and inout parameters.
...to get an instance, use: var promptservice = components.classes["@mozilla.org/embedcomp/prompt-service;1"] .getservice(components.
interfaces.nsipromptservice); method overview void alert(in nsidomwindow aparent, in wstring adialogtitle, in wstring atext); void alertcheck(in nsidomwindow aparent, in wstring adialogtitle, in wstring atext, in wstring acheckmsg, inout boolean acheckstate); boolean confirm(in nsidomwindow aparent, in wstring adialogtitle, in wstring atext); boolean confirmcheck(in nsi...
...And 9 more matches
nsIServiceManager
xpcom/components/nsiservicemanager.idlscriptable this
interface provides a means to obtain global services in an application.
... aiid the
interface type to be returned.
... result the resulting
interface pointer.
...And 9 more matches
Resource Timing API - Web APIs
the resource timing
interfaces enable retrieving and analyzing detailed network timing data regarding the loading of an application's resource(s).
... the
interface's properties create a resource loading timeline with high-resolution timestamps for network events such as redirect start and end times, dns lookup start and end times, request start, response start and end times, etc.
... the
interface also includes other properties that provide data about the size of the fetched resource as well as the type of resource that initiated the fetch.
...And 9 more matches
Miscellaneous - Archive of obsolete content
simulating mouse and key events https://developer.mozilla.org/samples/domref/dispatchevent.html also, new in firefox 3 / gecko 1.9: var utils = window.query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsidomwindowutils); utils.sendmouseevent("mousedown", 10, 10, 0, 1, 0); utils.sendmouseevent("mouseup", 10, 10, 0, 1, 0); getting the currently selected text from browser.xul overlay context: var selectedtext = document.commanddispatcher.focusedwindow.getselection().tostring(); or: content.ge...
... these properties can be accessed from javascript in the following manner: var common = { _bundle: components.classes["@mozilla.org/intl/stringbundle;1"] .getservice(components.
interfaces.nsistringbundleservice) .createbundle("chrome://myext/locale/myext.properties"), getlocalizedmessage: function(msg) { return this._bundle.getstringfromname(msg); } }; alert(common.getlocalizedmessage("invalid.url")) another similar alternative (using both getstringfromname and formatstringfromname), is: var fcbundle = components.classes["@mozill...
...a.org/intl/stringbundle;1"] .getservice(components.
interfaces.nsistringbundleservice) .createbundle("chrome://myext/locale/myext.properties"); function getstr(msg, args){ //get localised message if (args){ args = array.prototype.slice.call(arguments, 1); return fcbundle.formatstringfromname(msg,args,args.length); } else { return fcbundle.getstringfromname(msg); } } /* usage */ alert(getstr("invalid.url", "http://bad/url/", "3")); //for message with parameters alert(getstr("invalid.url")); //for message without parameters getting postdata of a webpage first, you need to get the browser you want, and its historysession.
...And 8 more matches
How to convert an overlay extension to restartless - Archive of obsolete content
step 3: no more nsifile access for files internal to your bundle for an extractionless extension, access to files internal to your bundle will not be possible using the nsifile
interface.
...the first is to use the nsizipreader
interface which permits continuing to use nsiinputstreams, etc.
...f your add-on's files using the add-on manager api: // this is the old way of getting one of your files const myaddonid = ...; // just store a constant with your id components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid(myaddonid,function(addon) { var file = services.io.newuri("resource://myaddon/filename.ext",null,null) .query
interface(components.
interfaces.nsifileurl) .file; var stream = components.classes["@mozilla.org/network/file-input-stream;1"] .createinstance(components.
interfaces.nsifileinputstream) .query
interface(components.
interfaces.nsiseekablestream); stream.init(file, 0x01, 0444, 0); // read-only, read by owner/group/others, n...
...And 8 more matches
The Joy of XUL - Archive of obsolete content
xul (pronounced "zool") is mozilla's xml-based user
interface language that lets you build feature rich cross-platform applications that can run connected to or disconnected from the internet.
... since xul provides an abstraction of user
interface components, it delivers on the promise of write-once, run-anywhere.
... the user
interface for all of mozilla's core applications (browser, messenger, address book, etc.) is written in xul with one single code base supporting all mozilla platforms.
...And 8 more matches
Necko Architecture
a url implements the uri
interface.
... the uri
interface does resource-generic things like getting/setting the scheme, or getting/setting the spec (everything beyond the first colon ':').
...uris (recall that a url is just one implementation of a uri) can be created as individual components independently of necko, or they can be retrieved via the nsiioservice
interface.
...And 8 more matches
nsIChannel
netwerk/base/nsichannel.idlscriptable this
interface allows clients to construct 'get' requests for specific protocols, and manage them in a uniform way.
... inherits from: nsirequest last changed in gecko 19.0 (firefox 19.0 / thunderbird 19.0 / seamonkey 2.16) once a channel is created (via nsiioservice.newchannel()), parameters for that request may be set by using the channel attributes, or by calling query
interface() to retrieve a subclass of nsichannel for protocol-specific parameters.
... this
interface must be used only from the xpcom main thread.
...And 8 more matches
nsIComponentManager
xpcom/components/nsicomponentmanager.idlscriptable this
interface provides methods to access factory objects and instantiate instances of classes.
... void addbootstrappedmanifestlocation( in
interface nsilocalfile alocation ); parameters alocation the directory or xpi from which to load the chrome.manifest.
... aiid the
interface type to be returned.
...And 8 more matches
nsIDOMEvent
dom/
interfaces/events/nsidomevent.idlscriptable this
interface is the primary data type for all events in the document object model.
... inherits from: nsisupports last changed in gecko 16.0 (firefox 16.0 / thunderbird 16.0 / seamonkey 2.13) note: as of gecko 16.0, the nsiprivatedomevent
interface was merged into this
interface.
... everything marked as gecko 16.0 was previously available in that
interface.
...And 8 more matches
Setting HTTP request headers
the nsihttpchannel
interface has a number of properties and methods, but the method that is of interest to us is setrequestheader.
...an observer is a component implementing nsiobserver
interface.
...below is an example observer that adds a custom header "x-hello" to the channel passed in for http-on-modify-request notification: var {cc, ci} = require("chrome"); var httprequestobserver = { observe: function(subject, topic, data) { if (topic == "http-on-modify-request") { var httpchannel = subject.query
interface(ci.nsihttpchannel); httpchannel.setrequestheader("x-hello", "world", false); } } }; note: the above code was changed to reflect that in a firefox add-on one can not directly access components.
interfaces und components.classes anymore but must use the require line introduced to the sample code above.
...And 8 more matches
Working with windows in chrome code
from xpcom components and modules if the window object is unavailable (for example, when opening a window from xpcom component code), you might want to use nsiwindowwatcher
interface.
... var ww = components.classes["@mozilla.org/embedcomp/window-watcher;1"] .getservice(components.
interfaces.nsiwindowwatcher); var win = ww.openwindow(null, "chrome://myextension/content/about.xul", "aboutmyextension", "chrome,centerscreen", null); window object note the win variable in the above section, which is assigned the return value of window.open.
... technically speaking, it implements a number of
interfaces, including nsidomjswindow and nsidomwindow, but it also contains the user-defined properties for global variables and functions of the window.
...And 8 more matches
Observer Notifications - Archive of obsolete content
to create an observer, you need to implement the nsiobserver
interface.
... the
interface has only one method observe() which takes three parameters.
... this example code shows you what an implementation of the nsiobserver
interface looks like: let testobserver = { observe : function(asubject, atopic, adata) { if (atopic == "xulschoolhello-test-topic") { window.alert("data received: " + adata); } } } in order for this observer to work, you need to use the observer service that provides methods for you to add, remove, notify and enumerate observers.
...And 7 more matches
XUL Event Propagation - Archive of obsolete content
this article describes the event model in xul and features event propagation as a way to handle events in different places in the
interface.
...events are used for different purposes, but they play a particularly important role in creating interactive xul-based user
interfaces, since it is events that bring the information about user actions to the code behind the
interface.
... the user clicks a button in the
interface.
...And 7 more matches
Mozilla’s UAAG evaluation report
(p2) p our
interface for image toggling needs redesign unfortunately, there are quite a few open bugs on image toggling guideline 4.
...ensure user control of user
interface behavior.
...implement interoperable application programming
interfaces.
...And 7 more matches
Index
in order to support multiple operating systems (os), it is based on a cross platform portability layer, called the netscape portable runtime (nspr), which provides cross platform application programming
interfaces (apis) for os specific apis like file system access, memory management, network communication, and multithreaded programming.
...(note that it's important to look at the number 11, as there are other pkcs standards with different numbers that define quite different topics.) a software or hardware module conforming to the pkcs#11 standard implements an
interface of c calls, which allow querying the characteristics and offered services of the module.
... multiple elements of nss's own modules have been implemented with this
interface, and nss makes use of this
interface when talking to those modules.
...And 7 more matches
IAccessibleHyperlink
other-licenses/ia2/accessiblehyperlink.idlnot scriptable this
interface represents hyperlinks.
... 1.0 66 introduced gecko 1.9 inherits from: iaccessibleaction last changed in gecko 1.9 (firefox 3) this
interface represents a hyperlink associated with a single substring of text or single non-text object.
...this
interface is derived from iaccessibleaction.
...And 7 more matches
nsIDownloadManagerUI
toolkit/components/downloads/public/nsidownloadmanagerui.idlscriptable this
interface is used to implement the user
interface for the download manager.
... if you wish to replace the default download manager user
interface, implement this
interface.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void getattention(); void show([optional] in nsi
interfacerequestor awindowcontext, [optional] in unsigned long aid, [optional] in short areason); attributes attribute type description visible boolean true if the download manager ui is visible; otherwise false.
...And 7 more matches
nsIWindowMediator
implemented by: @mozilla.org/appshell/window-mediator;1 as a service: var windowmediator = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator); method overview void addlistener(in nsiwindowmediatorlistener alistener); boolean calculatezposition(in nsixulwindow inwindow, in unsigned long inposition, in nsiwidget inbelow, out unsigned long outposition, out nsiwidget outbelow); native code only!
... var {cc: classes, ci:
interfaces} = components; var windowlistener = { onopenwindow: function (awindow) { // wait for the window to finish loading let domwindow = awindow.query
interface(ci.nsi
interfacerequestor).get
interface(ci.nsidomwindowinternal || ci.nsidomwindow); domwindow.addeventlistener("load", function () { domwindow.removeeventlistener("load", arguments.callee, false); //this ...
...a pure
interface would use all nsixulwindows.
...And 7 more matches
Mozilla
chrome registration chrome is the set of user
interface elements of the application window that are outside the window's content area.
...you can open the command line
interface by pressing shift + f2.
... creating javascript callbacks in components xpcom components use idl to create
interfaces.
...And 7 more matches
HTML Drag and Drop API - Web APIs
html drag and drop
interfaces enable applications to use drag-and-drop features in browsers.
... this overview of html drag and drop includes a description of the
interfaces, basic steps to add drag-and-drop support to an application, and an interoperability summary of the
interfaces.
...
interfaces the html drag and drop
interfaces are dragevent, datatransfer, datatransferitem and datatransferitemlist.
...And 7 more matches
Using Performance Timeline - Web APIs
the performance timeline standard defines extensions to the performance
interface to support client-side latency measurements within applications.
... the standard also includes
interfaces that allow an application to be notified when specific performance events occur.
... together, these
interfaces can be used to help identify an application's performance bottlenecks.
...And 7 more matches
Using Touch Events - Web APIs
the touch events
interfaces support application specific single and multi-touch interactions such as a two-finger gesture.
...
interfaces touch events consist of three
interfaces (touch, touchevent and touchlist) and the following event types: touchstart - fired when a touch point is placed on the touch surface.
... the touch
interface represents a single contact point on a touch-sensitive device.
...And 7 more matches
HTTP Index - HTTP
browsers set adequate values for this header according to their user
interface language and even if a user can change it, this happens rarely (and is frowned upon as it leads to fingerprinting).
... 80 csp: connect-src csp, content-security-policy, directive, http, reference, security, connect-src, source the http content-security-policy (csp) connect-src directive restricts the urls which can be loaded using script
interfaces.
... 123 feature-policy: accelerometer accelerometer, directive, feature policy, http, reference the http feature-policy header accelerometer directive controls whether the current document is allowed to gather information about the acceleration of the device through the accelerometer
interface.
...And 7 more matches
Finding window handles - Archive of obsolete content
another technique is to use the accessibility framework, see for example http://developer.mozilla.org/en/docs..._of_
interfaces another way to find a window handle...
...once you have a docshell, query
interface it into nsibasewindow, call getmainwidget on result, and then call getnativedata(ns_native_window).
... you don't have to compile your component with nsiwidget.h and other bunchs of h files that should not be exposed to outside, and could change every time firefox updates, all you need is nsibasewindow.idl(it's not in gecko_sdk, get this from the latest firefox source, or http://mxr.mozilla.org/mozilla/sourc...basewindow.idl), and use xpidl to compile it to .h file, although that's stll a unfrozen
interface, but it should be a lot better.
...And 6 more matches
Monitoring downloads - Archive of obsolete content
try to avoid using it.this
interface is deprecated as of firefox 26.
...in particular, it needs to get an instance of the download manager's nsidownloadmanager
interface and create the database into which its data will be stored.
... onload: function() { // initialization code this.initialized = true; this.strings = document.getelementbyid("downloadlogger-strings"); this.dlmgr = components.classes["@mozilla.org/download-manager;1"] .getservice(components.
interfaces.nsidownloadmanager); this.dlmgr.addlistener(downloadlogger); // open the database, placing its file in the profile directory this.dbfile = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsiproperties) .get("profd", components.
interfaces.nsifile); this.dbfile.append("downloadlogger.sqlite"); // get access to the storage service and open the database this.storageservice = components.classes["@mozilla.org/storage/service...
...And 6 more matches
Introduction - Archive of obsolete content
next » this tutorial is a guide to learning xul (xml user
interface language) which is a cross-platform language for describing applications' user
interfaces.
... this tutorial will demonstrate creating a simple find file user
interface, much like that provided by the macintosh's sherlock or the find file dialog in windows.
... note that only the user
interface will be created, with only limited functionality.
...And 6 more matches
XPCOM Examples - Archive of obsolete content
« previousnext » this section provides some examples of using xpcom along with some additional
interfaces.
...it implements the
interface nsiwindowdatasource.
... the code below shows how to get a component which implements it: var wmdata = components.classes["@mozilla.org/rdf/datasource;1?name=window-mediator"].getservice(); wmdata.query
interface(components.
interfaces.nsiwindowdatasource); this code retrieves a window mediator data source component.
...And 6 more matches
Creating Custom Events That Can Pass Data
as of gecko 1.8, if your event names do not start with "nsdom" and their
interfaces do not start with "nsidom" then you can forget about passing data.
... nsdomevent* it = new nsdommyevent(aprescontext, aevent); if (nsnull == it) { return ns_error_out_of_memory; } return callquery
interface(it, adomevent); } in general though i'd strongly recommend using a function the way that everyone else does.
...your event in order for your event to work you must do the following: create a scriptable
interface called nsidom{youreventname} inheriting from nsidomevent.
...And 6 more matches
JavaScript-DOM Prototypes in Mozilla
all those properties come from the
interfaces that the c++ image object (nshtmlimageelement) implements and chooses to expose to xpconnect through the object's class info.
... one of these
interfaces is nsidomhtmlimageelement, others are nsidomnshtmlimageelement (netscape extensions to the standard
interface), nsidomeventtarget, nsidomeventlistener, nsidom3node, and so on.
...but this is not good enough, in addition to being able to share and represent each "class" with a constructor, we also want users to be able to extend
interfaces, like node.
...And 6 more matches
Research and prep
e-commerce search amazon broad set of products, simple search
interface with no/limited advertising, popular shopping engine.
... specific interest wikipedia good user experience (no ads, simple
interface), popular site.
... rss reader google reader popular, no advertising, simple
interface.
...And 6 more matches
SpiderMonkey 1.8.5
spidermonkey 1.8.5 also ships with js-ctypes, a foreign-function
interface for privileged javascript.
...typed rooting api the rooting api has been changed from an error-prone void **
interface to an
interface which accepts pointers to specific types.
... the so-called "slow natives" are no longer supported; as such jsfastnative has been renamed to jsnative and relevant
interfaces have been updated accordingly.
...And 6 more matches
SpiderMonkey 1.8.7
spidermonkey 1.8.5 also ships with js-ctypes, a foreign-function
interface for privileged javascript.
...typed rooting api the rooting api has been changed from an error-prone void **
interface to an
interface which accepts pointers to specific types.
... the so-called "slow natives" are no longer supported; as such jsfastnative has been renamed to jsnative and relevant
interfaces have been updated accordingly.
...And 6 more matches
Feed content access API
firefox 2 and thunderbird 2 introduce a series of
interfaces that make it easy for extension authors to access rss and atom feeds.
... feed
interfaces nsifeed represents an rss or atom feed.
... nsifeedcontainer a base class subclassed by several of the feed-related
interfaces.
...And 6 more matches
Creating a Python XPCOM component
creating applications with mozilla already provides a tutorial for making a simple javascript or c++ component (implementing the nsisimple
interface).
...defining the
interface make a file named "nsipysimple.idl" to define the
interface: #include "nsisupports.idl" [scriptable, uuid(2b324e9d-a322-44a7-bd6e-0d8c83d94883)]
interface nsipysimple : nsisupports { attribute string yourname; void write( ); void change(in string avalue); }; this is the same as the nsisimple
interface used here.
... theoretically, because several components can share an
interface, the same file could be used.
...And 6 more matches
nsIClassInfo
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsisupports gethelperforlanguage(in pruint32 language); void get
interfaces(out pruint32 count, [array, size_is(count), retval] out nsiidptr array); attributes attribute type description classdescription string a human readable string naming the class, or null.
...violates the xpcom
interface guidelines exceptions thrown ns_error_not_available if the class does not have a classid contractid string a contractid through which an instance of this class can be created, or null.
...no implementor of this
interface should ever return flags with this bit set.
...And 6 more matches
nsIDOMMozNetworkStatsManager
please check dom/network/
interfaces/nsidomnetworkstatsmanager.idl to make sure this data is accurate.
... dom/network/
interfaces/nsidomnetworkstatsmanager.idlscriptable
interface that provides access to network usage statistics.
...to create an instance, use: var networkstatsmanager = components.classes["@mozilla.org/networkstatsmanager;1"] .createinstance(components.
interfaces.nsidomnetworkstatsmanager); furthermore, the networkstatsmanager is published through a moznetworkstats child object within the navigator object.
...And 6 more matches
nsIDocShell
idomstorage storage); void addstate(in nsivariant adata, in domstring atitle, in domstring aurl, in boolean areplace); void beginrestore(in nsicontentviewer viewer, in boolean top); void createaboutblankcontentviewer(in nsiprincipal aprincipal); void createloadinfo(out nsidocshellloadinfo loadinfo); void detacheditorfromwindow(); violates the xpcom
interface guidelines void finishrestore(); void firepagehidenotification(in boolean isunload); native code only!
... note: prior to gecko 12.0, this attribute was part of a separate nsidoccharset
interface.
...obsolete since gecko 12.0 note: the properties of the old nsidocumentcharsetinfo
interface were merged into nsidocshell in gecko 12.0.
...And 6 more matches
nsISupports
xpcom/base/nsisupports.idlscriptable all xpcom
interfaces inherit this
interface.
... last changed in gecko 1.0 method overview nsrefcnt addref();violates the xpcom
interface guidelines void query
interface(in nsiidref uuid, [iid_is(uuid),retval] out nsqiresult result); nsrefcnt release();violates the xpcom
interface guidelines methods violates the xpcom
interface guidelines addref() notifies the object that an
interface pointer has been duplicated.
...query
interface() the query
interface method provides runtime type discovery.
...And 6 more matches
nsIWeakReference
xpcom/base/nsiweakreference.idlscriptable this
interface represents a proxy for an xpcom object.
...method overview void queryreferent( in nsiidref uuid, [iid_is(uuid), retval] out nsqiresult result ); methods queryreferent() this method queries an
interface on the referent if it exists, and like nsisupports.query
interface(), produces an owning reference to the desired
interface.")}} it is designed to look and act exactly like (a proxied) nsisupports.query
interface().
... do not hold on to the produced
interface permanently; that would defeat the purpose of using a non-owning nsiweakreference in the first place.
...And 6 more matches
nsIWindowWatcher
embedding/components/windowwatcher/public/nsiwindowwatcher.idlscriptable this
interface is the keeper of gecko/dom windows.
...note that there is no
interface for such notifications (not a public one, anyway).
...nsiwindowwatcher keeps a list of all top-level dom windows currently open, along with their corresponding chrome
interfaces.
...And 6 more matches
Using the clipboard
the clipboard mozilla provides a number of
interfaces for accessing the clipboard.
...this component implements the
interface nsiclipboardhelper, which has a function copystring that can be used to copy a string.
... const gclipboardhelper = components.classes["@mozilla.org/widget/clipboardhelper;1"] .getservice(components.
interfaces.nsiclipboardhelper); gclipboardhelper.copystring("put me on the clipboard, please."); this example will first create a clipboard helper and then copy a short string to the clipboard.
...And 6 more matches
xptcall FAQ
xptcall exists for two reasons: to support invoking arbitrary methods on xpcom
interfaces.
... to support dynamically impersonating any xpcom
interface.
... the xptcall approach was chosen over an approach that would have required generating stub code for calling and implementing all
interfaces.
...And 6 more matches
AbstractRange - Web APIs
the abstractrange abstract
interface is the base class upon which all dom range types are defined.
... as an abstract
interface, you will not directly instantiate an object of type abstractrange.
... instead, you will use the range or staticrange
interfaces.
...And 6 more matches
DOMMatrix - Web APIs
the dommatrix
interface represents 4×4 matrices, suitable for 2d and 3d operations including rotation and translation.
... it is a mutable version of the dommatrixreadonly
interface.
... this
interface should be available inside web workers, though some implementations don't allow it yet.
...And 6 more matches
Document Object Model (DOM) - Web APIs
dom
interfaces attr cdatasection characterdata childnode comment customevent document documentfragment documenttype domerror domexception domimplementation domstring domtimestamp domstringlist domtokenlist element event eventtarget htmlcollection mutationobserver mutationrecord namednodemap node nodefilter nodeiterator nodelist nondocumenttypechildnode parentnode processing...
...instruction selection range text textdecoder textencoder timeranges treewalker url window worker xmldocument obsolete dom
interfaces the document object model has been highly simplified.
... to achieve this, the following
interfaces present in the different dom level 3 or earlier specifications have been removed.
...And 6 more matches
File and Directory Entries API - Web APIs
it includes the following
interfaces: filesystem represents a file system.
... filesystementry the basic
interface representing a single entry in a file system.
... this is implemented by other
interfaces which represent files or directories.
...And 6 more matches
Fullscreen API - Web APIs
this makes it possible to present desired content—such as an online game—using the user's entire screen, removing all browser user
interface elements and other applications from the screen until full-screen mode is shut off.
...
interfaces the fullscreen api has no
interfaces of its own.
... instead, it augments several other
interfaces to add the methods, properties, and event handlers needed to provide full-screen functionality.
...And 6 more matches
Pointer events - Web APIs
in fact, the pointerevent
interface inherits all of the mouseevent properties, thus facilitating the migration of content from mouse events to pointer events.
...
interfaces the primary
interface is the pointerevent
interface which has a constructor plus several event types and associated global event handlers.
... the standard also includes some extensions to the element and navigator
interfaces.
...And 6 more matches
Architecture - Accessibility
the text is actually exposed via a special text
interface in the parent of the text nodes.
...this allows at's to find its position within that text, because the hyperlink
interface exposes a start and end index.
... why hyperlink is often not a link as explained above, anything that is embedded in text implements the hyperlink
interface.
...And 6 more matches
Bootstrapped extensions - Archive of obsolete content
while this makes creating extensions that add to the application's user
interface relatively easy, it means that updating, installing, or disabling an extension requires an application restart.
...these are special extensions that, instead of using overlays to apply their user
interface to the application, programmatically insert themselves into the application.
... all the application does is call into this script file; the extension is responsible for adding and removing its user
interface and handling any other setup and shutdown tasks it requires.
...And 5 more matches
Bookmarks - Archive of obsolete content
firefox 2 and earlier creating a new bookmark var win = mybrowser.contentwindow; // get the bookmarks service const bmsvc = components.classes["@mozilla.org/browser/bookmarks-service;1"] .getservice(components.
interfaces.nsibookmarksservice); // create the bookmark bmsvc.createbookmarkincontainer(win.document.title, // bookmark name win.location.href.tostring(), // uri of the bookmark null, // shortcut win.document.title, // description win.document.characterset, // charset null, // postdata bookmarksservice.getbookmarkstoolbarfolder(), // bookmark folder ...
... the places bookmarks service, provided by the nsinavbookmarksservice
interface, provides methods for creating, deleting, and manipulating bookmarks and bookmark folders.
... initiating the bookmarks service as is the case with nearly all
interfaces, before you can use the bookmarks service, you need to get access to it: var bmsvc = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.
interfaces.nsinavbookmarksservice); creating a bookmark folder creating a new bookmark folder is done using the nsinavbookmarksservice.createfolder() method.
...And 5 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
before you learn how to develop extensions, let's learn about xul, the xml-based user-
interface language, which is one of the building blocks for extensions.
...there are earlier experiments going back a long way in developing user
interfaces using a combination of html and scripting languages, and xul could be considered an evolutionary step from that.
...xul, on the other hand, was conceived from the ground up as a markup language for user
interfaces, and makes it possible to insert ui components with sophisticated features just by writing tags, without any particular scripting.
...And 5 more matches
Message Summary Database - Archive of obsolete content
nsimsgdatabase is an abstraction on top of mdb, which is a set of db
interfaces.
... the mdb
interfaces are implemented in mork.
... mdb is a schema-less db
interface, so it's trivial to add new attributes without regenerating the db, and it's trivial for older code to read newer databases, because the code can ignore but maintain the attributes it doesn't know about.
...And 5 more matches
Supporting private browsing mode - Archive of obsolete content
this
interface is deprecated since firefox 20, and will probably be completely removed in firefox 21.see supporting per-window private browsing for details.
... doing this is quite easy, using the nsiprivatebrowsingservice
interface.
...var pbs = components.classes["@mozilla.org/privatebrowsing;1"] .getservice(components.
interfaces.nsiprivatebrowsingservice); var inprivatebrowsingmode = pbs.privatebrowsingenabled; if (!inprivatebrowsingmode) { /* save private information */ } in the above example, we only save the user's private information if not in private browsing mode.
...And 5 more matches
XUL Structure - Archive of obsolete content
if they don't, you won't be able to access them via the main browser
interface, but you can still access them via the chrome url, if you know what it is.
...each of these components, or packages, is made up of a set of files that describe the user
interface for it.
...the chrome directory is where you find all the files that describe the user
interface used by the mozilla browser, mail client, and other applications.
...And 5 more matches
Using nsIXULAppInfo - Archive of obsolete content
nsixulappinfo
interface to distinguish between different mozilla-based applications, use the frozen nsixulappinfo
interface.
... getting nsixulappinfo to get a component implementing nsixulappinfo use this code: var appinfo = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulappinfo); (for explanation see this creating xpcom article.) getting application information after you obtained the app info component, you can read its properties to get the application's id, human-readable name, version, platform version, etc.
... for complete list of nsixulappinfo's properties, please see nsixulappinfo
interface description.
...And 5 more matches
CommandLine - Archive of obsolete content
an nsicommandline object is passed as the first argument of the launched window: example var cmdline = window.arguments[0]; cmdline = cmdline.query
interface(components.
interfaces.nsicommandline); alert(cmdline.handleflagwithparam("test", false)); see also: chrome: command line for single instance applications of course, for a single instance application (see toolkit.singletonwindowtype for more information), the last example still applies the first time your application is launched.
... define your own command line handler component: components/clh.js const nsisupports = components.
interfaces.nsisupports; const nsicategorymanager = components.
interfaces.nsicategorymanager; const nsicomponentregistrar = components.
interfaces.nsicomponentregistrar; const nsicommandline = components.
interfaces.nsicommandline; const nsicommandlinehandler = components.
interfaces.nsicommandlinehandler; const nsifactory = components.
interfaces.nsifactory; const nsimodule...
... = components.
interfaces.nsimodule; const class_id = components.id("178cfbb6-503c-11dc-8314-0800200c9a66"); const class_name = "applicationnameclh"; const contract_id = "@example.com/applicationname/clh;1"; const cld_category = "m-applicationname"; var apphandler = { /* nsisupports */ query
interface : function clh_qi(aiid) { if (aiid.equals(nsicommandlinehandler) || aiid.equals(nsifactory) || aiid.equals(nsisupports)) return this; throw components.results.ns_error_no_
interface; }, /* nsicommandlinehandler */ handle : function clh_handle(acmdline) { var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); observerservice.
...And 5 more matches
RFE to the XForms API - Archive of obsolete content
these are xforms dom and xforms
interfaces that are exposed by xforms dom.
... xforms dom is a list of
interfaces that are available from xforms elements directly.
... this means those
interfaces available to be queried from the xforms element that resides in the dom.
...And 5 more matches
Getting started with React - Learn web development
objective: to set up a local react development environment, create a start app, and understand the basics of how it works hello react as its official tagline states, react is a library for building user
interfaces.
...it does this through the use of components — self-contained, logical pieces of code that describe a portion of the user
interface.
...react can handle a single button, a few pieces of an
interface, or an app's entire user
interface.
...And 5 more matches
JavaScript Tips
don't query
interfaces unless you need to access methods and properties of that
interface.
... you do not have to query
interfaces to compare objects, nor to pass objects as parameters (this is different from c++, where you do have to query
interfaces in both cases).
... don't call query
interface unless you expect to succeed.
...And 5 more matches
Embedded Dialog API
an embedding application must implement the nsiwindowcreator nsiwindowcreator
interface and hand off a reference to the implementation to the windowcreator service during application initialization.
... responsibilities of mozilla/gecko component authors writing replaceable dialogs dialogs posed by the browser ("up calls") any component which may be included in an embedded browser distribution and wishes to pose a dialog must group its ui (code which runs its dialogs) into a unique
interface built just for that purpose.
...all code which actually poses dialogs, if it does this directly using window.open, wants to be changed to go through the new
interface.
...And 5 more matches
Querying Places
these values are also properties of nsinavhistoryqueryoptions, and are accessed like this: components.
interfaces.nsinavhistoryqueryoptions.results_as_visit.
...this allows for a simpler implementation and
interface than a full logical operation with nested clauses while still being expressive.
...this type tells you what
interface you can query
interface the node to in order to get at more detailed information: nsinavhistoryresultnode: base class for all nodes.
...And 5 more matches
nsIArray
xpcom/ds/nsiarray.idlscriptable this
interface implements an array object.
...neither
interface makes any attempt to protect the individual elements from modification.
...documentation within a specific
interface should describe variations from this convention.
...And 5 more matches
nsICryptoHash
netwerk/base/public/nsicryptohash.idlscriptable this
interface can be used to compute a cryptographic hash function of some data.
..." must be called before any other method on this
interface is called.
..." must be called before any other method on this
interface is called.
...And 5 more matches
nsITimer
the nsitimer
interface offers a functionality to invoke a function after a specified delay.
...to create an instance, use: var timer = components.classes["@mozilla.org/timer;1"] .createinstance(components.
interfaces.nsitimer); users of instances of nsitimer should keep a reference to the timer until it is no longer needed in order to assure the timer is fired.
...if the timer fires, the observer will be notified via the nsiobserver
interface.
...And 5 more matches
nsIWindowsRegKey
xpcom/ds/nsiwindowsregkey.idlscriptable this
interface is designed to provide scriptable access to the windows registry system.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) the
interface represents a single key in the registry.
... this
interface is highly win32 specific.
...And 5 more matches
nsIXPConnect
depth); void debugdumpevalinjsstackframe(in pruint32 aframenumber, in string asourcetext); void debugdumpjsstack(in prbool showargs, in prbool showlocals, in prbool showthisprops); void debugdumpobject(in nsisupports acomobj, in short depth); [noscript,notxpcom] prbool definedomquickstubs(in jscontextptr cx, in jsobjectptr proto, in pruint32 flags, in pruint32
interfacecount, [array, size_is(
interfacecount)] in nsiidptr
interfacearray); jsval evalinsandboxobject(in astring source, in jscontextptr cx, in nsixpconnectjsobjectholder sandbox, in prbool returnstringonly); native code only!
... [noscript,notxpcom] prbool definedomquickstubs( in jscontextptr cx, in jsobjectptr proto, in pruint32 flags, in pruint32
interfacecount, [array, size_is(
interfacecount)] in nsiidptr
interfacearray ); parameters cx a context.
...
interfacecount the number of
interfaces the class implements.
...And 5 more matches
Using nsIDirectoryService
content formerly at http://www.mozilla.org/projects/xpcom/nsdirectoryservice.html general nsdirectoryservice information: nsdirectoryservice implements the nsiproperties
interface.
...c++ nscomptr<nsifile> dir; ns_getspecialdirectory(prop, getter_addrefs(dir)); if (!dir) return ns_error_failure; javascript: var file = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsiproperties) .get("profd", components.
interfaces.nsifile); (the example is taken from the code snippets section of this site.) adding a location: there are currently two ways to add a file location to the directory service: directly and delayed.
... you can directly add a new nsifile with any property string using the nsiproperties
interface: components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsiproperties) .set("myfilename", file); now, if your cost is too high to set all of these properties at once, you can register to be a callback that can provide an nsifile.
...And 5 more matches
nsCOMPtr versus RefPtr
general rule of thumb for nscomptr versus refptr the general rule of thumb is to use nscomptr<t> when t is an
interface type, and refptr<t> when t is a concrete type.
...hence, the
interface versus concrete class rule of thumb:
interfaces will never multiply inherit from nsisupports, so they can always use be used with nscomptr without fear of breaking in the future.
... nscomptr<t> also requires that you can query
interface to type t.
...And 5 more matches
Xptcall Porting Guide
overview xptcall is a library that supports both invoking methods on arbitrary xpcom objects and implementing classes whose objects can impersonate any xpcom
interface.
...the platform specific code then builds a call frame and invokes the method indicated by the index methodindex on the xpcom
interface that.
...the goal here is a class whose vtbl can look like the vtbl of any arbitrary xpcom
interface.
...And 5 more matches
CSSPrimitiveValue - Web APIs
the cssprimitivevalue
interface derives from the cssvalue
interface and represents the current computed value of a css property.
... this
interface represents a single css value.
...an instance of this
interface might be obtained from the getpropertycssvalue() method of the cssstyledeclaration
interface.
...And 5 more matches
Content Index API - Web APIs
it's good practice to present an
interface for clearing out entries, or periodically remove older entries.
...
interfaces contentindex the contentindex
interface provides functionality to register content available offline.
... contentindexevent the contentindexevent
interface of the content index api defines the object used to represent the contentdelete event.
...And 5 more matches
IndexedDB API - Web APIs
interfaces to get access to a database, call open() on the indexeddb attribute of a window object.
...this
interface isn't part of the 2.0 specification.
...this is the
interface implemented by the global object indexeddb and is therefore the entry point for the api.
...And 5 more matches
TextRange - Web APIs
a textrange object represents a fragment of text in a document, similar to the standard defined range
interface.
... note that this
interface is not supported in non ie browsers.
... alternative selection and range
interfaces can be used.
...And 5 more matches
Transferable - Web APIs
the transferable
interface represents an object that can be transfered between different execution contexts, like the main thread and web workers.
... this is an abstract
interface and there is no object of this type.
... this
interface does not define any method or property; it is merely a tag indicating objects that can be used in specific conditions, such as being transfered to a worker using the worker.postmessage() method.
...And 5 more matches
WheelEvent - Web APIs
the wheelevent
interface represents events that occur due to the user moving a mouse wheel or similar input device.
... important: this is the standard wheel event
interface to use.
... old versions of browsers implemented the non-standard and non-cross-browser-compatible mousewheelevent and mousescrollevent
interfaces.
...And 5 more matches
Reading textual data - Archive of obsolete content
getservice(components.
interfaces.nsiutf8converterservice); var data = utf8converter.converturispectoutf8 (str, "utf-8"); gecko 1.8 and newer reading strings starting with gecko 1.8 (seamonkey 1.0, firefox 1.5), you can use nsiconverterinputstream to read strings from a stream (nsiinputstream).
...using utf-8 for this example: */ "utf-8"; const replacementchar = components.
interfaces.nsiconverterinputstream.default_replacement_character; var is = components.classes["@mozilla.org/intl/converter-input-stream;1"] .createinstance(components.
interfaces.nsiconverterinputstream); is.init(fis, charset, 1024, replacementchar); now you can read string from is: var str = {}; var numchars = is.readstring(4096, str); if (numchars != 0 /* eof */) var read_string = str.value; to read the entire stream and do something with the data: var str = {}; while (is.readstring(4096, str) != 0) { processdata(str.value); } don't forget to close the stream when you're done with it...
... reading lines the nsiunicharlineinputstream
interface provides an easy way to read entire lines from a unichar stream.
...And 4 more matches
nsIContentPolicy - Archive of obsolete content
dom/base/nsicontentpolicy.idlscriptable
interface used to implement a content policy mechanism.
... implementations of this
interface can be used to control the loading of various types of out-of-line content, or the processing of certain types of inline content.
...this
interface can be very useful if you are developing a content-aware plugin (blocking ads or altering the look of content, for example), or if you want to stop or allow user-browsed urls.
...And 4 more matches
Archived Mozilla and build documentation - Archive of obsolete content
there is, however, no practical obstacle to the
interface being implemented by any javascript object associated with a group of dom nodes, even non-anonymous xul nodes.
... califiletype the califiletype
interface provides information about a specific file type.
...mozilla uses standard gif, png, and jpeg images for the buttons and css to style everything else in the
interface.
...And 4 more matches
Obsolete: XPCOM-based scripting for NPAPI plugins - Archive of obsolete content
a unique
interface id should be obtained.
...an
interface definition (.idl) file describing the plugin scriptable
interface should be added to the project (see example 1).
... to call plugin native methods the following html code will do the job:</p> this should be changed, we shouldn't advocate embed <embed type="application/plugin-mimetype"> <script language="javascript"> var embed = document.embeds[0]; embed.nativemethod(); </script> how to build and install having the built mozilla tree is probably not necessary, but building the plugin with a scriptable instance
interface will require mozilla headers and the xpcom compatible idl compiler -- xpidl.exe.
...And 4 more matches
Gecko FAQ - Gecko Redirect 1
gecko is so fast and so powerful that it's being used to create the user
interface of some applications ("chrome") as well.
...however, gecko does not package all of these components alongside other
interface modules in a coherent, user-friendly application (including menus, toolbars, etc.), such as firefox.
... xml 1.0: full support, except for processing to manipulate default attributes rdf: full support, except for abouteach, abouteachprefix, and parsetype javascript 1.5, including ecma-262 edition 3 (ecmascript) compliance, except for date.todatestring and date.totimestring, which are not implemented transfer protocols: http 1.1 (including gzip compression), ftp ssl unicode oji (open java
interface) image formats png gif jpeg, pjpeg does "full support" mean that gecko has zero bugs today or will have zero bugs at some point in the future?
...And 4 more matches
Message manager overview
children (typically, browser windows) getchildat() : get the child at the given index loadframescript() : load a frame script into every tab in the browser broadcastasyncmessage() : send a message to frame scripts addmessagelistener() : start listening to a specific message from all frame scripts removemessagelistener() : stop listening to a specific message
interfaces nsiframescriptloader nsimessagelistenermanager nsimessagebroadcaster how to access access it using components.classes: // chrome script let globalmm = cc["@mozilla.org/globalmessagemanager;1"] .getservice(ci.nsimessagelistenermanager); you can also access it as the mm property of services.jsm, if you are in the parent process.
...ypically, browser tabs) getchildat() : get the child at the given index loadframescript() : load a frame script into every tab in this window broadcastasyncmessage() : send a message to all frame scripts in this window addmessagelistener() : start listening to a specific message from frame scripts removemessagelistener() : stop listening to a specific message
interfaces nsiframescriptloader nsimessagelistenermanager nsimessagebroadcaster how to access you can access it as a property of the browser window: // chrome script let windowmm = window.messagemanager; browser message manager note that in this context, "browser" refers to the xul <browser> object, which is a frame that hosts a single web document.
... its most important functions are: loadframescript() : load a frame script into this browser frame (tab) sendasyncmessage() : send a message to all frame scripts in this browser frame addmessagelistener() : start listening to a specific message from frame scripts removemessagelistener() : stop listening to a specific message
interfaces nsiprocesschecker nsiframescriptloader nsimessagelistenermanager nsimessagesender how to access the browser message manager can be accessed as a property of the xul <browser> element: // chrome script let browsermm = gbrowser.selectedbrowser.messagemanager; content process content frame message manager description th...
...And 4 more matches
Manipulating bookmarks using Places
the places bookmarks service, provided by the nsinavbookmarksservice
interface, provides methods for creating, deleting, and manipulating bookmarks and bookmark folders.
... initiating the bookmarks service as is the case with nearly all
interfaces, before you can use the bookmarks service, you need to get access to it: var bmsvc = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.
interfaces.nsinavbookmarksservice); creating a bookmark folder creating a new bookmark folder is done using the nsinavbookmarksservice.createfolder() method.
... var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var uri = ios.newuri("http://google.com/", null, null); var newbkmkid = bmsvc.insertbookmark(newfolderid, uri, bmsvc.default_index, ""); this example instantiates the nsiioservice and uses it to create an nsiuri referring to the google web site, then calls nsinavbookmarksservice.insertbookmark() to create a new bookmark to google, placing it at the end of the bookmarks folder re...
...And 4 more matches
Places utilities for JavaScript
its not an
interface, and as such it will never be frozen, but it provides some easy to use functions that can save you from reinventing the wheel and cluttering up your own classes/functions when you need it.
...these are: qi_node qi_node(anode, aiid) runs a query
interface on a bookmark node to expose the
interface available to that type.
... if the
interface isn't available to that node, null is returned.
...And 4 more matches
Fun With XBL and XPConnect
introduction this article describes an application of xbl in which a simple xpcom
interface is made accessible to a xul widget.
... the
interface definition feature of xbl is used to define an
interface through xpconnect to a c++ object that does auto completion.
... once the regular xul textfield widget is bound to this
interface, it calls the auto complete function of the object using regular javascript.
...And 4 more matches
Components.Constructor
syntax var func = [ new ] components.constructor(contractid [,
interfacename [, initializer ] ]); parameters contractid a string containing the contract id of the component
interfacename if given, nsisupports.query
interface() will be called on each newly-created instance with the
interface named by this string initializer if given, a string containing the name of a function which will be called on the newly-created instance, using the arguments provided to the created function when called description components.constructor() is a handy shortcut for creating instances of xpcom components.
... it eliminates the clutter of typing components.classes, components.
interfaces, createinstance, and so on every time you wish to create an instance.
...the component is then returned immediately, with only the base
interface nsisupports available on it; you must call nsisupports.query
interface() on it to call methods on the object.
...And 4 more matches
RefPtr
it is similar to nscomptr, but does not require that the type be an xpcom
interface.
... the rules are simple: use nscomptr to hold pointers to xpcom
interfaces, and use refptr to hold pointers to concrete class, even if the concrete class implements one or more xpcom
interfaces.
... so for xpcom
interfaces: nscomptr<nsisupports> a; nscomptr<nsifoo> foo; and for concrete classes: refptr<nsfoo> foo; // class that implements nsifoo; refptr<bar> bar; // some random class that i want ref-counted but has nothing to do with xpcom: // just implement addref() and release() and it will work with refptr it is important that nscomptr is not used to hold a pointer to a concrete class since this can cause compile time errors or runtime errors.
...And 4 more matches
imgIContainer
internally, this
interface also manages animation of images.
...as a service: var imgicontainer = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.imgicontainer); method overview void addrestoredata([array, size_is(acount), const] in char data, in unsigned long acount); native code only!
... nsiframe getrootlayoutframe(); violates the xpcom
interface guidelines pruint16 gettype(); violates the xpcom
interface guidelines void init(in print32 awidth, in print32 aheight, in imgicontainerobserver aobserver); obsolete since gecko 2.0 void lockimage(); void removeframe(in gfxiimageframe item); obsolete since gecko 1.9.2 void requestdecode(); void requestdiscard(); void requestrefre...
...And 4 more matches
nsICookieService
this separation of
interface is mainly historical.
... var cookiesvc = components.classes["@mozilla.org/cookieservice;1"] .getservice(components.
interfaces.nsicookieservice); notifications this service broadcasts the following notifications when the cookie list is changed, or a cookie is rejected: topic subject data cookie-changed broadcast whenever the cookie list changes in some way.
... depending on the data value, either an nsicookie2
interface pointer representing the cookie object that changed, or an nsiarray of nsicookie2 objects.
...And 4 more matches
nsIFactory
xpcom/components/nsifactory.idlscriptable this
interface is a class factory that allows for the creation of nsisupports derived classes without specifying a concrete class type.
... iid the iid of the
interface being requested in the component which is being currently created.
... exceptions thrown ns_error_no_
interface indicates that the requested
interface is not supported.
...And 4 more matches
nsIGlobalHistory3
docshell/base/nsiglobalhistory3.idlscriptable this
interface provides information about global history to gecko.
... 1.0 66 introduced gecko 1.8 obsolete gecko 9.0 inherits from: nsiglobalhistory2 last changed in gecko 1.9 (firefox 3) this
interface was originally created as part of nsiglobalhistory2, but was split off during the transition to places.
...implementations should generally add the uri for aoldchannel to history for link coloring, but are advised not to expose it in the history user
interface.
...And 4 more matches
nsIIOService
netwerk/base/public/nsiioservice.idlscriptable this
interface provides a set of url parsing utility functions.
... these are provided as a convenience to the programmer and in some cases to improve performance by eliminating intermediate data structures and
interfaces.
... inherits from: nsisupports last changed in gecko 1.2 this
interface duplicates many of the nsiprotocolhandler methods in a protocol handler independent way (for example newuri() inspects the scheme in order to delegate creation of the new uri to the appropriate protocol handler).
...And 4 more matches
nsIParentalControlsService
toolkit/components/parentalcontrols/public/nsiparentalcontrolsservice.idlscriptable this
interface provides access to the operating system's parental controls feature, allowing code to detect whether such a service is enabled and to request overrides to bypass the feature.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) note: currently, this
interface is only supported on microsoft windows vista and newer as well as android 4.3 and newer.
...to create an instance, use: var parentalcontrolsservice = components.classes["@mozilla.org/parental-controls-service;1"] .createinstance(components.
interfaces.nsiparentalcontrolsservice); method overview void log(in short aentrytype, in boolean aflag, in nsiuri asource, [optional] in nsifile atarget); boolean requesturioverride(in nsiuri atarget, [optional] in nsi
interfacerequestor awindowcontext); boolean requesturioverrides(in nsiarray atargets, [optional] in nsi
interfacerequestor awindowcontext); attributes attribute type description blockfiledownloadsenabled boolean true if the current user account's parental controls restrictions include...
...And 4 more matches
nsIScriptableInputStream
xpcom/io/nsiscriptableinputstream.idlscriptable this
interface provides scriptable access to a nsiinputstream instance.
... remarks this
interface provides javascript with a way to read ascii text from a nsiinputstream.
... the nsscriptableinputstream component implements this
interface.
...And 4 more matches
nsISupportsArray
inherits from: nsicollection last changed in gecko 1.7 method overview boolean appendelements(in nsisupportsarray aelements); violates the xpcom
interface guidelines nsisupportsarray clone(); void compact(); void deleteelementat(in unsigned long aindex); void deletelastelement(in nsisupports aelement); nsisupports elementat(in unsigned long aindex); violates the xpcom
interface guidelines boolean enumeratebackwards(in nsisupportsarrayenumfunc afunc, in voidptr adata); violates the xpcom
interface guidelines boolean enumerateforwards(in nsisupportsarrayenumfunc afunc, in voidptr adata); violates the xpcom
interface guidelines boolean equals([const] in nsisupportsarray other); violates the...
... xpcom
interface guidelines long getindexof(in nsisupports apossibleelement); long getindexofstartingat(in nsisupports apossibleelement, in unsigned long astartindex); long getlastindexof(in nsisupports apossibleelement); long indexof([const] in nsisupports apossibleelement); violates the xpcom
interface guidelines long indexofstartingat([const] in nsisupports apossibleelement, in unsigned long astartindex); violates the xpcom
interface guidelines boolean insertelementat(in nsisupports aelement, in unsigned long aindex); violates the xpcom
interface guidelines boolean insertelementsat(in nsisupportsarray aother, in unsigned long aindex); violates the xpcom
interface guidelines long lastindexof([const] in nsisupports apossibleelement); violates the xpcom
interface guidelines boolea...
...n moveelement(in long afrom, in long ato); violates the xpcom
interface guidelines boolean removeelementat(in unsigned long aindex); violates the xpcom
interface guidelines boolean removeelementsat(in unsigned long aindex, in unsigned long acount); violates the xpcom
interface guidelines boolean removelastelement([const] in nsisupports aelement); violates the xpcom
interface guidelines boolean replaceelementat(in nsisupports aelement, in unsigned long aindex); violates the xpcom
interface guidelines boolean sizeto(in long asize); violates the xpcom
interface guidelines methods violates the xpcom
interface guidelines appendelements() boolean appendelements( in nsisupportsarray aelements ); parameters aelements return value clone() nsisupportsarray clone(); parameters none.
...And 4 more matches
nsIWebBrowserPersist
embedding/components/webbrowserpersist/nsiwebbrowserpersist.idlscriptable
interface for persisting dom documents and uris to local or remote storage.
...to create an instance, use: var webbrowserpersist = components.classes["@mozilla.org/embedding/browser/nswebbrowserpersist;1"] .createinstance(components.
interfaces.nsiwebbrowserpersist); method overview void cancelsave(); void savechannel(in nsichannel achannel, in nsisupports afile); void savedocument(in nsidomdocument adocument, in nsisupports afile, in nsisupports adatapath, in string aoutputcontenttype, in unsigned long aencodingflags, in unsigned long awrapcolumn); void saveuri(in nsiuri auri, in nsisupports aca...
...the object that the embbedder supplies may also implement nsi
interfacerequestor and be prepared to return nsiauthprompt or other
interfaces that may be required to download data.
...And 4 more matches
nsIWebProgressListener
uriloader/base/nsiwebprogresslistener.idlscriptable this
interface is implemented by clients wishing to listen in on the progress associated with the loading of asynchronous requests in the context of a nsiwebprogress instance as well as any child nsiwebprogress instances.
...a document request supports the nsichannel
interface and its loadflags attribute includes the nsichannel::load_document_uri flag.
... note: if the object also implements nsiwebprogresslistener2 and the caller knows about that
interface, this function will not be called.
...And 4 more matches
nsIZipWriter
modules/libjar/zipwriter/public/nsizipwriter.idlscriptable this
interface provides an easy way for scripts to archive data in the zip file format.
... attempting to perform a synchronous operation on the
interface while the background queue is in progress will throw an ns_error_in_progress exception.
...to create an instance, use: var zipwriter = components.classes["@mozilla.org/zipwriter;1"] .createinstance(components.
interfaces.nsizipwriter); method overview void addentrychannel(in autf8string azipentry, in prtime amodtime, in print32 acompression, in nsichannel achannel, in boolean aqueue); void addentrydirectory(in autf8string azipentry, in prtime amodtime, in boolean aqueue); void addentryfile(in autf8string azipentry, in print32 acompression, in nsifile afile, in boolean aqueue); ...
...And 4 more matches
Frequently Asked Questions
comparing an nscomptr to a raw xpcom
interface pointer declaring an nscomptr to a forward-declared class not linking to xpcom not including nscomptr.h different settings of nscap_feature_debug_ptr_types runtime errors ns_assertion "query
interface needed" may be caused by a class that derives from a given
interface, when you forgetting to also specify the
interface name in the ns_impl_isupports / ns_impl_threadsafe_isupports macro.
... for example, the assertion occurs when you convert the pointer to the object to a raw pointer to that
interface, then assign the raw pointer to another nscomptr for that
interface.
... { // i only need the |nsifoo|
interface for a short time // so i control its lifetime by declaring it inside // a block statement.
...And 4 more matches
Introduction to DOM Inspector - Firefox Developer Tools
one of the biggest and most immediate advantages that this brings to your web and application development is that it makes it possible to find the markup and the nodes in which the interesting parts of a page or a piece of the user
interface are defined.
... one common use of the dom inspector is to find the name and location of particular icon being used in the user
interface, which is not an easy task otherwise.
... if you're inspecting a chrome document, as you select nodes in the dom nodes viewer, the rendered versions of those nodes are highlighted in the user
interface itself.
...And 4 more matches
DevTools API - Firefox Developer Tools
in terms of user
interface, each registered tool lives in its own tab (we call one tab a panel).
...all these objects implement the eventemitter
interface.
... events following events are emitted by the gdevtools object via the eventemitter
interface.
...And 4 more matches
DocumentType - Web APIs
the documenttype
interface represents a node containing a doctype.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
...ight="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="326" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">documenttype</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its parent, node, and implements the childnode
interface.
...And 4 more matches
FileSystemEntry - Web APIs
the filesystementry
interface of the file and directory entries api represents a single in a file system.
... the entry can be a file or a directory (directories are represented by the directoryentry
interface).
...instead, you will receive an object based on this
interface through other apis.
...And 4 more matches
HTMLElement - Web APIs
the htmlelement
interface represents any html element.
... some elements directly implement this
interface, while others implement it via an
interface that inherits it.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
...And 4 more matches
HTMLFormElement - Web APIs
the htmlformelement
interface represents a <form> element in the dom.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4"...
...mlformelement" target="_top"><rect x="341" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="416" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlformelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, htmlelement.
...And 4 more matches
HTMLMediaElement - Web APIs
the htmlmediaelement
interface adds to htmlelement the properties and methods needed to support basic media-related capabilities that are common to audio and video.
... the htmlvideoelement and htmlaudioelement elements both inherit this
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 30%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 180" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...And 4 more matches
Using the Resource Timing API - Web APIs
the
interface's properties create a resource loading timeline with high-resolution timestamps for network events such as redirect start and end times, fetch start, dns lookup start and end times, response start and end times, etc.
... the
interface also includes other properties that provide data about the size of the fetched resource as well as the type of resource that initiated the fetch.
... this document shows the use of resource timing
interfaces.
...And 4 more matches
SVGPathElement - Web APIs
the svgpathelement
interface corresponds to the <path> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent, svggeometryelement.
...And 4 more matches
SVGSVGElement - Web APIs
the svgsvgelement
interface provides access to the properties of <svg> elements, as well as methods to manipulate them.
... this
interface contains also various miscellaneous commonly-used utility methods, such as matrix operations and the ability to control the time of redraw on visual rendering devices.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...And 4 more matches
Sensor - Web APIs
the sensor
interface of the the sensor apis is the base class for all the other sensor
interfaces.
... this
interface cannot be used directly.
... instead it provides properties, event handlers, and methods accessed by
interfaces that inherit from it.
...And 4 more matches
ServiceWorkerRegistration - Web APIs
the serviceworkerregistration
interface of the service worker api represents the service worker registration.
... properties also implements properties from its parent
interface, eventtarget.
... serviceworkerregistration.pushmanager read only returns a reference to the pushmanager
interface for managing push subscriptions including subscribing, getting an active subscription, and accessing push permission status.
...And 4 more matches
Service Worker API - Web APIs
interfaces cache represents the storage for request / response object pairs that are cached as part of the serviceworker life cycle.
... installevent the parameter passed into the oninstall handler, the installevent
interface represents an install action that is dispatched on the serviceworkerglobalscope of a serviceworker.
... notificationevent the parameter passed into the onnotificationclick handler, the notificationevent
interface represents a notification click event that is dispatched on the serviceworkerglobalscope of a serviceworker.
...And 4 more matches
USBDevice - Web APIs
the usbdevice
interface of the the webusb api provides access to metadata about a paired usb device and methods for controlling it.
... properties usbdevice.configuration read only a usbconfiguration object for the currently selected
interface for a paired usb device.
... usbdevice.configurations read only an array of device-specific
interfaces for controlling a paired usb device.
...And 4 more matches
USBEndpoint - Web APIs
the usbendpoint
interface of the webusb api provides information about an endpoint provided by the usb device.
... constructor usbendpoint.usbendpoint creates a new usbendpoint object which will be populated with information about the endpoint on the provided usbaltenate
interface with the given endpoint number and transfer direction.
...for example, a usb serial device must provide bulk input and output endpoints but their endpoint numbers will depend on what other
interfaces the device provides.
...And 4 more matches
Web Video Text Tracks Format (WebVTT) - Web APIs
example 20 - voice tag <v bob>text</v>
interfaces there are two
interfaces or apis used in webvtt which are: vttcue
interface it is used for providing an
interface in document object model api, where different attributes supported by it can be used to prepare and alter the cues in number of ways.
...but the vttcue
interface is within the webvtt provides the vast range of adjustment variables which can be used directly to alter the cue.
... following
interface can be used to expose webvtt cues in dom api: enum autokeyword { "auto" }; enum directionsetting { "" /* horizontal */, "rl", "lr" }; enum linealignsetting { "start", "center", "end" }; enum positionalignsetting { "line-left", "center", "line-right", "auto" }; enum alignsetting { "start", "center", "end", "left", "right" }; [constructor(double starttime, double endtime, domstring text)]
interface vttcue : texttrackcue { attribute vttregion?
...And 4 more matches
Web Speech API - Web APIs
there are two components to this api: speech recognition is accessed via the speechrecognition
interface, which provides the ability to recognize voice context from an audio input (normally via the device's default speech recognition service) and respond appropriately.
... generally you'll use the
interface's constructor to create a new speechrecognition object, which has a number of event handlers available for detecting when speech is input through the device's microphone.
... the speechgrammar
interface represents a container for a particular set of grammar that your app should recognise.
...And 4 more matches
Using Web Workers - Web APIs
the worker thread can perform tasks without interfering with the user
interface.
...it receives an event named error which implements the errorevent
interface.
... about thread safety the worker
interface spawns real os-level threads, and mindful programmers may be concerned that concurrency can cause “interesting” effects in your code if you aren't careful.
...And 4 more matches
XRSpace - Web APIs
the xrspace
interface of the webxr device api is an abstract
interface providing a common basis for every class which represents a virtual coordinate system within the virtual world, in which its origin corresponds to a physical location.
... spatial data in webxr is always expressed relative to an object based upon one of the descendant
interfaces of xrspace, at the time at which a given xrframe takes place.
... note: the xrspace
interface is never used directly; instead, all spaces are created using one of the
interfaces based on xrspace.
...And 4 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
since every <input> element, regardless of type, is based on the htmlinputelement
interface, they technically share the exact same set of attributes.
... webkitdirectory the boolean webkitdirectory attribute, if present, indicates that only directories should be available to be selected by the user in the file picker
interface.
... methods the following methods are provided by the htmlinputelement
interface which represents <input> elements in the dom.
...And 4 more matches
HTML documentation index - HTML: Hypertext Markup Language
121 <input type="color"> color picker, element, form input, forms, html, html forms, html input, input, reference, color <input> elements of type color provide a user
interface element that lets a user specify a color, either by using a visual color picker
interface or by entering the color into a text field in #rrggbb hexadecimal format.
... 122 <input type="date"> date, date picker, element, form inputs, html, html forms, input, input element, input type, reference <input> elements of type="date" create input fields that let the user enter a date, either with a textbox that validates the input or a special date picker
interface.
... 146 <label> element, forms, html, html forms, reference, web the html <label> element represents a caption for an item in a user
interface.
...And 4 more matches
Web Components
custom elements: a set of javascript apis that allow you to define custom elements and their behaviour, which can then be used as desired in your user
interface.
... element extensions extensions to the element
interface related to shadow dom: the element.attachshadow() method attaches a shadow dom tree to the specified element.
... relevant node additions additions to the node
interface relevant to shadow dom: the node.getrootnode() method returns the context object's root, which optionally includes the shadow root if it is available.
...And 4 more matches
Introduction to using XPath in JavaScript - XPath
this document describes the
interface for using xpath in javascript internally, in extensions, and from websites.
... the main
interface to using xpath is the evaluate function of the document object.
...the xpathresult
interface is defined here.
...And 4 more matches
Intercepting Page Loads - Archive of obsolete content
observe : function(asubject, atopic, adata) { if (topic_modify_request == atopic) { let url; asubject.query
interface(components.
interfaces.nsihttpchannel); url = asubject.uri.spec; if (re_url_to_modify.test(url)) { // re_url_to_modify is a regular expression.
...in this case, your best bet is to use onstatechange, and filter to when the state flags indicate a document has begun being loaded: if ((astateflags & components.
interfaces.nsiwebprogresslistener.state_start) && (astateflags & components.
interfaces.nsiwebprogresslistener.state_is_document)) note the use of the binary mask & operator.
...these require creating xpcom components that implement existing firefox
interfaces.
...And 3 more matches
Session store API - Archive of obsolete content
the session store api is implemented using the nsisessionstore
interface.
...if your extension wants to be able to restore data when tabs are restored, you can install a listener like this: function myextensionhandlerestore(aevent) { var tab = event.originaltarget; /* the tab being restored */ var uri = tab.linkedbrowser.contentdocument.location; /* the tab's uri */ components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice) .logstringmessage("restoring tab: " + uri); }; document.addeventlistener("sstabrestoring", myextensionhandlerestore, false); simply replace the contents of the function myextensionhandlerestore() with whatever you need to do when the tab is restored.
... var ss = components.classes["@mozilla.org/browser/sessionstore;1"] .getservice(components.
interfaces.nsisessionstore); var currenttab = gbrowser.selectedtab; var datatoattach = "i want to attach this"; ss.settabvalue(currenttab, "key-name-here", datatoattach); this code sets the value of the key "key-name-here" to datatoattach.
...And 3 more matches
Adding preferences to an extension - Archive of obsolete content
the javascript code in order to monitor changes to our preferences, we need to install an observer using the nsiprefbranch2
interface.
... var stockwatcher = { prefs: null, tickersymbol: "", // initialize the extension startup: function() { // register to receive notifications of preference changes this.prefs = components.classes["@mozilla.org/preferences-service;1"] .getservice(components.
interfaces.nsiprefservice) .getbranch("extensions.stockwatcher2."); this.prefs.addobserver("", this, false); this.tickersymbol = this.prefs.getcharpref("symbol").touppercase(); this.refreshinformation(); window.setinterval(this.refreshinformation, 10*60*1000); } }, our object has two member variables.
... after getting the preference branch for our extension, we call the nsisupports.query
interface() method on it to be able to use the methods of the nsiprefbranch2
interface.
...And 3 more matches
Supporting per-window private browsing - Archive of obsolete content
getservice(components.
interfaces.nsiprivatebrowsingservice).
...function pbobserver() { /* clear private data */ } var os = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); os.addobserver(pbobserver, "last-pb-context-exited", false); preventing a private session from ending if there are unfinished transactions involving private data, where the transactions will be terminated by the ending of a private session, an add-on can vote to prevent the session from ending (prompting the user is recommended).
...var os = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); os.addobserver(function (asubject, atopic, adata) { asubject.query
interface(components.
interfaces.nsisupportsprbool); // if another extension has not already canceled entering the private mode if (!asubject.data) { /* you should display some user
interface here */ asubject.data = true; // cancel the operation } }, "last-pb-context-exiting", false); forcing a channel into private mode usually, network channels inherit the privacy status of the document that created them, which means that they work correctly most o...
...And 3 more matches
The new nsString class implementation (1999) - Archive of obsolete content
the deficiencies of the current implementation are: class based -- making it unsuitable for cross-dll usage due to fragility little intrinsic i18n support few efficiencies, notably a lack of support for narrow (1-byte) character strings no support for external memory management policy lack of xpcom
interface notable features of the new nsstrimpl implementation are: intrinsic support for 1 and 2 byte character widths provides automatic conversion between strings with different character sizes inviolate base structure eliminates class fragility problem; safe across dll boundaries offers c-style function api to manipulate nsstrimpl offers simple memory allocator api for specialized memory policy ...
... shares binary format with bstring coming soon: a new xpcom (nsistring)
interface non-templatized; this is a requirement for gecko very efficient buffer manipulation architecture the fundamental data type in the new architecture is struct nsstrimpl, given below: struct nsstrimpl { print32 mlength; void* mbuffer; print32 mcapacity; char mcharsize; char munused; // and now for the nsstrimpl api...
...also note that the new nsstring
interface mimics fully the
interface in the existing nsstring class found in mozilla/base/src/nsstring.h.
...And 3 more matches
Content Panels - Archive of obsolete content
you could create a wizard
interface by opening a different window for each screen.
...second, the elements such the back and next buttons are the same throughout the
interface.
...note that xul does have a wizard element which may be used to create wizard
interfaces.
...And 3 more matches
Open and Save Dialogs - Archive of obsolete content
the xpcom
interface nsifilepicker is used to implement a file picker.
... the file picker
interface nsifilepicker is responsible for displaying a dialog in one of the three modes.
... you can set a number a features of the dialog by using the
interface.
...And 3 more matches
Tree Box Objects - Archive of obsolete content
the tree box implements the treeboxobject
interface.
... note: it is not necessary to run tree.boxobject.query
interface(components.
interfaces.nsitreeboxobject) as shown in the code examples on this page because: let boxobject = tree.treeboxobject; note: is equivalent to: let boxobject = tree.boxobject; boxobject.query
interface("components.
interfaces.nsitreeboxobject"); scrolling the tree you can also scroll the tree using four different methods, similar to those available for listboxes.
... example 1 : source view <script> function doscroll(){ var value = document.getelementbyid("tbox").value; var tree = document.getelementbyid("thetree"); var boxobject = tree.boxobject; boxobject.query
interface(components.
interfaces.nsitreeboxobject); boxobject.scrolltorow(value); } </script> <tree id="thetree" rows="4"> <treecols> <treecol id="row" label="row" primary="true" flex="1"/> </treecols> <treechildren> <treeitem label="row 0"/> <treeitem label="row 1"/> <treeitem label="row 2"/> <treeitem label="row 3"/> <treeitem label="row 4"/> <treeitem label="row 5"/> <treeitem label="row 6"/> <treeitem label="row 7"/> <treeitem label="row 8"/> ...
...And 3 more matches
Sunbird Theme Tutorial - Archive of obsolete content
understanding sunbird's user
interface to understand sunbird's user
interface, go to sunbird's program directory, then to the <tt>chrome/content/calendar</tt> directory there.
... examine the files there to understand how sunbird's user
interface is constructed.
... the basic
interface is written in xul, but some parts are constructed using xbl or javascript.
...And 3 more matches
Mixin - MDN Web Docs Glossary: Definitions of Web-related terms
a mixin is a class or
interface in which some or all of its methods and/or properties are unimplemented, requiring that another class or
interface provide the missing implementations.
... the new class or
interface then includes both the properties and methods from the mixin as well as those it defines itself.
... all of the methods and properties are used exactly the same regardless of whether they're implemented in the mixin or the
interface or class that implements the mixin.
...And 3 more matches
Command line crash course - Learn web development
this article provides an introduction to the terminal, the essential commands you'll need to enter into it, how to chain commands together, and how to add your own command line
interface (cli) tools.
... welcome to the terminal the terminal is a text
interface for executing text-based programs.
... if you're running any tooling for web development there's a near-guaranteed chance that you'll have to pop open the command line and run some commands to use your chosen tools (you'll often see such tools referred to as cli tools — command line
interface tools).
...And 3 more matches
Experimental features in Firefox
nightly 80 no developer edition 80 no beta 80 no release 80 no preference name layout.css.prefers-contrast.enabled apis graphics: canvas, webgl, and webgpu
interface: offscreencanvas the offscreencanvas
interface provides a canvas that can be rendered offscreen.
...due to a bug that came up during testing of the user
interface, we have decided to postpone shipping this api while discussions over potential changes to the api are held.
... nightly 63 no developer edition 63 no beta 63 no release 63 starting in firefox 68, on android only preference name dom.visualviewport.enabled constructable stylesheets the addition of a constructor to the cssstylesheet
interface as well as a variety of related changes makes it possible to directly create new stylesheets without having to add the sheet to the html.
...And 3 more matches
JavaScript code modules
standard code modules addonmanager.jsm an
interface to install, manage, and uninstall add-ons.
... assert.jsm implements the commonjs unit testing specification version 1.1, which provides a basic standardized
interface for performing in-code logical assertions with optional, customizable error reporting.
... ctypes.jsm provides an
interface that allows javascript code to call native libraries without requiring the development of an xpcom component.
...And 3 more matches
An overview of NSS Internals
in order to support multiple operating systems (os), it is based on a cross platform portability layer, called the netscape portable runtime (nspr), which provides cross platform application programming
interfaces (apis) for os specific apis like file system access, memory management, network communication, and multithreaded programming.
...(note that it's important to look at the number 11, as there are other pkcs standards with different numbers that define quite different topics.) a software or hardware module conforming to the pkcs#11 standard implements an
interface of c calls, which allow querying the characteristics and offered services of the module.
... multiple elements of nss's own modules have been implemented with this
interface, and nss makes use of this
interface when talking to those modules.
...And 3 more matches
NSS FAQ
the pkcs #11
interface included in nss means that your application can use hardware accelerators on the server and smart cards for two-factor authentication.
... nss supports the pkcs #11
interface for hardware acceleration.
... since leading accelerator vendors such as chrysalis-it, ncipher, and rainbow technologies also support this
interface, nss-enabled applications can support a wide variety of hardware accelerators.
...And 3 more matches
Web Replay
while the debugger can indicate it is for a child process, the
interface should be as transparent as possible to the devtools js code; the debugger can still create script/object/etc.
... the user's
interface to the devtools for a child process is the same as for a normal content process, except that new ui buttons are added for rewinding (find the last time a breakpoint was hit), and for reverse step/step-in/step-out.
... inspecting a replaying process access to js objects in the replaying process is currently only done through the js debugger
interface — debugger.object, debugger.frame.eval, and so forth.
...And 3 more matches
Detailed XPCOM hashtable guide
any type: almost any datatype can be used as key, including strings, integers, xpcom
interface pointers, iids, and almost anything else.
... nsdatahashtable/ns
interfacehashtable/nsclasshashtable - high-level c++ wrappers around pldhash; simplifies the common usage pattern mapping a simple keytype to a simple datatype; client does not need to declare or manage an entry class; nsdatahashtable datatype is a scalar such as pruint32; ns
interfacehashtable datatype is an
interface; nsclasshashtable datatype is a class pointer owned by the hashtable.
... key type: integer string/cstring nsid nsisupports* complex data type: none (hash set) nsthashtable<...> simple (pruint32) nsdatahashtable nsthashtable<...> <nsuint32hashkey, pruint32> <ns(c)stringhashkey, pruint32> <nsidhashkey, pruint32> <nsisupportshashkey, pruint32>
interface (nsisupports) ns
interfacehashtable <nsuint32hashkey, nsisupports> <ns(c)stringhashkey, nsisupports> <nsidhashkey, nsisupports> <nsisupportshashkey, nsisupports> class (nsstring*) nsclasshashtable <nsuint32hashkey, nsstring> <ns(c)stringhashkey, nsstring> <nsidhashkey, nsstring> <nsisupportshashkey, nsstring> ...
...And 3 more matches
Components.classes
introduction components.classes is a read-only object whose properties implement the nsijscid
interface.
... all of the properties and methods of the nsijscid and its ancestor
interface nsijsid are available for use on the objects contained in this object.
... a new xpcom component instance can be created from the returned class object as follows: var obj = components.classes["@mozilla.org/supports-array;1"] .createinstance(components.
interfaces.nsisupportsarray); which is a shortcut to var obj = components.classes["@mozilla.org/supports-array;1"] .createinstance(); obj.query
interface(components.
interfaces.nsisupportsarray); if you don't provide a specific
interface to createinstance(), it will return an xpconnect wrapper for the component, which only exposes the methods of the nsisupports
interface (and under c...
...And 3 more matches
Language bindings
the components object is actually a native instance of the nsixpccomponents
interface which is reflected into javascript as a top level object using xpconnect.components.classescomponents.classes is a read-only object whose properties are classes indexed by contractid.components.classesbyidcomponents.classesbyid is a read-only object whose properties are classes indexed by cid.components.constructorcreates a javascript function which can be used to create or construct new instance...
...these exception objects may be thrown when implementing xpcom
interfaces in javascript, and they can provide better diagnostics in the error console if not caught than simply throwing an nsresult's value will.components.idcomponents.id is a constructor that creates native objects that conform to the nsijsid
interface.components.
interfacescomponents.
interfaces is a read-only object whose properties are
interfaces indexed by their names.components.
interfacesbyidcomponents.
interfacesbyid is a read-only array of classes indexed by iid.components.issuccesscodedetermines whether a given xpcom return code (that is, an nsresult value) indicates the success or failure of an operation...
...the scriptable methods on the nsicomponentmanager
interface can be called directly on this object.components.resultscomponents.results is a read-only object whose properties are the names listed as the first parameters of the macros in js/xpconnect/src/xpc.msg (also at table of errors), with the value of each corresponding to that constant's value.components.returncodecomponents.stackcomponents.stack is a read only property of type nsistackframe (idl definition) that represents a snapshot of the current javascript callstack.
...And 3 more matches
nsIBrowserHistory
toolkit/components/places/public/nsibrowserhistory.idlscriptable a browser-specific
interface to global history.
... it adds functions used by the basic browser like, marking pages as typed in the url bar, and removing pages as from the history
interface.
...to use this service, use: var browserhistory = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.
interfaces.nsibrowserhistory); method overview void addpagewithdetails(in nsiuri auri, in wstring atitle, in long long alastvisited); obsolete since gecko 15.0 void markpageasfollowedlink(in nsiuri auri); obsolete since gecko 22.0 void markpageastyped(in nsiuri auri); obsolete since gecko 22.0 void registeropenpage(in nsiuri auri); obsolete since gecko 9.0 void removeallpages(); void removepage(in nsiuri auri); ...
...And 3 more matches
nsIComponentRegistrar
xpcom/components/nsicomponentregistrar.idlscriptable this
interface provides methods to access and modify the xpcom component registry.
...elements of the enumeration can be query
interfaced for the nsisupportsid
interface.
...elements of the enumeration can be query
interfaced for the nsisupportscstring
interface.
...And 3 more matches
nsIJSID
js/src/xpconnect/idl/xpcjsid.idlscriptable this
interface provides information about a contract or
interface.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) the following methods return objects that implement this
interface: components.
interfaces.name components.classes[contract] components.
interfacesbyid[uuid] components.classesbyid[cid] the first two cases create a named jsid while the last two cases create an unnamed jsid.
... an unnamed jsid also results when you implement a function that is passed an nsiidref parameter, such as query
interface().
...And 3 more matches
nsIModule
xpcom/components/nsimodule.idlscriptable this
interface must be implemented by each xpcom component.
... aiid the iid of
interface requested.
... aresult the resulting
interface pointer.
...And 3 more matches
nsINavHistoryResult
more specifically, the nsinavhistoryresultviewer
interface provides the view component of the pattern, and nsinavhistoryresultviewobserver is the controller.
... the result indicates to the view when something changes by using the nsinavhistoryresultviewer
interface.
...if you need a different view, you'll need to create your own viewer
interface.
...And 3 more matches
nsIObserverService
xpcom/ds/nsiobserverservice.idlscriptable this
interface provides methods to add, remove, notify, and enumerate observers of various notifications.
... inherits from: nsisupports last changed in gecko 0.9.6 the xpcom nsobserverservice implements this
interface to provide global notifications for a variety of subsystems.
... implemented by @mozilla.org/observer-service;1 as a service: var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); method overview void addobserver( in nsiobserver anobserver, in string atopic, in boolean ownsweak); nsisimpleenumerator enumerateobservers( in string atopic ); void notifyobservers( in nsisupports asubject, in string atopic, in wstring somedata ); void removeobserver( in nsiobserver anobserver, in string atopic ); methods addobserver() registers a given listener for a notifications regarding the specified topic.
...And 3 more matches
Component; nsIPrefBranch
component: nsiprefbranch modules/libpref/public/nsiprefbranch.idlscriptable this
interface is used to manipulate the preferences data.
...the object must implement the nsisupportsweakreference
interface or this will fail.
... atype the xpcom
interface that this complex preference represents.
...And 3 more matches
nsIProperties
xpcom/ds/nsiproperties.idlscriptable this
interface provides methods to access a map of named xpcom object values.
...to get an instance, use: var properties = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsiproperties); method overview void get(in string prop, in nsiidref iid, [iid_is(iid),retval] out nsqiresult result); void getkeys(out pruint32 count, [array, size_is(count), retval] out string keys); boolean has(in string prop); void set(in string prop, in nsisupports value); void undefine(in string prop); methods get() gets the xpcom object associated with a particular name.
...iid the desired
interface.
...And 3 more matches
nsIPropertyBag2
xpcom/ds/nsipropertybag2.idlscriptable this
interface extends nsipropertybag with some methods for getting properties in specific formats.
...tpropertyasacstring(in astring prop); astring getpropertyasastring(in astring prop); autf8string getpropertyasautf8string(in astring prop); boolean getpropertyasbool(in astring prop); double getpropertyasdouble(in astring prop); print32 getpropertyasint32(in astring prop); print64 getpropertyasint64(in astring prop); void getpropertyas
interface(in astring prop, in nsiidref iid, [iid_is(iid), retval] out nsqiresult result); pruint32 getpropertyasuint32(in astring prop); pruint64 getpropertyasuint64(in astring prop); prbool haskey(in astring prop); methods get() this method returns null if the value does not exist, or exists but is null.
...getpropertyas
interface() this method returns null if the value exists, but is null.
...And 3 more matches
nsISHEntry
to create an instance, use: var shentry = components.classes["@mozilla.org/browser/session-history-entry;1"] .createinstance(components.
interfaces.nsishentry); method overview void addchildshell(in nsidocshelltreeitem shell); nsidocshelltreeitem childshellat(in long index); void clearchildshells(); nsishentry clone(); void create(in nsiuri uri, in astring title, in nsiinputstream inputstream, in nsilayouthistorystate layouthistorystate, in nsisupports cachekey, in acstring contenttype, in nsisupports owner, in unsigned long ...
... nsdocshelleditordataptr forgeteditordata(); violates the xpcom
interface guidelines nsicontentviewer getanycontentviewer(out nsishentry ownerentry); void getscrollposition(out long x, out long y); void getviewerbounds(in nsintrect bounds); native code only!
... boolean hasdetachededitor(); violates the xpcom
interface guidelines boolean hasdynamicallyaddedchild(); boolean isdynamicallyadded(); void seteditordata(in nsdocshelleditordataptr adata); violates the xpcom
interface guidelines void setissubframe(in boolean aflag); void setscrollposition(in long x, in long y); void settitle(in astring atitle); void setuniquedocidentifier(); void seturi(in nsiuri auri); void setviewerbounds(in nsintrect bounds); native code only!
...And 3 more matches
nsIServerSocket
the nsiserversocket
interface implements a server socket that can accept incoming connections.
...to create an instance, use: var serversocket = components.classes["@mozilla.org/network/server-socket;1"] .createinstance(components.
interfaces.nsiserversocket); method overview void init(in long aport, in boolean aloopbackonly, in long abacklog); void initwithaddress([const] in prnetaddrptr aaddr, in long abacklog);native code only!
... aloopbackonly if true, the server socket will only respond to connections on the local loopback
interface.
...And 3 more matches
nsISocketTransport
netwerk/base/public/nsisockettransport.idlscriptable this
interface specializes nsitransport for communication over network sockets.
... securitycallbacks nsi
interfacerequestor security notification callbacks passed to the secure socket provider via nsisslsocketcontrol at socket creation time.
... this object supports nsibadcertlistener2 and nsisslerrorlistener for ssl connections, and possibly other
interfaces.
...And 3 more matches
nsITextInputProcessor
dom/
interfaces/base/nsitextinputprocessor.idlscriptable this
interface is a text input events synthesizer and manages its composition and modifier state 1.0 66 introduced gecko 38 inherits from: nsisupports last changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) the motivation of this
interface is to provide better api than nsidomwindowutils to dispatch key events and create, modify, and commit composition in higher level.
...for solving that issue, methods of this
interface have been designed for performing a key operation or representing a change of composition state.
... for example, the implementation of this
interface manages modifier state and composition state, initializes dom events from minimum information, and doesn't dispatch some events if they are not necessary.
...And 3 more matches
nsITransport
netwerk/base/public/nsitransport.idlscriptable this
interface provides a common way of accessing i/o streams connected to some resource.
... this
interface does not in any way specify the resource.
... inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this
interface provides methods to open blocking or non-blocking, buffered or unbuffered streams to the resource.
...And 3 more matches
XPCOM primitive
all xpcom primitives are scriptable, and they all implement an xpcom
interface from the table below.
...(however, if you are designing that kind of api today, you should probably use nsivariant instead.) idl data type
interface component idl nsidptr nsisupportsid @mozilla.org/supports-id;1 [scriptable, uuid(d18290a0-4a1c-11d3-9890-006008962422)]
interface nsisupportsid : nsisupportsprimitive { attribute nsidptr data; string tostring(); }; astring nsisupportsstring @mozilla.org/supports-string;1 [scriptable, uuid(d79dc970-4a1c-11d3-9890-006008962422)]
interface nsisupportsstring : nsisupportsprimitive { attribute astring data; wstring tostring(); };...
... prbool nsisupportsprbool @mozilla.org/supports-prbool;1 [scriptable, uuid(ddc3b490-4a1c-11d3-9890-006008962422)]
interface nsisupportsprbool : nsisupportsprimitive { attribute prbool data; string tostring(); }; pruint8 nsisupportspruint8 @mozilla.org/supports-pruint8;1 [scriptable, uuid(dec2e4e0-4a1c-11d3-9890-006008962422)]
interface nsisupportspruint8 : nsisupportsprimitive { attribute pruint8 data; string tostring(); }; pruint16 nsisupportspruint16 @mozilla.org/supports-pruint16;1 [scriptable, uuid(dfacb090-4a1c-11d3-9890-006008962422)]
interface nsisupportspruint16 : nsisupportsprimitive { attribute pruint16 data; string tostring(); }; pruint32 nsisupportspruint32 @mozilla.org/supports-pruint32;1 [scriptable, uuid(e01dc470-4a1c-11d3-9890-006008962422)]
interface...
...And 3 more matches
nsIAbCard/Thunderbird3
note: this
interface has been overhauled completely for thunderbird 3.
... documentation for the old nsiabcard
interface is currently at nsiabcard.
... the nsiabcard
interface is used to represent and manipulate cards in the address book.
...And 3 more matches
wrappedJSObject
this article focuses on the latter kind of wrappers, which hide any properties or methods on the component that are not part of the supported
interfaces as declared in xpidl.
... // constructor function helloworld() { }; helloworld.prototype = { hello: function() { return "hello world!"; }, query
interface: function(aiid) { if (!aiid.equals(components.
interfaces.nsisupports) && !aiid.equals(components.
interfaces.nsihelloworld)) throw components.results.ns_error_no_
interface; return this; } }; xpconnect wrapping now let's get a reference to our component.
...this also makes the public
interface of the component clearer and provides protection for the component's internal data.
...And 3 more matches
Activity Manager examples
see the activity manager
interfaces page for an overview of the related
interfaces.
... // step 1: adding a process into the activity manager const nsiap = components.
interfaces.nsiactivityprocess; const nsiae = components.
interfaces.nsiactivityevent; const nsiam = components.
interfaces.nsiactivitymanager; let gactivitymanager = components.classes["@mozilla.org/activity-manager;1"].getservice(nsiam); let process = components.classes["@mozilla.org/activity-process;1"].createinstance(nsiap); // assuming folder is an instance of nsimsgfolder
interface // localization is...
...ss.contexttype = "account"; // group this activity by account process.contextobj = folder.server; // account in question gactivitymanager.addactivity(process); // step 2: showing some progress let percent = 50; process.setprogress(percent, "junk processing 25 of 50 messages", 25, 50); // step 3: removing the process and adding an event using process' attributes process.state = components.
interfaces.nsiactivityprocess.state_completed; gactivitymanager.removeactivity(process.id); let event = components.classes["@mozilla.org/activity-event;1"].createinstance(nsiae); // localization is omitted, initiator is omitted event.init(folder.prettiestname + " is processed", null, "no junk found", process.starttime, // start time date.now()); // comp...
...And 3 more matches
AudioScheduledSourceNode - Web APIs
the audioscheduledsourcenode
interface—part of the web audio api—is a parent
interface for several types of audio source node
interfaces which share the ability to be started and stopped, optionally at specified times.
... specifically, this
interface defines the start() and stop() methods, as well as the onended event handler.
...instead, use the
interface which extends it, such as audiobuffersourcenode, oscillatornode, and constantsourcenode.
...And 3 more matches
BaseAudioContext - Web APIs
the baseaudiocontext
interface of the web audio api acts as a base definition for online and offline audio-processing graphs, as represented by audiocontext and offlineaudiocontext respectively.
... you wouldn't use baseaudiocontext directly — you'd use its features via one of these two inheriting
interfaces.
... a baseaudiocontext can be a target of events, therefore it implements the eventtarget
interface.
...And 3 more matches
CSSRule - Web APIs
the cssrule
interface represents a single css rule.
... the cssrule
interface specifies the properties common to all rules, while properties unique to specific rule types are specified in the more specialized
interfaces for those rules' respective types.
...the value of "font-size" in the example) use the properties on the specialized
interface for the rule's type.
...And 3 more matches
CSS Object Model (CSSOM) - Web APIs
amespacerule csspagerule cssrule cssrulelist cssstyledeclaration cssstylesheet cssstylerule csssupportsrule cssvariablesmap cssviewportrule elementcssinlinestyle fontface fontfaceset fontfacesetloadevent geometryutils getstyleutils linkstyle medialist mediaquerylist mediaquerylistevent mediaquerylistlistener screen stylesheet stylesheetlist transitionevent several other
interfaces are also extended by the cssom-related specifications: document, window, element, htmlelement, htmlimageelement, range, mouseevent, and svgelement.
... cssmathsum cssmathvalue cssmatrixcomponent cssnumericarray cssnumericvalue cssperspective csspositionvalue cssrotate cssscale cssskew cssskewx cssskewy cssstylevalue csstransformcomponent csstransformvalue csstranslate cssunitvalue cssunparsedvalue cssvariablereferencevalue stylepropertymap stylepropertymapreadonly obsolete cssom
interfaces cssprimitivevalue cssvalue cssvaluelist tutorials determining the dimensions of elements (it needs some updating as it was made in the dhtml/ajax era).
... managing screen orientation specifications specification status comment css typed om level 1 working draft css painting api level 1 working draft extended the css
interface with the paintworklet static property.
...And 3 more matches
CharacterData - Web APIs
the characterdata abstract
interface represents a node object that contains characters.
... this is an abstract
interface, meaning there aren't any object of type characterdata: it is implemented by other
interfaces, like text, comment, or processinginstruction which aren't abstract.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
...And 3 more matches
ConstantSourceNode - Web APIs
the constantsourcenode
interface—part of the web audio api—represents an audio source (based upon audioscheduledsourcenode) whose output is single unchanging value.
... properties inherits properties from its parent
interface, audioscheduledsourcenode, and adds the following properties: offset an audioparam which specifies the value that this source continuously outputs.
... event handlers inherits event handlers from its parent
interface, audioscheduledsourcenode.
...And 3 more matches
DOMMatrixReadOnly - Web APIs
the dommatrixreadonly
interface represents a read-only 4×4 matrix, suitable for 2d and 3d operations.
... this
interface should be available inside web workers, though some implementations doesn't allow it yet.
... properties this
interface doesn't inherit any properties.
...And 3 more matches
DocumentFragment - Web APIs
the documentfragment
interface represents a minimal document object that has no parent.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke=...
... properties this
interface has no specific properties, but inherits those of its parent, node, and implements those of the parentnode
interface.
...And 3 more matches
FileError - Web APIs
represents an error that occurs while using the filereader
interface.
... note: this
interface is obsolete per the latest specification.
... use the new dom4 domerror
interface instead.
...And 3 more matches
HTMLFormControlsCollection - Web APIs
the htmlformcontrolscollection
interface represents a collection of html form control elements.
... it represents the lists returned by the htmlformelement
interface's elements property and the htmlfieldsetelement
interface's elements property.
... this
interface replaces one method from htmlcollection, on which it is based.
...And 3 more matches
HTMLSelectElement - Web APIs
the htmlselectelement
interface represents a <select> html element.
... these elements also share all of the properties and methods of other html elements via the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...And 3 more matches
HTMLTemplateElement - Web APIs
the htmltemplateelement
interface enables access to the contents of an html <template> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...teelement" target="_top"><rect x="301" y="65" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmltemplateelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface inherits the properties of htmlelement.
...And 3 more matches
File drag and drop - Web APIs
html drag and drop
interfaces enable web applications to drag and drop files on a web page.
...one api is the datatransfer
interface and the second api is the datatransferitem and datatransferitemlist
interfaces.
... this example illustrates the use of both apis (and does not use any gecko specific
interfaces).
...And 3 more matches
Key Values - Web APIs
opens an
interface (typically a dialog box) for performing a find/search operation.
... the values below are derived in part form a number of consumer electronics technical specifications: dtv application software environment (part of the atsc specification) open cable application platform 1.1.3 ansi/cea-2014-b: web-based protocol and framework for remote user
interface on upnp™ networks and the internet android keyevent key code values note: remote controls typically include keys whose values are already defined elsewhere, such as under multimedia keys or audio control keys.
... vk_user "ondemand" opens the user
interface for selecting on demand content or programs to watch.
...And 3 more matches
OfflineAudioContext - Web APIs
the offlineaudiocontext
interface is an audiocontext
interface representing an audio-processing graph built from linked together audionodes.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle...
... properties also inherits properties from its parent
interface, baseaudiocontext.
...And 3 more matches
Performance - Web APIs
the performance
interface provides access to performance-related information for the current page.
... note: this
interface and its members are available in web workers, except where indicated below.
... properties the performance
interface doesn't inherit any properties.
...And 3 more matches
PerformanceNavigationTiming - Web APIs
the performancenavigationtiming
interface provides methods and properties to store and retrieve metrics regarding the browser's document navigation events.
... for example, this
interface can be used to determine how much time it takes to load or unload a document.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceentry</text></a><polyline points="161,25 171,20 171,30 161,25" stroke="#d4dde4" fill="none"/><line x1="171" y1="25" x2="201" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/...
...And 3 more matches
PerformanceResourceTiming - Web APIs
the performanceresourcetiming
interface enables retrieval and analysis of detailed network timing data regarding the loading of an application's resources.
... the
interface's properties create a resource loading timeline with high-resolution timestamps for network events such as redirect start and end times, fetch start, dns lookup start and end times, response start and end times, etc..
... additionally, the
interface extends performanceentry with other properties which provide data about the size of the fetched resource as well as the type of resource that initiated the fetch.
...And 3 more matches
Using the Performance API - Web APIs
the domhighrestimestamp type (a double) is used by all performance
interfaces to hold such time values.
... web performance
interfaces are defined in a suite of standards.
... the base
interface for these standards is the performance
interface and its methods and properties are extended by different standards.
...And 3 more matches
SVGFEDisplacementMapElement - Web APIs
the svgfedisplacementmapelement
interface corresponds to the <fedisplacementmap> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 3 more matches
SVGFETurbulenceElement - Web APIs
the svgfeturbulenceelement
interface corresponds to the <feturbulence> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 3 more matches
SVGGeometryElement - Web APIs
the svggeometryelement
interface represents svg elements whose rendering is defined by geometry with an equivalent path, and which can be filled and stroked.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde...
...th="2px" /><text x="171" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svggeometryelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} note: the pathlength property and the gettotallength() and getpointatlength() methods were originally part of the svgpathelement
interface.
...And 3 more matches
SVGRectElement - Web APIs
the svgrectelement
interface provides access to the properties of <rect> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svgrectelement" target="_top"><rect x="-99" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-29" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgrectelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggeometryelement.
...And 3 more matches
SVGTextContentElement - Web APIs
the svgtextcontentelement
interface is implemented by elements that support rendering child text content.
... it is inherited by various text-related
interfaces, such as svgtextelement, svgtspanelement, svgtrefelement, svgaltglyphelement and svgtextpathelement.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...And 3 more matches
SVGTextPathElement - Web APIs
the svgtextpathelement
interface corresponds to the <textpath> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgtextcontentelement, and also implements properties of svgurireference.
...And 3 more matches
ShadowRoot - Web APIs
the shadowroot
interface of the shadow dom api is the root node of a dom subtree that is rendered separately from a document's main dom tree.
... properties included from documentorshadowroot the shadowroot
interface includes the following properties defined on the documentorshadowroot mixin.
... note that this is currently only implemented by chrome; other browsers still implement them on the document
interface.
...And 3 more matches
UIEvent - Web APIs
the uievent
interface represents simple user
interface events.
... several
interfaces are direct or indirect descendants of this one: mouseevent, touchevent, focusevent, keyboardevent, wheelevent, inputevent, and compositionevent.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/uievent" target="_top"><re...
...And 3 more matches
A simple RTCDataChannel sample - Web APIs
the rtcdatachannel
interface is a feature of the webrtc api which lets you open a channel between two peers over which you may send and receive arbitrary data.
... function startup() { connectbutton = document.getelementbyid('connectbutton'); disconnectbutton = document.getelementbyid('disconnectbutton'); sendbutton = document.getelementbyid('sendbutton'); messageinputbox = document.getelementbyid('message'); receivebox = document.getelementbyid('receivebox'); // set event listeners for user
interface widgets connectbutton.addeventlistener('click', connectpeers, false); disconnectbutton.addeventlistener('click', disconnectpeers, false); sendbutton.addeventlistener('click', sendmessage, false); } this is quite straightforward.
...these handlers can do whatever's needed, but in this example, all we need to do is update the user
interface: function handlelocaladdcandidatesuccess() { connectbutton.disabled = true; } function handleremoteaddcandidatesuccess() { disconnectbutton.disabled = false; } the only thing we do here is disable the "connect" button when the local peer is connected and enable the "disconnect" button when the remote peer connects.
...And 3 more matches
WebXR Device API - Web APIs
navigator.xr read only this property, added to the navigator
interface, returns the xrsystem object through which the webxr api is exposed.
... webxr
interfaces xr the navigator.xr property returns the window's instance of xrsystem, which is the mechanism by which your code accesses the webxr api.
... using the xrsystem
interface, you can create xrsessions to represent actual ar and/or vr sessions.
...And 3 more matches
Web Authentication API - Web APIs
likewise, the full set of response fields can be found in the publickeycredential
interface (where publickeycredential.response is the authenticatorattestationresponse
interface).
...the specific options for authenticating can be found in the publickeycredentialrequestoptions dictionary, and the resulting data can be found in the publickeycredential
interface (where publickeycredential.response is the authenticatorassertionresponse
interface) .
...
interfaces credential provides information about an entity as a prerequisite to a trust decision.
...And 3 more matches
<input type="time"> - HTML: Hypertext Markup Language
the control's user
interface will vary from browser to browser.
...ontains the optional pre-defined autocomplete options max the latest time to accept, in the syntax described under time value format min the earliest time to accept as a valid input readonly a boolean attribute which, if present, indicates that the contents of the time input should not be user-editable step the stepping interval to use both for user
interfaces purposes and during constraint validation unlike many data types, time values have a periodic domain, meaning that the values reach the highest possible value, then wrap back around to the beginning again.
... validation by default, <input type="time"> does not apply any validation to entered values, other than the user agent's
interface generally not allowing you to enter anything other than a time value.
...And 3 more matches
Feature-Policy - HTTP
directives accelerometer controls whether the current document is allowed to gather information about the acceleration of the device through the accelerometer
interface.
... ambient-light-sensor controls whether the current document is allowed to gather information about the amount of light in the environment around the device through the ambientlightsensor
interface.
... autoplay controls whether the current document is allowed to autoplay media requested through the htmlmediaelement
interface.
...And 3 more matches
widget - Archive of obsolete content
create a simple user
interface for an add-on in firefox's add-on bar.
... there are a few advantages to using widgets over an ad hoc user
interface.
...second, it allows firefox to treat your
interface as a first-class citizen.
...And 2 more matches
Low-Level APIs - Archive of obsolete content
test/assert implements the assert
interface defined in the commonjs unit testing specification version 1.1.
... ui/button/action add a button to the firefox user
interface.
... ui/button/toggle add a toggle button to the firefox user
interface.
...And 2 more matches
Creating Event Targets - Archive of obsolete content
org/browser/nav-bookmarks-service;1"] .getservice(ci.nsinavbookmarksservice); var bookmarkobserver = { onitemadded: function(aitemid, afolder, aindex) { console.log("added ", bookmarkservice.getbookmarkuri(aitemid).spec); }, onitemvisited: function(aitemid, avisitid, time) { console.log("visited ", bookmarkservice.getbookmarkuri(aitemid).spec); }, query
interface: xpcomutils.generateqi([ci.nsinavbookmarkobserver]) }; exports.main = function() { bookmarkservice.addobserver(bookmarkobserver, false); }; exports.onunload = function() { bookmarkservice.removeobserver(bookmarkobserver); } try running this add-on, adding and visiting bookmarks, and observing the output in the console.
... modules as event targets we can adapt this code into a separate module that exposes the sdk's standard event
interface.
...g/browser/nav-bookmarks-service;1"] .getservice(ci.nsinavbookmarksservice); var bookmarkobserver = { onitemadded: function(aitemid, afolder, aindex) { emit(exports, "added", bookmarkservice.getbookmarkuri(aitemid).spec); }, onitemvisited: function(aitemid, avisitid, time) { emit(exports, "visited", bookmarkservice.getbookmarkuri(aitemid).spec); }, query
interface: xpcomutils.generateqi([ci.nsinavbookmarkobserver]) }; bookmarkservice.addobserver(bookmarkobserver, false); exports.on = on.bind(null, exports); exports.once = once.bind(null, exports); exports.removelistener = function removelistener(type, listener) { off(exports, type, listener); }; this code implements a module which can emit added and visited events.
...And 2 more matches
Creating Reusable Modules - Archive of obsolete content
you can split your code into separate modules with clearly defined
interfaces between them.
...for both these operations we'll use xpcom
interfaces.
...the documentation for that
interface includes an example which we can adapt like this: var {cc, ci} = require("chrome"); function promptforfile() { const nsifilepicker = ci.nsifilepicker; var fp = cc["@mozilla.org/filepicker;1"] .createinstance(nsifilepicker); var window = require("sdk/window/utils").getmostrecentbrowserwindow(); fp.init(window, "select a file", nsifilepicker.modeopen); fp.appendfilters(nsifilepicker.filterall | nsifilepicker.filtertext); var rv = fp.show(); if (rv == nsifilepicker.returnok || rv == nsifilepicker.returnreplace) { var file = fp.file; // get the path as string.
...And 2 more matches
Install Manifests - Archive of obsolete content
examples <em:contributor>john doe</em:contributor> <em:contributor>john doe</em:contributor> <em:contributor>jane doe</em:contributor> <em:contributor>elvis presley</em:contributor> creator the name of the creator/principal developer - intended for display in the user
interface.
... examples <em:creator>john doe</em:creator> or <em:creator>coolextension team</em:creator> description a short description of the add-on - intended for display in the user
interface.
... <em:hasembeddedwebextension>true</em:hasembeddedwebextension> homepageurl a link to the add-on's home page - intended for display in the user
interface.
...And 2 more matches
The Essentials of an Extension - Archive of obsolete content
the chrome.manifest file chrome is the set of user
interface elements of the application window that are outside of a window's content area.
...the content is the most important section, holding user
interface (xul) and script (js) files.
... xul files are xml files that define the user
interface elements in firefox and firefox extensions.
...And 2 more matches
Creating a status bar extension - Archive of obsolete content
human-readable information in this sample, we have four pieces of human-readable information; that is, information that is displayed to the user within the firefox
interface.
...the chrome is the set of user
interface elements outside the content area of the application's window, such as toolbars, status bars, menu bars, and the like.
...in this case, we want to augment the ui of the firefox browser, so we specify the uri of the firefox main window's xul file, "chrome://browser/content/browser.xul", as the
interface to overlay onto, and the uri of our own xul file, "chrome://status-bar-sample-1/content/status-bar-sample-1.xul", as the
interface to overlay onto the browser.
...And 2 more matches
Index of archived content - Archive of obsolete content
doorhanger menu toast notifications.jsm pageactions.jsm prompt.jsm runtimepermissions.jsm snackbars.jsm sound.jsm tab addons developer guide code snippets creating a user
interface firefox hub walkthrough initialization and cleanup prerequisites walkthrough webextensions for firefox for android listening to events in firefox extensions migrating from internal linkage to frozen linkage migrating raw components to add-ons multiple item extension packaging...
... xpjs components proposal xre xtech 2005 presentations directions of the mozilla rdf engine extending gecko with xbl and xtf mozilla e4x rich web svg and canvas in mozilla xul - mozilla's xml user
interface language xtech 2006 presentations xul explorer xulrunner application update article building xulrunner building xulrunner with python commandline components creating xulrunner apps with the mozilla build system creating a wind...
...ing netscape fish cam page using javascript generators in firefox window.importdialog() writing javascript for xhtml xforms building mozilla xforms community developing mozilla xforms implementation status mozilla xforms specials mozilla xforms user
interface xforms alert element xforms group element xforms help element xforms hint element xforms input element xforms label element xforms message element xforms output element xforms range element xforms repeat element xforms secret eleme...
...And 2 more matches
Drag and Drop - Archive of obsolete content
the drag and drop
interface many user
interfaces allow one to drag particular objects around within the
interface.
...this first involves using the drag and drop xpcom
interfaces directly.
... xpcom drag and drop
interfaces two
interfaces are used to support drag and drop.
...And 2 more matches
Embedding Mozilla in a Java Application using JavaXPCOM - Archive of obsolete content
prerequisites java 1.4.2 or newer xulrunner 1.8.0.1 or newer embedding in order to embed mozilla in your java application, you will need to add the library mozilla
interfaces.jar (located in xulrunner/sdk/lib folder) to your classpath.
... this library provides the
interfaces necessary to bootstrap mozilla and call xpcom methods.
...it implements the iappfilelocprovider
interface, and tells xpcom where to find certain files and directories.
...And 2 more matches
Elements - Archive of obsolete content
the most useful namespaces could be html/xhtml, xul (xml user
interface language), svg (scalable vector graphics) and xlink.
... implements - the implements attribute can be used to describe the set of
interfaces that are implemented by the binding.
... its value is a comma-separated list of named
interfaces.
...And 2 more matches
Introduction to XUL - Archive of obsolete content
xul (pronounced "zool," as if that spelling helped any, and short for "xml user
interface language") is our name for the language in which these ui descriptions are built.
... scripting a xul
interface is only a collection of disconnected widgets until it has been programmed.
...these
interfaces can be found in the directory mozilla/rdf/content/public/idl.
...And 2 more matches
Focus and Selection - Archive of obsolete content
typically, you will use focus and blur events to update parts of the
interface as the user selects elements.
...don't display an alert during a focus or blur event as this will be distracting for the user and is poor user
interface design.
...the command dispatcher is responsible for keeping track of the focused element as the user uses the
interface.
...And 2 more matches
Manipulating Lists - Archive of obsolete content
in fact, these methods are part of the nsidomxulselectcontrolelement
interface so any xul elements which implement this
interface have these methods.
... list selection the nsidomxulselectcontrolelement
interface provides two additonal properties, selectedindex and selecteditem.
...ex = val - 1; } </script> <hbox align="center"> <label value="enter a number from 1 to 3:"/> <textbox id="number"/> <button label="select" oncommand="doselect();"/> </hbox> <radiogroup id="level"> <radio label="excellent"/> <radio label="good"/> <radio label="poor"/> </radiogroup> listboxes also support multiple selection and the functions of the nsidomxulmultiselectcontrolelement
interface.
...And 2 more matches
XUL Questions and Answers - Archive of obsolete content
others, like <listbox>, cannot be so tied, but one can always write a script that updates preferences explicitly, via nsiprefbranch
interface.
...a python object is convered when implmenting an
interface taking an nsivariant.
... an example of this is this: // associate the progress listener for a "browser" to a listener object browserobject.addprogresslistener( listobj, components.
interfaces.nsiwebprogress.notify_state_window ); // remember to define the object, something like this: listobj = new object(); listobj.wpl = components.
interfaces.nsiwebprogresslistener; listobj.query
interface = function(aiid) { if (aiid.equals(listobj.wpl) || aiid.equals(components.
interfaces.nsisupportsweakreference) || aiid.equals(components.
interfaces.nsisupports)) return this; ...
...And 2 more matches
browser - Archive of obsolete content
droppedlinkhandler(event, uri, name) -- firefox 51 or older droppedlinkhandler(event, links) -- firefox 52 or newer event -- drop event, or null if no event is available uri -- uri string of the dropped link name -- name string of the dropped link links -- array of the dropped items with nsidroppedlinkitem
interface homepage type: url this attribute allows you to set a homepage for the browser element.
... contentviewerfile type: nsicontentviewerfile reference to the nsicontentviewerfile
interface for the document.
...the progress listener should implement the nsiwebprogresslistener
interface.
...And 2 more matches
tabbrowser - Archive of obsolete content
contentviewerfile type: nsicontentviewerfile reference to the nsicontentviewerfile
interface for the document.
...the progress listener should implement the nsiwebprogresslistener
interface.
...the progress listener should be based on the nsiwebprogresslistener
interface with an additional "browser" argument as the first argument of every method, which is the browser (not <tabbrowser> = gbrowser) where the event occurred.
...And 2 more matches
calICalendarView - Archive of obsolete content
there is, however, no practical obstacle to the
interface being implemented by any javascript object associated with a group of dom nodes, even non-anonymous xul nodes.
...for instance, when the showdate method of the the calendar-multiday-view (an implementation of this
interface) will sometimes show an entire week of dates, and sometimes show only the single date passed in.
...
interface code [scriptable, uuid(3e567ccb-2ecf-4f59-b7ca-bf42b0fbf24a)]
interface calicalendarview : nsisupports { attribute calicalendar displaycalender; attribute calicalendarviewcontroller controller; void showdate(in calidatetime adate); void setdaterange(in calidatetime astartdate, in calidatetime aenddate); readonly attribute calidatetime startdate; readonly attribute calidatetime endd...
...And 2 more matches
SAX - Archive of obsolete content
to create one, use the following code: var xmlreader = components.classes["@mozilla.org/saxparser/xmlreader;1"] .createinstance(components.
interfaces.nsisaxxmlreader); after you created the sax parser, you need to set the handlers for the events you're interested in and fire off the parsing process.
... all functionality is available through the nsisaxxmlreader
interface.
... set the handlers handlers are user-defined objects implementing sax handler
interfaces, depending on what kind of information they need to get from the parser.
...And 2 more matches
Making sure your theme works with RTL locales - Archive of obsolete content
the important thing to understand about these locales, is that the entire
interface is mirrored right-to-left.
... gecko 1.9.2 and later gecko 1.9.2 introduced the :-moz-locale-dir css pseudoclass, which matches based on whether the user
interface is being rendered left-to-right or right-to-left: :-moz-locale-dir(ltr) matches if the user
interface is being rendered left to right.
... :-moz-locale-dir(rtl) matches if the user
interface is being rendered right to left.
...And 2 more matches
Accessibility information for UI designers and developers
when you design user
interfaces with accessibility in mind, they will work for more people.
... don't rely on color alone when your
interface uses color to distinguish between things, make sure the distinction is also made in other ways.
...to at least 1.5 times the font size set spacing following paragraphs to at least 2 times the font size set letter spacing (tracking) to at least 0.12 times the font size set word spacing to at least 0.16 times the font size this does not mean that your page needs to offer controls to make such changes, merely that if someone does these things in a custom stylesheet, they should not break the
interface.
...And 2 more matches
mach
mach (german for to make) is a program via the "command-line
interface" to help developers perform installation tasks such as installing firefox from its c++ source code.
...historically, mach was born to become a better
interface to the build system.
...instead, it aims to expose that tooling through a common, shared
interface.
...And 2 more matches
HTTP Cache
//github.com/realityripple/uxp/blob/master/netwerk/base/public/nsiloadcontextinfo.idl it is a helper
interface wrapping following four arguments into a single one: private-browsing boolean flag anonymous load boolean flag app id number (0 for no app) is-in-browser boolean flag helper functions to create nsiloadcontextinfo objects: c++ consumers: functions at loadcontextinfo.h exported header js consumers: resource://gr...
... similarity with the old cache: this
interface may be with some limitations considered as a mirror to nsicachesession, but less generic and not inclining to abuse.
... unimplemented or underimplemented functionality: asyncevictstorage (bug 977766), asyncvisitstorage (bug 916052) nsicacheentryopencallback //github.com/realityripple/uxp/blob/master/netwerk/cache2/nsicacheentryopencallback.idl the result of nsicachestorage.asyncopenuri is always and only sent to callbacks on this
interface.
...And 2 more matches
Mozilla Style System Documentation
style context management a style context (class nsstylecontext, currently also
interface nsistylecontext although the
interface should go away when all of the style systems can be moved back into the layout dll) represents the style data for a css formatting object.
... in the layout system, these formatting objects are described as frames (
interface nsiframe), although a pair of frames represents table formatting objects.
...the pres context forwards these calls to its style set object (stylesetimpl,
interface nsistyleset), which does the real work (and also maintains the lists of stylesheets and owns the rule tree).
...And 2 more matches
JS::PerfMeasurement
::major_page_faults .major_page_faults page faults that required disk access ::context_switches .context_switches context switches involving the profiled thread ::cpu_migrations .cpu_migrations migrations of the profiled thread from one cpu core to another these events map directly to "generic events" in the linux 2.6.31+ <linux/perf_event.h>
interface, and so unfortunately are a little vague in their specification; for instance, we can't tell you exactly which level of cache you get misses for if you measure cache_misses.
... we also can't guarantee that all platforms will support all event types, once we have more than one back end for this
interface.
... all presently-measurable events are measured with counters, not timers; that is, there is no defined relation between the numbers you get from this
interface, and wall-clock time.
...And 2 more matches
Using the Places history service
history services
interface overview the mozilla history service has undergone many revisions.
... to maintain backwards compatibility, each version has implemented the older
interfaces, resulting in functionality spread across many
interfaces.
... the places history service ("navhistory") implements these history
interfaces: nsiglobalhistory2: basic add page, is visited functionality used by the docshell when visiting and rendering pages.
...And 2 more matches
XPCOM changes in Gecko 2.0
no more frozen
interfaces there are no longer any frozen
interfaces; from now on, all
interfaces are subject to change.
... documentation will be updated as time allows to remove references to
interfaces being "frozen" or "unfrozen." component registration the way xpcom components are registered changed in gecko 2.
...xpt files the path of any xpt files must be listed explicitly in a manifest using an
interfaces directive:
interfaces components/mycomponent.xpt javascript components the registration information for javascript components is no longer located in the component itself; instead, it's located in the manifest.
...And 2 more matches
Preface
for example, the introduction includes a discussion of components and what they are, and the first chapter - in which you compile the basic code and register it with mozilla - prompts a discussion of the relationship between components and modules, of xpcom
interfaces, and of the registration process in general.
... define the functionality for the component; create an xpidl
interface for that functionality; create the implementation code specific to the custom weblock component
interface.
... creating the user
interface for the weblock component.
...And 2 more matches
XPCOM hashtable guide
any type: almost any datatype can be used as key, including strings, integers, xpcom
interface pointers, iids, and almost anything else.
... data type hashtable class none (for a hash set) nsthashtable simple types (numbers, booleans, etc) nsdatahashtable structs or classes (nsstring, custom defined structs or classes that are not reference-counted) nsclasshashtable reference-counted concrete classes nsrefptrhashtable
interface pointers ns
interfacehashtable each of these classes is a template with two parameters.
... key type hashkey class strings nsstringhashkey/nscstringhashkey integers nsuint32hashkey/nsuint64hashkey pointers nsptrhashkey<t> owned
interface pointers nsisupportshashkey reference-counted concrete classes nsrefptrhashkey there are a number of more esoteric hashkey classes in nshashkeys.h, and you can always roll your own if none of these fit your needs (make sure you're not duplicating an existing hashkey class though!) once you've determined what hashtable and hashkey classes you need, you can put it all together.
...And 2 more matches
Inheriting from implementation classes
given that idl
interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into multiple inheritance.
... that's not inherently multiple inheritance, though, because you only mix in
interfaces (i.e.
... the problem would not exist with java's
interfaces).
...And 2 more matches
nsIAccessibleEvent
accessible/public/nsiaccessibleevent.idlscriptable an
interface for accessibility events listened to by in-process accessibility clients, which can be used to find out how to get accessibility and dom
interfaces for the event and its target.
... eventtype unsigned long the type of event, based on the enumerated event values defined in this
interface.
...server applications send this event when a user needs to know that a user
interface element has changed.
...And 2 more matches
nsIAppShellService
inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: @mozilla.org/appshell/appshellservice;1 as a service: var appshellservice = components.classes["@mozilla.org/appshell/appshellservice;1"] .getservice(components.
interfaces.nsiappshellservice); method overview void closetoplevelwindow(in nsixulwindow awindow); obsolete since gecko 1.8 void createhiddenwindow(in nsiappshell aappshell); native code only!
...32 aferocity); obsolete since gecko 1.8 void registertoplevelwindow(in nsixulwindow awindow); void run(); obsolete since gecko 1.8 void toplevelwindowismodal(in nsixulwindow awindow, in boolean amodal); obsolete since gecko 1.9.1 void unregistertoplevelwindow(in nsixulwindow awindow); note: prior to gecko 8.0, all references to nsidomwindow used in this
interface were nsidomwindowinternal.
... void gethiddenwindowandjscontext( out nsidomwindow ahiddendomwindow, out jscontext ajscontext ); parameters ahiddendomwindow the hidden window query
interface'd to type nsidomwindow.
...And 2 more matches
nsIAuthPrompt2
netwerk/base/public/nsiauthprompt2.idlscriptable an
interface allowing to prompt for a username and password.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) this
interface is usually acquired using get
interface on notification callbacks or similar.
... this
interface is implemented by @mozilla.org/login-manager/prompter;1.
...And 2 more matches
nsIBadCertListener2
security/manager/ssl/public/nsibadcertlistener2.idlscriptable this
interface is used to is report a broken ssl status.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) replaces the obsolete nsibadcertlistener
interface.
... method overview boolean notifycertproblem(in nsi
interfacerequestor socketinfo, in nsisslstatus status, in autf8string targetsite); methods notifycertproblem() called in case of a broken ssl status.
...And 2 more matches
nsICategoryManager
xpcom/components/nsicategorymanager.idlscriptable this
interface provides access to a data structure that holds a list of name-value pairs, called categories, where each value is a list of strings.
...to use this service, use: var categorymanager = components.classes["@mozilla.org/categorymanager;1"] .getservice(components.
interfaces.nsicategorymanager); method overview string addcategoryentry(in string acategory, in string aentry, in string avalue, in boolean apersist, in boolean areplace); void deletecategory(in string acategory); void deletecategoryentry(in string acategory, in string aentry, in boolean apersist); nsisimpleenumerator enumeratecategories(); nsisimpleenumerator enumeratecategory(in string acategory); string getcategoryentry(in string acategory, in s...
...drefs(catmgr)); if (ns_failed(rv)) return rv; nscomptr<nsisimpleenumerator> cats; rv = catmgr->enumeratecategories(getter_addrefs(cats)); if (ns_failed(rv)) return rv; prbool hasmore; while (ns_succeeded(cats->hasmoreelements(&hasmore) && hasmore) { nscomptr<nsisupports> elem; cats->getnext(getter_addrefs(elem)); nscomptr<nsisupportscstring> category = do_query
interface(elem, &rv); if (ns_failed(rv)) break; nsembedcstring categoryname; rv = category->getdata(categoryname); if (ns_failed(rv)) break; printf("%s\n", categoryname.get()); } return ns_ok; } this snippet shows how to print out a list of all categories in javascript.
...And 2 more matches
nsIClipboardDragDropHookList
widget/public/nsiclipboarddragdrophooklist.idlscriptable this
interface is an internal gecko component.
... it provides basic operations such as adding, removing and enumerating clipboard hooks for the nsiclipboarddragdrophooks
interface.
... inherits from: nsisupports last changed in gecko 1.7 note: this
interface is not intended for direct use by embedders; it is an implementation detail.
...And 2 more matches
nsIDOMWindow
dom/
interfaces/base/nsidomwindow.idlscriptable this
interface is the primary
interface for a window object.
... while this
interface is not officially defined by any standard bodies, it originates from the de-facto dom level 0 standard.
... starting in firefox 3, dom windows are actually based on nsidomwindow2, which is a subclass of nsidomwindow that adds some new features to this
interface.
...And 2 more matches
nsIDOMWindowInternal
dom/
interfaces/base/nsidomwindowinternal.idlscriptable this
interface is part of a chain of
interfaces used to represent a window in the dom.
... 66 introduced gecko 1.0 deprecated gecko 8.0 inherits from: nsidomwindow last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) in gecko 8.0 this
interface was merged into the nsidomwindow
interface.
... this
interface no longer has any members; it exists solely to prevent add-ons that reference it from failing completely.
...And 2 more matches
nsIFileView
toolkit/components/filepicker/public/nsifileview.idlscriptable this
interface displays a list of files in a treebox.
... inherits from: nsisupports last changed in gecko 1.7 note: nsifileview is linux-only
interface.
...the nsifileview provides a configuration
interface to @mozilla.org/filepicker/fileview;1 , which also implements nsitreeview so that it can be passed as a tree view.
...And 2 more matches
nsIHttpHeaderVisitor
netwerk/protocol/http/nsihttpheadervisitor.idlscriptable this
interface is used to view http request and response headers.
...it implements the nsihttpheadervisitor
interface in javascript and uses it to evaluate the mime type of a http response.
...when the observer fires, the visitor
interface is used to walk through the response headers and evaluate the mime type.
...And 2 more matches
nsIMemoryReporterManager
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) implemented by @mozilla.org/memory-reporter-manager;1 as a service: var reportermanager = components.classes["@mozilla.org/memory-reporter-manager;1"] .getservice(components.
interfaces.nsimemoryreportermanager); each memory reporter object, which implements nsimemoryreporter
interface, provides information for a given code area.
...void registermultireporter( in nsimemorymultireporter reporter ); parameters reporter an object implementing the nsimemorymultireporter
interface which provides memory usage information for a given code area.
...void registerreporter( in nsimemoryreporter reporter ); parameters reporter an object implementing the nsimemoryreporter
interface which provides memory usage information for a given code area.
...And 2 more matches
nsIMessageWakeupService
there is no idl for this
interface.
...to indicate a wakeup request in a manifest file, add a line that looks something like this: category wakeup-request nscomponent @mozilla.org/myservice;1,nsimy
interface,getservice,mymessage1,mymessage2[,..] the category entry value consists of a comma separate string that contains: the contract id for your component (e.g.
... the string name of
interface to instantiate the component as (e.g.
...And 2 more matches
nsINavHistoryObserver
toolkit/components/places/nsinavhistoryservice.idlscriptable this
interface is similar to the nsirdfobserver class, but is used to observe interactions on the global history.
...once this has been called, you can perform processing, user
interface updates, and so forth.
... atransitiontype the type of the item that is about to be removed; this is one of the nsinavbookmarksservice.constants defined in the nsinavbookmarksservice
interface.
...And 2 more matches
nsIPrivateBrowsingService
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface is deprecated since firefox 20, and will probably be completely removed in firefox 21.
... the nsiprivatebrowsingservice
interface provides access to information about the state of the private browsing feature offered in firefox 3.5 and later.
...extensions that record potentially private information should use this
interface to detect whether private browsing mode is enabled, and if it is, avoid saving that information.
...And 2 more matches
nsIPrompt
netwerk/base/public/nsiprompt.idlscriptable this is the prompt
interface which can be used without knowledge of a parent window.
... the parentage is hidden by the get
interface though which it is obtained.
... inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) note: this
interface is identical to nsipromptservice but without the parent nsidomwindow parameter.
...And 2 more matches
nsIScriptableIO
newuri() creates a uri object that implements the nsiuri
interface.
...this should be one of the following types: nsifile: an object returned by getfile() or getfilewithpath(), or any object implementing the nsifile
interface.
...the returned stream implements the nsimultiplexinputstream
interface.
...And 2 more matches
nsISupportsPrimitive
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface serves as a base
interface for all of the nsisupports* family of
interfaces.
... type_
interface_pointer 17 corresponding to nsisupports
interfacepointer.
... remarks this
interface was frozen for gecko 1.2.
...And 2 more matches
nsITaskbarTabPreview
widget/public/nsitaskbartabpreview.idlscriptable this
interface is used on microsoft windows to control tab preview specific behavior.
... you can't directly instantiate this
interface; instead, call the nsiwintaskbar.createtaskbartabpreview().
... method overview void ensureregistration(); violates the xpcom
interface guidelines nativewindow gethwnd(); violates the xpcom
interface guidelines void move(in nsitaskbartabpreview anext); attributes attribute type description icon imgicontainer the icon displayed next to the title in the preview.
...And 2 more matches
nsITaskbarWindowPreview
widget/public/nsitaskbarwindowpreview.idlscriptable this
interface is used on microsoft windows to represent the preview for a window in the taskbar.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsitaskbarpreview last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can't directly instantiate this
interface; instead, call nsiwintaskbar.gettaskbarwindowpreview() to get the taskbar preview for a specific window.
...this
interface's primary purpose is to let gecko applications take control over parts of the preview; however, certain parts of the preview are not controlled using this
interface.
...And 2 more matches
Using the Gecko SDK
the frozen gecko api consists of a set of component
interfaces (c++ vtables) and <tt>extern "c"</tt> symbols exported from the xpcom library and the nspr libraries.
... the abi of the component
interfaces depends on the c++ abi of the host compiler (i.e., the vtable format and calling conventions of the virtual methods may vary from compiler to compiler).
...(ports of this guide are welcome.) a "frozen"
interface or function is guaranteed to be supported by future versions of same major version of the platform.
...And 2 more matches
Address book sync client design
pizzarro <rhp@netscape.com> contents overview client side sync logic public
interfaces overview there is an component available in the mozilla tree for performing synchronization operations against a server based address book.
... // public
interfaces there is a very simple
interface to the address book sync component.
... this
interface is defined in mozilla/mailnews/addrbook/public/nsiabsyncdriver.idl #include "nsrootidl.idl" #include "nsiabsynclistener.idl" [scriptable, uuid(91fdfee1-efbc-11d3-8f97-000073757374)]
interface nsiabsyncdriver : nsiabsynclistener { void kickit(); }; as you can see, this is a very simple
interface which allows for the starting of the address book sync operation.
...And 2 more matches
Using tab-modal prompts
that is, when an alert occurred, it blocked the user
interface on all tabs in the window until the user dismissed the prompt.
...you can force a prompt to be tab-modal using code like this: var thewindow = gbrowser.contentwindow; let prompt = components.classes["@mozilla.org/prompter;1"] .getservice(components.
interfaces.nsipromptfactory) .getprompt(thewindow, components.
interfaces.nsiprompt); let bag = prompt.query
interface(components.
interfaces.nsiwritablepropertybag2); bag.setpropertyasbool("allowtabmodal", true); the var "thewindow" is a reference to the dom window.
...for example: var factory = components.classes["@mozilla.org/prompter;1"] .getservice(components.
interfaces.nsipromptfactory); var prompt = factory.getprompt(gbrowser.contentwindow, components.
interfaces.nsiprompt); var bag = prompt.query
interface(components.
interfaces.nsiwritablepropertybag2); bag.setpropertyasbool("allowtabmodal", true); var promptargs = ["devmo alert", "omg!
...And 2 more matches
AudioWorkletProcessor - Web APIs
the audioworkletprocessor
interface of the web audio api represents an audio processing code behind a custom audioworkletnode.
... methods the audioworkletprocessor
interface does not define any methods of its own.
... events the audioworkletprocessor
interface doesn't respond to any events.
...And 2 more matches
CDATASection - Web APIs
the cdatasection
interface represents a cdata section that can be used within xml to include extended portions of unescaped text.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stro...
...api/cdatasection" target="_top"><rect x="391" y="65" width="120" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="451" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">cdatasection</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no specific properties and implements those of its parent text.
...And 2 more matches
CSSNamespaceRule - Web APIs
the cssnamespacerule
interface describes an object representing a single css @namespace at-rule.
... it implements the cssrule
interface, with a type value of 10 (cssrule.namespace_rule).
...
interface cssnamespacerule : cssrule { readonly attribute domstring namespaceuri; readonly attribute domstring?
...And 2 more matches
ClipboardItem - Web APIs
the clipboarditem
interface of the clipboard api represents a single item format, used when reading or writing data via the clipboard api.
... the benefit of having the clipboarditem
interface to represent data, is that it enables developers to cope with the varying scope of file types and data easily.
... note: to work with text see the clipboard.readtext() and clipboard.writetext() methods of the clipboard
interface.
...And 2 more matches
ExtendableEvent - Web APIs
the extendableevent
interface extends the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle.
... note: the behaviour described in the above paragraph was fixed in firefox 43 (see bug 1180274.) this
interface inherits from the event
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/extendableevent" target="_t...
...And 2 more matches
Fetch API - Web APIs
the fetch api provides an
interface for fetching resources (including across the network).
...it is implemented in multiple
interfaces, specifically window and workerglobalscope.
... aborting a fetch browsers have started to add experimental support for the abortcontroller and abortsignal
interfaces (aka the abort api), which allow operations like fetch and xhr to be aborted if they have not already completed.
...And 2 more matches
GlobalEventHandlers - Web APIs
the globaleventhandlers mixin describes the event handlers common to several
interfaces like htmlelement, document, or window.
... each of these
interfaces can, of course, add more event handlers in addition to the ones listed below.
... note: globaleventhandlers is a mixin and not an
interface; you can't actually create an object of type globaleventhandlers.
...And 2 more matches
HTMLInputElement - Web APIs
the htmlinputelement
interface provides special properties and methods for manipulating the options, layout, and presentation of <input> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
... webkitdirectory boolean: returns the webkitdirectory attribute; if true, the file system picker
interface only accepts directories instead of files.
...And 2 more matches
Recommended Drag Types - Web APIs
or receiving dropped files: <listbox ondragenter="return checkdrag(event)" ondragover="return checkdrag(event)" ondrop="dodrop(event)"/> <script> function checkdrag(event) { return event.datatransfer.types.contains("application/x-moz-file"); } function dodrop(event) { var file = event.datatransfer.mozgetdataat("application/x-moz-file", 0); if (file instanceof components.
interfaces.nsifile) { event.currenttarget.appenditem(file.leafname); } } </script> in this example, the event returns false only if the data transfer contains the application/x-moz-file type.
...the data should be an object which implements the nsiinputstream
interface.
...eration event currentevent.datatransfer.setdata("text/x-moz-url", url); currentevent.datatransfer.setdata("application/x-moz-file-promise-url", url); currentevent.datatransfer.setdata("application/x-moz-file-promise-dest-filename", leafname); currentevent.datatransfer.mozsetdataat('application/x-moz-file-promise', new dataprovider(success,error), 0, components.
interfaces.nsisupports); function dataprovider(){} dataprovider.prototype = { query
interface : function(iid) { if (iid.equals(components.
interfaces.nsiflavordataprovider) || iid.equals(components.
interfaces.nsisupports)) return this; throw components.results.ns_no
interface; }, getflavordata : function(atransferable, aflavor, adata, adatalen) { if (aflavor == 'app...
...And 2 more matches
KeyboardEvent - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dd...
... constants the keyboardevent
interface defines the following constants.
... properties this
interface also inherits properties of its parents, uievent and event.
...And 2 more matches
Keyboard API - Web APIs
keyboard mapping provides an
interface for retrieving the string generated by particular physical key on a keyboard to correctly identify that key to a user.
... the keyboard map api provides a way to retrieve the string generated by a particular key press, through the keyboard
interface and the keyboardlayoutmap
interface.
... the keyboard
interface is accessed through navigator.keyboard.
...And 2 more matches
LocalMediaStream - Web APIs
the localmediastream
interface was part of the media capture and streams api, representing a stream of data being generated locally (such as by getusermedia().
... however, getusermedia() now returns a mediastream instead, and this
interface has been removed from the specification.
... warning: this
interface is no longer available in any mainstream browser.
...And 2 more matches
MessageEvent - Web APIs
the messageevent
interface represents a message received by a target object.
... web sockets (see the onmessage property of the websocket
interface).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 13.333333333333334%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 80" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dd...
...And 2 more matches
MouseEvent - Web APIs
the mouseevent
interface represents events that occur due to the user interacting with a pointing device (such as a mouse).
... common events using this
interface include click, dblclick, mouseup, mousedown.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12...
...And 2 more matches
NetworkInformation - Web APIs
the networkinformation
interface provides information about the connection a device is using to communicate with the network and provides a means for scripts to be notified if the connection type changes.
... the networkinformation
interfaces cannot be instantiated.
... it is instead accessed through the connection property of the navigator
interface.
...And 2 more matches
NonDocumentTypeChildNode - Web APIs
the nondocumenttypechildnode
interface contains methods that are particular to node objects that can have a parent, but not suitable for documenttype.
... nondocumenttypechildnode is a raw
interface and no object of this type can be created; it is implemented by element, and characterdata objects.
... living standard splitted the elementtraversal
interface in parentnode, childnode, and nondocumenttypechildnode.
...And 2 more matches
ParentNode.childElementCount - Web APIs
this property was initially defined in the elementtraversal pure
interface.
... as this
interface contained two distinct set of properties, one aimed at node that have children, one at those that are children, they have been moved into two separate pure
interfaces, parentnode and childnode.
... living standard split the elementtraversal
interface in childnode and parentnode.
...And 2 more matches
ParentNode.firstElementChild - Web APIs
this property was initially defined in the elementtraversal pure
interface.
... as this
interface contained two distinct set of properties, one aimed at node that have children, one at those that are children, they have been moved into two separate pure
interfaces, parentnode and childnode.
... living standard split the elementtraversal
interface in childnode and parentnode.
...And 2 more matches
PerformanceNavigation - Web APIs
this
interface is deprecated in the navigation timing level 2 specification.
... please use the performancenavigationtiming
interface instead.
... the legacy performancenavigation
interface represents information about how the navigation to the current document was done.
...And 2 more matches
PerformanceTiming - Web APIs
this
interface is deprecated in the navigation timing level 2 specification.
... please use the performancenavigationtiming
interface instead.
... the performancetiming
interface is a legacy
interface kept for backwards compatibility and contains properties that offer performance timing information for various events which occur during the loading and use of the current page.
...And 2 more matches
RTCPeerConnectionIceErrorEvent.address - Web APIs
this address identifies the network
interface on the local device which is being used to attempt to establish the connection to the remote peer.
... this can be useful on multi-homed systems—devices with more than one network connection—to determine which network
interface is being used.
... for example, on a mobile phone, there are typically at least two network
interfaces available: the cellular connection and a wifi connection.
...And 2 more matches
SVGAnimationElement - Web APIs
the svganimationelement
interface is the base
interface for all of the animation element
interfaces: svganimateelement, svgsetelement, svganimatecolorelement, svganimatemotionelement and svganimatetransformelement.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...onelement" target="_top"><rect x="291" y="65" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="386" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svganimationelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement.
...And 2 more matches
SVGComponentTransferFunctionElement - Web APIs
the svgcomponenttransferfunctionelement
interface defines a base
interface used by the component transfer function
interfaces.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement.
...And 2 more matches
SVGFEBlendElement - Web APIs
the svgfeblendelement
interface corresponds to the <feblend> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGFEColorMatrixElement - Web APIs
the svgfecolormatrixelement
interface corresponds to the <fecolormatrix> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement , and also implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGFECompositeElement - Web APIs
the svgfecompositeelement
interface corresponds to the <fecomposite> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGFEConvolveMatrixElement - Web APIs
the svgfeconvolvematrixelement
interface corresponds to the <feconvolvematrix> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGFEGaussianBlurElement - Web APIs
the svgfegaussianblurelement
interface corresponds to the <fegaussianblur> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGFEMorphologyElement - Web APIs
the svgfemorphologyelement
interface corresponds to the <femorphology> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
...And 2 more matches
SVGGElement - Web APIs
the svggelement
interface corresponds to the <g> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...b/api/svggelement" target="_top"><rect x="151" y="65" width="110" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="206" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svggelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svggraphicselement.
...And 2 more matches
SVGGlyphElement - Web APIs
the svgglyphelement
interface corresponds to the <glyph> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgglyphelement" target="_top"><rect x="1" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="76" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgglyphelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;}...
... warning: this
interface was removed in the svg 2 specification.
...And 2 more matches
SVGGradientElement - Web APIs
the svggradient
interface is a base
interface used by svglineargradientelement and svgradialgradientelement.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... properties this
interface also inherits properties from its parent, svgelement, and implements those of svgurireference.
...And 2 more matches
SVGGraphicsElement - Web APIs
the svggraphicselement
interface represents svg elements whose primary purpose is to directly render graphics into a group.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...graphicselement" target="_top"><rect x="301" y="65" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="391" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svggraphicselement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} note: this
interface was introduced in svg 2 and replaces the svglocatable and svgtransformable
interfaces from svg 1.1.
...And 2 more matches
SVGImageElement - Web APIs
the svgimageelement
interface corresponds to the <image> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gimageelement" target="_top"><rect x="111" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="186" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgimageelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggraphicselement.
...And 2 more matches
SVGLineElement - Web APIs
the svglineelement
interface provides access to the properties of <line> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svglineelement" target="_top"><rect x="-99" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-29" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svglineelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggeometryelement.
...And 2 more matches
SVGMPathElement - Web APIs
the svgmpathelement
interface corresponds to the <mpath> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gmpathelement" target="_top"><rect x="331" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgmpathelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement.
...And 2 more matches
SVGMarkerElement - Web APIs
svg path segment
interface the svgmarkerelement
interface corresponds to the marker element.
...
interface overview also implement none methods void setorienttoangle(in svgangle angle) void setorienttoauto() properties svganimatedlength refx svganimatedlength refy svganimatedenumeration markerunits svganimatedlength markerwidth svganimatedlength markerheight svganimatedenumeration orienttype svganimatedangle orientangle constants svg_marker_orient_unknown = 0 svg_marker_orient_auto = 1 svg_marker_orient_ang...
... properties this
interface also inherits properties from its parent
interface, svgelement, and implements properties from svgexternalresourcesrequired, svganimatedpreserveaspectratio, and svgstylable.
...And 2 more matches
SVGMaskElement - Web APIs
the svgmaskelement
interface provides access to the properties of <mask> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svgmaskelement" target="_top"><rect x="341" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="411" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgmaskelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement.
...And 2 more matches
SVGPatternElement - Web APIs
the svgpatternelement
interface corresponds to the <pattern> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ternelement" target="_top"><rect x="311" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgpatternelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement and implements the ones from svgfittoviewbox and svgurireference.
...And 2 more matches
SVGPreserveAspectRatio - Web APIs
svg preserveaspectratio
interface the svgpreserveaspectratio
interface corresponds to the preserveaspectratio attribute, which is available for some of svg's elements.
...
interface overview also implement none methods none properties unsigned short align unsigned short meetorslice constants svg_preserveaspectratio_unknown = 0 svg_preserveaspectratio_none = 1 svg_preserveaspectratio_xminymin = 2 svg_preserveaspectratio_xmidymin = 3 svg_preserveaspectratio_xmaxymin = 4 svg_preserveaspectratio_xminymid = 5 svg_preserveaspectratio_xmidymid = 6 svg_preserveaspectratio_xmaxymid = 7 svg_preserveaspectratio_xminymax = 8 svg_preserveaspectratio_xmidymax = 9 svg_preserveaspectratio_xmaxyma...
... properties name type description align unsigned short the type of the alignment value as specified by one of the svg_preserveaspectratio_* constants defined on this
interface.
...And 2 more matches
SVGSwitchElement - Web APIs
the svgswitchelement
interface corresponds to the <switch> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...witchelement" target="_top"><rect x="101" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="181" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgswitchelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svggraphicselement.
...And 2 more matches
SVGSymbolElement - Web APIs
the svgsymbolelement
interface corresponds to the <symbol> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ymbolelement" target="_top"><rect x="321" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="401" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgsymbolelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svggraphicselement, and implements properties from svgfittoviewbox.
...And 2 more matches
SVGTextElement - Web APIs
the svgtextelement
interface corresponds to the <text> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gtextelement" target="_top"><rect x="-419" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-349" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgtextelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgtextpositioningelement.
...And 2 more matches
Touch events - Web APIs
to provide quality support for touch-based user
interfaces, touch events offer the ability to interpret finger (or stylus) activity on touch screens or trackpads.
... the touch events
interfaces are relatively low-level apis that can be used to support application-specific multi-touch interactions such as a two-finger gesture.
...the touchevent
interface encapsulates all of the touchpoints that are currently active.
...And 2 more matches
URLUtilsReadOnly - Web APIs
the obsolete urlutilsreadonly
interface previously defined utility methods for working with urls.
... these were then inherited by other
interfaces, such as workerlocation.
... urlutilsreadonly has been removed from the specification, and the properties it defined are now directly part of the affected
interfaces.
...And 2 more matches
Using the User Timing API - Web APIs
the user timing
interface allows the developer to create application specific timestamps that are part of the browser's performance timeline.
... this document shows how to create mark and measure performance entry types and how to use user timing methods (which are extensions of the performance
interface) to retrieve and remove entries from the browser's performance timeline.
...created mark = " + marks[i], 0); } retrieving performance marks the performance
interface has three methods to retrieve marks.
...And 2 more matches
User Timing API - Web APIs
the user timing
interface allows the developer to create application specific timestamps that are part of the browser's performance timeline.
... this document provides an overview of the mark and measure performance event types including the four user timing methods that extend the performance
interface.
... retrieving performance marks the performance
interface has three methods that can be used to retrieve a mark: performance.getentries() returns all performance entries in the performance timeline.
...And 2 more matches
WebGLContextEvent - Web APIs
the webcontextevent
interface is part of the webgl api and is an
interface for an event that is generated in response to a status change to the webgl rendering context.
... inheritance this
interface inherits properties and methods from its parent
interface, event.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/webglcontextevent" target...
...And 2 more matches
Web Animations API - Web APIs
web animations
interfaces animation provides playback controls and a timeline for an animation node or source.
...this
interface exists to define timeline features (inherited by documenttimeline and future timeline objects) and is not itself accessed by developers.
... extensions to other
interfaces the web animations api adds some new features to document and element.
...And 2 more matches
Functions and classes available to Web Workers - Web APIs
38 (38) (yes) (yes) (yes) crypto the crypto
interface represents basic cryptography features available in the current context.
... customevent the customevent
interface represents events initialized by an application for any purpose.
... performance the performance
interface represents timing-related performance information for the given page.
...And 2 more matches
XRReferenceSpace - Web APIs
the webxr device api's xrreferencespace
interface describes the coordinate system for a specific tracked entity or object within the virtual world using a specified tracking behavior.
... methods in addition to the methods inherited from its parent
interface, xrspace (there are none at this time), xrreferencespace inherits methods from eventtarget.
...the "
interface" column in the table below indicates which of the two types is returned for each reference space type constant..
...And 2 more matches
Web applications and ARIA FAQ - Accessibility
aria provides additional semantics to describe the role, state, and functionality of many familiar user
interface controls, such as menus, sliders, trees, and dialogs.
... javascript toolkits aria roles, states, and properties have been added to a number of popular javascript user
interface toolkits, including: dojo/dijit jquery ui fluid infusion google closure google web toolkit bbc glow yahoo!
... user
interface library (yui) for more information about javascript toolkit accessibility: steve faulkner's wai-aria implementation in javascript ui libraries can you show me an example of aria in action?
...And 2 more matches
Operable - Accessibility
operable states that user
interface components and navigation must be operable.
... note: to read the w3c definitions for operable and its guidelines and success criteria, see principle 2: operable — user
interface components and navigation must be operable.
... see ui controls and building keyboard accessibility back in 2.1.4 character key shortcuts (a) added in 2.1 if a single character key shortcut exists, then at least one of the following is true: single character key shortcuts can be turned off, remapped or are only active when the relevant user
interface component is in focus.
...And 2 more matches
font-family - CSS: Cascading Style Sheets
system-ui glyphs are taken from the default user
interface font on a given platform.
... ui-serif the default user
interface serif font.
... ui-sans-serif the default user
interface sans-serif font.
...And 2 more matches
<input type="date"> - HTML: Hypertext Markup Language
<input> elements of type="date" create input fields that let the user enter a date, either with a textbox that validates the input or a special date picker
interface.
... among browsers with custom
interfaces for selecting dates are chrome and opera, whose data control looks like so: the edge date control looks like: and the firefox date control looks like this: value a domstring representing a date in yyyy-mm-dd format, or empty events change and input supported common attributes autocomplete, list, readonly, and step idl attributes list, valu...
... using date inputs date inputs sound convenient — they provide an easy
interface for choosing dates, and they normalize the data format sent to the server regardless of the user's locale.
...And 2 more matches
Index - HTTP
browsers set adequate values for this header according to their user
interface language and even if a user can change it, this happens rarely (and is frowned upon as it leads to fingerprinting).
... 32 csp: connect-src csp, directive, http, reference, security the http content-security-policy (csp) connect-src directive restricts the urls which can be loaded using script
interfaces.
... 64 feature-policy: autoplay directive, feature policy, feature-policy, http, reference, autoplay the http feature-policy header autoplay directive controls whether the current document is allowed to autoplay media requested through the htmlmediaelement
interface.
...And 2 more matches
Optional chaining (?.) - JavaScript
using optional chaining with function calls causes the expression to automatically return undefined instead of throwing an exception if the method isn't found: let result = some
interface.custommethod?.(); note: if there is a property with such a name and which is not a function, using ?.
... will still raise a typeerror exception (some
interface.custommethod is not a function).
... note: if some
interface itself is null or undefined, a typeerror exception will still be raised (some
interface is null).
...And 2 more matches
Web Performance
using performance apis performance api this guide describes how to use the performance
interfaces that are defined in the high-resolution time standard.
... resource timing api resource loading and timing the loading of those resources, including managing the resource buffer and coping with cors the performance timeline the performance timeline standard defines extensions to the performance
interface to support client-side latency measurements within applications.
... together, these
interfaces can be used to help identify an application's performance bottlenecks.
...And 2 more matches
Media - Progressive web apps (PWAs)
user
interfaces css has some special properties for devices that support a user
interface, like computer displays.
... these properties dynamically change the appearance of content as the user works with the
interface.
... some other features of user
interfaces are implemented using attributes, in the normal way.
...And 2 more matches
event/target - Archive of obsolete content
this module provides an exemplar eventtarget object, that implements an
interface for adding and removing event listeners of a specific type.
... adding listeners eventtarget
interface defines on method, that can be used to register event listeners on them for the given event type: target.on('message', function onmessage(message) { // note: `this` pseudo variable is an event `target` unless // intentionally overridden via `.bind()`.
...eventtarget
interface defines convenience method for adding one shot event listeners via method once.
...}); removing listeners eventtarget
interface defines api for unregistering event listeners, via removelistener method: target.removelistener('message', onmessage); emitting events eventtarget
interface intentionally does not define an api for emitting events.
JavaScript Debugger Service - Archive of obsolete content
var jsd = components.classes["@mozilla.org/js/jsd/debugger-service;1"] .getservice(components.
interfaces.jsdidebuggerservice); jsd.on(); // enables the service till firefox 3.6, for 4.x use asyncon if (jsd.ison) jsd.off(); // disables the service hooks jsd operates using the events hook mechanism.
... jsd.errorhook = { onerror: function(message, filename, lineno, colno, flags, errnum, exc) { dump(message + "@" + filename + "@" + lineno + "@" + colno + "@" + errnum + "\n"); // check message type var jsdierrorhook = components.
interfaces.jsdierrorhook; var messagetype; if (flags & jsdierrorhook.report_error) messagetype = "error"; if (flags & jsdierrorhook.report_warning) messagetype = "warning"; if (flags & jsdierrorhook.report_exception) messagetype = "uncaught-exception"; if (flags & jsdierrorhook.report_strict) messagetype += "-strict"; dump(messagetype + "\n"); return false; // trigger debughoo...
...e that debughook does not _always_ trigger when jsd.errorhook[onerror] returns false // it is not well-known why debughook sometimes fails to trigger jsd.debughook = { onexecute: function(frame, type, rv) { stacktrace = ""; for (var f = frame; f; f = f.callingframe) { stacktrace += f.script.filename + "@" + f.line + "@" + f.functionname + "\n"; } dump(stacktrace); return components.
interfaces.jsdiexecutionhook.return_continue; } }; filters jsd also allows the use of filters to track which scripts should trigger the hooks.
... function createfilter(pattern, pass) { var jsdifilter = components.
interfaces.jsdifilter; var filter = { globalobject: null, flags: pass ?
Windows - Archive of obsolete content
example window.open(); //this open a pop-up window that could be "blocked" client-side //the following code generate an error as describe in the following warning box var wm = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator); var newwindow = wm.getmostrecentwindow("navigator:browser"); var b = newwindow.gbrowser; the code generate a typeerror from firefox console.
... var wenum = components.classes["@mozilla.org/embedcomp/window-watcher;1"] .getservice(components.
interfaces.nsiwindowwatcher) .getwindowenumerator(); var index = 1; var windowname = "yourwindowname"; while (wenum.hasmoreelements()) { var win = wenum.getnext(); if (win.name == windowname) { win.focus(); return; } index++ } window.open("chrome://to/your/window.xul", windowname, "features"); uniquely identifying dom windows requires gecko 2.0(firefox 4 / thunder...
...this can be used in cases in which you need to uniquely identify a dom window during the duration of the application's lifespan: var util = win.query
interface(components.
interfaces.nsi
interfacerequestor).get
interface(components.
interfaces.nsidomwindowutils); var windowid = util.outerwindowid; after running that code, windowid contains the outer window's unique id.
... similarly, you can get the current inner window id using the nsidomwindowutils attribute currentinnerwindowid: var util = win.query
interface(components.
interfaces.nsi
interfacerequestor).get
interface(components.
interfaces.nsidomwindowutils); var windowid = util.currentinnerwindowid; programatically modifying html when attempting to modify html elements, it is important to specify the namespace.
Enhanced Extension Installation - Archive of obsolete content
items that are installed must be visible in the extension manager user
interface, even if the extension type is just an integration hook that has no meaningful ui presence.
... to implement this, we create an
interface that the extension manager can ask for information about the location, such as what its name is, where its located on disk (if anywhere, in the case of registry based locations which have no root directory), for a list of item directories, for a directory of a particular item, for a subdirectory or file within an item's directory, etc.
...types are defined in nsiupdateservice.idl on the nsiupdateitem
interface.
... the nsiextensionmanager
interface now has a single, unified set of installation/enabling
interfaces: void installitemfromfile(in nsifile file, in string locationkey); void uninstallitem(in string id); void enableitem(in string id); void disableitem(in string id); uninstall logs are no longer written, since the item folder is removed completely on uninstall.
Setting up an extension development environment - Archive of obsolete content
you can also use the extension developer's extension, which provides a menu
interface for firefox settings.
... accessing thunderbird development preferences to change preference settings in thunderbird, open the "preferences" (unix) or "options" (windows)
interface.
...for example, rather than having content myextension jar:chrome/myextension.jar!/content/ use content myextension chrome/content/ preventing the first launch extension selector requires gecko 8.0(firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) starting in firefox 8, on the first launch of a new version of firefox, it presents user
interface letting users select which third party add-ons to keep.
... however, this
interface can be disruptive when debugging add-ons.
Promises - Archive of obsolete content
alent as such: request("login", { username: user, password: password }) .then(response => { if (response.messages) return publish({ username: user, messages: response.messages }); }) .then(null, (e) => { self.reporterror("publication failed", e); }); file io file io in add-ons should be done via the os.file api, which provides a simple, but powerful,
interface for reading, writing, and manipulating both text and binary files.
... this
interface replaces the previous, complicated xpcom nsifile and streams apis, and their related javascript helper modules.
... these older
interfaces should be avoided, even in their asynchronous forms, due to their performance penalties and needless complexity.
... for use cases which are not easily served by other options, or for legacy code which cannot easily be upgraded to non-relational models, the sqlite.jsm module provides a clean, promise-based
interface to sqlite databases.
Using the Stylesheet Service - Archive of obsolete content
var sss = components.classes["@mozilla.org/content/style-sheet-service;1"] .getservice(components.
interfaces.nsistylesheetservice); var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var uri = ios.newuri("chrome://myext/content/myext.css", null, null); sss.loadandregistersheet(uri, sss.user_sheet); note: loadandregistersheet will load the stylesheet synchronously, so you should only call this method using local uris.
... var sss = components.classes["@mozilla.org/content/style-sheet-service;1"] .getservice(components.
interfaces.nsistylesheetservice); var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var uri = ios.newuri("chrome://myext/content/myext.css", null, null); if(!sss.sheetregistered(uri, sss.user_sheet)) sss.loadandregistersheet(uri, sss.user_sheet); removing a previously registered stylesheet if you wish to remove a stylesheet that you pre...
... var sss = components.classes["@mozilla.org/content/style-sheet-service;1"] .getservice(components.
interfaces.nsistylesheetservice); var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var u = ios.newuri("chrome://myext/content/myext.css", null, null); if(sss.sheetregistered(u, sss.user_sheet)) sss.unregistersheet(u, sss.user_sheet); registering stylesheets on startup via the category manager stylesheets may also be registered on startup via the agent-style-sheets and user-style-sheets categories.
... backwards compatibility you can check for the availability and the functionality of the stylesheet service: if("@mozilla.org/content/style-sheet-service;1" in components.classes) { if(components.id('{41d979dc-ea03-4235-86ff-1e3c090c5630}') .equals(components.
interfaces.nsistylesheetservice)) { // stylesheet service is available, but changes won't apply until reload // (firefox 1.5 and 2 behaviour) } else { // stylesheet service is available and changes will apply immediately // (firefox 3 behaviour) } } else { // stylesheet service is not available (pre-firefox 1.5 behaviour) } ...
Search Extension Tutorial (Draft) - Archive of obsolete content
the following example bootstrap.js file illustrates the method: const { classes: cc,
interfaces: ci, utils: cu, results: cr } = components; // import the services module.
...an example bootstrap.js file illustrating the simple method follows: const { classes: cc,
interfaces: ci, utils: cu, results: cr } = components; // import the services module.
..."{searchterms}"/> <param name="source" value="search-box"/> </url> <url type="application/x-moz-keywordsearch" method="get" template="https://www.example.com/search"> <param name="q" value="{searchterms}"/> <param name="source" value="keyword"/> </url> <searchform>https://www.example.com/search</searchform> </searchplugin> bootstrap.js const { classes: cc,
interfaces: ci, utils: cu, results: cr } = components; // import the services module.
... catch (e) {} } // observer called after our engine has been successfully added function searchobserver(engine, topic, data) { if (data != "engine-added") return; engine.query
interface(ci.nsisearchengine); if (engine.name == engine_details.name) { // remove our observer now that we're done with it.
Download Manager improvements in Firefox 3 - Archive of obsolete content
in addition, you can augment or replace the download manager's user
interface by implementing the new nsidownloadmanagerui
interface.
... download manager
interfaces nsidownloadmanager gives applications and extensions access to the download manager, allowing them to add and remove files to the download list, retrieve information about past and present downloads, and request notifications as to the progress of downloads.
... nsidownloadprogresslistener applications and extensions implement this
interface to be made aware of changes in the status of downloads.
... nsidownloadmanagerui implement this
interface to replace or augment the download manager user
interface.
Drag and Drop JavaScript Wrapper - Archive of obsolete content
the javascript drag and drop wrapper the javascript wrapper to drag and drop simplifies the process by handling all of the xpcom
interfaces for you.
...this drag and drop
interface is stored in the global package, in the file chrome://global/content/nsdraganddrop.js.
...they handle the event, handle the xpcom
interfaces and pass a simpler data structure to functions of the observer object.
...in some cases, you must provide the xpcom
interface as well.
Exception logging in JavaScript - Archive of obsolete content
exception reporting in firefox 3 firefox 3 improves reporting of unhandled exceptions by establishing a set of rules that determines whether or not an exception is worth reporting: any methods on
interfaces annotated with the [function] attribute in idl (see, for example, nsidomeventlistener) that throw exceptions always report those exceptions into the error console.
... the ns_no
interface error is never reported when returned by a javascript object's query
interface() method on the nsisupports
interface.
... the ns_no
interface error is never reported when returned by a javascript object's get
interface() method on the nsi
interfacerequestor
interface.
...note that the following will have no effect on the ns_no
interface exceptions outlined in rules 3 and 4 above - those exceptions will not be reported in any case.
Document Loading - From Load Start to Finding a Handler - Archive of obsolete content
nsdocshell implements too many
interfaces to count; the ones that matter to us most are nsiwebnavigation and nsilinkhandler.
...these can come in via nsiwebnavigation (a scriptable embedding
interface) or nsilinkhandler (an internal
interface used for link clicks).
... both
interfaces are implemented by nswebshell/nsdocshell.
...it calls get
interface on the window context to get and save that context's nsiuricontentlistener.
Style System Overview - Archive of obsolete content
style system style sheets & rules ↓ rule tree ↓ style context
interface style sheets & rules nsistyleruleprocessor and nsistylesheet describe in c++ what a css stylesheet can do nsistylerule describes in c++ what a css style rule can do main implementations are for css, but we have other implementations in c++ that: do what css can't do do things faster than css would css style sheets at basic level, sheet is collection of rules other special things: @import, @media, @namespace, etc.
... the nsistyleruleprocessor
interface implemented by cssruleprocessor, htmlstylesheetimpl, and htmlcssstylesheetimpl has a rulesmatching method, which is required to call nsrulewalker::forward on any rules that match the element.
... style contexts each style context (nsstylecontext), which is the
interface through which layout accesses the style data for a given element, points to one rule node.
...(but beware didsetstylecontext) the style system style sheets & rules ↓ rule tree ↓ style context
interface original document information author(s): david baron last updated date: june 6, 2003 copyright information: portions of this content are © 1998–2007 by individual mozilla.org contributors; content available under a creative commons license | details.
Settings - Archive of obsolete content
jetpack will automatically generate a user
interface based on the specification.
...jetpack will automatically generate a user
interface from this specification that users of your jetpack may use to customize the settings.
... the user can open this
interface from the "settings" button next to your jetpack on the "installed features" tab of the about:jetpack page.
...jetpack.future.import("storage.settings"); this definition will result in a user
interface with an input field for each setting defined above.
Settings - Archive of obsolete content
jetpack will automatically generate a user
interface based on the specification.
...jetpack will automatically generate a user
interface from this specification that users of your jetpack may use to customize the settings.
... the user can open this
interface from the "settings" button next to your jetpack on the "installed features" tab of the about:jetpack page.
...jetpack.future.import("storage.settings"); this definition will result in a user
interface with an input field for each setting defined above.
Mozilla Application Framework - Archive of obsolete content
necko a wicked-fast, extensible networking library with built-in support for many common protocols and a well-defined plug-in
interface for custom protocol handling so you can add the protocols you need.
... dom inspector a tool for inspecting and editing the structure and widgets of your user
interface while your application is running.
... xulmaker a gui builder currently under development that lets you drag-and-drop widgets onto a grid to build your user
interface.
... lxr a web
interface to the mozilla codebase that shows you every file in the repository as well as a line-by-line breakdown of who changed which line when in each file bonsai a web
interface to the checkin log that you can query for checkins between certain dates, of certain files, or by certain developers.
RDF Datasource How-To - Archive of obsolete content
mapping your data to nodes and arcs [write me!] implementing the nsirdfdatasource
interface your first chore will be to implement the nsirdfdatasource
interface.
...this is an extreme case of delegation, where you use xpcom aggregation to implement the nsirdfdatasource
interface.
...if you take this approach, you won't be able to selectively implement methods of the nsirdfdatasource
interface; instead, all of the methods will be "forwarded" to the in-memory datasource.
... implement the
interface yourself.
Venkman Introduction - Archive of obsolete content
features such as breakpoint management, call stack inspection, and variable/object inspection are available from the user
interface and from console commands, letting you work in the way you are most accustomed to.
... the following section describes these views and their use within the
interface as a whole.
... getting acquainted with venkman's user
interface toolbar the toolbar is located at the top of the debugger.
... loading scripts into the debugger whether or not you start venkman first or the browser component, when the mozilla suite starts up, the javascript engine begins to keep track of and compile all the scripts that are loaded in web pages and in the various mozilla user
interfaces themselves.
How to implement a custom XUL query processor component - Archive of obsolete content
custom query processors are xpcom components, must implement the nsixultemplatequeryprocessor
interface and follow some conventions for when registering the component.
... here is our sample javascript xpcom query processor: components.utils.import("resource://gre/modules/xpcomutils.jsm"); // basic wrapper for nsixultemplateresult function templateresult(adata) { this._data = adata; // just make a random number for the id this._id = math.random(100000).tostring(); } templateresult.prototype = { query
interface: xpcomutils.generateqi([components.
interfaces.nsixultemplateresult]), // private storage _data: null, // right now our results are flat lists, so no containing/recursion take place iscontainer: false, isempty: true, mayprocesschildren: false, resource: null, type: "simple-item", get id() { return this._id; }, // return the value of that bound variable such as ?name ...
... rulematched: function(aquery, arulenode) { }, // the output for a result has been removed and the result is no longer being used by the builder hasbeenremoved: function() { } }; // basic wrapper for nsisimpleenumerator function templateresultset(aarrayofdata) { this._index = 0; this._array = aarrayofdata; } templateresultset.prototype = { query
interface: xpcomutils.generateqi([components.
interfaces.nsisimpleenumerator]), hasmoreelements: function() { return this._index < this._array.length; }, getnext: function() { return new templateresult(this._array[this._index++]); } }; // the query processor class - implements nsixultemplatequeryprocessor function templatequeryprocessor() { // our basic list of data this._data = [ ...
... {name: "mark", age: 36, hair: "brown", eye: "brown"}, {name: "bill", age: 25, hair: "red", eye: "black"}, {name: "joe", age: 15, hair: "blond", eye: "blue"}, {name: "jimmy", age: 65, hair: "gray", eye: "dull"} ]; } templatequeryprocessor.prototype = { query
interface: xpcomutils.generateqi([components.
interfaces.nsixultemplatequeryprocessor]), classdescription: "sample xul template query processor", classid: components.id("{282cc4ea-a49c-44fc-81f4-1f03cbb7825f}"), contractid: "@mozilla.org/xul/xul-query-processor;1?name=simpledata", getdatasource: function(adatasources, arootnode, aistrusted, abuilder, ashoulddelaybuilding) { // todo: parse the adatasources variable // for now, ignore everything and let'...
Providing Command-Line Options - Archive of obsolete content
extensions and xul applications can modify the way command line parameters are handled by writing a component that implements the nsicommandlinehandler
interface and registering it in a category.
... you can learn more about how the command line is interpreted by looking at the documentation for the nsicommandline
interface.
...ing lines to your chrome.manifest file: component {2991c315-b871-42cd-b33f-bfee4fcbf682} components/commandline.js contract @mozilla.org/commandlinehandler/general-startup;1?type=myapp {2991c315-b871-42cd-b33f-bfee4fcbf682} category command-line-handler m-myapp @mozilla.org/commandlinehandler/general-startup;1?type=myapp the javascript code const cc = components.classes; const ci = components.
interfaces; components.utils.import("resource://gre/modules/xpcomutils.jsm"); components.utils.import("resource://gre/modules/services.jsm"); // changeme: to the chrome uri of your extension or application const chrome_uri = "chrome://myapp/content/"; /** * utility functions */ /** * opens a chrome window.
... entry: "m-myapp" }], query
interface: xpcomutils.generateqi([ ci.nsicommandlinehandler ]), /* nsicommandlinehandler */ handle : function clh_handle(cmdline) { try { // changeme: change "viewapp" to your command line flag that takes an argument var uristr = cmdline.handleflagwithparam("viewapp", false); if (uristr) { // convert uristr to an nsiuri var uri = cmdline.resolveuri(uristr)...
Template and Tree Listeners - Archive of obsolete content
these each implement a different xpcom
interface, as listed below: nsixulbuilderlistener - used to listen to template rebuilds.
...the tree builder implements the nsitreeview
interface, so handles the gathering of data and passing it on to the tree.
...the tree builder observer implements the nsixultreebuilderobserver
interface and may be attached to a tree builder using the builder's addobserver method.
...var treebuilderobserver = { candropbeforeafter : function(idx, orient) { return false; }, candropon : function(idx, orient) { return true; }, candrop : function(idx, orient) { return !orient; }, ondrop : function(idx, orient) { // do something here }, }; //tree.builderview.addobserver(treebuilderobserver); // ppchenhui@hotmail.com tree.builder.query
interface (components.
interfaces.nsixultreebuilder) .addobserver(treebuilderobserver); the candropbeforeafter method returns false since we do not want to allow before and after drops.
Textbox (XPFE autocomplete) - Archive of obsolete content
autocompletesearch new in thunderbird 2requires seamonkey 1.1 type: space-separated list of values a space-separated list of search component names, each of which implements the nsiautocompletesearch
interface.
...the argument should be an object which implements the nsiautocompletesession
interface.
...the argument should be an object which implements the nsiautocompletesession
interface.
... related
interfaces nsiaccessibleprovider, nsidomxulmenulistelement ...
Code Samples - Archive of obsolete content
const path = "c:\\windows\\charmap.exe" var file = components .classes["@mozilla.org/file/local;1"] .createinstance(components.
interfaces.nsilocalfile) file.initwithpath(path) file.launch() open a web page if your button is in firefox or seamonkey, use code like this to open a web page.
...change the first line to specify the page that you want to open: const url = "http://www.mozilla.org/" var uri = components .classes["@mozilla.org/network/simple-uri;1"] .getservice(components.
interfaces.nsiuri) uri.spec = url components .classes["@mozilla.org/uriloader/external-protocol-service;1"] .getservice(components.
interfaces.nsiexternalprotocolservice) .loadurl(uri) compose an e-mail to compose an e-mail, use the same code as in the section open a web page above.
...otherwise it opens the window: const name = "...internal name of the window..." const uri = "...chrome uri of the window..." var w = components .classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator) .getmostrecentwindow(name) if (w) w.focus() else components .classes["@mozilla.org/embedcomp/window-watcher;1"] .getservice(components.
interfaces.nsiwindowwatcher) .openwindow(null, uri, name, "chrome,resizable", null) change the first two lines to specify the window that you want to open.
...dow" const uri = "chrome://calendar/content/" * at the time of writing, sunbird's passwords window is broken close the current window to close the window containing the button, possibly leaving other windows open: close() exit the application to exit the application, first closing all its windows: components .classes['@mozilla.org/toolkit/app-startup;1'] .getservice(components.
interfaces.nsiappstartup) .quit(components.
interfaces.nsiappstartup.eattemptquit) ...
Complete - Archive of obsolete content
it provides a user
interface in two languages (english and french).
...in the custom toolbar button extension, the only things that might depend on the locale are the text strings displayed in the user
interface.
... the application's user
interface only switches language if you have the appropriate language pack installed.
... themes a theme changes the appearance of the user
interface, affecting fonts, colours, graphics, and sometimes layout.
Tree Widget Changes - Archive of obsolete content
this object implements the nsitreecolumn
interface and holds information about a single column in the tree.
...the columns are grouped into a list which implements the nsitreecolumns
interface.
... both the nsitreecolumn and nsitreecolumns
interfaces can be found at layout/xul/base/src/tree/public/nsitreecolumns.idl.
...you can get the columns object which implements the nsitreecolumns
interface for a tree using the tree's columns property.
Skinning XUL Files by Hand - Archive of obsolete content
the skin is just the style or appearance of an
interface, where the chrome is the style, content, and structure.
...xul represents, as one evangelist put it, the "democratization" of
interface design and ofapplications development, about which we will have more to say in a later article.
... in short, xul provides the tools for anybody to create
interfaces as complex and as attractive as any c++/mfc/visual ide/templates toolkit user's, and it does so in a way that makes these
interfaces available on any platform.
...not only is the production of such
interfaces democratized, in other words; the consumption and distribution of these
interfaces is equally democratic.
Styling a Tree - Archive of obsolete content
we can use the
interface nsiatomservice to construct string atoms for the properties.
... getservice(components.
interfaces.nsiatomservice); props.appendelement(aserv.getatom("makeitblue")); } } the properties list requires an array of atom objects, which can be thought of as constant strings.
... we create them using the xpcom
interface nsiatomservice and add them to the array using the appendelement() function.
... getservice(components.
interfaces.nsiatomservice); props.appendelement(aserv.getatom("makeitblue")); } else { return "makeitblue"; } } } this function would be defined as part of a view object.
Trees - Archive of obsolete content
a tree view is an object which implements the nsitreeview
interface.
... this
interface contains thirty properties and functions which you may implement.
...this attribute specifies how many rows are displayed in the user
interface, not how many rows of data there are.
...in addition, mouse and other user
interface events do not fire at these elements.
Using the Editor from XUL - Archive of obsolete content
through the magic of xbl, the xul bindings, and the nsieditorboxobject
interface, you can get a javascript reference to the editorshell from the editor element with element.editorshell.
...in addition, editor actions in the user
interface are propagated via the xul and javascript, and call methods on the nseditorshell.
... nstexteditortextlistener the nsidomtextlistener
interface that this implements is used by the ime code.
... nstexteditorcompositionlistener nstexteditorcompositionlistener implements another ime-related
interface, nsidomcompositionlistener.
editor - Archive of obsolete content
the editor does not provide any editing user
interface; you would supply that yourself.
... methods geteditor( window ) return type: nsieditor returns the editing
interface for the editor which contains numerous methods for manipulating the document.
... gethtmleditor( window ) return type: nsihtmleditor returns the html editing
interface for the editor which contains methods for manipulating an html document.
...haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider ...
Monitoring plugins - Archive of obsolete content
s trying to use this feature: registration to register for runtime notifications with the observer service you must create a class with an observe method which receives 3 parameters (subject, topic and data) as well as a register method that contains the following code: var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice (components.
interfaces.nsiobserverservice); observerservice.addobserver(this, "experimental-notify-plugin-call", false); observing as discussed above, to specify what you want done when a notification arrives your class must have an observe method, receiving 3 parameters (subject, topic and data).
... clean up to unregister your class with the observer service - when you no longer want to be listening to runtime notifications - your class must include an unregister method that contains the following code: var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); observerservice.removeobserver(this, "experimental-notify-plugin-call"); skeleton observer class below is a skeleton class that you may use to listen to runtime notifications: function pluginobserver() { this.registered = false; this.register(); //takes care of registering this class with observer services as an observer for plugin runtime notifications } ...
... var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); observerservice.addobserver(this, "experimental-notify-plugin-call", false); this.registered = true; } }, //unregisters from the observer services unregister: function() { if (this.registered == true) { var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(compone...
...nts.
interfaces.nsiobserverservice); observerservice.removeobserver(this, "experimental-notify-plugin-call"); this.registered = false; } } } additional resources more information on the observer service: nsiobserverservice nsiobserver ...
Building a Theme - Archive of obsolete content
styling the browser's ui with css firefox's user
interface is written in xul and javascript.
... xul is an xml grammar that provides user
interface widgets like buttons, menus, toolbars, trees, etc.
...css, xul, and other files are part of "chrome packages" - bundles of user
interface components which are loaded via chrome:// uris.
... secondly, a package name (in the example above, browser) which identifies the bundle of user
interface components.
LiveConnect Overview - Archive of obsolete content
the jsobject class provides an
interface for invoking javascript methods and examining javascript properties.
...null values when you pass null javascript values as parameters to java methods, java converts the values according to the rules described in the following table: java parameter type conversion rules any class any
interface type the value becomes null.
... javaarray and javaobject objects in most situations, when you pass a javascript javaarray or javaobject as a parameter to a java method, java simply unwraps the object; in a few situations, the object is coerced into another data type according to the rules described in the following table: java parameter type conversion rules any
interface or class that is assignment-compatible with the unwrapped object.
... an
interface or class is assignment-compatible with an unwrapped object if the unwrapped object is an instance of the java parameter type.
Back to the Server: Server-Side JavaScript On The Rise - Archive of obsolete content
the example application is running under jaxer build 0.9.7.2472 and also incorporates the extjs version 2.1 javascript framework for user
interface controls.
... listing 6 - creating the user
interface <link href="/jaxer_examples/js/ext-2.1/resources/css/ext-all.css" type="text/css" rel="stylesheet"/> <script src="/jaxer_examples/js/ext-2.1/adapter/ext/ext-base.js"/> <script src="/jaxer_examples/js/ext-2.1/ext-all.js"/> <link href="/jaxer_examples/css/main.css" type="text/css" rel="stylesheet"/> <script runat="both" src="/jaxer_examples/js/validatecomments.js"/> <script> var txt_name; var t...
...the completed user
interface is shown in figure 1.
... figure 1 – the user
interface server-side dom processing another powerful concept of jaxer is the ability to access the dom server-side with javascript.
Requests For Enhancement - Archive of obsolete content
a lot of the xforms capabilities are reachable by using our custom controls
interfaces.
... our custom control
interfaces allows for the exchange of data between any xml element and and an xforms model.
... custom controls
interfaces this section contains rfe to the custom control
interfaces.
... if you find that you can't create a custom control due to limitations in our
interfaces or the functionality of our controls, then this is the right place to pass along your requirements.
Introduction to client-side frameworks - Learn web development
read more about the javascript used in this section: document.createelement() document.createtextnode() document.createdocumentfragment() eventtarget.addeventlistener() node.appendchild() node.removechild() another way to build uis every javascript framework offers a way to write user
interfaces more declaratively.
...that might be a useful idea for something as simple as our to-do list application, but it's not maintainable for large applications that manage thousands of records of data, and could render just as many unique elements in a user
interface.
... compartmentalization most major frameworks encourage developers to abstract the different parts of their user
interfaces into components — maintainable, reusable chunks of code that can communicate with one another.
...making user
interfaces accessible always requires some thought and effort, and frameworks can complicate that process.
TypeScript support in Svelte - Learn web development
typescript: optional static typing for javascript typescript is a superset of javascript that provides features such as optional static typing, classes,
interfaces, and generics.
... boiler plate code: working with types, classes,
interfaces, and generics can lead to over-engineered code bases.
...from that version onward you have to use export/import type syntax to import types and
interfaces.
...they can be applied to
interfaces, classes, and functions.
Embedding API for Accessibility
how we expose this through the user
interface is another matter.
... one way of doing this is to build up the nsiwebbrowseraccessible
interface, so that there is a method to force loading each type of content just for the current page in the current session.
... open issue: accessibility settings per url a powerful possibility is that we design an
interface for setting certain preferences based on the url.
...this is a ui issue we'll need to settle before we know where to go with the embedding accessibility
interface.
Creating a Login Manager storage module
overriding the built-in login manager storage consists of two tasks: implement the nsiloginmanagerstorage
interface.
... register that
interface in a specific category.
... sample javascript implementation the following code snippet is a javascript component that implements a dummy nsiloginmanagerstorage
interface.
... const cc = components.classes; const ci = components.
interfaces; components.utils.import("resource://gre/modules/xpcomutils.jsm"); function sampleloginmanagerstorage() {} sampleloginmanagerstorage.prototype = { classdescription: "sample nsiloginmanagerstorage implementation", contractid: "@example.com/login-manager/storage/sample;1", classid: components.id("{364a118c-747a-4f6d-ac63-2d2998e5a5c1}"), query
interface: xpcomutils.generateqi([ci.nsiloginmanagerstorage]), // this registers the category for overriding the built-in nsiloginmanagerstorage _xpcom_categories: [ { category: "login-manager-storage", entry: "nsiloginmanagerstorage" } ], // console logging servi...
Localizing with Mercurial
# debian/ubuntu $ apt-get install mercurial # fedora $ yum install mercurial # gentoo $ emerge mercurial # arch linux $ pacman -s mercurial # opensolaris $ pkg install sunwmercurial if you prefer a graphical
interface, you can download and install mercurialeclipse here.
... mercurial on windows with windows, you have a couple of install options: for a command line
interface, download and install mozillabuild package.
... for a graphical
interface, you may want to install tortoisehg, which integrates with your windows explorer shell.
... if you prefer a graphical
interface, you can download and install mercurialeclipse here.
gtstd.html
before running the sample programs, it's important to understand the relationships between the ssl
interface, the pkcs #11
interface, pkcs #11 modules, and the default netscape security databases.
... a pkcs #11 module (also called a cryptographic module) manages cryptographic services such as encryption and decryption via the pkcs #11
interface.
... figure 2.1 relationships among nss libraries, cryptographic modules, slots, and tokens as shown in the figure, ssl communicates with pkcs #11 modules through the pkcs #11
interface.
... if you are creating a client application, you can use either the certificate database tool or the communicator security
interface to create the database files and populate them with the appropriate certificates and keys.
SpiderMonkey Internals
public apis the public c/c++
interface, called the jsapi, is in most places a thin (but source-compatible across versions) layer over the implementation.
...the debugger will have to consult jsopcode.def on its own to figure out where to plant trap instructions to implement functions like step out, but a future jsdbgapi.h will provide convenience
interfaces to do these things.
... js.cpp, jsshell.msg the "js shell", a simple interpreter program that uses the js api and more than a few internal
interfaces (some of these internal
interfaces could be replaced by jsapi.h calls).
...these
interfaces are named in a way that makes local vs.
JSAPI User Guide
custom js objects can provide direct program services, or they can serve as
interfaces to your program's services.
...or a js object that mirrors data and functions that already exist in the application may provide an object-oriented
interface to c code that is not otherwise, strictly-speaking, object-oriented itself.
... such a custom object acts as an
interface to the application itself, passing values from the application to the user, and receiving and processing user input before returning it to the application.
...this model provides a common security
interface, but the actual security implementation is up to you.
Gecko events
event constants are defined in nsiaccessibleevent
interface.
...server applications send this event when a user needs to know that a user
interface element has changed.
...changes to text that is exposed through the iaccessibletext and iaccessibleeditabletext
interfaces.
...this includes for example most of the attributes available via the iaccessiblecomponent
interface.
Gecko Roles
role constants are defined in the nsiaccessiblerole
interface.
... role_grip represents a special mouse pointer, which allows a user to manipulate user
interface elements such as windows.
... role_label presents an icon or short string in an
interface.
...either this object, or a singleton descendant, should implement the document
interface.
Using the Places annotation service
the annotation service, provided by the nsiannotationservice
interface, is designed to store arbitrary data about a web page or about an item in the places database in firefox 3.
... creating the annotation service the annotation contract id is @mozilla.org/browser/annotation-service;1 var annotationservice = components.classes["@mozilla.org/browser/annotation-service;1"] .getservice(components.
interfaces.nsiannotationservice); note that the annotation service is not thread-safe.
... var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var uri = ioservice.newuri("http://www.mozilla.org/", null, null); annotationservice.setpageannotation(uri, "my_extension/some_annotation", "this is the annotation value", 0, 0); retrieving annotations there are corresponding getters for the setters above (see nsiannotationservice.idl for the exact declarations): from c++: getpageannotationstring(auri, aname); getpagean...
...to add or remove an observer use the methods: addobserver(aobserver); removeobserver(aobserver); where aobserver is an object implementing the nsiannotationobserver
interface.
Generic factory
the new nsigenericfactory
interface takes this a step further, by providing a single
interface that can be reused anytime a simple implementation of nsifactory is needed.
... here is the
interface, and a description of its use.
...ository* repository) { nsigenericfactory* factory = null; nscid kgenericfactorycid = ns_genericfactory_cid; nsresult res = repository->createinstance(kgenericfactorycid, null, nsigenericfactory::iid(), &factory); if (res == ns_ok) { factory->setconstructor(&mycomponent::create); } return factory; } this example assumes that the xpcom repository is available as an
interface (which it soon will be).
...it seems to me that we can cut down on code size (all those query
interface, addref, release implementations) if we just use the following class for all of the simple factories: // idea: why not create a generic factory facility so we can avoid // duplication of so much nsifactory code?
Avoiding leaks in JavaScript XPCOM components
it allows javascript code to access xpcom objects (i.e., it wraps native xpcom objects for javascript) and it allows javascript code to implement xpcom
interfaces (i.e., it wraps javascript objects for xpcom).
... for javascript objects that implement xpcom
interfaces, the
interface between reference counting and garbage collection is quite simple.
... the most common way this is done in javascript is on implementations of observer
interfaces like nsiobserver in javascript.
...consider the example of bug 170022 (which also demonstrates a leak via a global variable, fixed later in bug 231266): const observer = { observe: function(subject, topic, data) { if (topic != "open-new-tab-request" || subject != window) return; delayedopentab(data); } }; const service = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); service.addobserver(observer, "open-new-tab-request", false); in this example, there is a similar cycle between observe and service.
Setting up the Gecko SDK
as described in the section exceptions in xpcom, exception handling isn't supported across
interface boundaries, so setting this option may catch problems during development.
... ispecialthing.idl #include "nsisupports.idl" [scriptable, uuid(263ed1ba-5cc1-11db-9673-00e08161165f)]
interface ispecialthing : nsisupports { attribute astring name; long add(in long a, in long b); }; next is to build the .h file to compile against and the .xpt for gecko to understand your new
interface.
... i used xpcomviewer, to make sure the class and the
interface were showing.
...gecko_sdk_path ?= $(home)/tmp/xr xpidl ?= $(gecko_sdk_path)/bin/xpidl cxx ?= c++ xpidlsrcs = \
interfacea.idl \
interfaceb.idl \ $(null) cppsrcs = \ sourcea.cpp \ sourceb.cpp \ $(null) cppflags += -fno-rtti \ -fno-exceptions \ -fshort-wchar \ -fpic \ $(null) # gcc only define which allows us to not have to #include mozilla-config # in every .cpp file.
Creating XPCOM components
for example, the introduction includes a discussion of components and what they are, and the first chapter - in which you compile the basic code and register it with mozilla - prompts a discussion of the relationship between components and modules, of xpcom
interfaces, and of the registration process in general.
... preface who should read this book organization of the tutorial following along with the examples conventions acknowledgements an overview of xpcom the xpcom solution gecko components
interfaces
interfaces and encapsulation the nsisupports base
interface xpcom identifiers cid contract id factories xpidl and type libraries xpcom services xpcom types method types reference counting status codes variable mappings common xpcom error codes using xpcom components component examples cookie manager the webbrowserfind component the we...
... macros generic xpcom module macros common implementation macros declaration macros weblock2.cpp string classes in xpcom using strings nsembedstring and nsembedcstring smart pointers starting weblock getting called at startup registering for notifications getting access to the category manager providing access to weblock creating the weblock programming
interface defining the weblock
interface in xpidl the xpidl syntax scriptable
interfaces subclassing nsisupports the web locking
interface implementing weblock declaration macros representing return values in xpcom xpidl code generation getting the weblock service from a client implementing the iweblock
interface the directory service modifying paths with nsifile manipulat...
...ing files with nsifile using nsilocalfile for reading data processing the white list data iweblock method by method lock and unlock addsite removesite setsites getnext getsites hasmoreelements finishing the component using frozen
interfaces copying
interfaces into your build environment implementing the nsicontentpolicy
interface receiving notifications implementing the nsicontentpolicy uniform resource locators checking the white list creating nsiuri objects building the weblock ui user
interface package list client code overview xul the xul document the locking ui site adding ui weblock.xul overlaying new user
interface into mozilla weblockoverlay.xul other resources weblock.css image resources ...
How to build a binary XPCOM component using Visual Studio
your xpcom component is made up of 3 parts: component
interface described using idl.
... the
interface defines the methods, including arguments and return types, of the component.
... let’s specify a simple
interface: #include "nsisupports.idl" [scriptable, uuid(263ed1ba-5cc1-11db-9673-00e08161165f)]
interface ispecialthing : nsisupports { attribute astring name; long add(in long a, in long b); }; remember to generate your own guid.
... use in javascript: function doxpcom() { try { const cid = "@starkravingfinkle.org/specialthing;1"; var obj = components.classes[cid].createinstance(); obj = obj.query
interface(components.
interfaces.ispecialthing); } catch (err) { alert(err); return; } var res = obj.add(3, 4); alert('3+4 = ' + res); var name = obj.name; alert('name = ' + name); obj.name = 'new name'; name = obj.name; alert('name = ' + name); } other resources creating xpcom components - mozilla how to build an xpcom component in javascript - mozilla an introduction...
Interfacing with the XPCOM cycle collector
how to make your classes participate the
interface between the cycle collector and your classes can be accessed directly using the contents of xpcom/base/nscyclecollector.h, but there are convenience macros for annotating your classes in xpcom/glue/nscyclecollectionparticipant.h that are much easier to use.
...or ns_decl_cycle_collection_class_ambiguous(nsfoo, nsibar) if nsfoo inherits from multiple
interfaces, where nsibar is the
interface which is returned when you query
interface nsfoo to nsisupports.
... (we call nsibar the canonical isupports type for nsfoo.) add a line ns_
interface_map_entries_cycle_collection(nsfoo) to the
interface map of nsfoo in nsfoo.cpp.
... or if that doesn't work: ns_
interface_table_head(nsfoo) ns_
interface_table2(nsfoo, nsibar, nsibaz) ns_
interface_table_to_map_segue_cycle_collection(nsfoo) ns_
interface_map_end change the line ns_impl_addref(nsfoo) to ns_impl_cycle_collecting_addref(nsfoo) in nsfoo.cpp, and similarly change the line ns_impl_release(nsfoo) to ns_impl_cycle_collecting_release(nsfoo) in nsfoo.cpp.
Components object
in current versions of firefox only a few
interfaces required for compatibility are still accessible.
...the components object is actually a native instance of the nsixpccomponents
interface which is reflected into javascript as a top level object using xpconnect.
...the components object has the following members: classes array of classes by contractid classesbyid array of classes by cid constructor constructor for constructor of components exception constructor for xpconnect exceptions id constructor for xpcom nsids
interfaces array of
interfaces by
interface name
interfacesbyid array of
interfaces by iid issuccesscode function to determine if a given result code is a success code lastresult result code of most recent xpconnect call manager the global xpcom component manager results array of known result codes by name returncode pending result for current call stack c...
...declared in the
interface) method or property of an xpcom object.
Using components
commonly, we start our scripts like so: var cc = components.classes; var ci = components.
interfaces; if we want to get a hold of a component, we then do something like: var rc = cc["@mozilla.org/registry;1"]; var rs = rc.getservice(ci.nsiregistry); see also: xpcshell -- how to get a command line
interface to javascript more info as was already stated, it is common to start addon scripts like: var cc = components.classes; var ci = components.
interfaces; there is also another way to start, which is exactly equivalent to the above.
... var {cc: classes, ci:
interfaces} = components; there are many more than just classes and
interfaces.
... var { cu: utils, ci:
interfaces, cc: classes, cr: results, cs: stack, cm: manager, ce: exception, } = components; here is a full breakdown of what is contained in components.
... any of the below can be accessed by components.blah (ie: components.issuccesscode) utils=[object nsxpccomponents_utils]
interfaces=[object nsxpccomponents_
interfaces] classes=[object nsxpccomponents_classes] results=[object nsxpccomponents_results] issuccesscode=function issuccesscode() { [native code] } constructor=[object nsxpccomponents_constructor] query
interface=function query
interface() { [native code] }
interfacesbyid=[object nsxpccomponents_
interfacesbyid] classesbyid=[object nsxpccomponents_classesbyid] stack=js frame :: scratchpad/4 :: cdump :: line 8 manager=[xpconnect wrapped nsicomponentmanager] id=[object nsxpccomponents_id] exception=[object nsxpccomponents_exception] reporterror=function reporterror() { [native code] } cancreatewrapper=function cancreatewrapper() { [native code] } ...
Monitoring HTTP activity
gecko includes the nsihttpactivityobserver
interface, which you can implement in your code to monitor http transactions in real time, receiving a callback as the transactions take place.
... creating an http activity observer to observe http activity, you need to implement the nsihttpactivityobserver
interface within your code.
...// define a reference to the
interfacevar nsihttpactivityobserver = components.
interfaces.nsihttpactivityobserver; var httpobserver = { observeactivity: function(ahttpchannel, aactivitytype, aactivitysubtype, atimestamp, aextrasizedata, aextrastringdata) { if (aactivitytype == nsihttpactivityobserver.activity_type_http_transaction) { switch(aactivitysubtype) { case nsihttpactivityobserver.activity_subtype_response_header: // received response header break; case nsihttpactivityobserver.activity_subtype_response_complete: // received ...
...this is done using the nsihttpactivitydistributor.addobserver() method in nsihttpactivitydistributor: var activitydistributor = components.classes["@mozilla.org/network/http-activity-distributor;1"] .getservice(components.
interfaces.nsihttpactivitydistributor); activitydistributor.addobserver(httpobserver); observable activities there are two classes of observable activities: those that occur at the socket level and those that occur at the http transaction level.
IAccessibleEditableText
other-licenses/ia2/accessibleeditabletext.idlnot scriptable this
interface provides clipboard capability to text objects.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) this
interface is typically used in conjunction with the iaccessibletext
interface and complements that
interface with the additional capability of clipboard operations.
... note that even a read only text object can support the copy capability so this
interface is not limited to editable objects.
... the substrings used with this
interface are specified as follows: if startoffset is less than endoffset, the substring starts with the character at startoffset and ends with the character just before endoffset.
mozISpellCheckingEngine
extensions/spellcheck/idl/mozispellcheckingengine.idlscriptable this
interface represents a spelling checker.
... implement this
interface to add support for a new spell checking engine.
... inherits from: nsisupports last changed in gecko 1.7 this
interface represents a spell checking engine.
...extensions can use this
interface to check spelling or provide its own spell checker to editors.
nsIAccessibleHyperLink
accessible/public/nsiaccessiblehyperlink.idlscriptable a cross-platform
interface that supports hyperlink-specific properties and methods.
...the returned value is related to the nsiaccessiblehyperlink
interface of the object that owns this hyperlink.
...the returned value is related to the nsiaccessiblehyperlink
interface of the object that owns this hyperlink.
... remarks anchors, image maps, xul:labels with class="text-link" implement this
interface.
nsIAccessibleRole
accessible/public/nsiaccessiblerole.idlscriptable this
interface defines cross platform (gecko) roles.
... role_grip 4 represents a special mouse pointer, which allows a user to manipulate user
interface elements such as windows.
... role_label 79 presents an icon or short string in an
interface.
...either this object, or a singleton descendant, should implement the document
interface.
nsIAlertsService
toolkit/components/alerts/nsialertsservice.idlscriptable this
interface can be used to notify the user of something that does not require an immediate reaction.
... implemented by: @mozilla.org/alerts-service;1 as a service: var alertsservice = components.classes["@mozilla.org/alerts-service;1"] .getservice(components.
interfaces.nsialertsservice); method overview void showalertnotification(in astring imageurl, in astring title, in astring text, [optional] in boolean textclickable, [optional] in astring cookie, [optional] in nsiobserver alertlistener, [optional] in astring name, [optional] in astring dir, [optional] in astring lang, [optional] in astring data, [optional] in nsiprincipal principal,[optional] i...
... getservice(components.
interfaces.nsialertsservice); try { alertsservice.showalertnotification("chrome://mozapps/skin/downloads/downloadicon.png", "alert title", "alert text goes here.", false, "", null, ""); } catch (e) { // this can fail on mac os x } listening for callbacks you can be notified when the notification window disappears or the user...
... getservice(components.
interfaces.nsialertsservice); try { alertsservice.showalertnotification("", "alerts service test", "click me", true, "cookie", listener, ""); } catch (e) { // this can fail on mac os x } example 2 this example shows how to use all the available observer topics: var as = cc['@mozilla.org/alerts-service;1'].getservice(ci.nsialertsservice); var notiflistener = { observe: function(asubject, ...
nsIAuthPromptProvider
netwerk/base/public/nsiauthpromptprovider.idlscriptable this
interface requests a prompt
interface for the given prompt reason.
... methods getauthprompt() this method requests a prompt
interface for the given prompt reason.
...iid the desired
interface, for example, ns_get_iid(nsiauthprompt2).
... result a nsiauthprompt2
interface.
nsIAutoCompleteListener
xpfe/components/autocomplete/public/nsiautocompletelistener.idlscriptable this
interface is deprecated.
...new code should use toolkit autocomplete
interfaces.
...as of gecko 1.9.1, can also be called with partial results, in a similar manner to the toolkit autocomplete
interface.
...status one of the constants defined in the nsiautocompletestatus
interface.
nsIConsoleService
inherits from: nsisupports last changed in gecko 19 (firefox 19 / thunderbird 19 / seamonkey 2.16) implemented by: @mozilla.org/consoleservice;1 as a service: var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); method overview void getmessagearray([array, size_is(count)] out nsiconsolemessage messages, out uint32_t count);obsolete since gecko 19 void getmessagearray([optional] out uint32_t count, [retval, array, size_is(count)] out nsiconsolemessage messages); void logmessage(in nsiconsolemessage message); void logstringmessage(in wstring message); ...
... examples retrieving the message array to retrieve the message array in gecko prior to version 19: function getconsolemessagearray() { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); var array = {}; consoleservice.getmessagearray(array, {}); return array.value; } to retrieve the message array in gecko 19 or later: function getconsolemessagearray() { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); return consoleservice.getmessagearra...
...y(); } to retrieve the message array in a compatible way: function getconsolemessagearray() { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); var array = {}; return consoleservice.getmessagearray(array, {}) || array.value; } logging a simple message a common usage is logging a message string to the console: function log(msg) { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); consoleservice.logstringmessage(msg); } alternative logging methods include components.utils.reporterror and dump().
... function mylogtoconsole(amessage, asourcename, asourceline, alinenumber, acolumnnumber, aflags, acategory) { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); var scripterror = components.classes["@mozilla.org/scripterror;1"] .createinstance(components.
interfaces.nsiscripterror); scripterror.init(amessage, asourcename, asourceline, alinenumber, acolumnnumber, aflags, acategory); consoleservice.logmessage(scripterror); } amessage — the string to be logged.
nsIContentPrefService
use the asynchronous
interface nsicontentprefservice2 instead.
... dom/
interfaces/base/nsicontentprefservice.idlscriptable please add a summary to this article.
...to create an instance, use: var contentprefservice = components.classes["@mozilla.org/content-pref/service;1"] .getservice(components.
interfaces.nsicontentprefservice); method overview void addobserver(in astring aname, in nsicontentprefobserver aobserver); nsivariant getpref(in nsivariant agroup, in astring aname, [optional] in nsicontentprefcallback acallback); nsipropertybag2 getprefs(in nsivariant agroup); nsipropertybag2 getprefsbyname(in astring aname); boolean haspref(in nsivariant agroup, in astring aname); void removegroupedprefs(); void removeob...
...useful for accessing and manipulating preferences in ways that are caller-specific or for which there is not yet a generic method, although generic functionality useful to multiple callers should generally be added to this unfrozen
interface.
nsIContentPrefService2
dom/
interfaces/base/nsicontentprefservice2.idlscriptable asynchronous api for content preferences 1.0 66 introduced gecko 20.0 inherits from: nsisupports last changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) description content preferences allow the application to associate arbitrary data, or "preferences", with specific domains, or web "content".
...this
interface doesn't impart any special significance to global preferences; they're simply name-value pairs that aren't associated with any particular domain.
... as a consumer of this
interface, you might choose to let a global preference override all non- global preferences of the same name, for example, for whatever definition of "override" is appropriate for your use case.
... domain parameters many methods of this
interface accept a "domain" parameter.
nsIDOMFile
the nsidomfile
interface retrieves data from a file submitted to a form using the input type "file".
... note that in gecko, this
interface currently inherits from nsisupports, but in the file api specification, it should be a blob.
... this will likely change in the future, so avoid using any non-standard methods offered by this
interface in order to ensure future compatibility.
... last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports this
interface implements the dom file object; for complete documentation, read up on that.
nsIDownloadProgressListener
/toolkit/components/downloads/nsidownloadprogresslistener.idlscriptable this
interface gives applications and extensions a way to monitor the status of downloads being processed by the download manager.
... inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) to use simply implement this
interface in your code, then call nsidownloadmanager.addlistener() to start listening.
... this
interface works very similarly to the nsiwebprogress
interface.
... example var dm = components.classes["@mozilla.org/download-manager;1"] .getservice(components.
interfaces.nsidownloadmanager); dm.addlistener({ onsecuritychange : function(prog, req, state, dl) { }, onprogresschange : function(prog, req, prog, progmax, tprog, tprogmax, dl) { }, onstatechange : function(prog, req, flags, status, dl) { }, ondownloadstatechange : function(state, dl) { } }); even if you do not want to use some of the listeners, you must include all of them.
nsIFile
xpcom/io/nsifile.idlscriptable an instance of this
interface is a cross-platform representation of a location in the filesystem.
... to create an nsifile from a path you can use fileutils.jsm: var fileutils = cu.import("resource://gre/modules/fileutils.jsm").fileutils var nsifile = new fileutils.file( filename ) note: nsilocalfile was merged with this
interface in gecko 14.
... this
interface was frozen for gecko 1.0.
...from gecko 2.0
interfaces are no longer frozen.
nsIFilePicker
widget/nsifilepicker.idlscriptable the file picker component is used to display standard user
interface for selecting files and directories, as well as for selecting destinations for, and naming, new files.
...to create an instance, use: var filepicker = components.classes["@mozilla.org/filepicker;1"] .createinstance(components.
interfaces.nsifilepicker); method overview void appendfilter(in astring title, in astring filter); void appendfilters(in long filtermask); void init(in nsidomwindow parent, in astring title, in short mode); void open(in nsifilepickershowncallback afilepickershowncallback); short show(); obsolete since gecko 57.0 attributes attribute type description addtorecentdocs boolean if true, the file is added to the operating system's ...
... example here's an example: const nsifilepicker = components.
interfaces.nsifilepicker; var fp = components.classes["@mozilla.org/filepicker;1"] .createinstance(nsifilepicker); fp.init(window, "dialog title", nsifilepicker.modeopen); fp.appendfilters(nsifilepicker.filterall | nsifilepicker.filtertext); fp.open(function (rv) { if (rv == nsifilepicker.returnok || rv == nsifilepicker.returnreplace) { var file = fp.file; // get the path as string.
... var files = fp.files; var paths = []; while (files.hasmoreelements()) { var arg = files.getnext().query
interface(components.
interfaces.nsilocalfile).path; paths.push(arg); } ...
nsIMemory
xpcom/base/nsimemory.idlscriptable this
interface represents a generic memory allocator.
... method overview voidptr alloc(in size_t size); violates the xpcom
interface guidelines void free(in voidptr ptr); violates the xpcom
interface guidelines void heapminimize(in boolean immediate); boolean islowmemory(); deprecated since gecko 2.0 voidptr realloc(in voidptr ptr, in size_t newsize); violates the xpcom
interface guidelines methods alloc allocates a block of memory of a particular size.
... remarks this
interface was frozen for gecko 0.9.6.
...from gecko 2.0
interfaces are no longer frozen.
nsIOutputStream
xpcom/io/nsioutputstream.idlscriptable an
interface describing a writable stream of data.
... note: this method is defined by this
interface in order to allow the output stream to efficiently copy the data from the input stream into its internal buffer (if any).
... nsresult writestream(const nsacstring& asource, nsiinputstream* astream) { pruint32 num; return astream->writesegments(copysegment, (void*) &asource, asource.length(), &num); } remarks this
interface was frozen for gecko 1.0.
...from gecko 2.0
interfaces are no longer frozen.
nsIProcess2
xpcom/threads/nsiprocess.idlscriptable this
interface represents an executable process.
... this expands upon the nsiprocess
interface.
... 1.0 66 introduced gecko 1.9.1 obsolete gecko 1.9.2 inherits from: nsiprocess last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) gecko 1.9.2 note this
interface was removed in gecko 1.9.2 and its method added to nsiprocess.
...to create an instance, use: var process2 = components.classes["@mozilla.org/process/util;1"] .createinstance(components.
interfaces.nsiprocess2); method overview void runasync([array, size_is(count)] in string args, in unsigned long count, [optional] in nsiobserver observer, [optional] in boolean holdweak); methods runasync() asynchronously runs the process with which the object was initialized, optionally calling an observer when the process finishes running.
nsIProgressEventSink
netwerk/base/public/nsiprogresseventsink.idlscriptable this
interface is used to asynchronously convey channel status and progress information that is generally not critical to the processing of the channel.
... inherits from: nsisupports last changed in gecko 1.7 this
interface is used to asynchronously convey channel status and progress information that is generally not critical to the processing of the channel.
...an implementation of this
interface can be passed to a channel via the channel's notificationcallbacks attribute.
...note: this
interface is actually not specific to channels and may be used with other implementations of nsirequest.
nsIProtocolHandler
netwerk/base/nsiprotocolhandler.idlscriptable this
interface is used to implement protocol handlers.
... if you wish to create a new protocol handler, you need to implement this
interface.
... uri_is_ui_resource 1<<8 the uris for this protocol refer to resources that are part of the application's user
interface.
...if the protocol supports transparent proxying, the handler should implement the nsiproxiedprotocolhandler
interface.
nsIPushService
dom/
interfaces/push/nsipushservice.idlscriptable a service for components to subscribe and receive push messages from remote servers.
... implemented by @mozilla.org/push/service;1 as a service: const pushservice = components.classes["@mozilla.org/push/service;1"] .getservice(components.
interfaces.nsipushservice); method overview void subscribe(in domstring scope, in nsiprincipal principal, in nsipushsubscriptioncallback callback); void getsubscription(in domstring scope, in nsiprincipal principal, in nsipushsubscriptioncallback callback); void unsubscribe(in domstring scope, in nsiprincipal principal, in nsiunsubscriberesultcallback callback); methods...
... example const { classes: cc,
interfaces: ci, utils: cu } = components; const scriptsecuritymanager = cc["@mozilla.org/scriptsecuritymanager;1"] .getservice(ci.nsiscriptsecuritymanager); const pushservice = cc["@mozilla.org/push/service;1"] .getservice(ci.nsipushservice); pushservice.subscribe( "chrome://my-module/push", scriptsecuritymanager.getsystemprincipal(), (code, sub...
... return; } let message = maybemesssage.query
interface(ci.nsipushmessage); message.text(); // returns the message contents as a utf-8 string.
nsIScriptError
to create an instance, use: var scripterror = components.classes["@mozilla.org/scripterror;1"] .createinstance(components.
interfaces.nsiscripterror); note: the nsiscripterror2
interface was merged into this
interface in gecko 12.0.
...that subclass offered the nsiscripterror.initwithwindowid() method for that purpose; that method is now available in this
interface, however.
... note: prior to gecko 12.0, this method was provided by the nsiscripterror2
interface, which has now been merged into this one.
... function mylogtoconsole(amessage, asourcename, asourceline, alinenumber, acolumnnumber, aflags, acategory) { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); var scripterror = components.classes["@mozilla.org/scripterror;1"] .createinstance(components.
interfaces.nsiscripterror); scripterror.init(amessage, asourcename, asourceline, alinenumber, acolumnnumber, aflags, acategory); consoleservice.logmessage(scripterror); } categories there are a lot of categories, and they're no...
nsISpeculativeConnect
1.0 66 introduced gecko 15.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) to use this service, simply call nsisupports.query
interface() on the nsiioservice you plan to use for the connection, to get access to the i/o service's implementation of nsispeculativeconnect.
...method overview void speculativeconnect(in nsiuri auri, in nsi
interfacerequestor acallbacks, in nsieventtarget atarget); methods speculativeconnect() call this method to hint to the networking layer that a new transaction for the specified uri is likely to happen soon.
...void speculativeconnect( in nsiuri auri, in nsi
interfacerequestor acallbacks, in nsieventtarget atarget ); parameters auri the uri of the hinted transaction.
... acallbacks any security callbacks for use with ssl for
interfaces such as nsibadcertlistener.
nsISupportsPriority
xpcom/threads/nsisupportspriority.idlscriptable this
interface exposes the general notion of a scheduled object with an integral priority value.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this
interface does not strictly define what happens when the priority of an object is changed.
... an implementation of this
interface is free to define the side-effects of changing the priority of an object.
... see also changing the priority of http requests for an example of using this
interface to adjust the priority of an http request.
nsISupportsWeakReference
xpcom/base/nsiweakreference.idlscriptable this
interface is a factory
interface, which produces appropriate instances of nsiweakreference.
... weak references in this scheme can only be produced for objects that implement this
interface.
... this
interface was frozen for gecko 0.9.9.
...from gecko 2.0
interfaces are no longer frozen.
nsITraceableChannel
netwerk/base/public/nsitraceablechannel.idlscriptable this
interface is used to allow intercepting of http traffic.
... 1.0 66 introduced gecko 1.9.0.4 inherits from: nsisupports last changed in gecko 1.9.0.4 the typical way to use this
interface is as follows: register for the "http-on-examine-response" notification to track all http responses; skip redirects (responsestatus = 3xx on nsihttpchannel), since otherwise you may end up with two listeners registered for a channel; qi the channel passed as the "subject" to your observer to nsitraceablechannel, and replace the default nsistreamlistener (that passes the data to the original requester - e.g.
... /////// start - do not edit var {classes: cc,
interfaces: ci, results: cr, constructor: cc, utils: cu} = components; cu.import('resource://gre/modules/services.jsm'); var binaryinputstream = cc('@mozilla.org/binaryinputstream;1', 'nsibinaryinputstream', 'setinputstream'); var binaryoutputstream = cc('@mozilla.org/binaryoutputstream;1', 'nsibinaryoutputstream', 'setoutputstream'); var storagestream = cc('@mozilla.org/storagestream;1', 'nsistoragestrea...
...artrequest: function(arequest, acontext) { this.originallistener.onstartrequest(arequest, acontext); }, onstoprequest: function(arequest, acontext, astatuscode) { this.responsebody = this.receivedchunks.join(""); delete this.receivedchunks; this.responsestatus = astatuscode; this.originallistener.onstoprequest(arequest, acontext, astatuscode); this.deferreddone.resolve(); }, query
interface: function(aiid) { if (aiid.equals(ci.nsistreamlistener) || aiid.equals(ci.nsisupports)) { return this; } throw cr.ns_no
interface; } }; var httpresponseobserver = { observe: function(asubject, atopic, adata) { var newlistener = new tracinglistener(); asubject.query
interface(ci.nsitraceablechannel); newlistener.originallistener = asubject.setnewlistener(newlistener); /////// end -...
nsIUpdatePrompt
toolkit/mozapps/update/nsiupdateservice.idlscriptable this
interface describes an object that can be used to show various update-related notifications to the user.
... 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void checkforupdates(); void showupdateavailable(in nsiupdate update); void showupdatedownloaded(in nsiupdate update, [optional] in boolean background); void showupdateerror(in nsiupdate update); void showupdatehistory(in nsidomwindow parent); void showupdateinstalled(); methods checkforupdates() presents a user
interface that checks for and displays the available updates.
...if the app.update.silent preference is true or the user
interface is already displayed the call will be a no-op.
...if the app.update.silent preference is true, the app.update.showinstalledui preference is false, or the user
interface is already displayed the call will be a no-op.
nsIWebProgress
the nsiwebprogress
interface is used to add or remove nsiwebprogresslistener instances to observe the loading of asynchronous requests (usually in the context of a dom window).
...the parent-child relationship of nsiwebprogress instances is not made explicit by this
interface, but the relationship may exist in some implementations.
...void addprogresslistener( in nsiwebprogresslistener alistener, in unsigned long anotifymask ); parameters alistener the listener
interface to be called when a progress event occurs.
...void removeprogresslistener( in nsiwebprogresslistener alistener ); parameters alistener the listener
interface previously registered with a call to addprogresslistener().
nsIWinTaskbar
unlike window previews, tab previews require most of the functionality of the nsitaskbarpreviewcontroller
interface be implemented.
...to create an instance, use: var wintaskbar = components.classes["@mozilla.org/windows-taskbar;1"] .getservice(components.
interfaces.nsiwintaskbar); method overview nsijumplistbuilder createjumplistbuilder(); nsitaskbartabpreview createtaskbartabpreview(in nsidocshell shell, in nsitaskbarpreviewcontroller controller); nsitaskbarprogress gettaskbarprogress(in nsidocshell shell); nsitaskbarwindowpreview gettaskbarwindowpreview(in nsidocshell shell); void setgroupidforwindow(in nsidomwindow aparent, in astring aiden...
...example netscape.security.privilegemanager.enableprivilege("universalxpconnect"); var taskbar = components.classes["@mozilla.org/windows-taskbar;1"].getservice(components.
interfaces.nsiwintaskbar); // get the docshell for the browser var navigator2 = top.query
interface(components.
interfaces.nsi
interfacerequestor).get
interface(components.
interfaces.nsiwebnavigation); var docshell = navigator2.query
interface(components.
interfaces.nsidocshell); // get the parent docshell; this is the top-level docshell var docshelltreeitem = docshell.query
interface(components.
interfaces.ns...
...idocshelltreeitem); var parent = docshelltreeitem.parent; var ds = parent.query
interface(components.
interfaces.nsidocshell); // create the preview taskbar.createtaskbartabpreview(ds, {}); gettaskbarprogress() gets the taskbar progress for a window.
nsIXMLHttpRequest
the
interface definition: //github.com/realityripple/uxp/blob/master/dom/xhr/nsixmlhttprequest.idl elevated privileges as mentioned in the "non-standard properties" the property of channel was read-only.
... when using the xpcom
interface, as seen below in example 2, we can get access to this.
...here is a comment from johnny stenback <jst@netscape.com>: the mozilla implementation of nsixmlhttprequest implements the
interface nsidomeventtarget and that's how you're supported to add event listeners.
... try something like this: nscomptr<nsidomeventtarget> target(do_query
interface(myxmlhttpreq)); target->addeventlistener(ns_literal_string("load"), mylistener, pr_false) where mylistener is your event listener object that implements the
interface nsidomeventlistener.
nsIZipReader
modules/libjar/nsizipreader.idlscriptable this
interface provides methods for reading compressed (zip) files.
...to create an instance, use: var zipreader = components.classes["@mozilla.org/libjar/zip-reader;1"] .createinstance(components.
interfaces.nsizipreader); about character sets and code pages note: nsizipreader has a code page problem; that is, in the zip specification, filenames are supposed to use 7-bit ascii; however, most modern filesystems use 8 bit code pages, such as utf-8.
...if you show filenames from the findentries() result in the user
interface, the character matching is only fine on utf-8 zip archives.
... uses forward slashes remember) var entry = zr.getentry(entrypointer); // should return true on `entry instanceof ci.nsizipentry` console.log('entrypointer', entrypointer); /* console output * "entrypointer" "bootstrap.js" scratchpad/1:18 */ console.info('entry', entry); /* console output * "entry" xpcwrappednative_nohelper { query
interface: query
interface(), compression: getter, size: getter, realsize: getter, crc32: getter, isdirectory: getter, lastmodifiedtime: getter, issynthetic: getter, permissions: getter, compression: 8 } scratchpad/1:19 */ if (!entry.isdirectory) { var inputstream = zr.getinputstream(entrypointer); reusablestreaminstance.init(inputstream); var filecontent...
The Thread Manager
application/extension javascript should consider using a chromeworker instead.")
interfaces there are several
interfaces that provide threading support: nsithreadmanager the thread manager itself lets you create threads.
... nsithread the nsithread
interface encapsulates an operating system thread, providing easy cross-platform access to multithreading in your code.
... nsithreadeventfilter this
interface is used by the nsithreadinternal.pusheventqueue() method in nsithreadinternal to allow event filtering.
... nsirunnable this
interface is the base for all events/runnable objects which are dispatched to threads.
XPCOM tasks
p1 we would like to move to a scheme where no one writes query
interface, and we save code-space with a table driven implementation.
...see in particular, the new ns_
interface_map_...
... p2 classes that parallel standard library classes should have compatible apis, i.e., nsdeque bug 18505 nsstring nsavltree nshashtable our various array classes in some cases, this might initially be provided by additional
interfaces.
...see, e.g., xpcom code faq, idl author's guide, and implementing query
interface.
xpidl
xpidl is a tool for generating xpcom
interface information, based on xpidl
interface description files.
... it generates: c++ header files (.h), with a commented template for full c++ implementation of the
interface xpconnect typelib files (.xpt), with runtime type information to dynamically call xpcom objects through xpconnect note: starting in gecko 9.0, xpidl has been replaced with pyxpidl in the gecko sdk.
...for testing purposes, or one-off
interface compilation, xpidl can be run from the command line: usage: ./xpidl -m mode [-w] [-v] [-t version number] [-d filename.pp] [-i path] [-o basename | -e filename.ext] filename.idl -a emit annotations to typelib -w turn on warnings (recommended) -v verbose mode (nyi) -t create a typelib of a specific version number -i add entry to start of include path f...
...``/tmp/nsithing) for output -e use explicit output filename -d write dependencies (requires -e) -m specify output mode: header generate c++ header (.h) typelib generate xpconnect typelib (.xpt) doc generate html documentation (.html) java generate java
interface (.java) ...
Mozilla technologies
at the moment, the transition from webshell to docshell is not fully completed, but the long-term goal is to remove webshell and switch over entirely to docshell.embedded dialog apifeed content access apifirefox 2 and thunderbird 2 introduce a series of
interfaces that make it easy for extension authors to access rss and atom feeds.life after xul: building firefox
interfaces with htmlthis page gathers technical solutions to common problems encountered by teams shipping html-based
interfaces inside firefox.morkmork is a database file format invented by david mccusker for the mozilla code since the original netscape database information was proprietary and ...
...it also introduces new user
interfaces for managing all this information; see places on the mozilla wiki.preferences apithe publicity stream apithe publicity stream is a mozilla-hosted activity stream generated by a user's application usage.
... toolkit apithe mozilla toolkit is a set of programming
interfaces (apis) built on top of gecko which provide advanced services to xul applications.
...it has multiple language bindings, allowing xpcom components to be used and implemented in javascript, java, and python in addition to c++.xpidlxpidl is an
interface description language used to specify xpcom
interface classes.xray visiongecko runs javascript from a variety of different sources and at a variety of different privilege levels.xslt 2.0although xslt 2.0 is not natively supported in firefox, it is possible via saxon-b (java) or, more recently, saxon-ce (javascript) to perform xslt 2.0.xtfthe extensible tag framework (xtf) allows adding support for...
Mail and RDF
this allows exposure of mailnews-specific data to user
interface using rdf templates.
...(the details of rdf resource factories will be left to rdf documentation for now.) from an rdf resource, it is possible to query
interface() to the appropriate mail/news object, and then access information from there.
...this is basically what happens, behind the scenes: var target = rdf.getresource("mailbox://alecf@pop.myisp.com/inbox"); var property = rdf.getresource("http://home.netscape.com/nc-rdf#totalmessages"); var resultnode = datasource.gettarget(target, property, true); in the folder datasource's gettarget(), target would be query
interfaced to a nsimsgfolder.
... an example of how this might work inside the datasource: var msgcountarc = rdf.getresource("http://home.netscape.com/nc-rdf#totalmessages"); function gettarget(target, property, unused) { var folder = target.query
interface(components.
interfaces.nsimsgfolder); if (property == msgcountarc) { var msgcount = folder.gettotalmessages(false); var result = rdf.getliteral(msgcount.tostring()); return result; } } asynchronously notifying rdf when a mail object's data changes and the data is reflected in rdf by notifying all of the observers that rdf has registered wit...
Creating a Custom Column
the nsimsgcustomcolumnhandler
interface to handle a column we need to implement the nsimsgcustomcolumnhandler
interface which defines the basic set of functionality that must be implemented to handle a column.
... note that an object that implements this
interface can also take control of an existing, built-in column, but more about that later.
...getcelltext() is the text that is displayed to the user while getsort*forrow() is what is used internally when sorting by your column a simple implementation objects in javascript are just "advanced" variables, so an implementation of the nsimsgcustomcolumnhandler
interface looks like: var columnhandler = { getcelltext: function(row, col) { //get the message's header so that we can extract the reply to field var hdr = gdbview.getmsghdrat(row); return hdr.getstringproperty("replyto"); }, getsortstringforrow: function(hdr) {return hdr.getstringproperty("replyto");}, isstring: function() {return true;}, getcellprope...
... window.addeventlistener("load", doonceloaded, false); function doonceloaded() { var observerservice = components.classes["@mozilla.org/observer-service;1"].getservice(components.
interfaces.nsiobserverservice); observerservice.addobserver(createdbobserver, "msgcreatedbview", false); } var createdbobserver = { // components.
interfaces.nsiobserver observe: function(amsgfolder, atopic, adata) { addcustomcolumnhandler(); } } in this example we have a function addcustomcolumnhandler() that is called whenever the event is fired.
Using COM from js-ctypes
#include <sapi.h> struct myispvoicevtbl; struct myispvoice { struct myispvoicevtbl* lpvtbl; }; struct myispvoicevtbl { /* start inherit from iunknown */ void* query
interface; void* addref; ulong (__stdcall *release)(struct myispvoice*); /* end inherit from iunknown */ /* start inherit from ispnotifysource */ void* setnotifysink; void* setnotifywindowmessage; void* setnotifycallbackfunction; void* setnotifycallback
interface; void* setnotifywin32event; void* waitfornotifyevent; void* getnotifyeventhandle; /* end inherit f...
...: ushort }, { 'data4': byte.array(8) } ]); // advanced structures let clsid = guid; let iid = guid; // super advanced structures let refiid = iid.ptr; let refclsid = clsid.ptr; // vtables let ispvoicevtbl = ctypes.structtype('ispvoicevtbl'); let ispvoice = ctypes.structtype('ispvoice', [{ 'lpvtbl': ispvoicevtbl.ptr }]); ispvoicevtbl.define([ // start inherit from iunknown { 'query
interface': ctypes.voidptr_t }, { 'addref': ctypes.voidptr_t }, { 'release': ctypes.functiontype(callback_abi, ulong, // return [ ispvoice.ptr ]).ptr }, // end inherit from iunknown // start inherit from ispnotifysource // can set to ctypes.voidptr_t if arent going to use it { 'setnotifysink': ctypes.voidptr_t }, { 'setnotifywin...
...dowmessage': ctypes.voidptr_t }, { 'setnotifycallbackfunction': ctypes.voidptr_t }, { 'setnotifycallback
interface': ctypes.voidptr_t }, { 'setnotifywin32event': ctypes.voidptr_t }, { 'waitfornotifyevent': ctypes.voidptr_t }, { 'getnotifyeventhandle': ctypes.voidptr_t }, // end inherit from ispnotifysource // start inherit from ispeventsource { 'setinterest': ctypes.voidptr_t }, { 'getevents': ctypes.voidptr_t }, { 'getinfo': ctypes.voidptr_t }, // end inherit from ispeventsource // start ispvoice { 'setoutput': ctypes.voidptr_t }, { 'getoutputobjecttoken': ctypes.voidptr_t }, { 'getoutputstream': ctypes.voidptr_t }, { 'pause': ctypes.voidptr_t }, { 'resume': ctypes.voidptr_t }, { 'setvoice': ctypes.voidptr_t }, { 'getvoice'...
...s, 0); checkhresult(primative_hr, "cocreateinstance"); } catch (ex) { console.error('ex occured:', ex); } finally { if (spvoice) { spvoice.release(spvoiceptr); } couninitialize(); } } main(); lib.close(); other examples shgetpropertystoreforwindow - this examples shows that coinit is not needed, some winapi functions return the
interface.
Debugger-API - Firefox Developer Tools
the debugger
interface mozilla’s javascript engine, spidermonkey, provides a debugging
interface named debugger which lets javascript code observe and manipulate the execution of other javascript code.
... debugger has three essential qualities: it is a source level
interface: it operates in terms of the javascript language, not machine language.
... it operates on javascript objects, stack frames, environments, and code, and presents a consistent
interface regardless of whether the debuggee is interpreted, compiled, or optimized.
...as is expected of javascript apis, debugger is a sound
interface: using (or even misusing) debugger should never cause gecko to crash.
Index - Firefox Developer Tools
17 debugger-api debugger, intermediate, intro, javascript, tools mozilla’s javascript engine, spidermonkey, provides a debugging
interface named debugger which lets javascript code observe and manipulate the execution of other javascript code.
... 80 ui tour guide, inspector, tools this article is a quick tour of the main sections of the page inspector's user
interface.
... 138 ui tour this article is a quick tour of the main sections of the javascript debugger's user
interface.
...the web console is split between a client with its user
interface, and the server which has listeners for all the things that happen in the tab.
AbortSignal - Web APIs
the abortsignal
interface represents a signal object that allows you to communicate with a dom request (such as a fetch) and abort it if required via an abortcontroller object.
... properties the abortsignal
interface also inherits properties from its parent
interface, eventtarget.
... events listen to this event using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
... methods the abortsignal
interface inherits methods from its parent
interface, eventtarget.
AbstractWorker - Web APIs
the abstractworker
interface of the web workers api is an abstract
interface that defines properties and methods that are common to all types of worker, including not only the basic worker, but also serviceworker and sharedworker.
... properties the abstractworker
interface doesn't inherit any properties.
... methods the abstractworker
interface doesn't implement or inherit any methods.
... example as an abstract
interface, you won't directly use abstractworker in your code.
AudioContext - Web APIs
the audiocontext
interface represents an audio-processing graph built from audio modules linked together, each represented by an audionode.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke...
... properties also inherits properties from its parent
interface, baseaudiocontext.
... methods also inherits methods from its parent
interface, baseaudiocontext.
AudioNode - Web APIs
the audionode
interface is a generic
interface for representing an audio processing module.
...a filter like biquadfilternode or convolvernode), or volume control (like gainnode) <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d...
... height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="196" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">audionode</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} note: an audionode can be target of events, therefore it implements the eventtarget
interface.
... methods also implements methods from the
interface eventtarget.
AudioWorklet - Web APIs
the audioworklet
interface of the web audio api is used to supply custom audio processing scripts that execute in a separate thread to provide very low latency audio processing.
... properties the audioworklet
interface does not define any properties of its own, but does inherit properties of worklet.
... methods this
interface inherits methods from worklet.
... the audioworklet
interface does not define any methods of its own.
AuthenticatorAssertionResponse - Web APIs
the authenticatorassertionresponse
interface of the web authentication api is returned by credentialscontainer.get() when a publickeycredential is passed, and provides proof to a service that it has a key pair and that the authentication request is valid and approved.
... this
interface inherites from authenticatorresponse.
... note: this
interface is restricted to top-level contexts.
... // do something specific with the response // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public key credentials level 1the definition of 'authenticatorassertionresponse
interface' in that specification.
AuthenticatorAttestationResponse - Web APIs
the authenticatorattestationresponse
interface of the web authentication api is returned by credentialscontainer.create() when a publickeycredential is passed, and provides a cryptographic root of trust for the new key pair that has been generated.
... this
interface inherites from authenticatorresponse.
... note: this
interface is restricted to top-level contexts.
... var response = newcredentialinfo.response; // do something with the response // (sending it back to the relying party server maybe?) }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public key credentials level 1the definition of 'authenticatorattestationresponse
interface' in that specification.
AuthenticatorResponse - Web APIs
the authenticatorresponse
interface of the web authentication api is the base
interface for
interfaces that provide a cryptographic root of trust for a key pair.
... the child
interfaces include information from the browser such as the challenge origin and either may be returned from publickeycredential.response.
...
interfaces based on authenticatorresponse below is a list of
interfaces based on the authenticatorresponse
interface.
... } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { var attestationresponse = newcredentialinfo.response; }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public key credentials level 1the definition of 'authenticatorresponse
interface' in that specification.
Background Tasks API - Web APIs
in addition, the event loop handles interactions with the operating system, updates to the browser's own user
interface, and so forth.
...certainly most if not all code that is capable of making changes to the dom is running in the main thread, since it's common for user
interface changes to only be available to the main thread.
...
interfaces the background tasks api adds only one new
interface: idledeadline an object of this type is passed to the idle callback to provide an estimate of how long the idle period is expected to last, as well as whether or not the callback is running because its timeout period has expired.
... the window
interface is also augmented by this api to offer the new requestidlecallback() and cancelidlecallback() methods.
BroadcastChannel - Web APIs
the broadcastchannel
interface represents a named channel that any browsing context of a given origin can subscribe to.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale m...
... properties this
interface also inherits properties from its parent, eventtarget.
... methods this
interface also inherits methods from its parent, eventtarget.
CSS - Web APIs
the css
interface holds useful css-related methods.
... no objects with this
interface are implemented: it contains only static methods and is therefore a utilitarian
interface.
... properties the css
interface is a utility
interface and no object of this type can be created: only static properties are defined on it.
... methods the css
interface is a utility
interface and no object of this type can be created: only static methods are defined on it.
CSSCounterStyleRule - Web APIs
the csscounterstylerule
interface represents an @counter-style at-rule.
... inheritance this
interface inherits from the following parent
interfaces: <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/cssrule" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">cssrule</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y...
...rstylerule" target="_top"><rect x="116" y="1" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="211" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">csscounterstylerule</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent cssrule.
... methods this
interface doesn't implement any specific method but inherits methods from its parent cssrule.
CSSKeyframeRule - Web APIs
the csskeyframerule
interface describes an object representing a set of style for a given keyframe.
...it implements the cssrule
interface with a type value of 8 (cssrule.keyframe_rule).
... properties as a cssrule, csskeyframerule also implements the properties of these
interfaces.
... methods as a cssrule, csskeyframerule also implements the methods of that
interface.
CSSKeyframesRule - Web APIs
the csskeyframesrule
interface describes an object representing a complete set of keyframes for a css animation.
...it implements the cssrule
interface with a type value of 7 (cssrule.keyframes_rule).
... properties as a cssrule, csskeyframesrule also implements the properties of these
interfaces.
... methods as a cssrule, csskeyframesrule also implements the methods of that
interface.
CSSMediaRule - Web APIs
the cssmediarule
interface represents a single css @media rule.
... it implements the cssconditionrule
interface, and therefore the cssgroupingrule and the cssrule
interface with a type value of 4 (cssrule.media_rule).
...
interface cssmediarule : cssconditionrule { readonly attribute medialist media; } properties as a cssconditionrule, and therefore both a cssgroupingrule and a cssrule, cssmediarule also implements the properties of these
interfaces.
... methods as a cssconditionrule, and therefore both a cssgroupingrule and a cssrule, cssmediarule also implements the methods of that
interface.
CSSPageRule - Web APIs
csspagerule is an
interface representing a single css @page rule.
... it implements the cssrule
interface with a type value of 6 (cssrule.page_rule).
...
interface csspagerule : cssrule { attribute domstring selectortext; readonly attribute cssstyledeclaration style; }; properties as a cssrule, csspagerule also implements the properties of this
interface.
... methods as a cssrule, csspagerule also implements the methods of that
interface.
CSSSupportsRule - Web APIs
the csssupportsrule
interface describes an object representing a single css @supports at-rule.
... it implements the cssconditionrule
interface, and therefore the cssrule and cssgroupingrule
interfaces with a type value of 12 (cssrule.supports_rule).
...
interface csssupportsrule : cssconditionrule { } properties as a cssconditionrule and therefore a cssrule and a cssgroupingrule, csssupportsrule also implements the properties of these
interfaces.
... methods as a cssconditionrule and therefore a cssruleand a cssgroupingrule, csssupportsrule also implements the methods of that
interface.
Using dynamic styling information - Web APIs
the css object model (cssom), part of the dom, exposes specific
interfaces allowing manipulation of a wide amount of information regarding css.
... initially defined in the dom level 2 style recommendation, these
interfaces forms now a specification, css object model (cssom) which aims at superseding it.
... the basic style object exposes the stylesheet and the cssstylesheet
interfaces.
... those
interfaces contain members like insertrule, selectortext, and parentstylesheet for accessing and manipulating the individual style rules that make up a css stylesheet.
Clipboard - Web APIs
the clipboard
interface implements the clipboard api, providing—if the user grants permission—both read and write access to the contents of the system clipboard.
... the clipboard is a data buffer that is used for short-term, data storage and/or data transfers, this can be between documents or applications it is usually implemented as an anonymous, temporary data buffer, sometimes called the paste buffer, that can be accessed from most or all programs within the environment via defined programming
interfaces.
...to these
interfaces.
... methods clipboard is based on the eventtarget
interface, and includes its methods.
Comment - Web APIs
the comment
interface represents textual notations within markup; although it is generally not visually shown, such comments are available to be read in the source view.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,...
.../docs/web/api/comment" target="_top"><rect x="436" y="1" width="75" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="473.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">comment</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no specific property, but inherits those of its parent, characterdata, and indirectly those of node.
... methods this
interface has no specific method, but inherits those of its parent, characterdata, and indirectly those of node.
Constraint validation API - Web APIs
constraint validation
interfaces validitystate the validitystate
interface represents the validity states that a form control element can have, with respect to its defined constraints.
... extensions to other
interfaces the constraint validation api extends the
interfaces for the form-associated elements listed below with a number of new properties and methods (elements that can have a form attribute that indicates their form owner): htmlbuttonelement htmlfieldsetelement htmlinputelement htmlobjectelement htmloutputelement htmlselectelement htmltextareaelement properties validity a read-only property that returns a validitystate object, whose properties represent validation errors for the value of that element.
...elements with the htmlobjectelement
interface are never candidates for constraint validation.
... recommendation first snapshot of html living standard containing this
interface.
ContentIndex - Web APIs
the contentindex
interface of the content index api allows developers to register their offline enabled content with the browser.
... properties there are no properties of this
interface.
... examples feature detection and
interface access here we get a reference to the serviceworkerregistration, then check for the index property, which gives us access to the content index
interface.
...content index if (!registration.index) { return; } // register content try { await registration.index.add(data); } catch (e) { console.log('failed to register content: ', e.message); } } retrieving items within the current index the below example shows an asynchronous function that retrieves items within the content index and iterates over each entry, building a list for the
interface.
ContentIndexEvent - Web APIs
the contentindexevent
interface of the content index api defines the object used to represent the contentdelete event.
... the contentdelete event is only fired when the deletion happens due to interaction with the browser's built-in user
interface.
... properties in addition to the properties listed below, this
interface inherits the properties of its parent
interface, extendableevent.
... methods while contentindexevent offers no methods of its own, it inherits any specified by its parent
interface, extendableevent.
Crypto - Web APIs
the crypto
interface represents basic cryptography features available in the current context.
... properties this
interface implements properties defined on randomsource.
... methods this
interface implements methods defined on randomsource.
... usage notes you should avoid using the web crypto api on insecure contexts, even though the crypto
interface is present on insecure contexts, as is the window.crypto property.
Document.fonts - Web APIs
the fonts property of the document
interface returns the fontfaceset
interface of the document.
... syntax let fontfaceset = document.fonts; value the returned value is the fontfaceset
interface of the document.
... the fontfaceset
interface is useful for loading new fonts, checking the status of previously loaded fonts etc.
... see also fontfaceset
interface fontface ...
ElementCSSInlineStyle - Web APIs
the elementcssinlinestyle mixin describes cssom-specific features common to the htmlelement, svgelement and mathmlelement
interfaces.
... each of these
interfaces can, of course, add more features in addition to the ones listed below.
... note: elementcssinlinestyle is a mixin and not an
interface; you can't actually create an object of type elementcssinlinestyle.
...when getting, it returns a cssstyledeclaration object that contains a list of all styles properties for that element with values assigned for the attributes that are defined in the element's inline style attribute.methodsthis
interface has no methods.
Event - Web APIs
the event
interface represents an event which takes place in the dom.
... there are many types of events, some of which use other
interfaces based on the main event
interface.
...
interfaces based on event below is a list of
interfaces which are based on the main event
interface, with links to their respective documentation in the mdn api reference.
... note that all event
interfaces have names which end in "event".
File - Web APIs
the file
interface provides information about files and allows javascript in a web page to access their content.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/blob" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde...
... instance methods the file
interface doesn't define any methods, but inherits methods from the blob
interface: blob.prototype.slice([start[, end[, contenttype]]]) returns a new blob object containing the data in the specified range of bytes of the source blob.
... specifications specification status comment file apithe definition of 'the file
interface' in that specification.
FocusEvent - Web APIs
the focusevent
interface represents focus-related events, including focus, blur, focusin, and focusout.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/uievent" target="_top"><re...
... properties this
interface also inherits properties from its parent uievent, and indirectly from event.
... methods this
interface has no specific methods.
Using the Frame Timing API - Web APIs
the performanceframetiming
interface provides frame timing data about the browser's event loop.
... this document describes how to use the performanceframetiming
interfaces including example code.
... for an overview of these
interfaces see frame timing api.
... frame observers the performance observer
interfaces allow an application to register an observer for specific performance event types.
Frame Timing API - Web APIs
the performanceframetiming
interface provides frame timing data about the browser's event loop.
... example code of the
interfaces described in this document is included in using the frame timing api.
... performance frames the performanceframetiming
interface extends the following performanceentry properties (for "frame" performance entry types) by qualifying and constrainting the properties as follows: performanceentry.entrytype set to "frame".
... frame observers the performance observer
interfaces allow an application to register an observer for specific performance event types.
Gamepad API - Web APIs
it contains three
interfaces, two events and one specialist function, to respond to gamepads being connected and disconnected, and to access other information about the gamepads themselves, and what buttons and other controls are currently being pressed.
...
interfaces gamepad represents a gamepad/controller connected to the computer.
... see also the extensions to the gamepad
interface, for features that allow you to access the above information.
... extensions to other
interfaces navigator navigator.getgamepads() an extension to the navigator object that returns an array of gamepad objects, one for each connected gamepad.
Geolocation - Web APIs
the geolocation
interface represents an object able to programmatically obtain the position of the device.
... an object with this
interface is obtained using the navigator.geolocation property implemented by the navigator object.
... properties the geolocation
interface neither implements, nor inherits any property.
... methods the geolocation
interface doesn't inherit any method.
GeolocationPositionError - Web APIs
the geolocationpositionerror
interface represents the reason of an error occurring when using the geolocating device.
... properties the geolocationpositionerror
interface doesn't inherit any property.
...specifications note that this is primarily intended for debugging use and not to be shown directly in a user
interface.
... methods the geolocationpositionerror
interface neither implements nor inherits any method.
GestureEvent - Web APIs
the gestureevent is a proprietary
interface specific to webkit which gives information regarding multi-touch gestures.
... events using this
interface include gesturestart, gesturechange, and gestureend.
... properties this
interface also inherits properties of its parents, uievent and event.
...initial value: 1.0 methods this
interface also inherits methods of its parents, uievent and event.
HTMLAudioElement - Web APIs
the htmlaudioelement
interface provides access to the properties of <audio> elements, as well as methods to manipulate them.
... it's based on, and inherits properties and methods from, the htmlmediaelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...listen to events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
HTMLCanvasElement - Web APIs
the htmlcanvaselement
interface provides properties and methods for manipulating the layout and presentation of <canvas> elements.
... the htmlcanvaselement
interface also inherits the properties and methods of the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...when called, the callback is passed a "printstate" object that implements the mozcanvasprintstate
interface.
HTMLDocument - Web APIs
the htmldocument
interface, which may be accessed through the window.htmldocument property, extends the window.htmldocument property to include methods and properties that are specific to html documents.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
...you can find documentation for the members of htmldocument under the document
interface.
... living standard turn the htmldocument
interface into a document extension.
HTMLEmbedElement - Web APIs
the htmlembedelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <embed> elements.
... this topic describes the htmlembedelement
interface as defined in the standard.
... it does not address earlier, non-standardized version of the
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rec...
HTMLLinkElement - Web APIs
the htmllinkelement
interface represents reference information for external resources and the relationship of those resources to a document and vice-versa (corresponds to <link> element; not to be confused with <a>, which is represented by htmlanchorelement).
... this object inherits all of the properties and methods of the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
... obsolete added a second inheritence, the linkstyle
interface.
HTMLOrForeignElement - Web APIs
the htmlorforeignelement mixin describes several features common to the htmlelement, svgelement and mathmlelement
interfaces.
... each of these
interfaces can, of course, add more features in addition to the ones listed below.
... note: htmlorforeignelement is a mixin and not an
interface; you can't actually create an object of type htmlorforeignelement.
... propertiesdataset read only the dataset read-only property of the htmlorforeignelement
interface provides read/write access to all the custom data attributes (data-*) set on the element.nonce the nonce property of the htmlorforeignelement
interface returns the cryptographic number used once that is used by content security policy to determine whether a given fetch will be allowed to proceed.tabindexthe tabindex property of the htmlorforeignelement
interface represents the tab order of the current element.methodsblur()the htmlelement.blur() method removes keyboard focus from the current element.focus()the htmlelement.focus() method sets focus on the specified element, if it can be focused.
HTMLOutputElement - Web APIs
the htmloutputelement
interface provides properties and methods (beyond those inherited from htmlelement) for manipulating the layout and presentation of <output> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...tputelement" target="_top"><rect x="321" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmloutputelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, htmlelement.
... methods this
interface also inherits methods from its parent, htmlelement.
HTMLShadowElement - Web APIs
the htmlshadowelement
interface represents a <shadow> html element, which is used in shadow dom.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...adowelement" target="_top"><rect x="321" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlshadowelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface inherits the properties of htmlelement.
... methods this
interface inherits the methods of htmlelement.
HTMLSpanElement - Web APIs
the htmlspanelement
interface represents a <span> element and derives from the htmlelement
interface, but without implementing any additional properties or methods.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...mlspanelement" target="_top"><rect x="341" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="416" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlspanelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties, but inherits properties from: htmlelement.
... methods this
interface has no methods, but inherits methods from: htmlelement.
HTMLStyleElement - Web APIs
the htmlstyleelement
interface represents a <style> element.
... this
interface doesn't allow to manipulate the css it contains (in most case).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111...
... obsolete added a second inheritence, the linkstyle
interface.
HTMLVideoElement - Web APIs
the htmlvideoelement
interface provides special properties and methods for manipulating video objects.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-...
... x="131" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="211" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlvideoelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its ancestor
interfaces, htmlmediaelement, and htmlelement.
...listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
Dragging and Dropping Multiple Items - Web APIs
caution: all of the methods and properties with a moz prefix (such as mozsetdataat() are gecko specific
interfaces.
... these
interfaces will only work with gecko based browsers.
... the drag processing described in this document use the datatransfer
interface.
... this processing does not use the datatransferitem
interface nor the datatransferitemlist
interface.
HashChangeEvent - Web APIs
the hashchangeevent
interface represents events that fire when the fragment identifier of the url has changed.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" ...
...ashchangeevent" target="_top"><rect x="116" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="191" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">hashchangeevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits the properties of its parent, event.
... methods this
interface has no methods of its own, but inherits the methods of its parent, event.
IDBCursorWithValue - Web APIs
the idbcursorwithvalue
interface of the indexeddb api represents a cursor for traversing or iterating over multiple records in a database.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/idbcursor" target="_top"><rect x="1" y="1" width="90" height="50" fill="#fff" stroke="#...
..."><rect x="131" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="221" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">idbcursorwithvalue</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} methods inherits methods from its parent
interface, idbcursor.
... properties inherits properties from its parent
interface, idbcursor.
IDBDatabase - Web APIs
the idbdatabase
interface of the indexeddb api provides a connection to a database; you can use an idbdatabase object to open a transaction on your database then create, manipulate, and delete objects (data) in that database.
... the
interface provides the only way to get and manage versions of the database.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
IDBRequest - Web APIs
the idbrequest
interface of the indexeddb api provides access to results of asynchronous requests to databases and database objects using event handler attributes.
... the
interface idbopendbrequest is derived from idbrequest.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
IIRFilterNode - Web APIs
the iirfilternode
interface of the web audio api is a audionode processor which implements a general infinite impulse response (iir) filter; this type of filter can be used to implement tone control devices and graphic equalizers as well.
... number of inputs 1 number of outputs 1 channel count mode "max" channel count same as on the input channel interpretation "speakers" typically, it's best to use the biquadfilternode
interface to implement higher-order filters.
...you may also find this
interface useful if you don't need automation, or for other reasons.
... properties this
interface has no properties of its own; however, it inherits properties from its parent, audionode.
InputEvent - Web APIs
the inputevent
interface represents an event notifying of editable content change.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/uievent" target="_top"><re...
... properties this
interface inherits properties from its parents, uievent and event.
... methods this
interface inherits methods from its parents, uievent and event.
InstallEvent - Web APIs
the parameter passed into the oninstall handler, the installevent
interface represents an install action that is dispatched on the serviceworkerglobalscope of a serviceworker.
... this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/extendableevent" target="_t...
... note: logging statements are visible in google chrome via the "inspect"
interface for the relevant service worker accessed via chrome://serviceworker-internals.
MSGestureEvent - Web APIs
the msgestureevent is a proprietary
interface specific to internet explorer and microsoft edge which represents events that occur due to touch gestures.
... events using this
interface include msgesturestart, msgestureend, msgesturetap, msgesturehold, msgesturechange, and msinertiastart.
... properties this
interface also inherits properties of its parents, uievent and event.
... methods this
interface also inherits methods of its parents, uievent and event.
MediaDeviceInfo.deviceId - Web APIs
the deviceid readonly property of the mediadeviceinfo
interface returns a domstring that is an identifier for the represented device and is persisted across sessions.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetdeviceidchrome full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfilledge full support 12firefox full support 39ie no support noopera no support nonotes no support nonotes notes this property can be...
... used in opera by using the adapter.js polyfill.safari no support nowebview android full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfillchrome android full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfillfirefox android full support 39opera android no support nonotes no support nonotes notes ...
...this property can be used in opera by using the adapter.js polyfill.safari ios no support nosamsung internet android full support 6.0notes full support 6.0notes notes for earlier versions, this
interface is available through the adapter.js polyfilllegend full support full support no support no supportsee implementation notes.see implementation notes.
MediaDeviceInfo.kind - Web APIs
the kind readonly property of the mediadeviceinfo
interface returns an enumerated value, that is either "videoinput", "audioinput" or "audiooutput".
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetkindchrome full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfilledge full support 12firefox full support 39ie no support noopera no support nonotes no support nonotes notes this property can be...
... used in opera by using the adapter.js polyfill.safari no support nowebview android full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfillchrome android full support 55notes full support 55notes notes for earlier versions, this
interface is available through the adapter.js polyfillfirefox android full support 39opera android no support nonotes no support nonotes notes ...
...this property can be used in opera by using the adapter.js polyfill.safari ios no support nosamsung internet android full support 6.0notes full support 6.0notes notes for earlier versions, this
interface is available through the adapter.js polyfilllegend full support full support no support no supportsee implementation notes.see implementation notes.
MediaDevices - Web APIs
the mediadevices
interface provides access to connected media input devices like cameras and microphones, as well as screen sharing.
... properties inherits properties from its parent
interface, eventtarget.
... methods inherits methods from its parent
interface, eventtarget.
... getsupportedconstraints() returns an object conforming to mediatracksupportedconstraints indicating which constrainable properties are supported on the mediastreamtrack
interface.
MediaStream - Web APIs
the mediastream
interface represents a stream of media content.
... some user agents subclass this
interface to provide more precise information or functionality, like in canvascapturemediastream.
... properties this
interface inherits properties from its parent, eventtarget.
... methods this
interface inherits methods from its parent, eventtarget.
Media Session API - Web APIs
media session concepts and usage the mediametadata
interface lets a web site provide rich metadata to the platform ui for media that is playing.
... the mediasession
interface lets users control playback of media through user-agent defined
interface elements.
... accessing the media session api the primary
interface for the media session api is the mediasession
interface.
...for example, to set the current state of the media session to playing: navigator.mediasession.playbackstate = "playing";
interfaces mediametadata allows a web page to provide rich media metadata, for display in a platform ui.
Microdata DOM API - Web APIs
rop="http://example.com/color">white</span> paws and belly.</p> <img itemprop="img" src="hedral.jpeg" alt="" title="hedral, age 18 months"> </section> ...it would result in the following output: name http://example.com/fn desc http://example.com/color img (the duplicate occurrence of "http://example.com/color" is not included in the list.) htmlpropertiescollection the htmlpropertiescollection
interface is used for collections of elements that add name-value pairs to a particular item in the microdata model.
...
interface description language
interface htmlpropertiescollection : htmlcollection { // inherits length and item() getter propertynodelist?
... nameditem(domstring name); // shadows inherited nameditem() readonly attribute domstring[] names; }; typedef sequence<any> propertyvaluearray;
interface propertynodelist : nodelist { propertyvaluearray getvalues(); }; collection .
... members of the propertynodelist
interface inherited from the nodelist
interface must behave as they would on a nodelist object.
NamedNodeMap - Web APIs
the namednodemap
interface represents a collection of attr objects.
... although called namednodemap, this
interface doesn't deal with node objects but with attr objects, which were originally a specialized class of node, and still are in some implementations.
... properties this
interface doesn't inherit any property.
... methods this
interface doesn't inherit any method.
Navigator.credentials - Web APIs
the credentials property of the navigator
interface returns the credentialscontainer
interface, which exposes methods to request credentials.
... the credentialscontainer
interface also notifies the user agent when an interesting event occurs, such as a successful sign-in or sign-out.
... this
interface can be used for feature detection.
... syntax var credentialscontainer = navigator.credentials value the credentialscontainer
interface.
Navigator - Web APIs
the navigator
interface represents the state and the identity of the user agent.
... navigator.credentials returns the credentialscontainer
interface which exposes methods to request credentials and notify the user agent when interesting events occur such as successful sign in or sign out.
... navigator.wakelock read only returns a wakelock
interface you can use to request screen wake locks and prevent screen from dimming, turning off, or showing a screen saver.
... navigator.storagequota read only returns a storagequota
interface which provides means to query and request storage usage and quota information.
NavigatorID - Web APIs
the navigatorid
interface contains methods and properties related to the identity of the browser.
... there is no object of type navigatorid, but other
interfaces, like navigator or workernavigator, implement it.
... properties the navigatorid
interface doesn't inherit any properties.
... methods the navigatorid
interface doesn't inherit any methods.
NavigatorOnLine - Web APIs
the navigatoronline
interface contains methods and properties related to the connectivity status of the browser.
... there is no object of type navigatoronline, but other
interfaces, like navigator or workernavigator, implement it.
... properties the navigatoronline
interface doesn't inherit any property.
... methods the navigatoronline
interface neither implements, nor inherit any method.
Network Information API - Web APIs
the entire api consists of the addition of the networkinformation
interface and a single property to the navigator
interface: navigator.connection.
... let preloadvideo = true; var connection = navigator.connection || navigator.mozconnection || navigator.webkitconnection; if (connection) { if (connection.effectivetype === 'slow-2g') { preloadvideo = false; } }
interfaces networkinformation provides information about the connection a device is using to communicate with the network and provides a means for scripts to be notified if the connection type changes.
... the networkinformation
interfaces cannot be instantiated.
... it is instead accessed through the navigator
interface.
Node - Web APIs
the dom node
interface is an abstract base class upon which many other dom api objects are based, thus letting those object types to be used similarly and often interchangeably.
... in addition, every kind of dom node is represented by an
interface based on node.
... in some cases, a particular feature of the base node
interface may not apply to one of its child
interfaces; in that case, the inheriting node may return null or throw an exception, depending on circumstances.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill...
NodeFilter - Web APIs
a nodefilter
interface represents an object used to filter the nodes in a nodeiterator or treewalker.
... note: the browser doesn't provide any object implementing this
interface.
... properties this
interface neither implements nor inherits any properties.
... methods this
interface doesn't inherit any methods.
OrientationSensor - Web APIs
the orientationsensor
interface of the the sensor apis is the base class for orientation sensors.
... this
interface cannot be used directly.
... instead it provides properties and methods accessed by
interfaces that inherit from it.
...
interfaces based on orientationsensor below is a list of
interfaces based on the orientationsensor
interface.
PaintWorklet - Web APIs
the paintworklet
interface of the css painting api programmatically generates an image where a css property expects a file.
... access this
interface through css.paintworklet.
... methods this
interface inherits methods from worklet.
... css.paintworklet.addmodule() the addmodule() method, inhertied from the worklet
interface loads the module in the given javascript file and adds it to the current paintworklet.
ParentNode.lastElementChild - Web APIs
note: this property was initially defined in the elementtraversal pure
interface.
... as this
interface contained two distinct set of properties, one aimed at node that have children, one at those that are children, they have been moved into two separate pure
interfaces, parentnode and childnode.
... living standard splitted the elementtraversal
interface in childnode and parentnode.
... the document and documentfragment implemented the new
interfaces.
PaymentRequest.show() - Web APIs
the paymentrequest
interface's show() method instructs the user agent to begin the process of showing and handling the user
interface for the payment request to the user.
... if your architecture doesn't necessarily have all of the data ready to go at the moment it instantiates the payment
interface by calling show(), specify the detailspromise parameter, providing a promise that is fulfilled once the data is ready.
... if this is provided, show() will not allow the user to interact with the payment
interface until the promise is fulfilled, so that data can be updated prior to the user engaging with the payment process.
... syntax paymentpromise = paymentrequest.show(detailspromise); parameters detailspromise optional an optional promise that you can provide if your architecture requires that the payment request's details need to be updated between instantiating the payment
interface and the user beginning to interact with it.
PerformanceEntry - Web APIs
" + properties[i] + " is not supported"); } } } specifications specification status comment resource timing level 3 editor's draft resource timing level 2 working draft resource timing level 1 candidate recommendation adds the performanceresourcetiming
interface and the resource value for entrytype.
... navigation timing level 2 working draft navigation timing recommendation adds the performancenavigationtiming
interface and the navigation value for entrytype.
... user timing level 2 working draft user timing recommendation adds the performancemark and performancemeasure
interfaces as well as the mark and measure values for entrytype.
... frame timing draft adds the performanceframetiming
interface and the frame value for entrytype.
PerformanceFrameTiming - Web APIs
performanceframetiming is an abstract
interface that provides frame timing data about the browser's event loop.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceframetiming" target="_top"><rect x="1" y="1" width="220" height="50" fill="#...
...f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="111" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceframetiming</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but it extends the following performanceentry properties (for "frame" performance entry types) by qualifying and constraining the properties as follows: performanceentry.entrytype returns "frame".
... methods this
interface has no methods.
PerformanceMark - Web APIs
performancemark is an abstract
interface for performanceentry objects with an entrytype of "mark".
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceentry</text></a><polyline points="1...
...erformancemark" target="_top"><rect x="201" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="276" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performancemark</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but it extends the following performanceentry properties by qualifying/constraining the properties as follows: performanceentry.entrytype returns "mark".
...(a mark has no duration.) methods this
interface has no methods.
PerformanceMeasure - Web APIs
performancemeasure is an abstract
interface for performanceentry objects with an entrytype of "measure".
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceentry</text...
...ancemeasure" target="_top"><rect x="201" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="291" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performancemeasure</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but it extends the following performanceentry properties by qualifying/constrainting the properties as follows: performanceentry.entrytype returns "measure".
... methods this
interface has no methods.
PerformancePaintTiming - Web APIs
the performancepainttiming
interface of the paint timing provides timing information about "paint" (also called "render") operations during web page construction.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-siz...
...ttiming" target="_top"><rect x="201" y="1" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="311" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performancepainttiming</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but it extends the following performanceentry properties (for "paint" performance entry types) by qualifying and constraining the properties as follows: performanceentry.entrytype returns "paint".
... methods this
interface has no methods.
RTCDataChannel - Web APIs
the rtcdatachannel
interface represents a network channel which can be used for bidirectional peer-to-peer transfers of arbitrary data.
... propertiesalso inherits properties from: eventtargetbinarytype the property binarytype on the rtcdatachannel
interface is a domstring which specifies the type of javascript object which should be used to represent binary data received on the rtcdatachannel.
...this event is represented by the messageevent
interface.
...either peer is permitted to call this method to initiate closure of the channel.send()the send() method of the rtcdatachannel
interface sends data across the data channel to the remote peer.
RTCDtlsTransport - Web APIs
the rtcdtlstransport
interface provides access to information about the datagram transport layer security (dtls) transport over which a rtcpeerconnection's rtp and rtcp packets are sent and received by its rtcrtpsender and rtcrtpreceiver objects.
... features of the dtls transport include the addition of security to the underlying transport; the rtcdtlstransport
interface can be used to obtain information about the underlying transport and the security added to it by the dtls layer.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/rtcdtlstransport" target="_top"><rect x="1" y="1" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">rtcdtlstransport</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} propertiesicetransport read only the read-only rtcdtlstransport property icetransport c...
...ontains a reference to the underlying rtcicetransport.state read only the state read-only property of the rtcdtlstransport
interface provides information which describes a datagram transport layer security (dtls) transport state.methodsthis
interface has no methods.
RTCErrorEvent - Web APIs
the webrtc api's rtcerrorevent
interface represents an error sent to a webrtc object.
... it's based on the standard event
interface, but adds rtc-specific information describing the error, as shown below.
... properties in addition to the standard properties available on the event
interface, rtcerrorevent also includes the following: error read only an rtcerror object specifying the error which occurred; this object includes the type of error that occurred, information about where the error occurred (such as which line number in the sdp or what sctp cause code was at issue).
... methods no additional methods are provided beyond any found on the parent
interface, event.
RTCIceTransport - Web APIs
the rtcicetransport
interface provides access to information about the ice transport layer over which the data is being sent and received.
... properties the rtcicetransport
interface inherits properties from its parent, eventtarget.
... methods also includes methods from eventtarget, the parent
interface.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
RadioNodeList - Web APIs
the radionodelist
interface represents a collection of radio elements in a <form> or a <fieldset> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/nodelist" target="_top"><rect x="1" y="1" width="80" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="41" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">nodelist</text></a><polyline points="81,25 91,20 91,30 81,25" stroke="#d4dde4" fill="none"/><line x1="91" y1="25" x2="121" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/radionodelist" target=...
..."_top"><rect x="121" y="1" width="130" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="186" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">radionodelist</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties the radionodelist
interface inherits the properties of nodelist.
... methods the radionodelist
interface inherits the methods of nodelist.
SVGAElement - Web APIs
the svgaelement
interface provides access to the properties of <a> element, as well as methods to manipulate them.
... properties this
interface also inherits properties from its parent, svggraphicselement, and implements properties from svgurireference and htmlhyperlinkelementutils.
... methods this
interface has no methods but inherits methods from its parent, svggraphicselement.
...not _blank"); } } specifications specification status comment scalable vector graphics (svg) 2 candidate recommendation replaced inheritance from svgelement by svggraphicselement and removed the
interface implementations of svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable by htmlhyperlinkelementutils scalable vector graphics (svg) 1.1 (second edition) recommendation initial definition ...
SVGAltGlyphDefElement - Web APIs
the svgaltglyphdefelement
interface corresponds to the <altglyphdef> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgaltglyphdefelement" target="_top"><rect x="1" y="1" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="106" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgaltglyphdefelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: this
interface was removed in the svg 2 specification.
... properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGAltGlyphElement - Web APIs
the svgaltglyphelement
interface represents an <altglyph> element.
... this
interface makes it possible to implement more sophisticated and particular glyph characters.
... properties this
interface also inherits properties from its parent
interface, svggraphicselement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGAltGlyphItemElement - Web APIs
the svgaltglyphitemelement
interface corresponds to the <altglyphitem> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgaltglyphitemelement" target="_top"><rect x="1" y="1" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="111" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgaltglyphitemelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: this
interface was removed in the svg 2 specification.
... properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGAnimateElement - Web APIs
the svganimateelement
interface corresponds to the <animate> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...imateelement" target="_top"><rect x="81" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="166" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svganimateelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svganimationelement.
... methods this
interface has no methods but inherits methods from its parent, svganimationelement.
SVGAnimateMotionElement - Web APIs
the svganimatemotionelement
interface corresponds to the <animatemotion> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...lement" target="_top"><rect x="21" y="65" width="230" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="136" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svganimatemotionelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svganimationelement.
... methods this
interface has no methods but inherits methods from its parent, svganimationelement.
SVGAnimateTransformElement - Web APIs
the svganimatetransformelement
interface corresponds to the <animatetransform> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ent" target="_top"><rect x="-9" y="65" width="260" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="121" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svganimatetransformelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svganimationelement.
... methods this
interface has no methods but inherits methods from its parent, svganimationelement.
SVGCircleElement - Web APIs
the svgcircleelement
interface is an
interface for the <circle> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 700 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...rcleelement" target="_top"><rect x="-119" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-39" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgcircleelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggeometryelement.
... methods this
interface has no methods but inherits methods from its parent, svggeometryelement.
SVGClipPathElement - Web APIs
the svgclippathelement
interface provides access to the properties of <clippath> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...athelement" target="_top"><rect x="301" y="65" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="391" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgclippathelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent, svgelement.
SVGCursorElement - Web APIs
the svgcursorelement
interface provides access to the properties of <cursor> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ursorelement" target="_top"><rect x="321" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="401" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgcursorelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement, and implements properties from svgurireference.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent, svgelement.
SVGDefsElement - Web APIs
the svgdefselement
interface corresponds to the <defs> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svgdefselement" target="_top"><rect x="121" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="191" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgdefselement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent, svggraphicselement.
... methods this
interface doesn't implement any specific methods, but inherits properties from its parent, svggraphicselement.
SVGDescElement - Web APIs
the svgdescelement
interface corresponds to the <desc> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svgdescelement" target="_top"><rect x="341" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="411" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgdescelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggeometryelement.
... methods this
interface has no methods but inherits methods from its parent, svggeometryelement.
SVGEllipseElement - Web APIs
the svgellipseelement
interface provides access to the properties of <ellipse> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...pseelement" target="_top"><rect x="-129" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-44" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgellipseelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svggeometryelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svggeometryelement.
SVGFEComponentTransferElement - Web APIs
the svgfecomponenttransferelement
interface corresponds to the <fecomponenttransfer> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... target="_top"><rect x="191" y="65" width="290" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="336" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfecomponenttransferelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and implements methods of svgfilterprimitivestandardattributes.
SVGFEDiffuseLightingElement - Web APIs
the svgfediffuselightingelement
interface corresponds to the <fediffuselighting> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...t" target="_top"><rect x="211" y="65" width="270" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="346" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfediffuselightingelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFEDistantLightElement - Web APIs
the svgfedistantlightelement
interface corresponds to the <fedistantlight> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ment" target="_top"><rect x="241" y="65" width="240" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="361" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfedistantlightelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement.
SVGFEDropShadowElement - Web APIs
the svgfedropshadowelement
interface corresponds to the <fedropshadow> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...lement" target="_top"><rect x="261" y="65" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="371" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfedropshadowelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface also inherits methods of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFEFloodElement - Web APIs
the svgfefloodelement
interface corresponds to the <feflood> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...loodelement" target="_top"><rect x="311" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfefloodelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement, and implements properties from svgfilterprimitivestandardattributes.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement, and implements methods from svgfilterprimitivestandardattributes.
SVGFEFuncAElement - Web APIs
the svgfefuncaelement
interface corresponds to the <fefunca> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...efuncaelement" target="_top"><rect x="-79" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="6" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfefuncaelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface not provide any specific properties, but inherits properties from its parent
interface, svgcomponenttransferfunctionelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgcomponenttransferfunctionelement.
SVGFEFuncBElement - Web APIs
the svgfefuncbelement
interface corresponds to the <fefuncb> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...efuncbelement" target="_top"><rect x="-79" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="6" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfefuncbelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface not provide any specific properties, but inherits properties from its parent
interface, svgcomponenttransferfunctionelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgcomponenttransferfunctionelement.
SVGFEFuncGElement - Web APIs
the svgfefuncgelement
interface corresponds to the <fefuncg> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...efuncgelement" target="_top"><rect x="-79" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="6" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfefuncgelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface not provide any specific properties, but inherits properties from its parent
interface, svgcomponenttransferfunctionelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgcomponenttransferfunctionelement.
SVGFEFuncRElement - Web APIs
the svgfefuncrelement
interface corresponds to the <fefuncr> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...efuncrelement" target="_top"><rect x="-79" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="6" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfefuncrelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface not provide any specific properties, but inherits properties from its parent
interface, svgcomponenttransferfunctionelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgcomponenttransferfunctionelement.
SVGFEImageElement - Web APIs
the svgfeimageelement
interface corresponds to the <feimage> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...mageelement" target="_top"><rect x="311" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfeimageelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and implements properties of svgfilterprimitivestandardattributes and svgurireference.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and implements methods of svgfilterprimitivestandardattributesand svgurireference.
SVGFEMergeElement - Web APIs
the svgfemergeelement
interface corresponds to the <femerge> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ergeelement" target="_top"><rect x="311" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfemergeelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface not provide any specific properties, but inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFEMergeNodeElement - Web APIs
the svgfemergenodeelement
interface corresponds to the <femergenode> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...element" target="_top"><rect x="271" y="65" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="376" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfemergenodeelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement.
SVGFEOffsetElement - Web APIs
the svgfeoffsetelement
interface corresponds to the <feoffset> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...setelement" target="_top"><rect x="301" y="65" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="391" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfeoffsetelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFEPointLightElement - Web APIs
the svgfepointlightelement
interface corresponds to the <fepointlight> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...lement" target="_top"><rect x="261" y="65" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="371" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfepointlightelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement.
SVGFESpecularLightingElement - Web APIs
the svgfespecularlightingelement
interface corresponds to the <fespecularlighting> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
..." target="_top"><rect x="201" y="65" width="280" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="341" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfespecularlightingelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFESpotLightElement - Web APIs
the svgfespotlightelement
interface corresponds to the <fespotlight> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...element" target="_top"><rect x="271" y="65" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="376" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfespotlightelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement.
SVGFETileElement - Web APIs
the svgfetileelement
interface corresponds to the <fetile> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...etileelement" target="_top"><rect x="321" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="401" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfetileelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement, and also implements properties of svgfilterprimitivestandardattributes.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and also implements methods of svgfilterprimitivestandardattributes.
SVGFontElement - Web APIs
the svgfontelement
interface corresponds to the <font> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontelement" target="_top"><rect x="1" y="1" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="71" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} ...
... properties this
interface has no properties but inherits properties from its parent, svgelement and implements properties from svgexternalresourcesrequired and svgstylable.
... methods this
interface has no methods but inherits methods from its parent, svgelement and implements methods from svgexternalresourcesrequired and svgstylable.
SVGFontFaceElement - Web APIs
the svgfontfaceelement
interface corresponds to the <font-face> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontfaceelement" target="_top"><rect x="1" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="91" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontfaceelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-ev...
...ents: all;} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGFontFaceFormatElement - Web APIs
the svgfontfaceformatelement
interface corresponds to the <font-face-format> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontfaceformatelement" target="_top"><rect x="1" y="1" width="240" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="121" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontfaceformatelement</text></a></svg></div> a:hover text { fill:...
... #0095dd; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGFontFaceNameElement - Web APIs
the svgfontfacenameelement
interface corresponds to the <font-face-name> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontfacenameelement" target="_top"><rect x="1" y="1" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="111" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontfacenameelement</text></a></svg></div> a:hover text { fill: #0095...
...dd; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGFontFaceSrcElement - Web APIs
the svgfontfacesrcelement
interface corresponds to the <font-face-src> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontfacesrcelement" target="_top"><rect x="1" y="1" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="106" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontfacesrcelement</text></a></svg></div> a:hover text { fill: #0095dd;...
... pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGFontFaceUriElement - Web APIs
the svgfontfaceurielement
interface corresponds to the <font-face-uri> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfontfaceurielement" target="_top"><rect x="1" y="1" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="106" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfontfaceurielement</text></a></svg></div> a:hover text { fill: #0095dd;...
... pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGForeignObjectElement - Web APIs
the svgforeignobjectelement
interface provides access to the properties of <foreignobject> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...lement" target="_top"><rect x="31" y="65" width="230" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="146" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgforeignobjectelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggraphicselement and implements properties from svgurireference.
... methods this
interface has no methods but inherits methods from its parent, svggraphicselement and implements methods from svgurireference.
SVGHKernElement - Web APIs
the svghkernelement
interface corresponds to the <hkern> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svghkernelement" target="_top"><rect x="1" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="76" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svghkernelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;...
...} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
SVGLength - Web APIs
svg length
interface the svglength
interface correspond to the <length> basic data type.
...
interface overview also implement none methods void newvaluespecifiedunits(in unsigned short unittype, in float valueinspecifiedunits) void converttospecifiedunits(in unsigned short unittype) properties readonly unsigned short unittype float value float valueinspecifiedunits domstring valueasstring constants svg_lengthtype_unknown = 0 svg_lengthtype_number = 1 svg_lengthtype_percentage = 2 svg_lengthtype_ems = 3 svg_lengthtype_exs = 4 svg_lengthtype_px = 5 svg_lengthtype_cm = 6 svg_lengthtype_mm = 7 ...
... properties name type description unittype unsigned short the type of the value as specified by one of the svg_lengthtype_* constants defined on this
interface.
... exceptions: a domexception with code not_supported_err is raised if unittype is svg_lengthtype_unknown or not a valid unit type constant (one of the other svg_lengthtype_* constants defined on this
interface).
SVGLinearGradientElement - Web APIs
the svglineargradientelement
interface corresponds to the <lineargradient> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ement" target="_top"><rect x="21" y="65" width="240" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="141" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svglineargradientelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggradientelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svggradientelement.
SVGMeshElement - Web APIs
the svgmeshelement
interface provides access to the properties of <mesh> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgmeshelement" target="_top"><rect x="1" y="1" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="71" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgmeshelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits propertie...
...s from its parent
interface, svggeometryelement, and implements the properties of svgurireference.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svggeometryelement, and implements the methods of svgurireference.
SVGMetadataElement - Web APIs
the svgmetadataelement
interface corresponds to the <metadata> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ataelement" target="_top"><rect x="301" y="65" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="391" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgmetadataelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGMissingGlyphElement - Web APIs
the svgmissingglyphelement
interface corresponds to the <missing-glyph> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgmissingglyphelement" target="_top"><rect x="1" y="1" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="111" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgmissingglyphelement</text></a></svg></div> a:hover text { fill: #0095d...
...d; pointer-events: all;} properties this
interface has no properties but inherits properties from its parent, svgelement and implements properties from svgstylable.
... methods this
interface has no methods but inherits methods from its parent, svgelement and implements methods from svgstylable.
SVGPathSeg - Web APIs
svg path segment
interface this is a base
interface that corresponds to a single command within a path data specification.
...
interface overview also implement none methods none properties unsigned short pathsegtype domstring pathsegtypeasletter constants pathseg_unknown = 0 pathseg_closepath = 1 pathseg_moveto_abs = 2 pathseg_moveto_rel = 3 pathseg_lineto_abs = 4 pathseg_lineto_rel = 5 pathseg_curveto_cubic_abs = 6 pathseg_curveto_cubic_rel = 7 pathseg_curveto_quadratic_abs = 8 pathseg_curveto_quadratic_rel = 9 pathseg_arc_abs = 10 pa...
... properties name type description pathsegtype unsigned short the type of the path segment as specified by one of the constants defined on this
interface.
... methods the svgpathseg
interface does not provide any specific methods.
SVGPolygonElement - Web APIs
the svgpolygonelement
interface provides access to the properties of <polygon> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gonelement" target="_top"><rect x="-129" y="65" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-44" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgpolygonelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent, svggeometryelement and also implements properties from svganimatedpoints.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent, svggeometryelement.
SVGPolylineElement - Web APIs
the svgpolylineelement
interface provides access to the properties of <polyline> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...neelement" target="_top"><rect x="-139" y="65" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-49" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgpolylineelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent, svggeometryelement and also implements properties from svganimatedpoints.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent, svggeometryelement.
SVGRadialGradientElement - Web APIs
the svgradialgradientelement
interface corresponds to the <radialgradient> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...ement" target="_top"><rect x="21" y="65" width="240" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="141" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgradialgradientelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svggradientelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svggradientelement.
SVGRenderingIntent - Web APIs
the svgrenderingintent
interface defines the enumerated list of possible values for rendering-intent attributes or descriptors.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgrenderingintent" target="_top"><rect x="1" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="91" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgrenderingintent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: this
interface was removed in the svg 2 specification.
... properties this
interface doesn't implement any specific properties.
... methods this
interface doesn't implement any specific methods.
SVGScriptElement - Web APIs
the svgscriptelement
interface corresponds to the svg <script> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
... candidate recommendation removed the implemented
interface svgexternalresourcesrequired and added the crossorigin property.
SVGSetElement - Web APIs
the svgsetelement
interface corresponds to the <set> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...i/svgsetelement" target="_top"><rect x="121" y="65" width="130" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="186" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgsetelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svganimationelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svganimationelement.
SVGSolidcolorElement - Web APIs
the svgsolidcolorelement
interface corresponds to the <solidcolor> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgsolidcolorelement" target="_top"><rect x="1" y="1" width="200" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="101" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgsolidcolorelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inher...
...its properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGStopElement - Web APIs
the svgstopelement
interface corresponds to the <stop> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...svgstopelement" target="_top"><rect x="341" y="65" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="411" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgstopelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGStyleElement - Web APIs
svg style
interface the svgstyleelement
interface corresponds to the svg <style> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gstyleelement" target="_top"><rect x="331" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgstyleelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svgelement and implements properties from linkstyle.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement and implements methods from linkstyle.
SVGTRefElement - Web APIs
the svgtrefelement
interface corresponds to the <tref> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgtrefelement" target="_top"><rect x="1" y="1" width="140" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="71" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgtrefelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} ...
... properties this
interface has no properties but inherits properties from its parent, svgtextpositioningelement and implements properties from svgurireference.
... methods this
interface has no methods but inherits methods from its parent, svgtextpositioningelement and implements properties from svgurireference.
SVGTSpanElement - Web APIs
the svgtspanelement
interface represents a <tspan> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...spanelement" target="_top"><rect x="-429" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-354" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgtspanelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't provide any specific properties, but inherits the properties from its parent, svgtextpositioningelement.
... methods this
interface doesn't provide any specific methods.
SVGTextPositioningElement - Web APIs
the svgtextpositioningelement
interface is implemented by elements that support attributes that position individual text glyphs.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25...
...t" target="_top"><rect x="-239" y="65" width="250" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="-114" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgtextpositioningelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgtextcontentelement.
... methods this
interface doesn't provide any specific methods, but inherits methods from its parent, svgtextcontentelement.
SVGTitleElement - Web APIs
the svgtitleelement
interface corresponds to the <title> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...gtitleelement" target="_top"><rect x="331" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgtitleelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface doesn't implement any specific properties, but inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGTransform - Web APIs
svg transform
interface svgtransform is the
interface for one of the component transformations within an svgtransformlist; thus, an svgtransform object corresponds to a single component (e.g., scale(…) or matrix(…)) within a transform attribute.
...
interface overview also implement none methods void setmatrix(in svgmatrix matrix) void settranslate(in float tx, in float ty) void setscale(in float sx, in float sy) void setrotate(in float angle, in float cx, in float cy) void setskewx(in float angle) void setskewy(in float angle) properties readonly unsigned short type readonly float angle readonly svgmatrix matrix constants svg_transform_unknown = 0 svg_transform_matrix = 1 svg_transform_translate = 2 svg_transform_scale = 3 svg_transform_rotate = ...
...) transformation svg_transform_rotate 4 a rotate(…) transformation svg_transform_skewx 5 a skewx(…) transformation svg_transform_skewy 6 a skewy(…) transformation properties name type description type unsigned short the type of the value as specified by one of the svg_transform_* constants defined on this
interface.
...in case the matrix object is changed directly (i.e., without using the methods on the svgtransform
interface itself) then the type of the svgtransform changes to svg_transform_matrix.
SVGUnitTypes - Web APIs
the svgunittypes
interface defines a commonly used set of constants used for reflecting gradientunits, patterncontentunits and other similar attributes.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgunittypes" target="_top"><rect x="1" y="1" width="120" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="61" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgunittypes</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} constants name value description svg_unit_type_unknown 0 the type ...
... properties this
interface doesn't implement any specific properties.
... methods this
interface doesn't implement any specific methods.
SVGUseElement - Web APIs
svg use dom
interface the svguseelement
interface corresponds to the <use> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
...i/svguseelement" target="_top"><rect x="131" y="65" width="130" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="196" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svguseelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent
interface, svggraphicselement and implements properties from svgurireference.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svggraphicselement and implements methods from svgurireference.
SVGVKernElement - Web APIs
the svgvkernelement
interface corresponds to the <vkern> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgvkernelement" target="_top"><rect x="1" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="76" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgvkernelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;...
...} properties this
interface has no properties but inherits properties from its parent, svgelement.
... methods this
interface has no methods but inherits methods from its parent, svgelement.
ScriptProcessorNode - Web APIs
the scriptprocessornode
interface allows the generation, processing, or analyzing of audio using javascript.
... the scriptprocessornode
interface is an audionode audio-processing module that is linked to two buffers, one containing the input audio data, one containing the processed output audio data.
... an event, implementing the audioprocessingevent
interface, is sent to the object each time the input buffer contains new data, and the event handler terminates when it has filled the output buffer with data.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface: audioprocess fired when an input buffer of a scriptprocessornode is ready to be processed.
ServiceWorker - Web APIs
the serviceworker
interface of the serviceworker api provides a reference to a service worker.
... a serviceworker object is available in the serviceworkerregistration.active property, and the serviceworkercontainer.controller property — this is a service worker that has been activated and is controlling the page (the service worker has been successfully registered, and the controlled page has been reloaded.) the serviceworker
interface is dispatched a set of lifecycle events — install and activate — and functional events including fetch.
... properties the serviceworker
interface inherits properties from its parent, worker.
... methods the serviceworker
interface inherits methods from its parent, worker, with the exception of worker.terminate — this should not be accessible from service workers.
ServiceWorkerMessageEvent - Web APIs
important: in modern browsers, this
interface has been deprecated.
... service worker messages will now use the messageevent
interface, for consistency with other web messaging features.
... the serviceworkermessageevent
interface of the serviceworker api contains information about an event sent to a serviceworkercontainer target.
... this
interface inherits from the event
interface.
SharedWorkerGlobalScope - Web APIs
properties this
interface inherits properties from the workerglobalscope
interface, and its parent eventtarget, and therefore implements properties from windowtimers, windowbase64, and windoweventhandlers.
... event handlers this
interface inherits event handlers from the workerglobalscope
interface, and its parent eventtarget, and therefore implements event handlers from windowtimers, windowbase64, and windoweventhandlers.
... methods this
interface inherits methods from the workerglobalscope
interface, and its parent eventtarget, and therefore implements methods from windowtimers, windowbase64, and windoweventhandlers.
... events listen to this event using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
SpeechRecognition - Web APIs
the speechrecognition
interface of the web speech api is the controller
interface for the recognition service; this also handles the speechrecognitionevent sent from the recognition service.
... properties speechrecognition also inherits properties from its parent
interface, eventtarget.
... methods speechrecognition also inherits methods from its parent
interface, eventtarget.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
SpeechSynthesis - Web APIs
the speechsynthesis
interface of the web speech api is the controller
interface for the speech service; this can be used to retrieve information about the synthesis voices available on the device, start and pause speech, and other commands besides.
... properties speechsynthesis also inherits properties from its parent
interface, eventtarget.
... methods speechsynthesis also inherits methods from its parent
interface, eventtarget.
... events listen to this event using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
Geometry and reference spaces in WebXR - Web APIs
the foreground includes objects and
interfaces that you can interact with directly.
...the "
interface" column in the table below indicates which of the two types is returned for each reference space type constant..
... reference space descriptors the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
Inputs and input sources - Web APIs
not only would this controller then take the responsibility of clicking through the user
interface of your app, but it would also be considered the "main hand," while other controllers would then be off-hand or additional controllers.
...in this scenario, you iterate over the list of input sources and their profiles to gather information about each input source, then present a user
interface describing each input, allowing the user to assign uses to each of them.
... because this use of the gamepad
interface is a convenience rather than a true application of the gamepad api, there are several differences between how it's used with webxr and how it's used in gamepad api applications.
...while that menu is open, inputs that would otherwise control the avatar might be instead applied to controlling the menu's
interface.
Web NFC API - Web APIs
interfaces ndefmessage
interface that represents ndef messages that can be received from or sent to a compatible device or tag via ndefreader and ndefwriter objects respectively.
... ndefreader
interface that enables reading messages from compatible nfc devices or tags.
... ndefrecord
interface that represents ndef records that can be included in an ndef message.
... ndefwriter
interface used to write ndefmessages to compatible tags or devices.
Using the Web Speech API - Web APIs
the web speech api has a main controller
interface for this — speechrecognition — plus a number of closely-related
interfaces for representing grammar, results, etc.
... browser support support for web speech api speech recognition is curently limited to chrome for desktop and android — chrome has supported it since around version 33 but with prefixed
interfaces, so you need to include prefixed versions of them, e.g.
... the web speech api has a main controller
interface for this — speechsynthesis — plus a number of closely-related
interfaces for representing text to be synthesised (known as utterances), voices to be used for the utterance, etc.
...this is api's entry point — it returns an instance of speechsynthesis, the controller
interface for web speech synthesis.
WindowEventHandlers - Web APIs
the windoweventhandlers mixin describes the event handlers common to several
interfaces like window, or htmlbodyelement and htmlframesetelement.
... each of these
interfaces can implement additional specific event handlers.
... note: windoweventhandlers is a mixin and not an
interface; you can't actually create an object of type windoweventhandlers.
... methods this
interface defines no method.
WorkerGlobalScope - Web APIs
the workerglobalscope
interface of the web workers api is an
interface representing the scope of any worker.
... this
interface is usually specialized by each worker type: dedicatedworkerglobalscope for dedicated workers, sharedworkerglobalscope for shared workers, and serviceworkerglobalscope for serviceworker.
... properties this
interface inherits properties from the eventtarget
interface and windoworworkerglobalscope and windoweventhandlers mixins.
... methods this
interface inherits methods from the eventtarget
interface and windoworworkerglobalscope and windoweventhandlers mixins.
WorkerLocation - Web APIs
the workerlocation
interface defines the absolute location of the script executed by the worker.
... this
interface is only visible from inside a javascript script executed in the context of a web worker.
... properties the workerlocation
interface doesn't inherit any property, but implements properties defined in the urlutilsreadonly
interface.
... methods the workerlocation
interface doesn't inherit any method, but implements methods defined in the urlutilsreadonly
interface.
WorkerNavigator - Web APIs
the workernavigator
interface represents a subset of the navigator
interface allowed to be accessed from a worker.
... properties the workernavigator
interface implements properties from the navigatorid, navigatorlanguage, navigatoronline, navigatordatastore, and navigatorconcurrenthardware
interfaces.
... navigator.storageread only returns a storagemanager
interface for managing persistance permissions and estimating available storage.
... methods the workernavigator
interface implements methods from the navigatorid, navigatorlanguage and navigatoronline
interfaces.
Worklet - Web APIs
the worklet
interface is a lightweight version of web workers and gives developers access to low-level parts of the rendering pipeline.
...the worklet
interface abstracts properties and methods common to all kind of worklets, and cannot be created directly.
...access this
interface through css.paintworklet.
... properties the worklet
interface does not define any properties.
How to check the security state of an XMLHTTPRequest over SSL - Web APIs
const {cc,ci} = require("chrome"); function createtcperrorfromfailedxhr(xhr) { let status = xhr.channel.query
interface(ci.nsirequest).status; let errtype; if ((status & 0xff0000) === 0x5a0000) { // security module const nsinsserrorsservice = ci.nsinsserrorsservice; let nsserrorsservice = cc['@mozilla.org/nss_errors_service;1'].getservice(nsinsserrorsservice); let errorclass; // geterrorclass will throw a generic ns_error_failure if the error code is // somehow not in the set of covered e...
...error) { let channel = xhr.channel; try { dump("connection status:\n"); if (!error) { dump("\tsucceeded\n"); } else { dump("\tfailed: " + error.name + "\n"); } let secinfo = channel.securityinfo; // print general connection security state dump("security information:\n"); if (secinfo instanceof ci.nsitransportsecurityinfo) { secinfo.query
interface(ci.nsitransportsecurityinfo); dump("\tsecurity state of connection: "); // check security state flags if ((secinfo.securitystate & ci.nsiwebprogresslistener.state_is_secure) == ci.nsiwebprogresslistener.state_is_secure) { dump("secure connection\n"); } else if ((secinfo.securitystate & ci.nsiwebprogresslistener.state_is_insecure) == ci...
... { dump("unknown\n"); dump("\tsecurity description: " + secinfo.shortsecuritydescription + "\n"); dump("\tsecurity error message: " + secinfo.errormessage + "\n"); } } else { dump("\tno security info available for this channel\n"); } // print ssl certificate details if (secinfo instanceof ci.nsisslstatusprovider) { var cert = secinfo.query
interface(ci.nsisslstatusprovider) .sslstatus.query
interface(ci.nsisslstatus).servercert; dump("\tcommon name (cn) = " + cert.commonname + "\n"); dump("\tissuer = " + cert.issuerorganization + "\n"); dump("\torganisation = " + cert.organization + "\n"); dump("\tsha1 fingerprint = " + cert.sha1fingerprint + "\n"); var validity = ce...
...rt.validity.query
interface(ci.nsix509certvalidity); dump("\tvalid from " + validity.notbeforegmt + "\n"); dump("\tvalid until " + validity.notaftergmt + "\n"); } } catch(err) { alert(err); } } function test(url) { var req = cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createinstance(); req.open('get', url, true); req.addeventlistener("error", function(e) { var error = createtcperrorfromfailedxhr(req); dumpsecurityinfo(req, error); }, false); req.onload = function(e) { dumpsecurityinfo(req); }; req.send(); } then test("https://addons.mozilla.org"); produced the following output in my console: connection status: succeeded security info: security state: secure common name (cn) = addons.mozilla.org or...
XRSession.requestReferenceSpace() - Web APIs
the requestreferencespace() method of the xrsession
interface returns a promise that resolves with an instance of either xrreferencespace or xrboundedreferencespace as appropriate given the type of reference space requested.
...the "
interface" column in the table below indicates which of the two types is returned for each reference space type constant..
... reference space descriptors the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
XRSession - Web APIs
the webxr device api's xrsession
interface represents an ongoing xr session, providing methods and properties used to interact with and control the session.
... to open a webxr session, use the xrsystem
interface's requestsession() method.
... properties in addition to the properties listed below, xrsession inherits properties from its parent
interface, eventtarget.
... methods xrsession provides the following methods in addition to those inherited from its parent
interface, eventtarget.
XRSessionEvent - Web APIs
the webxr device api's xrsessionevent
interface describes an event which indicates the change of the state of an xrsession.
... properties in addition to properties inherited from its parent
interface, event, xrsessionevent provides the folllowing: session read only the xrsession to which the event refers.
... methods while xrsessionevent defines no methods, it inherits methods from its parent
interface, event.
... session event types the following events are represented using the xrsessionevent
interface, and are permitted values for its type property.
XRSystem - Web APIs
the webxr device api
interface xrsystem provides methods which let you get access to an xrsession object representing a webxr session.
... properties while xrsystem directly offers no properties, it does inherit properties from its parent
interface, eventtarget.
... methods in addition to inheriting methods from its parent
interface, eventtarget, the xrsystem
interface includes the following methods: issessionsupported() returns a promise which resolves to true if the browser supports the given xrsessionmode.
... usage notes thsi
interface was previously known as simply xr in earlier versions of the specification; if you see references to xr in code or documentation, simply replace that with xrsystem.
Accessibility documentation index - Accessibility
here's where to file bugs: 13 using aria: roles, states, and properties aria, accessibility, overview, reference aria defines semantics that can be applied to elements, with these divided into roles (defining a type of user
interface element) and states and properties that are supported by a role.
... 87 an overview of accessible web applications and widgets aria, accessibility, guide, web apps, widget most javascript libraries offer a library of client-side widgets that mimic the behavior of familiar desktop
interfaces.
...operable states that user
interface components and navigation must be operable.
...understandable states that information and the operation of user
interface must be understandable.
Understandable - Accessibility
understandable states that information and the operation of user
interface must be understandable.
... note: to read the w3c definitions for understandable and its guidelines and success criteria, see principle 3: understandable — information and the operation of user
interface must be understandable.
... guideline 3.2 — predictable: make web pages appear and operate in predictable ways this guideline focuses on making user
interfaces intuitive and understandable.
... this is a matter of sensible design — people don't want
interfaces to surprise them; they want things to be intuitive and behave as expected.
Constraint validation - Developer guides
the constraint validation is done in the following ways: by a call to the checkvalidity() or reportvalidity() method of a form-associated dom
interface, (htmlinputelement, htmlselectelement, htmlbuttonelement, htmloutputelement or htmltextareaelement), which evaluates the constraints only on this element, allowing a script to get this information.
... by a call to the checkvalidity() or reportvalidity() method on the htmlformelement
interface.
... calling the submit() method on the htmlformelement
interface doesn't trigger a constraint validation.
... <textarea> the validitystate
interface describes the object returned by the validity property of the element types listed above.
<input type="week"> - HTML: Hypertext Markup Language
the control's user
interface varies from browser to browser; cross-browser support is currently a bit limited, with only chrome/opera and microsoft edge supporting it at this time.
... in chrome/opera the week control provides slots to fill in week and year values, a pop-up calendar
interface to select them more visually, and an "x" button to clear the control's value.
...following attributes: attribute description max the latest year and week to accept as valid input min the earliest year and week to accept as valid input readonly a boolean which, if present, indicates that the user cannot edit the field's contents step the stepping interval (the distance between allowed values) to use for both user
interface and constraint validation max the latest (time-wise) year and week number, in the string format discussed in the value section above, to accept.
...for example, the week picker on chrome for android looks like this: non-supporting browsers gracefully degrade to a text input, but this creates problems both in terms of consistency of user
interface (the presented control will be different), and data handling.
<listing> - HTML: Hypertext Markup Language
dom
interface this element implements the htmlelement
interface.
... implementation note: up to gecko 1.9.2 inclusive, firefox implements the htmlspanelement
interface for this element.
...idopera for androidsafari on iossamsung internetlisting deprecatedchrome no support noedge no support nofirefox no support nonotes no support nonotes notes before firefox 4, this element implemented the htmlspanelement
interface instead of the standard htmlelement
interface.ie no support noopera no support nosafari no support nowebview android no support nochrome android no support nofirefox android ...
... no support nonotes no support nonotes notes before firefox 4, this element implemented the htmlspanelement
interface instead of the standard htmlelement
interface.opera android no support nosafari ios no support nosamsung internet android no support nolegend no support no supportdeprecated.
Server-Timing - HTTP
database read/write, cpu time, file system access, etc.) in the developer tools in the user's browser or in the performanceservertiming
interface.
... performanceservertiming
interface in addition to having server-timing header metrics appear in the developer tools of the browser, the performanceservertiming
interface enables tools to automatically collect and process metrics from javascript.
... this
interface is restricted to the same origin, but you can use the timing-allow-origin header to specify the domains that are allowed to access the server metrics.
... the
interface is only available in secure contexts (https) in some browsers.
instanceof - JavaScript
note for mozilla developers: in code using xpcom, instanceof has special effect: obj instanceof xpcom
interface (e.g.
... components.
interfaces.nsifile) calls obj.query
interface(xpcom
interface) and returns true if query
interface succeeded.
... a side effect of such call is that you can use xpcom
interface's properties on obj after a successful instanceof test.
... unlike standard javascript globals, the test obj instanceof xpcom
interface works as expected, even if obj is from a different scope.
The building blocks of responsive design - Progressive web apps (PWAs)
for web developers, it is now fairly common to be called upon to create a web site or app that changes its user
interface depending on the browser or device accessing the site to provide an optimized experience.
... svg and other vector graphics for some image requirements (not photographs, but icons and user
interface elements are a good fit), a good solution is to use vector graphics.
...although they are not supported very well on older browsers such as internet explorer 6-8, this is not too much of a concern when you are creating an
interface aimed at modern devices, and they also tend to gracefully degrade.
... you could also try using svg to create
interface elements.
requiredFeatures - SVG: Scalable Vector Graphics
these same feature strings apply to the hasfeature method call that is part of the svg dom's support for the domimplementation
interface.
...w.w3.org/tr/svg11/feature#pattern http://www.w3.org/tr/svg11/feature#clip http://www.w3.org/tr/svg11/feature#mask http://www.w3.org/tr/svg11/feature#filter http://www.w3.org/tr/svg11/feature#xlinkattribute http://www.w3.org/tr/svg11/feature#font http://www.w3.org/tr/svg11/feature#extensibility http://www.w3.org/tr/svg11/feature#svgdom-static the browser supports all of the dom
interfaces and methods that correspond to the language features for http://www.w3.org/tr/svg11/feature#svg-static.
... http://www.w3.org/tr/svg11/feature#svgdom-animation the browser supports all of the dom
interfaces and methods that correspond to the language features for http://www.w3.org/tr/svg11/feature#svg-animation.
....w3.org/tr/svg11/feature#scripting http://www.w3.org/tr/svg11/feature#view http://www.w3.org/tr/svg11/feature#cursor http://www.w3.org/tr/svg11/feature#graphicaleventsattribute http://www.w3.org/tr/svg11/feature#documenteventsattribute http://www.w3.org/tr/svg11/feature#animationeventsattribute http://www.w3.org/tr/svg11/feature#svgdom-dynamic the browser supports all of the dom
interfaces and methods that correspond to the language features for http://www.w3.org/tr/svg11/feature#svg-dynamic.
Content type - SVG: Scalable Vector Graphics
the corresponding svg dom
interface definitions for <color> are defined the one defined by css.
... svg's extension to color, including the ability to specify icc-based colors, are represented using dom
interface svgcolor.
...the grammar is as follows: icccolor ::= "icc-color(" name (, number)+ ")" the corresponding svg dom
interface for <icccolor> is svgicccolor.
... the following is a template for an ebnf grammar describing the <list-of-ts> syntax: list-of-ts ::= t | t, list-of-ts within the svg dom, values of a <list-of-ts> type are represented by an
interface specific for the particular type t.
SVG 1.1 Support in Firefox - SVG: Scalable Vector Graphics
currentscale and currenttranslate dom attributes are implemented, but there is no pan and zoom user
interface.
... only stored in the dom, no user
interface.
... only stored in the dom, no user
interface.
... svgpathelement
interface unimplemented attributes: normalizedpathseglist, animatednormalizedpathseglist rect implemented.
Scripting - SVG: Scalable Vector Graphics
you can pass an object that implements the handleevent
interface as the second parameter to these methods.
... you may find documentation referring to an svgdocument
interface.
... prior to svg 2, svg documents were represented using that
interface.
... however, svg documents are now represented using the xmldocument
interface instead.
Modules - Archive of obsolete content
a module is a self-contained unit of code, which is usually stored in a file, and has a well defined
interface.
...however, the following example shows how it can be used to load scripts from other locations: const { classes: cc
interfaces: ci } = components; var instance = cc["@mozilla.org/moz/jssubscript-loader;1"]; var loader = instance.getservice(ci.mozijssubscriptloader); function loadscript(url) { loader.loadsubscript(url); } when a script is loaded, it is evaluated in the scope of the global object of the script that loaded it.
...cuddlefish uses this option to expose the components object as a module called chrome, in a way similar to the code here below: const { classes: cc, constructor: cc,
interfaces: ci, utils: cu, results: cr, manager: cm } = components; let loader = loader({ paths: ["./": "http://www.foo.com/"], resolve: function (id, requirer) { // your logic here return id; }, modules: { 'chrome': { components: components, cc: cc, cc: bind(cc, components), ci: ci, cu: cu, ...
panel - Archive of obsolete content
creates transient dialogs to implement part of an add-on's user
interface.
... the screenshot below shows a panel whose content is built from the list of currently open tabs: panels are useful for presenting temporary
interfaces to users in a way that is easier for users to ignore and dismiss than a modal dialog, since panels are hidden the moment users interact with parts of the application
interface outside them.
... panel the panel object represents a floating modal dialog that can by an add-on to present user
interface content.
ui - Archive of obsolete content
this can then be added to a designated area of the firefox user
interface.
... a toolbar gives you a horizontal strip of space which you can use for presenting a more complex user
interface.
..../icons/next.png" }); var play = ui.actionbutton({ id: "play", label: "play", icon: "./icons/play.png" }); var frame = ui.frame({ url: "./frame-player.html" }); var toolbar = ui.toolbar({ title: "player", items: [previous, next, play, frame] }); the toolbar appears just above the content window: sidebar a sidebar gives you a vertical strip of space for presenting complex user
interfaces.
High-Level APIs - Archive of obsolete content
modules listed on this page implement high-level apis for building add-ons: creating user
interfaces, interacting with the web, and interacting with the browser.
... panel creates transient dialogs to implement part of an add-on's user
interface.
... widget create a simple user
interface for an add-on in firefox's add-on bar.
ui/toolbar - Archive of obsolete content
experimental add a toolbar to the firefox user
interface.
... a toolbar is a horizontal strip of user
interface real estate.
...you can supply three sorts of ui components: action buttons toggle buttons frames this add-on builds part of the user
interface for a music player using action buttons for the controls and a frame to display art and the currently playing song: var { actionbutton } = require('sdk/ui/button/action'); var { toolbar } = require("sdk/ui/toolbar"); var { frame } = require("sdk/ui/frame"); var previous = actionbutton({ id: "previous", label: "previous", icon: "./icons/previous.png" }); var next = actionbutton({ id: "n...
Downloading Files - Archive of obsolete content
var privacy = privatebrowsingutils.privacycontextfromwindow(urlsourcewindow); var hardcodedusername = "ericjung"; var hardcodedpassword = "foobar"; persist.progresslistener = { query
interface: xpcomutils.generateqi(["nsiauthprompt"]), // implements nsiauthprompt prompt: function(dialogtitle, text, passwordrealm, savepassword, defaulttext, result) { result.value = hardcodedpassword; return true; }, promptpassword: function(dialogtitle, text, passwordrealm, savepassword, pwd) { pwd.value = hardcodedpassword; return true; }, promptusernameandpassword: functio...
... instead of using qi like above, you can also implement nsi
interfacerequestor and return nsiauthprompt from there, like nsiwebbrowserpersist.progresslistener documentation suggests.
... function getimagefromurl(url) { var ioserv = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var channel = ioserv.newchannel(url, 0, null); var stream = channel.open(); if (channel instanceof components.
interfaces.nsihttpchannel && channel.responsestatus != 200) { return ""; } var bstream = components.classes["@mozilla.org/binaryinputstream;1"] .createinstance(components.
interfaces.nsibinaryinputstream); bstream.setinputstream(stream); ...
Drag & Drop - Archive of obsolete content
next, setup the handlers so that files can be dropped on the application: function _dragover(aevent) { var dragservice = components.classes["@mozilla.org/widget/dragservice;1"].getservice(components.
interfaces.nsidragservice); var dragsession = dragservice.getcurrentsession(); var supported = dragsession.isdataflavorsupported("text/x-moz-url"); if (!supported) supported = dragsession.isdataflavorsupported("application/x-moz-file"); if (supported) dragsession.candrop = true; } function _dragdrop(aevent) { var dragservice = components.classes["@mozilla.org/widget/d...
...ragservice;1"].getservice(components.
interfaces.nsidragservice); var dragsession = dragservice.getcurrentsession(); var _ios = components.classes['@mozilla.org/network/io-service;1'].getservice(components.
interfaces.nsiioservice); var uris = new array(); // if sourcenode is not null, then the drop was from inside the application if (dragsession.sourcenode) return; // setup a transfer item to retrieve the file data var trans = components.classes["@mozilla.org/widget/transferable;1"].createinstance(components.
interfaces.nsitransferable); trans.adddataflavor("text/x-moz-url"); trans.adddataflavor("application/x-moz-file"); for (var i=0; i<dragsession.numdropitems; i++) { var uri = null; dragsession.getdata(trans, i); var flavor = {},...
... data = {}, length = {}; trans.getanytransferdata(flavor, data, length); if (data) { try { var str = data.value.query
interface(components.
interfaces.nsisupportsstring); } catch(ex) { } if (str) { uri = _ios.newuri(str.data.split("\n")[0], null, null); } else { var file = data.value.query
interface(components.
interfaces.nsifile); if (file) uri = _ios.newfileuri(file); } } if (uri) uris.push(uri); } // use the array of file uris } the _dragover function checks the drag data to see if a simple text file or general purpose file types are available.
HTML to DOM - Archive of obsolete content
function htmlparser(ahtmlstring){ var html = document.implementation.createdocument("http://www.w3.org/1999/xhtml", "html", null), body = document.createelementns("http://www.w3.org/1999/xhtml", "body"); html.documentelement.appendchild(body); body.appendchild(components.classes["@mozilla.org/feed-unescapehtml;1"] .getservice(components.
interfaces.nsiscriptableunescapehtml) .parsefragment(ahtmlstring, false, null, body)); return body; } it works by creating a content-level (this is safer than chrome-level) <div> in the current page, then parsing the html fragment and attaching that fragment to the <div>.
... // frame.destroy(); // if using browser element instead of iframe frame.parentnode.removechild(frame); // or set location "about:blank" // frame.contentdocument.location.href = "about:blank"; },10); }, true); } // load a page frame.contentdocument.location.href = "http://www.mozilla.org/"; // or // frame.webnavigation.loaduri("http://www.mozilla.org/",components.
interfaces.nsiwebnavigation,null,null,null); if you are starting with an html string, you can convert it to a data uri and use that to load in the browser element.
... but, we still need to see how to execute the famous loaduri() method using our iframe: donkeybrowser.webnavigation.loaduri("http://developer.mozilla.org", components.
interfaces.nsiwebnavigation, null, null, null); also, i recommend you take a look at the nsiwebnavigation
interface.
Progress Listeners - Archive of obsolete content
progress listeners implement the nsiwebprogresslistener
interface.
... example create an object which implements nsiwebprogresslistener: const state_start = ci.nsiwebprogresslistener.state_start; const state_stop = ci.nsiwebprogresslistener.state_stop; var mylistener = { query
interface: xpcomutils.generateqi(["nsiwebprogresslistener", "nsisupportsweakreference"]), onstatechange: function(awebprogress, arequest, aflag, astatus) { // if you use mylistener for more than one tab/window, use // awebprogress.domwindow to obtain the tab/window which triggers the state change if (aflag & state_start) { ...
... alert(auri.spec); this.oldurl = auri.spec; }, // nsiwebprogresslistener query
interface: xpcomutils.generateqi(["nsiwebprogresslistener", "nsisupportsweakreference"]), onlocationchange: function(aprogress, arequest, auri) { this.processnewurl(auri); }, onstatechange: function() {}, onprogresschange: function() {}, onstatuschange: function() {}, onsecuritychange: function() {} }; window.addeventlistener("lo...
Running applications - Archive of obsolete content
this page describes how to run other programs from your chrome javascript code, using mozilla xpcom
interfaces.
... using nsiprocess the recommended way is to use the nsiprocess
interface because it is crossplatform.
... var file = components.classes["@mozilla.org/file/local;1"] .createinstance(components.
interfaces.nsilocalfile); file.initwithpath("c:\\myapp.exe"); file.launch(); references nsiprocess nsilocalfile if you need to launch an executable bundled in your xpi, see code snippets:file i/o#getting your extension's folder.
Custom about: URLs - Archive of obsolete content
it is imported to query
interface the components.manager otherwise this will not work.
... const {classes: cc,
interfaces: ci, manager: cm, results: cr, utils: cu, constructor: cc} = components; cm.query
interface(ci.nsicomponentregistrar); components.utils.import("resource://gre/modules/services.jsm"); // globals const aboutpage_description = 'this is my custom about page'; const aboutpage_id = 'aa132730-2278-11e5-867f-0800200c9a66'; // make sure you generate a unique id from https://www.famkruithof.net/uuid/uuidgen const aboutpage_word = 'mya...
...page that is shown when navigate to about:myaboutpage'; // const aboutpage_uri = 'chrome://myaboutaddon/content/index.html'; class aboutpage { static get classid() { return components.id(`{${aboutpage_id}}`); } static get classdescription() { return aboutpage_description; } static get contractid() { return `@mozilla.org/network/protocol/about;1?what=${aboutpage_word}`; } static get query
interface() { return xpcomutils.generateqi([ci.nsiaboutmodule]); } constructor() { object.freeze(this); } geturiflags(auri) { return ci.nsiaboutmodule.allow_script; } newchannel(auri, asecurity_or_aloadinfo) { let channel; if (services.vc.compare(services.appinfo.version, '47.*') > 0) { const uri = services.io.newuri(aboutpage_uri, null, null); // greater than o...
Chapter 6: Firefox extensions and XUL applications - Archive of obsolete content
first we’ll sketch out a simple
interface for it (listing 1).
...type
interface nsilocalfile (with a trailing space) in the search field and go.
... fixme: figure 6: searching without a trailing space fixme: figure 7: searching with a trailing space fixme: listing 7: source-code fragment var file = components.classes['@mozilla.org/file/local;1'] .createinstance(components.
interfaces.nsilocalfile); file.initwithpath(hoge); how is this actually implemented?
Connecting to Remote Content - Archive of obsolete content
let url = "http://www.example.com/"; let request = components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"] .createinstance(components.
interfaces.nsixmlhttprequest); request.onload = function(aevent) { window.alert("response text: " + aevent.target.responsetext); }; request.onerror = function(aevent) { window.alert("error status: " + aevent.target.status); }; request.open("get", url, true); request.send(null); in this example we demonstrate how to make a xmlhttprequest call in asynchronous mode.
...in synchronous mode the code and user
interface are blocked while waiting for a response to come back.
... let domparser = components.classes["@mozilla.org/xmlextras/domparser;1"] .createinstance(components.
interfaces.nsidomparser); let filestream = components.classes["@mozilla.org/network/file-input-stream;1"] .createinstance(components.
interfaces.nsifileinputstream); let xsltprocessor = components.classes["@mozilla.org/document-transformer;1?type=xslt"] .createinstance(components.
interfaces.nsixsltprocessor); let xsldocument; filestream.init(somexslfile, -1, 0x01, 0444); // ...
Introduction - Archive of obsolete content
firefox and other mozilla applications can be seen as composed of two different parts: a user
interface layer that is distinct for each project, and a common platform on top of which the
interface layer is built.
... the user
interface is built with technology known as xul, and the platform is known as xulrunner.
... gecko the gecko engine is the part of firefox used to render web pages and its own user
interface.
Setting Up a Development Environment - Archive of obsolete content
xpcom
interfaces are defined using idl files.
... these are text files that define the attributes and methods in one or more
interfaces.
... on the other hand, firebug has a very friendly, integrated user
interface, and sees much more development that its counterparts.
The Box Model - Archive of obsolete content
it is important to know how it works in order to make
interfaces that are easy to localize, skin and use in different types of operating systems, screen sizes and resolutions.
...with xul you can define vertically oriented as well as horizontally oriented
interfaces, providing greater flexibility in
interface design.
... any xul
interface can be broken down into the following basic components: boxes text images alignment and flexibility widths and heights margins and paddings menus, toolbar buttons, and even the most complex elements in xul are composed of these simple ingredients.
Updating addons broken by private browsing changes - Archive of obsolete content
if your code refers to any of the following
interfaces: ff 15: nsidomstoragemanager ff 16: nsitransferable ff 18: imgicache moziasyncfavicons nsifaviconservice nsiwebbrowserpersist ff 19: nsicontentprefservice nsidownloadmanager nsidownload nsihttpauthmanager nsistricttransportsecurityservice ff 20: nsiprivatebrowsingservice nsirecentbadcertservice furthermore, if your code uses any of these common chrome apis: ff 19: saveurl saveinternal openlinkin ff 20: openbrowserwindow gprivatebrowsingui finally, if your c...
... nsiprivatebrowsingservice: this service is deprecated, and as of firefox 20 it is now an empty
interface.
... if your code depends on this
interface, it will break.
Using Dependent Libraries In Extension Components - Archive of obsolete content
extension-directory/install.rdf extension-directory/libraries/dependent1.dll extension-directory/libraries/dependent2.dll extension-directory/libraries/component.dll extension-directory/components/
interface1.xpt extension-directory/components/
interface2.xpt extension-directory/components/bsmedberg_stub.dll extensions/stub/makefile.in # copyright (c) 2005 benjamin smedberg <benjamin@smedbergs.us> depth = ../..
... // assume that we're in <extensiondir>/components, and we want to find // <extensiondir>/libraries nscomptr<nsifile> libraries; rv = alocation->getparent(getter_addrefs(libraries)); if (ns_failed(rv)) return rv; nscomptr<nsilocalfile> library(do_query
interface(libraries)); if (!library) return ns_error_unexpected; library->setnativeleafname(ns_literal_cstring("libraries")); library->appendnative(ns_literal_cstring("dummy")); // loop through and load dependent libraries for (char const *const *dependent = kdependentlibraries; *dependent; ++dependent) { library->setnativeleafname(nsdependentcstring(*dependent)); prli...
... // assume that we're in <extensiondir>/components, and we want to find // <extensiondir>/libraries nscomptr<nsifile> libraries; rv = alocation->getparent(getter_addrefs(libraries)); if (ns_failed(rv)) return rv; nscomptr<nsilocalfile> library(do_query
interface(libraries)); if (!library) return ns_error_unexpected; library->setnativeleafname(ns_literal_cstring("libraries")); library->appendnative(ns_literal_cstring("dummy")); nscstring path; // loop through and load dependent libraries for (char const *const *dependent = kdependentlibraries; *dependent; ++dependent) { library->setnativeleafname(nsdependentcstring(*dependent)); ...
CSS3 - Archive of obsolete content
css basic user
interface module level 3 recommendation since june 21st, 2018 adds: the ability to tweak the box model using the css box-sizing property.
... an early list of what could be in the next iteration of the css basic user
interface module is available.
... css display module level 3 candidate recommendation css will change module level 1 candidate recommendation media queries level 4 candidate recommendation geometry
interfaces module level 1 candidate recommendation css cascading and inheritance level 4 candidate recommendation css scroll snap module level 1 candidate recommendation css painting api level 1 working draft css containment module level 1 recommendation css writi...
List of Mozilla-Based Applications - Archive of obsolete content
celtx media tool cenzic hailstorm vulnerability assessment and management tool uses gecko chatzilla irc client standalone version (xulrunner) chromium and google chrome web browser uses mozilla nss and npapi libraries chromeless browser with html-based
interface classilla mozilla browser for mac os 9 clines a clone of color lines (game) standalone version cloud web operating system cloud browse iphone/ipad/ipod touch browser seems to be firefox running remotely on servers that people access through device conkeror keyboard-oriented browser convertigo enterprise mas...
...python-hulahop is required python-hulahop a python gtk widget uses embedded xulrunner, providing full access to nsi dom and all other xulrunner
interfaces, in a gtk window.
...wxwebconnect web browser control library wyzo browser xb browser anonymous web browser xbusiness create and send branded invoices, quotes or estimates xdf billing and quotes software xiphos bible study software xmldbeditor database editor xpud linux desktop xpud: linux with an xul
interface, 10 second boot time xrap xulrunner application packager xul daim image tool xul explorer development tool xulrunner application xuljet javascript framework uses xulrunner xulmine game standalone version yahoo!
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
my tests were on windows vista, and i noticed at least one difference, it is that paths changed; now the profile is in (for my procacci user sample): c:\users\procacci\appdata\roaming\thunderbird\profiles\v6we4uku.default start in debug mode in comand line
interface: debug with displayerror() here's the result, i used the displayerror() method ( not the best way :-( see bug 206294 ) to show environment and ldap variables in order to check that it worked fine.
...var alerts = components.classes["@mozilla.org/alerts-service;1"] .getservice(components.
interfaces.nsialertsservice); // displayerror() is broken.
..."could not convert javascript argument arg 0 [nsisupports.query
interface]" nsresult: "0x80570009 (ns_error_xpc_bad_convert_js)" location: "js frame :: prefcalls.js :: getldapattributes :: line 177" data: no] autoconfig (pref) and ldap support in packages add ldap support in firefox 1.5 a least from firefox 1.5, autoconfig is compiled by default (cf.
Monitoring WiFi access points - Archive of obsolete content
ct'); var d = document.getelementbyid("d"); d.innerhtml = ""; for (var i=0; i<accesspoints.length; i++) { var a = accesspoints[i]; d.innerhtml += "<p>" + a.mac + " " + a.ssid + " " + a.signal + "</p>"; } var c = document.getelementbyid("c"); c.innerhtml = "<p>" + count++ + "</p>"; }, onerror: function (value) { alert("error: " +value); }, query
interface: function(iid) { netscape.security.privilegemanager.enableprivilege('universalxpconnect'); if (iid.equals(components.
interfaces.nsiwifilistener) || iid.equals(components.
interfaces.nsisupports)) return this; throw components.results.ns_error_no_
interface; }, } netscape.security.privilegemanager.enableprivilege('universalxpconnect'); var lis...
...tener = new test(); var wifi_service = components.classes["@mozilla.org/wifi/monitor;1"].getservice(components.
interfaces.nsiwifimonitor); wifi_service.startwatching(listener); </script> </head> <body> <div id="d"><p></p></div> <div id="c"><p></p></div> </body> </html> the nsiwifilistener object the first thing the code above does is to prototype the listener object that will be receiving notifications of changes to the access point list.
...starting to monitor access points to start monitoring the access points, we instantiate the listener (on line 44), then get access to the wifi monitor
interface on line 45.
Editor Embedding Guide - Archive of obsolete content
then simply call nsiwebbrowser->do_get
interface on the nsiwebbrowser to retrieve the nsieditingsession from it.
...nscomptr<nsieditingsession> editingsession; nsiwebbrowser->do_get
interface(getter_addrefs(editingsession)); if (editingsession) editingsession->makewindoweditable(domwindow, "html", pr_true); the valid editor types are: "text" (similar to notepad or a textarea; does not allow for html) "textmail" (similar to "text" but html can be inserted; intended for plaintext mail usage and handling of citations) "html" (this is the default type if no type is specified; it all...
...get the nsicommandmanager from the nsiwebbrowser using do_get
interface: nscomptr<nsicommandmanager> commandmanager; nsiwebbrowser->do_get
interface(getter_addrefs(commandmgr)); 2.
Microsummary topics - Archive of obsolete content
warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) programmatically installing a microsummary generator to programmatically install a microsummary generator -- for example, in an extension that helps users create custom generators for their favorite sites -- obtain a reference to the nsimicrosummaryservice
interface implemented by the nsimicrosummaryservice component, then call its installgenerator() method, passing it an xml document containing the generator.
... createinstance(components.
interfaces.nsidomparser); var generatordoc = domparser.parsefromstring(generatortext, "text/xml"); var microsummaryservice = components.classes["@mozilla.org/microsummary/service;1"].
... getservice(components.
interfaces.nsimicrosummaryservice); var generator = microsummaryservice.installgenerator(generatordoc); the service installs the generator by serializing its xml to a file in the user's profile directory and adding the generator to the service's in-memory generator cache.
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
dom level 1 core introduced document fragments, which are lightweight documents that contain a subset of a normal document's
interfaces.
...all features are accessible through the user
interface or through the debugger's interactive console.
... <xsl:if test="system-property('xsl:vendor') = 'transformiix'"> <!-- mozilla specific markup --> </xsl:if> <xsl:if test="system-property('xsl:vendor') = 'microsoft'"> <!-- internet explorer specific markup --> </xsl:if> mozilla also provides javascript
interfaces for xslt, allowing a web site to complete xslt transformations in memory.
Scripting - Archive of obsolete content
it can contain the following functions: startup when the app starts, before the user
interface is displayed.
...preload just before the user
interface is displayed.
...the platform property implements the nsiplatformglue
interface, whose methods are described in the following section.
Writing textual data - Archive of obsolete content
writing to a stream in gecko 1.8 (seamonkey 1.0, firefox 1.5), you can use nsiconverteroutputstream: var charset = "utf-8"; // can be any character encoding name that mozilla supports var os = components.classes["@mozilla.org/intl/converter-output-stream;1"] .createinstance(components.
interfaces.nsiconverteroutputstream); // this assumes that fos is the nsioutputstream you want to write to os.init(fos, charset, 0, 0x0000); os.writestring("umlaute: \u00fc \u00e4\n"); os.writestring("hebrew: \u05d0 \u05d1\n"); // etc.
... here's an example: // first, get and initialize the converter var converter = components.classes["@mozilla.org/intl/scriptableunicodeconverter"] .createinstance(components.
interfaces.nsiscriptableunicodeconverter); converter.charset = /* the character encoding you want, using utf-8 for this example */ "utf-8"; now you can convert and write to the stream: // this code assumes that os is your nsioutputstream // your_string here is the string you want to write.
... nsiscriptableunicodeconverter has a simple method to do that: // first, get and initialize the converter var converter = components.classes["@mozilla.org/intl/scriptableunicodeconverter"] .createinstance(components.
interfaces.nsiscriptableunicodeconverter); converter.charset = /* the charset you want to use.
How to Quit a XUL Application - Archive of obsolete content
script can attempt to quit a xul application, or force the application to quit, using the nsiappstartup
interface.
... getservice(components.
interfaces.nsiappstartup); // eattemptquit will try to close each xul window, but the xul window can cancel the quit // process if there is unsaved data.
...components.
interfaces.nsiappstartup.eforcequit : components.
interfaces.nsiappstartup.eattemptquit; appstartup.quit(quitseverity); } </script> calling this function if there is an uncaught exception, to force the application to quit: <script> try { dosomething(); } catch (e) { quit(true); } </script> the "quit" menuitem should typically prompt the user if there is unsaved data: <menuitem label="quit" oncommand="quit(false);"/> ...
Node - Archive of obsolete content
summary this is a scriptable
interface corresponding to the nsidomnode xpcom
interface.
... constants the nsidomnode
interface is the primary datatype for the entire document object model.
...for more information on this
interface please see dom-level-2-core short element_node 1 short attribute_node 2 short text_node 3 short cdata_section_node 4 short entity_reference_node 5 short entity_node 6 short processing_instruction_node 7 short comment_node 8 short document_node 9 short document_type_node 10 short document_fragment_node 11 short notation_node 12 methods node appendchild ( node newchild ) node clonenode ( boolean deep ) boolean hasattributes ( ) boolean haschildnodes ( ) node insertbefore ( node newchild , node refchild ) boolean issupported ( string feature , string version ) void normalize ( ) node removechild ( node oldchild ) node replacechild ( node newchild , node oldchild ) ...
Menus - Archive of obsolete content
other user
interfaces call this type of widget a combobox.
... however, there is a way to access the active item using the nsimenuboxobject
interface: activeitem = xulmenu.boxobject.query
interface(components.
interfaces.nsimenuboxobject).activechild; where xulmenu is the menu, button, or toolbarbutton object.
... you can set the active item thusly so: xulmenu.boxobject.query
interface(components.
interfaces.nsimenuboxobject).activechild = item; when the active item is set this way, keyboard navigation will now continue from this point.
Creating a Window - Archive of obsolete content
each user
interface window is described in a separate file.
... this tag is much like the html tag which surrounds an entire html document, except that a user
interface window is described instead of a document.
... <!-- other elements go here --> replace this comment block with other elements (the buttons, menus and other user
interface components) to appear in the window.
Custom Tree Views - Archive of obsolete content
note: the tree-related
interfaces changed in gecko 1.8.
... to implement a custom view, you will need to create an object which implements the nsitreeview
interface.
... the nsitreeview
interface lists all of the properties and methods that you can implement for the tree view.
Document Object Model - Archive of obsolete content
every xul element implements the xulelement (reference broken)
interface.
...so, xul elements will have that
interface even if added to other xml documents, and non-xul elements will not have that
interface.
... the xulelement
interface has a number of properties and methods specific to xul elements, many inherited from the generic dom element
interface.
Using Spacers - Archive of obsolete content
adding spacers one of the problems with developing user
interfaces is that each user has a different display.
...in addition, different platforms may have special requirements on the user
interface.
...some platforms and user
interface toolkits provide components that are smart enough to resize and re-position themselves to fit the needs of the user.
XUL Tutorial - Archive of obsolete content
this tutorial describes xul, the xml user-
interface language.
... this language was created for the mozilla application and is used to describe its user
interface.
...ecks stack positioning tabboxes grids content panels splitters toolbars and menus toolbars simple menu bars more menu features popup menus scrolling menus events and scripts adding event handlers more event handlers keyboard shortcuts focus and selection commands updating commands broadcasters and observers document object model document object model modifying a xul
interface manipulating lists box objects xpcom
interfaces xpcom examples trees trees more tree features tree selection custom tree views tree view details tree box objects rdf and templates introduction to rdf templates trees and templates rdf datasources advanced rules persistent data skins and locales adding style sheets styling a tree modifying the default skin creating a...
Using Remote XUL - Archive of obsolete content
the remote xul manager extension lets you manage this whitelist, which is maintained using nsipermissionmanager, by creating entries of type "allowxulxbl", like this: components.classes["@mozilla.org/permissionmanager;1"] .getservice(components.
interfaces.nsipermissionmanager) .add(uri, 'allowxulxbl', components.
interfaces.nsipermissionmanager.allow_action); xul (pronounced like "zool"), which is short for xml-based user
interface language, is an xml-based language for describing application
interfaces.
...in this case, we'll reference the default application stylesheet--the one used by the browser to style its own
interface.
...the
interface is in place, but it doesn't do anything.
Using spell checking in XUL - Archive of obsolete content
checking the spelling of a word to check the spelling of a word, you must first create an
interface to the mozispellcheckingengine component and then call the check() method on the string you wish to test.
...efox have different contract ids var spellclass = "@mozilla.org/spellchecker/myspell;1"; if ("@mozilla.org/spellchecker/hunspell;1" in components.classes) spellclass = "@mozilla.org/spellchecker/hunspell;1"; if ("@mozilla.org/spellchecker/engine;1" in components.classes) spellclass = "@mozilla.org/spellchecker/engine;1"; gspellcheckengine = components.classes[spellclass].getservice(components.
interfaces.mozispellcheckingengine); gspellcheckengine.dictionary = 'en-us'; if (gspellcheckengine.check("kat")) { // it's spelled correctly } else { // it's spelled incorrectly but check if the user has added "kat" as a correct word..
... var mpersonaldictionary = components.classes["@mozilla.org/spellchecker/personaldictionary;1"] .getservice(components.
interfaces.mozipersonaldictionary); if (mpersonaldictionary.check("kat", gspellcheckengine.dictionary)) { // it's spelled correctly accourdly to user personal dictionary } else { // it's spelled incorrectly } } getting a list of suggestions to get a list of suggestions for a misspelled word, you call the suggest() method, specifying the word and an object to be filled with an array of possible suggestions.
XULBrowserWindow - Archive of obsolete content
the xulbrowserwindow object provides methods and properties that let the browser update the user
interface of the enclosing xul window.
... in order to do so it implements the following
interfaces: nsisupports nsixulbrowserwindow nsiwebprogresslistener nsiwebprogresslistener2 nsisupportsweakreference note: this page is not complete at this time.
... see the linked
interfaces for the definition of the implemented methods.
preference - Archive of obsolete content
you can connect a user
interface element such as a checkbox to a preference element using the user
interface element's preference attribute.
... instantapply type: boolean if true, the preference will be changed as soon as the user
interface is modified.
... inverted type: boolean for boolean preferences, if this attribute is set to true, it indicates that the value of the preference is the reverse of the user
interface element attached to it.
calIFileType - Archive of obsolete content
summary the califiletype
interface provides information about a specific file type.
...defined in calendar/base/public/caliimportexport.idl
interface code [scriptable, uuid(efef8333-e995-4f45-bdf7-bfcabbd9793e)]
interface califiletype : nsisupports { readonly attribute astring defaultextension; readonly attribute astring extensionfilter; readonly attribute astring description; }; attributes defaultextension the default extension that should be associated with files of this type.
...related
interfaces caliimporter caliexporter example code see calhtmlexport.js.
Mozilla release FAQ - Archive of obsolete content
here are a few that are specific to the mozilla newsgroups: fe = front end -- the part of mozilla that handles the
interface be = back end -- the part of mozilla that does all the behind-the-scenes stuff nspr = netscape portable runtime -- an abstraction layer over the local os gtk = a free gui toolkit native to unix qt = another gui toolkit xp = cross platform xpfe = cross-platform frontend based on nglayout m[number] = milestone release [number] (no longer used) i'm wondering how to do xxx with navigat...
...how do i tweak the
interface (replace the logo, etc)?
...ou could tackle: porting mozilla to the os you use work on moving #ifdef platform to #ifdef feature/bug if you're on unix, port mozilla to the toolkit you prefer modularize/clean up apis fix bugs work on the expermental features (mail/news, aurora, nglayout) add new things: make opendoc and ole nglayout controls write new skins (see themes.org) add preference
interfaces for the hidden features there's plenty to do..
Using the W3C DOM - Archive of obsolete content
the w3c document object model provides
interfaces dom elements to scriptable objects.
...see the w3c dom 2 recommendation, css2 extended
interface.
... useful references on changing an element's text using the dom whitespace in the dom by david baron element.innerhtml speed and performance comparison between innerhtml attribute and dom's nodevalue when modifying the text data of a text node by gérard talbot interactive dom level 2 characterdata
interface attributes and methods tests: other ways to modify (replace, delete, manipulate) efficiently text nodes in the dom by gérard talbot <- previous section: using web standards: how next section: developing cross-browser pages -> ...
Using workers in extensions - Archive of obsolete content
« previous this article shows you how to use worker threads in extensions to perform tasks in the background without blocking the user
interface.
...this is because only the main thread is allowed to access the user
interface.
...let's take a look: startup: function() { // register to receive notifications of preference changes this.prefs = components.classes["@mozilla.org/preferences-service;1"] .getservice(components.
interfaces.nsiprefservice) .getbranch("stockwatcher2."); this.prefs.query
interface(components.
interfaces.nsiprefbranch2); this.prefs.addobserver("", this, false); this.tickersymbol = this.prefs.getcharpref("symbol").touppercase(); this.worker = new worker("chrome://stockwatcher2/content/ticker_worker.js"); // small little dance to get 'this' to refer to stockwatcher, not the ...
:-moz-system-metric() - Archive of obsolete content
syntax values -moz-windows-compositormedia: media/visual accepts min/max prefixes: no:-moz-system-metric(images-in-menus)the :-moz-system-metric(images-in-menus) css pseudo-class matches an element if the computer's user
interface supports images in menus.:-moz-system-metric(mac-graphite-theme):-moz-system-metric(mac-graphite-theme) will match an element if the user has chosen the "graphite" appearance in the "appearance" prefpane of the mac os x system preferences.:-moz-system-metric(scrollbar-end-backward)the :-moz-system-metric(scrollbar-end-backward) css pseudo-class will match an element if the computer's user interfa...
...ce includes a backward arrow button at the end of scrollbars.:-moz-system-metric(scrollbar-end-forward)the :-moz-system-metric(scrollbar-end-forward) css pseudo-class will match an element if the computer's user
interface includes a forward arrow button at the end of scrollbars.:-moz-system-metric(scrollbar-start-backward)the :-moz-system-metric(scrollbar-start-backward) css pseudo-class will match an element if the computer's user
interface includes a backward arrow button at the start of scrollbars.:-moz-system-metric(scrollbar-start-forward)the :-moz-system-metric(scrollbar-start-forward) css pseudo-class will match an element if the computer's user
interface includes a forward arrow button at the start of scrollbars.:-moz-system-metric(scrollbar-thumb-proportional)the :-moz-system-metric(scroll...
...bar-thumb-proportional) css pseudo-class will match an element if the computer's user
interface uses proportional scrollbar thumbs; that is, the draggable thumb on the scrollbar resizes to indicate the relative size of the visible area of the document.:-moz-system-metric(touch-enabled)the :-moz-system-metric(touch-enabled) css pseudo-class will match an element if the device on which the content is being rendered offers a supported touch-screen
interface.:-moz-system-metric(windows-default-theme)the :-moz-system-metric(windows-default-theme) css pseudo-class matches an element if the user is currently using one of the following themes in windows: luna, royale, zune, or aero (i.e., vista basic, vista standard, or aero glass).
Writing JavaScript for XHTML - Archive of obsolete content
the regular xml dom provides sufficient methods via the element
interface for getting/setting/removing attributes.
...but, standardized by ecma, they neglected to implement an
interface to let e4x objects interact with dom objects our document consists of.
... so, with every advantage e4x has, without a dom
interface you can't use it productively to manipulate your document.
Implementation Status - Archive of obsolete content
sequence: submission supported 4.7 resolving id references in xforms unsupported 4.7.1 references to elements within a repeat element unsupported 4.7.2 references to elements within a bind element unsupported 4.8 dom
interface for access to instance data supported 4.8.1 getinstancedocument() supported 4.8.2 rebuild() supported 4.8.3 recalculate() supported 4.8.4 revalidate() supported 4.8.5 refresh() ...
... 9.3 repeat module partial 264329; 273706; 9.3.1 repeat partial we do not support number attribute 302026; 9.3.2 nested repeats supported 9.3.3 repeat processing partial we currently obey the 1.0 rules for repeat 9.3.4 user
interface interaction partial we currently obey the 1.0 rules for repeat, no support for @number 302026; 9.3.5 creating repeating structures via attributes partial does not work for html:tr, html:td, or xf:group elements 340515; 350617; 9.3.6 itemset supported performance problem with large itemsets 372197; ...
...recalculate won't properly mark nodes as dirty if they were changed using javascript
interfaces.
IDL - MDN Web Docs Glossary: Definitions of Web-related terms
an idl (
interface description language) is a generic language used to specified objects'
interfaces apart from any specific programming language.
... content versus idl attributes in html, most attributes have two faces: the content attribute and the idl (
interface definition language) attribute.
... learn more general knowledge idl on wikipedia html attribute reference technical reference
interface definition language ...
Vendor Prefix - MDN Web Docs Glossary: Definitions of Web-related terms
if an entire
interface is experimental, then the
interface's name is prefixed (but not the properties or methods within).
... if an experimental property or method is added to a standardized
interface, then the individual method or property is prefixed.
...
interface prefixes prefixes for
interface names are upper-cased: webkit (chrome, safari, newer versions of opera, almost all ios browsers (including firefox for ios); basically, any webkit based browser) moz (firefox) o (older, pre-webkit, versions of opera) ms (internet explorer and microsoft edge) property and method prefixes the prefixes for properties and methods are lower-case: webkit (chrome, safari, newer versions of opera, almost all ios browsers (including firefox for ios); basically, any webkit based browser) moz (firefox) o (old, pre-webkit, versions of opera) ms (internet explorer and microsoft edge) sample usage: var requestanimationframe = window.requestanimationframe || window.mozrequestanimationframe || win...
Accessible multimedia - Learn web development
if either conditions are true, we simply stop the video, to avoid the user
interface going wrong if they attempt to fast forward when the video is not playing, or fast forward past the end of the video.
... transcript examples if you use an automated service, then you'll probably have to use the user
interface that the tool provides.
... if you are creating your own user
interface to present your audio and associated transcript, you can do it however you like, but it might make sense to include it in a showable/hideable panel; see our audio-transcript-ui example (also see the source code).
WAI-ARIA basics - Learn web development
we'll return to our simple absolutely-positioned tabbed
interface (see hiding things in our css and javascript accessibility article), which you can find at tabbed info box example (see source code).
...we've updated the structure of the tabbed
interface like so: <ul role="tablist"> <li class="active" role="tab" aria-selected="true" aria-setsize="3" aria-posinset="1" tabindex="0">tab 1</li> <li role="tab" aria-selected="false" aria-setsize="3" aria-posinset="2" tabindex="0">tab 2</li> <li role="tab" aria-selected="false" aria-setsize="3" aria-posinset="3" tabindex="0">tab 3</li> </ul> <div class="panels"> <article class="active-panel" ro...
... the new features are as follows: new roles — tablist, tab, tabpanel — these identify the important areas of the tabbed
interface — the container for the tabs, the tabs themselves, and the corresponding tabpanels.
Index - Learn web development
56 client-side web apis api, articles, beginner, codingscripting, dom, graphics, javascript, landing, learn, media, module, webapi, data when writing client-side javascript for web sites or applications, you will quickly encounter application programming
interfaces (apis).
...web forms are a very powerful tool for interacting with users — most commonly they are used for collecting data from users, or allowing them to control a user
interface.
...just check the support of the elements (or dom
interface) you want to use.
CSUN Firefox Materials
it's a quick download, occupies very little disk space, and has a clean, no-nonsense
interface." - pc magazine firefox 1.5 is a fast, free, standards compliant web browser which is rapidly gaining recognition for its fresh, streamlined approach to browsing the web.
...the simple, uncluttered user
interface is simply more pleasant.
...have announced they are already working with the technology their new richer
interfaces accessible with this new technology.
Information for Assistive Technology Vendors
gecko info for windows accessibility vendors mozilla supports msaa (microsoft active accessibility) in html and in our user
interface (based on xul technology).
...in addition, we provide some simple
interfaces via which we expose a read-only dom (document object model).
... mozilla support for linux/unix assistive technology developers mozilla supports the at-spi (assistive technology service provider
interface) in html and in our user
interface (based on xul technology).
Mozilla's Section 508 Compliance
applications also shall not disrupt or disable activated features of any operating system that are identified as accessibility features where the application programming
interface for those accessibility features has been documented by the manufacturer of the operating system and is available to the product developer.
... (c) a well-defined on-screen indication of the current focus shall be provided that moves among interactive
interface elements as the input focus changes.
... (d) sufficient information about a user
interface element including the identity, operation and state of the element shall be available to assistive technology.
Chrome registration
chrome is the set of user
interface elements of the application window that are outside the window's content area.
...the javascript files that define the user
interface are also contained within the content packages, as well as most xbl binding files.
...
interfaces
interfaces component/mycomponent.xpt [flags] instructs mozilla to load
interface information from a typelib file produced by xpidl.
Error codes returned by Mozilla APIs
ns_error_no_
interface (0x80004002) an attempt was made to call query
interface to retrieve an
interface which an object does not support.
... ns_error_xpc_not_enough_args (0x80570001) ns_error_xpc_need_out_object (0x80570002) ns_error_xpc_cant_set_out_val (0x80570003) ns_error_xpc_native_returned_failure (0x80570004) ns_error_xpc_cant_get_
interface_info (0x80570005) ns_error_xpc_cant_get_param_iface_info (0x80570006) ns_error_xpc_cant_get_method_info (0x80570007) ns_error_xpc_unexpected (0x80570008) ns_error_xpc_bad_convert_js (0x80570009) ns_error_xpc_bad_convert_native (0x8057000a) ns_error_xpc_bad_convert_js_null_ref (0x8057000b) ns_error_xpc_bad_op_on_wn_proto (0x8057000c) ns_error_xpc_cant_convert_wn_to_...
..._javascript_error_with_details (0x80570021) ns_error_xpc_cant_convert_primitive_to_array (0x80570022) ns_error_xpc_cant_convert_object_to_array (0x80570023) ns_error_xpc_not_enough_elements_in_array (0x80570024) ns_error_xpc_cant_get_array_info (0x80570025) ns_error_xpc_not_enough_chars_in_string (0x80570026) ns_error_xpc_security_manager_veto (0x80570027) ns_error_xpc_
interface_not_scriptable (0x80570028) ns_error_xpc_
interface_not_from_nsisupports (0x80570029) ns_error_xpc_cant_get_jsobject_of_dom_object (0x8057002a) ns_error_xpc_cant_set_read_only_constant (0x8057002b) ns_error_xpc_cant_set_read_only_attribute (0x8057002c) ns_error_xpc_cant_set_read_only_method (0x8057002d) ns_error_xpc_cant_add_prop_to_wrapped_native (0x8057002e) ns_error_...
Limitations of chrome scripts
a common pattern here is to use the notificationcallbacks property of the nsihttpchannel to get the dom window that initiated the load, like this: observe: function (subject, topic, data) { if (topic == "http-on-modify-request") { var httpchannel = subject.query
interface(ci.nsihttpchannel); var domwindow = httpchannel.notificationcallbacks.get
interface(ci.nsidomwindow); } } or this: observe: function (subject, topic, data) { if (topic == "http-on-modify-request") { var httpchannel = subject.query
interface(ci.nsihttpchannel); var domwindow = httpchannel.notificationcallbacks.get
interface(ci.nsiloadcontext).associatedwindow; } } in multiprocess...
... firefox these patterns will no longer work: the get
interface call will fail.
...in an http observer, you can get the browser message manager for the window using code like this: observe: function (subject, topic, data) { if (topic == "http-on-modify-request") { var httpchannel = subject.query
interface(ci.nsihttpchannel); var loadcontext = httpchannel.notificationcallbacks.get
interface(ci.nsiloadcontext); // topframeelement is the <browser> element var topframeelement = loadcontext.topframeelement; var browsermm = topframeelement.messagemanager; console.log("browsermm: " + browsermm); } } however, before firefox 38, this technique will not work if multiprocess firefox is ...
Message manager overview
it's a chromemessagebroadcaster object, which implements the following
interfaces: nsiframescriptloader nsimessagelistenermanager nsimessagebroadcaster you can access the global message manager like this: // chrome script let globalmm = cc["@mozilla.org/globalmessagemanager;1"] .getservice(ci.nsimessagelistenermanager); window message manager the window message manager is associated with a specific browser window, and operates on every <browser> (that is, every co...
... it's a chromemessagebroadcaster object, which implements the following
interfaces: nsiframescriptloader nsimessagelistenermanager nsimessagebroadcaster the window message manager can be accessed as a property of the browser window: // chrome script let windowmm = window.messagemanager; browser message manager the browser message manager is specific to a single xul <browser> element (which essentially corresponds to a single tab): loadframescript() loads the given script only into its <browser> sendasyncmessage() sends the message only to that <browser>.
... it's a chromemessagesender object, which implements the following
interfaces: nsiprocesschecker nsiframescriptloader nsimessagelistenermanager nsimessagesender the browser message manager can be accessed as a property of the xul <browser> element: // chrome script let browsermm = gbrowser.selectedbrowser.messagemanager; process message managers process message managers correspond to process boundaries, and enable code running in different processes to communicate.
Firefox UI considerations for web developers
there are a number of places within the firefox user
interface where web sites are listed for the user to choose a destination to visit or a site to manage in some way.
... firefox's top sites box in this article, we take a look at how to influence the appearance of your site in firefox user
interface elements such as the top sites box.
... that image is then scaled down to be 96 pixels wide and is used in the user
interface as seen in the example.
Browser API
api extensions: the api includes several new methods and events to manipulate and listen for changes to the embedded content's state, interited by the htmliframeelement
interface.
... browser api
interfaces to support the requirement of a browser <iframe>, the htmliframeelement dom
interface has been extended with new methods that give the <iframe> some super powers.
...the following methods are used to deal with those events: the <iframe> gains support for the methods of the eventtarget
interface addeventlistener(), removeeventlistener(), and dispatchevent().
Extending a Protocol
to make this tutorial less abstract (more fun!), we are going to implement a js method called echo() on the navigator
interface.
... the webidl for this will be: partial
interface navigator { promise<domstring> echo(domstring somestring); }; learning goals are: extending an existing ipdl protocol.
... implementing the navigator.echo() in your favorite editor, open dom/webidl/navigator.webidl at the end of the file, add: partial
interface navigator { [throws] promise<domstring> echo(domstring astring); }; now we need to implement the echo() method in c++, so open up ./dom/base/navigator.h and let's add the method definition, so under public:: already_addrefed<promise> echo(const nsastring& astring, errorresult& arv); we use nsastring& as the domstring comes in from js as utf-16.
Implementing Download Resuming
the
interfaces in question exist in the form they are described here since gecko 1.8a4 (firefox 1.5, seamonkey 1.0, xulrunner 1.8.0.1).
... the
interface resuming is done using the nsiresumablechannel
interface.
...you may want to use nsisimplestreamlistener to simplify this task; to get progress notifications, you can implement nsiprogresseventsink and set an
interface requester as the notificationcallbacks of the channel that gives out such an event sink (this needs to be done before calling asyncopen).
Downloads.jsm
this download method does not provide user
interface or the ability to cancel or restart the download programmatically.
...close the message to stop."); } finally { yield list.remove(download); yield download.finalize(true); } } finally { yield list.removeview(view); } }).then(null, components.utils.reporterror); conversion from nsidownloadmanager starting in firefox for desktop version 26, the nsidownloadmanager and nsidownload
interfaces are not available anymore.
... components.manager.query
interface(components.
interfaces.nsicomponentregistrar) .registerfactory(components.id("{1b4c85df-cbdd-4bb6-b04e-613caece083c}"), "", "@mozilla.org/transfer;1", null); ...
Interfacing with the Add-on Repository
the add-on repository javascript code module makes it easy for your extension to
interface with the amo repository.
...to make the service work for the time being, you can use code like this when your extension starts up: var prefsservice = components.classes["@mozilla.org/preferences-service;1"] .getservice(components.
interfaces.nsiprefservice); var prefbranch = prefsservice.getbranch("extensions."); var recurl = ""; try { recurl = prefbranch.getcharpref("getaddons.recommended.url"); } catch(e) { recurl = ""; } if (recurl == "") { prefbranch.setcharpref("getaddons.recommended.url", "https://services.addons.mozilla.org/%locale%/%app%/api/%api_version%/list/recommended/all/%max_results%/%os%/%...
...the callback object needs to implement the searchcallback
interface, providing the methods that get called when a search either fails or completes successfully.
JNI.jsm
if you would like to support versions before that, you can copy and paste the contents of the jsm file int jni stands for java native
interface; this library allows calling java code running in java virtual machines (jvms), etc.
...however if it was a subclass such as gecko
interface (org.mozilla.gecko.geckoappshell.gecko
interface), then this will cause a crash.
...so for geckoappshell we would pass here "org/mozilla/gecko/geckoappshell" and for gecko
interface we would use "org/mozilla/gecko/geckoappshell$gecko
interface".
Sqlite.jsm
the sqlite.jsm javascript code module is a promise-based wrapper around the storage/sqlite
interface.
... sqlite.jsm offers some compelling advantages over the low-level storage xpcom
interfaces: automatic statement management.
...} working with opened connections opened connections are what you will
interface most with in sqlite.jsm.
Index
found 42 pages: # page tags and summary 1 localization at mozilla landing, localization, mozilla, translation, l10n localization (l10n) is the process of translating software user
interfaces from one language to another and adapting it to suit a foreign culture.
...the localizable data fields of an extension are: 23 localizing with koala this tutorial will guide you through making a couple of changes to firefox's user
interface using koala, an add-on for komodo edit created to help localizing mozilla.
...with that document, users can see immediately two localized files in their user
interface by following closely and carefully the steps to create a language pack or a binary file that is ready for installation.
Mozilla Content Localized in Your Language
user
interface elements titles should be brief and precise.
...user
interface elements have limited space available for text.
... avoiding articles will help ensure that your translations will be accommodated within the user
interface.
Profiling with the Firefox Profiler
in addition to profiler.firefox.com, the firefox devtools have a simplified
interface targeted towards web developers, but does not include as much information as the firefox profiler web app.
...
interface 1.
...thgis requires the following command: $ xpcshell -m -i -n -e ' const ci = components.
interfaces; const cc = components.classes; var profiler = cc["@mozilla.org/tools/profiler;1"].getservice(ci.nsiprofiler); profiler.startprofiler( 10000000 /* = profiler memory */, 1 /* = sample rate: 100µs with patch, 1ms without */, ["stackwalk", "js"], 2 /* = features, and number of features.
NSS API Guidelines
sign/verify lib/cryptohi cryptohi.h, cryptoht.h, hasht.h, keyhi.h, keythi.h, key.h, keyt.h, sechash.h fort provides a pkcs #11
interface, to fortezza crypto services.
... above high cert, high key lib/nss nss.h pk11wrap provides access to pkcs #11 modules, through a unified
interface.
...
interfaces for these are in nspr.
NSS sources building testing
it is important to mention the difference between internal nss code and exported
interfaces.
... software that would like to use the nss library must use only the exported
interfaces.
...for any functions that are listed in the .def files, nss promises that the binary function
interface (abi) will remain stable.
SpiderMonkey 24
migrating to spidermonkey 24 spidermonkey now provides a fully c++
interface, so embedders relying on embeddability in c projects will have to convert to c++, or implement their own adapter code.
... the file must conform to the standard c99 <stdint.h> header
interface in all respects, providing all that header's types and macro definitions.
... (the msstdint project includes an implementation of this header for microsoft visual studio which demonstrates what the c99
interface looks like.) otherwise, if the compiler doesn't provide a usable <stdint.h> header, a custom implementation shipped with the spidermonkey source is used.
Gecko object attributes
when this is not specified, the default is string, unless the value
interface is exposed, which indicates the type is numeric.
... applied to: any object that supports the hypertext
interface note: deprecated, use display attribute instead line-number the current line number of the caret, whether simply because the "browse with caret" option is on, or the caret used for editing text.
... applied to: anything that supports the value
interface, especially a slider or progress meter ...
Retrieving part of the bookmarks tree
first, you need to get an empty query and options objects from the history service: var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.
interfaces.nsinavhistoryservice); var options = historyservice.getnewqueryoptions(); var query = historyservice.getnewquery(); find the folder you want to get known folder ids are retrieved from the bookmarks service.
...this example will get the id of the bookmarks toolbar: var bookmarksservice = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.
interfaces.nsinavbookmarksservice); var toolbarfolder = bookmarksservice.toolbarfolder; the placesroot is the root folder in the whole places hierarchy.
...complete code listing var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.
interfaces.nsinavhistoryservice); var options = historyservice.getnewqueryoptions(); var query = historyservice.getnewquery(); var bookmarksservice = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.
interfaces.nsinavbookmarksservice); var toolbarfolder = bookmarksservice.toolbarfolder; query.setfolders([toolbarfolder], 1); var res...
Using the Places livemark service
the livemark service, offered by the nsilivemarkservice
interface, is used to create, edit, and reload livemarks.
... initiating the livemark service before using the livemark service, you need to obtain an instance: var livemarkservice = components.classes["@mozilla.org/browser/livemark-service;2"] .getservice(components.
interfaces.nsilivemarkservice); creating a new livemark the nsilivemarkservice.createlivemark() method creates a new livemark.
... getservice(components.
interfaces.nsinavbookmarksservice); var root = bmsvc.bookmarksmenufolder; // item id of the bookmarks menu var newlvmkid = livemarkservice.createlivemarkfolderonly(bmsvc, root, "livemark name", uri("http://example.com/"), uri("http://example.com/rss.xml"), ...
FUEL
consider using the add-ons sdk instead fuel is a javascript library designed to help developers build extensions using terminology and
interfaces that are familiar to them.
... fuel has a fueliapplication
interface that implements all the functions of extiapplication.
...the object needs to be accessed like any other xpcom service: var application = components.classes["@mozilla.org/fuel/application;1"].getservice(components.
interfaces.fueliapplication); ...
SMILE
this article covers features introduced in seamonkey 2 smile is a javascript library designed to help developers build extensions using terminology and
interfaces that are familiar to them.
... smile has a smileiapplication
interface that implements all the functions of extiapplication.
...the object needs to be accessed like any other xpcom service: var application = components.classes["@mozilla.org/smile/application;1"].getservice(components.
interfaces.smileiapplication); ...
STEEL
it is a fuel-like set of
interfaces to facilitate thunderbird extension development.
... currently, steel has an steeliapplication
interface that implements all the functions of extiapplication.
...the object needs to be accessed like any other xpcom service: var application = components.classes["@mozilla.org/steel/application;1"].getservice(components.
interfaces.steeliapplication); other resources steel development plan.
extIApplication
method overview boolean quit() boolean restart() void getextensions(extiextensionscallback acallback) attributes the following
interfaces are available to all applications: attribute type description id readonly attribute astring the id of the application.
...supports: "load", "ready", "quit", "unload" the following
interfaces are only available to firefox: attribute type description bookmarks readonly attribute fuelibookmarkroots the root bookmarks object for the application.
...the object needs to be accessed like any other xpcom service: var application = components.classes["@mozilla.org/fuel/application;1"].getservice(components.
interfaces.fueliapplication); see also fuel (firefox), steel (thunderbird) and smile (seamonkey) ...
extIPreferenceBranch
this content covers features introduced in thunderbird 3 the extipreferencebranch
interface provides simplified access to preferences.
... the
interface has a predefined root preference branch.
...all preference "aname" parameters used in this
interface are relative to the root branch.
XPCOM guide
describing a number of common javascript patterns that cause leaks.creating xpcom componentsthis guide is about gecko, and about creating xpcom components for gecko-based applications.how to build an xpcom component in javascriptif you are looking for add-on sdk solution for xpcom javascript components then check out platform/xpcom module first.inheriting from implementation classesgiven that idl
interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into multiple inheritance.
... that's not inherently multiple inheritance, though, because you only mix in
interfaces (i.e.
... the problem would not exist with java's
interfaces).making cross-thread calls using runnablesin the mozilla platform, most activities such as layout, dom operations, content javascript, and chrome javascript run on the main thread.
Components.ID
summary components.id is a constructor that creates native objects that conform to the nsijsid
interface.
... syntax var
interfaceid = [ new ] components.id(iid); parameters iid a string of the format '{00000000-0000-0000-0000-000000000000}' giving the
interface id of the
interface description components.id creates
interface ids for use in implementing methods like query
interface, get
interfaces, and other methods that take
interface ids as parameters.
... components.classes, components.classesbyid, components.
interfaces provide pretty much all the nsids that most javascript code would ever need to deal with.
Components.results
usage implementing nsisupports the standard nsisupports is usually implemented in javascript by using components.results to get a failure return value if does not implement the given
interface.
... note the common use of an abbreviation for components.results, cr: const ci = components.
interfaces, cr = components.results; function class() { /* ...
...*/ query
interface: function(id) { if (id.equals(ci.imy
interface)) return this; throw cr.ns_error_no_
interface; } }; ...
PyXPCOM
pyxpcom allows for communication between python and xpcom, such that a python application can access xpcom objects, and xpcom can access any python class that implements an xpcom
interface.
...mozilla defines many external
interfaces available to embeddors and component developers.
... pyxpcom provides access to these
interfaces as python
interfaces.
XPConnect wrappers
if you call 'tostring()' and get "[xpconnect wrapped nsifoo]" then the reference is to a xpcwrappednative object with
interface nsifoo.
...for example, if you've implemented some component with an
interface nsifoo and you pass your javascript object into a c++ function taking an nsifoo, an xpcwrappedjs is created around your object.
...this case is where a js object was passed in via some idl-declared
interface, creating an xpcwrappedjs, and is now being returned to javascript via some other
interface.
Observer Notifications
the window id can be obtained from subject.query
interface(components.
interfaces.nsisupportspruint64).data outer-window-destroyed nsidomwindow called when an outer window is disconnected from its docshell.
... the window id can be obtained from subject.query
interface(components.
interfaces.nsisupportspruint64).data toplevel-window-ready nsiwindowwatcher called just after a new top level window has been opened and is ready, but has not yet loaded a document.
... idle service this topic indicates when actions related to the idle service, provided by the nsiidleservice
interface.
nsSupportsWeakReference
}; remarks in addition to inheriting from this class, you will need to ensure that your nsisupports::query
interface implementation exposes nsisupportsweakreference as a supported
interface.
...example code // supporting weak references to a hypothetical implementation // of the nsifoo
interface...
... see also nsisupports::query
interface , nsisupportsweakreference ...
IAccessible2
remarks when you have a reference to an iaccessible and require a reference to an iaccessible2 use queryservice as follows: // pacc is a reference to the accessible object's iaccessible
interface.
... iserviceprovider *pservice = null; hr = pacc->query
interface(iid_iserviceprovider, (void **)&pservice); if(succeeded(hr)) { iaccessible2 *pia2 = null; hr = pservice->queryservice(iid_iaccessible, iid_iaccessible2, (void**)&pia2); if (succeeded(hr) && pia2) { // the control supports iaccessible2.
... // pia2 is the reference to the accessible object's iaccessible2
interface.
IAccessibleApplication
other-licenses/ia2/accessibleapplication.idlnot scriptable this
interface gives access to the application's name and version information.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) this
interface provides the at with the information it needs to differentiate this application from other applications, from other versions of this application, or from other versions of this application running on different versions of an accessibility bridge or accessibility toolkit.
... servers implementing iaccessible2 should provide access to the iaccessibleapplication
interface via queryservice from any object so that ats can easily determine specific information about the application such as its name or version.
IAccessibleComponent
other-licenses/ia2/accessiblecomponent.idlnot scriptable this
interface is implemented by any object that can be rendered on the screen.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) this
interface provides the standard mechanism for an assistive technology to retrieve information concerning the graphical representation of an object.
... coordinates used by the functions of this
interface are specified in different coordinate systems.
IAccessibleHypertext
other-licenses/ia2/accessiblehypertext.idlnot scriptable this
interface exposes information about hypertext in a document.
... 1.0 66 introduced gecko 1.9 inherits from: iaccessibletext last changed in gecko 1.9 (firefox 3) the iaccessiblehypertext
interface is the main
interface to expose hyperlinks in a document, typically a text document, that are used to reference other documents.
... a typical implementation is to implement this
interface on the smallest text object such as a paragraph of text.
IAccessibleTable2
other-licenses/ia2/accessibletable2.idlnot scriptable this
interface gives access to a two-dimensional table.
... 1.0 66 introduced gecko 1.9.2 inherits from: iunknown last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) please also refer to the iaccessibletablecell
interface.
... if you want to support older applications you should also support the iaccessibletable
interface.
IAccessibleValue
other-licenses/ia2/accessiblevalue.idlnot scriptable this
interface gives access to a single numerical value.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) the iaccessiblevalue
interface represents a single numerical value and should be implemented by any class that supports numerical value like progress bars and spin boxes.
... this
interface lets you access the value and its upper and lower bounds.
IJSDebugger
you should usually
interface with this using the javascript code module instead of directly.
... 1.0 66 introduced gecko 9.0 inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/jsdebugger;1 as a service: var jsdebugger = components.classes["@mozilla.org/jsdebugger;1"] .createinstance(components.
interfaces.ijsdebugger); note: you should almost never directly use this service; instead, you should use the javascript code module that does this for you.
... the only time you should directly use this
interface to create the debugger object is if you need to debug chrome; due to bug 707237, the javascript code module doesn't work in that case.
imgIDecoder
inherits from: nsisupports last changed in gecko 1.7 this
interface is the base class for decoders for specific image formats.
...this object also implements the imgidecoderobserver
interface; you should query
interface() it to that
interface and call its notification methods while handling the decode operation.
... implementer's note: this method is defined by this
interface in order to let the output stream efficiently copy the data from the input stream into its internal buffer (if any).
mozIAsyncFavicons
toolkit/components/places/moziasyncfavicons.idlscriptable
interface for accessing the favicon service asynchronously.
... 1.0 66 introduced gecko 6.0 inherits from: nsisupports last changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) nsifaviconservice handles this
interface, so you do not need to directly create a new service.
... simply query
interface() the nsifaviconservice to this
interface.
mozIStorageConnection
storage/public/mozistorageconnection.idlscriptable this
interface represents a database connection attached to a specific file or an in-memory database.
... it is the primary
interface for interacting with a database, including creating prepared statements, executing sql, and examining database errors.
... 1.0 68 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) for a general overview on how to use this
interface, see storage.
mozIStorageStatementWrapper
the mozistoragestatementwrapper
interface is a storage statement wrapper.
... when you call the mozistorageconnection
interface's createstatement() method, you get a mozistoragestatement which has just direct bindings to sqlite.
... firefox 3.5 note firefox 3.5 adds support for these features directly into the mozistoragestatement
interface, so this
interface is essentially deprecated.
nsIAccessNode
accessible/public/nsiaccessnode.idlscriptable an
interface used by in-process accessibility clients to get style, window, markup and other information about a dom node.
...if the dom node for this access node is "accessible", then a query
interface to nsiaccessible will succeed.
... remarks the main application of access node tree is it's used by isimpledom*
interfaces on windows.
nsIAccessible
« gecko at
interfaces page summary the nsiaccessible
interface is a cross-platform
interface that supports platform-specific accessibility apis like msaa and atk.
... [scriptable, uuid=(c7520419-87ec-42bc-98cc-04c0bf173530)]
interface nsiaccessible : nsisupports { ...
... last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) overview this section provides short overview of methods and attributes of this
interface.
nsIAccessibleDocument
accessible/public/nsiaccessibledocument.idlscriptable an
interface for in-process accessibility clients that wish to retrieve information about a document.
... inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) you can query
interface to nsiaccessibledocument from the nsiaccessible or nsiaccessnode for the root node of a document.
... domdocument nsidomdocument the nsidomdocument
interface associated with this document.
nsIAppStartup
toolkit/components/startup/public/nsiappstartup.idlscriptable this
interface is intended to be used as application startup service.
...to use the service: var appstartup = components.classes["@mozilla.org/toolkit/app-startup;1"] .getservice(components.
interfaces.nsiappstartup); method overview void createhiddenwindow(); boolean createstartupstate(in long awindowwidth, in long awindowheight); obsolete since gecko 1.9.1 void destroyhiddenwindow(); void doprofilestartup(in nsicmdlineservice acmdlineservice, in boolean caninteract); obsolete since gecko 1.9.1 void ensure1window(in nsicmdlineservice acmdlineservice...
... var aconsoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); var startupinfo = components.classes["@mozilla.org/toolkit/app-startup;1"] .getservice(ci.nsiappstartup_mozilla_2_0).getstartupinfo(); var keys = object.keys(startupinfo); keys.sort(function(a, b) { return startupinfo[a] - startupinfo[b]; }); for each (var name in keys) { aconsoleservice.logstringmessage(name + ": " + startupinfo[name]); } to calc...
nsIAuthPrompt
netwerk/base/public/nsiauthprompt.idlscriptable this
interface allows the networking layer to pose a user/password prompt to obtain the values needed for authentication.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) this
interface is implemented by @mozilla.org/login-manager/prompter;1.
... to create an instance, use: var authprompt = components.classes["@mozilla.org/login-manager/prompter;1"] .createinstance(components.
interfaces.nsiauthprompt); method overview boolean prompt(in wstring dialogtitle, in wstring text, in wstring passwordrealm, in pruint32 savepassword, in wstring defaulttext, out wstring result); boolean promptpassword(in wstring dialogtitle, in wstring text, in wstring passwordrealm, in pruint32 savepassword, inout wstring pwd); boolean promptusernameandpassword(in wstring dialogtitle, in wstring text, in wstring passwordrealm, in pruint32 savepassword, inout wstring user, inout wstring pwd); constants constant value description save_password_never 0 never saves the password.
nsICachingChannel
inherits from: nsicacheinfochannel last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface provides: support for "stream as file" semantics (for jar and plugins).
... a channel may optionally implement this
interface to allow clients to affect its behavior with respect to how it uses the cache service.
...the cache token can be query
interface'd to a nsicacheentryinfo if more detail about the cache entry is needed.
nsICollection
xpcom/ds/nsicollection.idlscriptable this
interface represents a list of nsisupports items.
...queryelementat() performs a query
interface on the item at the specified index into the collection.
... remarks nsienumerator is a broken
interface, and nsisimpleenumerator should be used in its place.
nsIContentFrameMessageManager
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisyncmessagesender this
interface provides the environment for scripts that are loaded into content frames using the nsiframescriptloader
interface.
... var acfmm = gbrowser.selectedbrowser._docshell.query
interface(ci.nsi
interfacerequestor).get
interface(ci.nsicontentframemessagemanager); get content message manager from content window window here is a html window or any window inside a tab, this code would run from a framescript.
... var acfmm = window.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsidocshell) .query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsicontentframemessagemanager); ...
nsIContentSniffer
netwerk/base/public/nsicontentsniffer.idlscriptable content sniffer
interface.
... components implementing this
interface can determine a mime type from a chunk of bytes.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) to implement this
interface use net-content-sniffers category.
nsIConverterOutputStream
xpcom/io/nsiconverteroutputstream.idlscriptable this
interface allows writing strings to a stream, doing automatic character encoding conversion.
...to create an instance, use: var converteroutputstream = components.classes["@mozilla.org/intl/converter-output-stream;1"] .createinstance(components.
interfaces.nsiconverteroutputstream); method overview void init(in nsioutputstream aoutstream, in string acharset, in unsigned long abuffersize, in prunichar areplacementcharacter); methods init() initialize this stream.
... must be called before any other method on this
interface, or you will crash.
nsICookieManager2
the nsicookiemanager2
interface contains additional methods that expand upon the nsicookiemanager
interface.
... last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsicookiemanager this
interface is included in the services.jsm javascript code module.
... to create an object implementing this
interface: components.utils.import("resource://gre/modules/services.jsm"); var cookieservice = services.cookies; method overview void add(in autf8string ahost, in autf8string apath, in acstring aname, in acstring avalue, in boolean aissecure, in boolean aishttponly, in boolean aissession, in print64 aexpiry); boolean cookieexists(in nsicookie2 acookie); unsigned long countcookiesfromhost(in autf8string ahost); boolean findmatchingcookie(in nsicookie2 acookie, out unsigned long acountfromhost); obsolete since gecko 1.9 nsisimpleenumerator getcookiesfromhost(in autf8string ahost); void importcookies(in nsifile acookiefile); methods add() adds a cookie.
nsICookiePermission
the nsicookiepermission
interface is used to test for cookie permissions netwerk/cookie/nsicookiepermission.idlscriptable please add a summary to this article.
...(in nsichannel achannel); void setaccess(in nsiuri auri, in nscookieaccess aaccess); constants constant value description access_default 0 nscookieaccess's access default value access_allow 1 nscookieaccess's access allow value access_deny 2 nscookieaccess's access deny value access_session 8 additional values for nscookieaccess, which are not directly used by any methods on this
interface, but are nevertheless convenient to define here.
... these may be relocated somewhere else if we ever consider freezing this
interface.
nsICryptoHMAC
netwerk/base/public/nsicryptohmac.idlscriptable this
interface provides hmac signature algorithms.
...note: this method must be called before any other method on this
interface is called.
...to create the key object use for instance: var keyobject = components.classes["@mozilla.org/security/keyobjectfactory;1"] .getservice(components.
interfaces.nsikeyobjectfactory) .keyfromstring(components.
interfaces.nsikeyobject.hmac, rawkeydata); exceptions thrown ns_error_invalid_arg if an unsupported algorithm type is passed.
nsIDNSService
to access the service, use: var dnsservice = components.classes["@mozilla.org/network/dns-service;1"] .createinstance(components.
interfaces.nsidnsservice); note: starting in gecko 7.0, the "happy eyeballs" strategy is used to reduce lengthy timeouts when attempting backup connections during attempts to connect from clients that have broken ipv6 connectivity.
...it is extremely unwise to call this function on the user
interface thread of an application.
...example let dnsservice = components.classes["@mozilla.org/network/dns-service;1"] .createinstance(components.
interfaces.nsidnsservice); let thread = components.classes["@mozilla.org/thread-manager;1"] .getservice(components.
interfaces.nsithreadmanager).currentthread; let host = "www.mozilla.org"; let listener = { onlookupcomplete: function(request, record, status) { if (!components.issuccesscode(status)) { // handle error here return; } let address = record.getnextaddrass...
nsIDOMGeoGeolocation
summary the nsidomgeogeolocation
interface provides access to geolocation information.
... dom/
interfaces/geolocation/nsidomgeogeolocation.idlscriptable please add a summary to this article.
...starting in gecko 1.9.2, you can access this service using: var geolocation = components.classes["@mozilla.org/geolocation;1"] .getservice(components.
interfaces.nsidomgeogeolocation); note: if nsidgeogeolocation throws an exception when importing, try using this: var geolocation = components.classes["@mozilla.org/geolocation;1"] .getservice(components.
interfaces.nsisupports); method overview void clearwatch(in unsigned short watchid); void getcurrentposition(in nsidomgeopositioncallback successcallback, [optional] in nsidomgeopositionerrorcallbac...
nsIDOMGeoPositionCallback
the nsidomgeopositioncallback
interface is called when updated position information is available.
... you need to implement this
interface to accept callbacks after using nsidomgeolocation.watchposition().
... dom/
interfaces/geolocation/nsidomgeopositioncallback.idlscriptable please add a summary to this article.
nsIDOMJSWindow
one of the
interfaces implemented by the window dom object.
... this is only a magic
interface to provide the js implementation of a dom window and it should never be used by embedders, the ordinary dom documentation should cover the rest.
... the
interface is defined in dom/
interfaces/base/nsidomjswindow.idl.
nsIDOMSerializer
content/base/public/nsidomserializer.idlscriptable this
interface is really a placeholder till the w3c dom working group defines a mechanism for serializing dom nodes.
... an instance of this
interface can be used to serialize a dom document or any dom subtree.
...to create an instance, use: var domserializer = components.classes["@mozilla.org/xmlextras/xmlserializer;1"] .createinstance(components.
interfaces.nsidomserializer); method overview void serializetostream(in nsidomnode root, in nsioutputstream stream, in autf8string charset); astring serializetostring(in nsidomnode root); methods serializetostream() the subtree rooted by the specified element is serialized to a byte stream using the character set specified.
nsIDOMStorageEventObsolete
dom/
interfaces/storage/nsidomstorageeventobsolete.idlscriptable this
interface represents an event that occurs to notify interested parties about changes to the contents of a dom storage space; it is used for both session storage and local storage.
... note: this
interface describes the old, non-standard form of this event.
... you should use the nsidomstorageevent
interface instead.
nsIDOMStorageWindow
dom/
interfaces/storage/nsidomstoragewindow.idlscriptable this
interface provides access to a dom window's client side storage objects.
... all dom windows inherit from this
interface.
... 1.0 66 introduced gecko 1.8.1 obsolete gecko 8.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in gecko 8.0 this
interface has been merged into nsidomwindow, and this
interface has been removed.
nsIDOMWindow2
dom/
interfaces/base/nsidomwindow2.idlscriptable this
interface is the primary
interface for a dom window object.
... inherits from: nsidomwindow last changed in gecko 1.9 (firefox 3) because nsidomwindow is frozen, this
interface was introduced in firefox 3 (gecko 1.9) to allow dom windows to take on new features.
... in gecko 7.0 this
interface has been merged into nsidomwindow.
nsIDOMWindowUtils
dom/
interfaces/base/nsidomwindowutils.idlscriptable this
interface is a dom utility
interface that provides useful dom methods and attributes.
...to get this
interface, use: var domwindowutils = window.windowutils; method overview void activatenativemenuitemat(in astring indexstring); void clearmozafterpaintevents(); pruint32 comparecanvases(in nsidomhtmlcanvaselement acanvas1, in nsidomhtmlcanvaselement acanvas2, out unsigned long amaxdifference); double computeanimationdistance(in nsidomelement element, in astring property, in astring value1, in astring value2); nsicompositionstringsynthesizer createcompositionstringsynthesizer(); obsolete since gecko 38.0 void disablenontestmouseevents(in boo...
...the event is dispatched to atarget, which should be an object which implements nsicontent
interface (#element, #text, etc).
nsIDownloadManager
this
interface is deprecated as of firefox 26.
... toolkit/components/downloads/public/nsidownloadmanager.idlscriptable this
interface lets applications and extensions communicate with the download manager, adding and removing files to be downloaded, fetching information about downloads, and being notified when downloads are completed.
...to get the service, use: var downloadmanager = components.classes["@mozilla.org/download-manager;1"] .getservice(components.
interfaces.nsidownloadmanager); method overview nsidownload adddownload(in short adownloadtype, in nsiuri asource, in nsiuri atarget, in astring adisplayname, in nsimimeinfo amimeinfo, in prtime astarttime, in nsilocalfile atempfile, in nsicancelable acancelable, in boolean aisprivate); void addlistener(in nsidownloadprogresslistener alistener); void canceldownload(in unsigned long aid); void cleanup(); void endbatchupdate(); obsolete since gecko 1.9.
nsIEffectiveTLDService
netwerk/dns/nsieffectivetldservice.idlscriptable this is an
interface that examines a hostname and determines the longest portion that should be treated as though it were a top-level domain (tld).
...to use this service, use: var etldservice = components.classes["@mozilla.org/network/effective-tld-service;1"] .getservice(components.
interfaces.nsieffectivetldservice); the name "effective tld service" is a historical one; today, the items this
interface manipulates are called public suffixes, and the list of them is the public suffix list, or psl.
... it is not recommended to use this
interface for determining whether a given string "is a domain name".
nsIExternalHelperAppService
to access this service, use: var externalhelperappservice = components.classes["@mozilla.org/uriloader/external-helper-app-service;1"] .getservice(components.
interfaces.nsiexternalhelperappservice); method overview boolean applydecodingforextension(in autf8string aextension, in acstring aencodingtype); nsistreamlistener docontent(in acstring amimecontenttype, in nsirequest arequest, in nsi
interfacerequestor awindowcontext, in boolean aforcesave); methods applydecodingforextension() determines whether or not data whose filename has the s...
...nsistreamlistener docontent( in acstring amimecontenttype, in nsirequest arequest, in nsi
interfacerequestor awindowcontext, in boolean aforcesave ); parameters amimecontenttype the content type of the incoming data.
... awindowcontext use nsiservicemanager.get
interface() to retrieve properties like the dom window or parent window; the service might need this in order to bring up dialogs.
nsIExternalProtocolService
boolean externalprotocolhandlerexists(in string aprotocolscheme); astring getapplicationdescription(in autf8string ascheme); nsihandlerinfo getprotocolhandlerinfo(in acstring aprotocolscheme); nsihandlerinfo getprotocolhandlerinfofromos(in acstring aprotocolscheme, out boolean afound); boolean isexposedprotocol(in string aprotocolscheme); void loaduri(in nsiuri auri, [optional] in nsi
interfacerequestor awindowcontext); void loadurl(in nsiuri aurl); void setprotocolhandlerdefaults(in nsihandlerinfo ahandlerinfo, in boolean aoshandlerexists); methods externalprotocolhandlerexists() check whether a handler for a specific protocol exists.
...-nickolay <pre> // first construct an nsiuri object using the ioservice var ioservice = components.classes["@mozilla.org/network/io-service;1"].getservice(components.
interfaces.nsiioservice); var uritoopen = ioservice.newuri("http://www.example.com/", null, null); var extps = components.classes["@mozilla.org/uriloader/external-protocol-service;1"] .getservice(components.
interfaces.nsiexternalprotocolservice); if (extps.externalprotocolhandlerexists("tlcxp")) { // handler for http:// urls exists } else { // suppress external-load warning for standard browser schemes pre...
...void loaduri( in nsiuri auri, [optional] in nsi
interfacerequestor awindowcontext ); parameters auri the uri to load.
nsIFeedProcessor
toolkit/components/feeds/public/nsifeedprocessor.idlscriptable this
interface parses rss or atom feeds, triggering callbacks based on their contents during and after the processing.
...to create an instance, use: var feedprocessor = components.classes["@mozilla.org/feed-processor;1"] .createinstance(components.
interfaces.nsifeedprocessor); method overview void parseasync(in nsirequestobserver requestobserver, in nsiuri uri); void parsefromstream(in nsiinputstream stream, in nsiuri uri); void parsefromstring(in astring str, in nsiuri uri); attributes attribute type description listener nsifeedresultlistener the feed result listener that will respond to feed events.
...you must not call any of the other parsing methods on the nsifeedprocessor
interface during an asynchronous parse.
nsIFeedTextConstruct
toolkit/components/feeds/public/nsifeedtextconstruct.idlscriptable this
interface represents rss or atom feed text fields that may contain plain text, html, or xhtml.
... some extension elements also include "type" parameters, and this
interface could be used to represent those as well.
...various other feed-related
interfaces, such as nsifeed, nsifeedentry, and nsifeedcontainer have attributes that return objects implementing nsifeedtextconstruct.
nsIGlobalHistory2
docshell/base/nsiglobalhistory2.idlscriptable this
interface provides information about global history to gecko.
... it was split off from nsiglobalhistory during the transition to toolkit
interfaces.
... inherits from: nsisupports last changed in gecko 1.7 this
interface replaces and deprecates nsiglobalhistory method overview void adduri(in nsiuri auri, in boolean aredirect, in boolean atoplevel, in nsiuri areferrer); boolean isvisited(in nsiuri auri); void setpagetitle(in nsiuri auri, in astring atitle); methods adduri() add a uri to global history.
nsIHttpServer
an example : https://github.com/laurentj/slimerjs/blob/master/src/modules/webserver.jsm var exported_symbols = ["create"]; components.utils.import("resource://gre/modules/services.jsm"); function create() { var server = components.classes["@mozilla.org/server/jshttp;1"] .createinstance(components.
interfaces.nsihttpserver); return { get objectname () { return "webserver"; }, /** * @param integer|string port port or "host:port" * @param object opt optional options.
...rt] = port.split(':'); port = parseint(port); server.identity.add('http', host, port); } server.wrappedjsobject._start(port, host); return true; }, registerfile: function(path, filepath) { var file = components.classes['@mozilla.org/file/local;1'] .createinstance(components.
interfaces.nsilocalfile); file.initwithpath(filepath); return server.registerfile(path, file); }, registerdirectory : function(path, directorypath) { var file = components.classes['@mozilla.org/file/local;1'] .createinstance(components.
interfaces.nsilocalfile); file.initwithpath(directorypath); return s...
...nse(response); handlercallback(req, resp); }); }, close: function(){ server.stop(function(){}); }, get port() { return server.identity.primaryport } } } reference : mozilla-release/netwerk/test/httpserver/nsihttpserver.idl [scriptable, uuid(cea8812e-faa6-4013-9396-f9936cbb74ec)]
interface nsihttpserver : nsisupports { /** * starts up this server, listening upon the given port.
nsIINIParserFactory
xpcom/ds/nsiiniparser.idlscriptable this
interface is used to create nsiiniparser objects for use in parsing ini files.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) see example for how to use this
interface.
...example obtaining a parser object to obtain a parser for an ini file, you can use code that looks like this: to get an nsiiniparser instance for an ini file, you may use the following code: // create an nsilocalfile var cl = "@mozilla.org/file/local;1"; var interf = components.
interfaces.nsilocalfile; var file = components.classes[cl].createinstance(interf); // init the file with the path to your ini file var path = "c:\\temp\\example.ini"; file.initwithpath(path); // create the nsiiniparserfactory var cl = "@mozilla.org/xpcom/ini-parser-factory;1"; var interf = components.
interfaces.nsiiniparserfactory; var inifact = components.manager.getclassobjectbycontractid(cl,interf); ...
nsIINIParserWriter
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) this
interface provides methods that allow writing to ini-format configuration files.
... to create an nsiiniparserwriter object, you use the nsiiniparserfactory
interface to create a parser, then nsisupports.query
interface() that to get an nsiiniparserwriter, like this: let writer = components.classes["@mozilla.org/xpcom/ini-processor-factory;1"].
... .getservice(components.
interfaces.nsiiniparserfactory) .createiniparser(somelocalfile) .query
interface(components.
interfaces.nsiiniparserwriter); here, somelocalfile is an nsifile based object, such as an nsilocalfile.
nsIIdleService
to create an instance, use: var idleservice = components.classes["@mozilla.org/widget/idleservice;1"] .getservice(components.
interfaces.nsiidleservice); method overview void addidleobserver(in nsiobserver observer, in unsigned long time); void removeidleobserver(in nsiobserver observer, in unsigned long time); attributes attribute type description idletime unsigned long the amount of time in milliseconds that has passed since the last user activity.
... example example 1 var idleservice = components.classes["@mozilla.org/widget/idleservice;1"] .getservice(components.
interfaces.nsiidleservice) settimeout(function() { alert(idleservice.idletime) }, 1000) // if you don't use the mouse or the keyboard after running this snippet, // you'll see a number around 1000 alerted.
... example 2 var idleservice = components.classes["@mozilla.org/widget/idleservice;1"] .getservice(components.
interfaces.nsiidleservice) var idleobserver = { observe: function(subject, topic, data) { alert("topic: " + topic + "\ndata: " + data); } }; idleservice.addidleobserver(idleobserver, 60); // one minute // ...
nsIInputStream
xpcom/io/nsiinputstream.idlscriptable this
interface represents a readable stream of data.
...nsresult copystream(nsiinputstream* astream, nsacstring& aresultbuf) { uint32_t numread; return astream->readsegments(appendsegment, (void*) &aresultbuf, pr_uint32_max, &numread); } remarks this
interface was frozen for gecko 1.0.
...from gecko 2.0
interfaces are no longer frozen.
nsIJSON
dom/
interfaces/json/nsijson.idlscriptable this
interface provides a convenient way to encode and decode json strings from javascript code.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) note: this
interface may only be used from javascript code, with the exception of the legacydecodetojsval() method.
...to create an instance, use: var nativejson = components.classes["@mozilla.org/dom/json;1"] .createinstance(components.
interfaces.nsijson); method overview note: the idl file has portions of the idl commented out because they represent things that can't actually be properly described by idl; however, for the purposes of this article, we'll pretend they can be and ignore that issue.
nsIJetpackService
js/jetpack/nsijetpackservice.idlscriptable this
interface enables the creation of new jetpack processes.
...method overview nsijetpack createjetpack(); methods createjetpack() this method creates a new jetpack process and returns an nsijetpack
interface that represents it.
...return value an nsijetpack
interface representing the remote process.
nsILivemarkService
toolkit/components/places/public/nsilivemarkservice.idlscriptable this
interface is used to create and reload livemarks.
... 1.0 66 introduced gecko 1.8 obsolete gecko 22.0 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) this
interface is obsolete.
...to use this service, use: var livemarkservice = components.classes["@mozilla.org/browser/livemark-service;2"] .getservice(components.
interfaces.nsilivemarkservice); method overview long long createlivemark(in long long folder, in astring name, in nsiuri siteuri, in nsiuri feeduri, in long index); long long createlivemarkfolderonly(in long long folder, in astring name, in nsiuri siteuri, in nsiuri feeduri, in long index); nsiuri getfeeduri(in long long container); long long getlivemarkidforfeeduri(in nsiuri afeeduri); nsiuri getsiteuri(in long long container); boolean islivemark(in long long folder); void reloadalllivemarks(); void reloadlivem...
nsILocalFile
in gecko 14 this
interface was merged into the nsifile
interface.
... xpcom/io/nsilocalfile.idlscriptable this
interface adds methods to nsifile that are particular to a file that is accessible via the local file system.
...to create an instance, use: var localfile = components.classes["@mozilla.org/file/local;1"] .createinstance(components.
interfaces.nsilocalfile); method overview void appendrelativenativepath(in acstring relativefilepath); native code only!
nsILoginManagerStorage
toolkit/components/passwordmgr/public/nsiloginmanagerstorage.idlscriptable this
interface is implemented by modules that wish to provide storage mechanisms for the login manager.
...note: extensions that simply want to access/store logins should use the login manager service and nsiloginmanager
interface instead.
...the user
interface allows this to be done without getting each login first (which might require knowing the master password).
nsIMenuBoxObject
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) to get access to the box object for a given menu, use code like this: var boxobject = xulmenu.boxobject.query
interface(components.
interfaces.nsimenuboxobject); method overview boolean handlekeypress(in nsidomkeyevent keyevent); void openmenu(in boolean openflag); attributes attribute type description activechild nsidomelement the currently active menu or menuitem child of the menu box.
... note: for gecko 2.0, the openedwithkey attribute exists on the nsimenuboxobject_mozilla_2_0_branch
interface.
... subsequent gecko versions will have the attribute on the nsimenuboxobject
interface.
nsIMessenger
the nsimessenger
interface provides functions for managing the history, undo and redo operations, and for loading, saving, or deleting messages and attachments in mailnews.
...to create an instance, use: messenger = components.classes["@mozilla.org/messenger;1"] .createinstance(components.
interfaces.nsimessenger); in thunderbird, a global nsimessenger object is defined as messenger via the createmessenger function in mailwindow.js.
...(in acstring auri); nsimsgdbhdr msghdrfromuri(in acstring auri); acstring getmsguriatnavigatepos(in long apos); acstring getfolderuriatnavigatepos(in long apos); void getnavigatehistory(out unsigned long acurpos, out unsigned long acount, [array, size_is(acount)] out string ahistory); note: prior to gecko 8.0, all references to nsidomwindow used in this
interface were nsidomwindow.
nsIMsgAccountManagerExtension
the nsimsgaccountmanagerextension
interface is used to add a new panel to thunderbird's account manager.
... an account manager extension is a xpcom compontent implementing this
interface.
... the
interface is basically a manifest and defines the properties of the new panel.
nsIMsgCustomColumnHandler
the nsimsgcustomcolumnhandler
interface allows you to create custom handlers for columns.
... last changed in gecko 1.9 (firefox 3) inherits from: nsitreeview this
interface is meant to be implemented by extensions, as shown in the tutorial.
... the
interface inherits from nsitreeview, however when you're implementing a custom handler in javascript its not necessary to implement all of nsitreeview's methods.
nsIMsgProtocolInfo
the nsimsgprotocolinfo
interface describes the capabilities of an account type.
... serveriid nsiidptr the iid of the server-specific
interface, used during account creation.
... remarks this is one of the
interfaces that is required to create a new account type.
nsIMsgSearchSession
the nsimsgsearchsession
interface allows you to create and manipulate search sessions within thunderbird.
... to create an instance, use: var searchsession = components.classes["@mozilla.org/messenger/searchsession;1"] .createinstance(components.
interfaces.nsimsgsearchsession); to use the instance append search terms, set the scope, and then call search().
... searchsession.addscopeterm(components.
interfaces.nsmsgsearchscope.offlinemail, afolder); var searchterm = searchsession.createterm(); var value = searchterm.value; value.str = avalue; searchterm.value = value; searchterm.op = searchsession.booleanor; searchterm.booleanand = false; searchsession.appendterm(searchterm); searchsession.search(null); inherits from: nsisupports method overview void addsearchterm(in nsmsgsearchattribvalue attrib, in nsmsgsearchopvalue op, in nsimsgsearchvalue value, in boolean booleanand, in string arbitraryheader); nsimsgsearchterm createterm(); void appendterm(in nsimsgsearchterm term); void registerlistener(in nsimsgsearchnotify listener); void unregisterlistener(in nsimsgsearchnotify listener); void getnthse...
nsIMsgWindow
to create an instance, use: msgwindow = components.classes["@mozilla.org/messenger/msgwindow;1"] .createinstance(components.
interfaces.nsimsgwindow); in thunderbird the default message window is stored in the global variable msgwindow.
... notificationcallbacks nsi
interfacerequestor these are currently used to set notification callbacks on protocol channels to handle things like bad cert exceptions.
... promptdialog nsiprompt readonly: this is the equivalent of calling get
interface on the rootdocshell object.
nsINavBookmarkObserver
toolkit/components/places/nsinavbookmarksservice.idlscriptable this
interface is an observer for bookmark changes.
... using onbeforeitemremoved() in gecko 1.9.1 if you wish to support onbeforeitemremoved() in applications based on gecko 1.9.1, you must implement your observer's query
interface() method to match on both nsinavbookmarkobserver and nsinavbookmarkobserver_mozilla_1_9_1_additions, as shown below.
... query
interface: function(iid) { if (iid.equals(ci.nsinavbookmarkobserver) || iid.equals(ci.nsinavbookmarkobserver_mozilla_1_9_1_additions) || iid.equals(ci.nsisupports)) { return this; } throw cr.ns_error_no_
interface; } see also places manipulating bookmarks using places nsinavbookmarksservice ...
nsINavBookmarksService
toolkit/components/places/nsinavbookmarksservice.idlscriptable the bookmarksservice
interface provides methods for managing bookmarked history items.
...to use this service, use: var navbookmarksservice = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.
interfaces.nsinavbookmarksservice); method overview void addobserver(in nsinavbookmarkobserver observer, in boolean ownsweak); void beginupdatebatch(); obsolete since gecko 1.9 void changebookmarkuri(in long long aitemid, in nsiuri anewuri); long long createdynamiccontainer(in long long aparentfolder, in autf8string aname, in astring acontractid, in long aindex); note...
... void runinbatchmode( in nsinavhistorybatchcallback acallback, in nsisupports auserdata ); parameters acallback nsinavhistorybatchcallback
interface to call.
nsINavHistoryContainerResultNode
toolkit/components/places/public/nsinavhistoryservice.idlscriptable a foundation for the
interfaces that provide a description of a query result on the places service that describes a container (which is any kind of grouping, including bookmark folders).
... childrenreadonly boolean false if the node's list of children can be modified (by adding or removing children, or rearranging them), or true if the user
interface should not allow the list of children to be altered.
... remarks there are a number of untested methods on this
interface that are not documented at present, and are disabled in the idl file.
nsINavHistoryResultViewer
removed in gecko 2.0 and replaced with the nsinavhistoryresultobserver
interface, which is similar but allows multiple clients to observe the result at once.
... note: most methods in this
interface were renamed in gecko 1.9.2, and others have slightly different parameter lists.
... remarks this method is only called to update the sorting user
interface.
nsINavHistoryService
toolkit/components/places/nsinavhistoryservice.idlscriptable this
interface provides complex query functions, more fine-grained getters and setters.
...to use this service, use: var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.
interfaces.nsinavhistoryservice); method overview astring getpagetitle(in nsiuri auri); void markpageasfollowedbookmark(in nsiuri auri); void markpageasfollowedlink(in nsiuri auri); void markpageastyped(in nsiuri auri); boolean canadduri(in nsiuri auri); long long addvisit(in nsiuri auri, in prtime atime, in nsiuri areferringuri, in long atransitiontype, in boo...
... void runinbatchmode( in nsinavhistorybatchcallback acallback, in nsisupports aclosure ); parameters acallback nsinavhistorybatchcallback
interface to call.
nsIPlacesImportExportService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) in the past, this
interface also offered methods for importing places data, but those methods are now part of the bookmarkhtmlutils.jsm javascript code module.
... the
interface name has been kept for compatibility reasons for code using the export service.
... implemented by: @mozilla.org/import-export-service;1 as a service: var placesimportexportservice = components.classes["@mozilla.org/import-export-service;1"] .getservice(components.
interfaces.nsiplacesimportexportservice); method overview void backupbookmarksfile(); void exporthtmltofile(in nsilocalfile afile); void importhtmlfromfile(in nsilocalfile afile, in boolean aisinitialimport); obsolete since gecko 14.0 void importhtmlfromfiletofolder(in nsilocalfile afile, in print64 afolder, in boolean aisinitialimport); obsolete since gecko 14.0 void importhtmlfromuri(in nsiuri auri, in boolean aisinitialimport); obsolete since gecko 14.0 methods backupbookmarksfile() backs up the bookmarks.html file.
nsIPrintingPrompt
embedding/browser/webbrowser/nsiprintingprompt.idlscriptable this is the printing prompt
interface which can be used without knowlege of a parent window.
... the parentage is hidden by the get
interface though which it is gotten.
... inherits from: nsisupports last changed in gecko 1.7 this
interface is identical to nsipintingpromptservice but without the parent nsidomwindow parameter.
nsIProcess
xpcom/threads/nsiprocess.idlscriptable this
interface represents an executable process.
...to create an instance, use: var process = components.classes["@mozilla.org/process/util;1"] .createinstance(components.
interfaces.nsiprocess); method overview void init(in nsifile executable); void initwithpid(in unsigned long pid); obsolete since gecko 1.9.2 void kill(); void run(in boolean blocking, [array, size_is(count)] in string args, in unsigned long count); void runasync([array, size_is(count)] in string args, in unsigned long count, [optional] in nsiobserver observer, [optional] in boolean holdweak); void runw(in boolean blocking, [array, size_is(count)] in wstring args,...
... example // create an nsifile for the executable var file = components.classes["@mozilla.org/file/local;1"] .createinstance(components.
interfaces.nsifile); file.initwithpath("c:\\myapp.exe"); // create an nsiprocess var process = components.classes["@mozilla.org/process/util;1"] .createinstance(components.
interfaces.nsiprocess); process.init(file); // run the process.
nsIProtocolProxyFilter
netwerk/base/public/nsiprotocolproxyfilter.idlscriptable this
interface is used to apply filters to the proxies selected for a given uri.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this
interface is used to apply filters to the proxies selected for a given uri.
... use nsiprotocolproxyservice.registerfilter() to hook up instances of this
interface.
nsIProtocolProxyService
netwerk/base/public/nsiprotocolproxyservice.idlscriptable this
interface provides methods to access information about various network proxies.
...to access the service use: var pps = components.classes["@mozilla.org/network/protocol-proxy-service;1"] .getservice(components.
interfaces.nsiprotocolproxyservice); method overview deprecated since gecko 18 nsiproxyinfo resolve(in nsiuri auri, in unsigned long aflags); nsicancelable asyncresolve(in nsiuri auri, in unsigned long aflags,in nsiprotocolproxycallback acallback); nsiproxyinfo newproxyinfo(in acstring atype, in autf8string ahost,in long aport, in unsigned long aflags, in unsigned long afailovertimeout, in nsiproxyinfo afailoverproxy); nsiproxyinfo getfailoverforproxy(in nsiproxyinfo aproxyinfo, in nsiuri auri, in n...
...other string values may be possible, and new types may be defined by a future version of this
interface.
nsIProxyInfo
this
interface identifies a proxy server.
... some special values for this attribute include (but are not limited to) the following: "http" - http proxy (or ssl connect for https) "socks" - socks v5 proxy "socks4" - socks v4 proxy "direct" - no proxy "unknown" - unknown proxy (see nsiprotocolproxyservice.resolve()) a future version of this
interface may define additional types.
... constants the following "proxy flags" may be bit-wise combined to construct the flags attribute defined on this
interface.
nsIPushSubscription
dom/
interfaces/push/nsipushservice.idlscriptable includes information needed to send a push message to privileged code.
... this
interface resembles pushsubscription from the push api.
... example const { classes: cc,
interfaces: ci, utils: cu } = components; const scriptsecuritymanager = cc["@mozilla.org/scriptsecuritymanager;1"] .getservice(ci.nsiscriptsecuritymanager); const pushservice = cc["@mozilla.org/push/service;1"] .getservice(ci.nsipushservice); function sendsubscriptiontoserver(subscription) { let request = cc["@mozilla.org/xmlextras/xmlhttprequest;1"...
nsISHistory
docshell/shistory/public/nsishistory.idlscriptable an
interface to the primary properties of the session history component.
...to create an instance, use: var shistory = components.classes["@mozilla.org/browser/shistory;1"] .createinstance(components.
interfaces.nsishistory); method overview void addshistorylistener(in nsishistorylistener alistener); nsishentry getentryatindex(in long index, in boolean modifyindex); void purgehistory(in long numentries); void reloadcurrententry(); void removeshistorylistener(in nsishistorylistener alistener); attributes attribute type description ...
... perform a query
interface on the object returned by step #2 to nsishentry.
nsIScreen
widget/nsiscreen.idlscriptable this
interface provides information about a display screen.
...implemented by: @mozilla.org/gfx/screenmanager;1 as a service: var screen = components.classes["@mozilla.org/gfx/screenmanager;1"] .getservice(components.
interfaces.nsiscreen); method overview void getavailrect(out long left, out long top, out long width, out long height); void getrect(out long left, out long top, out long width, out long height); void lockminimumbrightness(in unsigned long brightness); void unlockminimumbrightness(in unsigned long brightness); attributes attribute type description colordepth long the screen's color depth; this is the...
... example var screenman = components.classes["@mozilla.org/gfx/screenmanager;1"] .getservice(components.
interfaces.nsiscreenmanager); var left = {}, top = {}, width = {}, height = {}; screenman.primaryscreen.getrect(left, top, width, height); print([left.value, top.value, width.value, height.value]); see also nsiscreenmanager working with out parameters ...
nsIScriptableUnescapeHTML
parser/html/nsiscriptableunescapehtml.idlscriptable this
interface is a utility
interface that exposes the kind of markup parser behavior that the feed service needs.
... 1.0 66 introduced gecko 1.8 obsolete gecko 14.0 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) note: as of firefox 14, this
interface is obsolete (but still available for compatibility with legacy extensions) and all its functionality is available with more configuration options via the nsiparserutils
interface.
... implemented by: @mozilla.org/feed-unescapehtml;1 as a service: var scriptableunescapehtml = components.classes["@mozilla.org/feed-unescapehtml;1"] .getservice(components.
interfaces.nsiscriptableunescapehtml); method overview nsidomdocumentfragment parsefragment(in astring fragment, in prbool isxml, in nsiuri baseuri, in nsidomelement element); astring unescape(in astring src); methods parsefragment() parses a string of html or xml source into a sanitized documentfragment.
nsIScrollable
/docshell/base/nsiscrollable.idlscriptable this
interface can be implemented by a control that supports scrolling.
... this is a generic
interface without concern for the type of content that may be inside.
... example var nsiscr = gbrowser.selectedbrowser.docshell.query
interface(components.
interfaces.nsiscrollable); var v={}; var h={}; nsiscr.getscrollbarvisibility(v,h); v.value //returns true if the vertical scrollbar is displayed h.value //returns true if the horizontal scrollbar is displayed ...
nsISelection
add brief description of
interface ???
... inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10)
interface for manipulating and querying the current selected range of nodes within the document.
...as a service: var selection = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.nsiselection); method overview void addrange(in nsidomrange range); void collapse(in nsidomnode parentnode, in long offset); [noscript,notxpcom,nostdcall] boolean collapsed(); void collapsenative(in nsidomnode parentnode, in long offset); native code only!
nsISelectionPrivate
ection_none 0 tableselection_cell 1 tableselection_row 2 tableselection_column 3 tableselection_table 4 tableselection_allcells 5 methods addselectionlistener() void addselectionlistener( in nsiselectionlistener newlistener ); parameters newlistener endbatchchanges() will resume user
interface updates after a previous call to startbatchchanges().
... void settextrangestyle( in nsidomrange range, in consttextrangestyleref textrangestyle ); parameters range textrangestyle startbatchchanges() will stop user
interface updates while multiple selection methods are called.
... call endbatchchanges() to resume user
interface updates.
nsISimpleEnumerator
xpcom/ds/nsisimpleenumerator.idlscriptable this
interface represents an enumeration of xpcom objects and provides methods to access elements sequentially.
...remarks this
interface was frozen for gecko 0.9.6.
...from gecko 2.0
interfaces are no longer frozen.
nsISocketProvider
netwerk/socket/nsisocketprovider.idlscriptable this
interface represents a socket provider.
...to create an instance, use: var socketprovider = components.classes["@mozilla.org/network/socket;2?type="] .createinstance(components.
interfaces.nsisocketprovider); method overview void addtosocket(in long afamily, in string ahost, in long aport, in string aproxyhost, in long aproxyport, in unsigned long aflags, in prfiledescstar afiledesc, out nsisupports asecurityinfo); native code only!
...when set, the hostname parameter passed in this
interface will be used instead of the address structure passed for a later request.
nsISocketTransportService
netwerk/base/public/nsisockettransportservice.idlscriptable this
interface provides a mapping between a socket type and its associated socket provider instance.
...to create an instance, use: var sockettransportservice = components.classes["@mozilla.org/network/socket-transport-service;1"] .getservice(components.
interfaces.nsisockettransportservice); method overview void attachsocket(in prfiledescptr afd, in nsasockethandlerptr ahandler); native code only!
... var transportservice = components.classes["@mozilla.org/network/socket-transport-service;1"] .getservice(components.
interfaces.nsisockettransportservice); // ...
nsISound
widget/public/nsisound.idlscriptable this
interface provides a way to play sounds.
... inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) warning: this
interface should not be used to play custom sounds in modern code.
...to use this
interface, use: var sound = components.classes["@mozilla.org/sound;1"] .createinstance(components.
interfaces.nsisound); method overview void beep(); void init(); void play(in nsiurl aurl); void playeventsound(in unsigned long aeventid); void playsystemsound(in astring soundalias); constants sound event constants constant value description event_new_mail_received 0 the system receives email.
nsIStandardURL
netwerk/base/public/nsistandardurl.idlscriptable this
interface defines the
interface to an url with the standard file path format common to protocols like http, ftp, and file.
...to create an instance, use: var standardurl = components.classes["@mozilla.org/network/standard-url;1"] .createinstance(components.
interfaces.nsistandardurl); method overview void init(in unsigned long aurltype, in long adefaultport, in autf8string aspec, in string aorigincharset, in nsiuri abaseuri); attributes attribute type description mutable boolean control whether or not this url can be modified.
...if null, then provide abaseuri implements this
interface, the origin charset of abaseuri will be assumed, otherwise defaulting to utf-8 (that is, no charset transformation from aspec).
nsISupportsCString
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for ascii character strings.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsChar
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for single character values (often used to store an ascii character).
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsDouble
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for double-precision floating-point values.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsFloat
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for single-precision floating-point values.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsID
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for boolean values.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRBool
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for boolean values.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRInt16
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 16-bit signed integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRInt32
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 32-bit signed integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRInt64
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 64-bit signed integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRTime
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for prtime values.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRUint16
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 16-bit unsigned integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRUint32
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 32-bit unsigned integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRUint64
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 64-bit unsigned integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsPRUint8
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for 8-bit unsigned integers.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupportsString
xpcom/ds/nsisupportsprimitives.idlscriptable this
interface provides scriptable access for unicode character strings.
...remarks this
interface was frozen for gecko 1.2.
...from gecko 2.0
interfaces are no longer frozen.
nsISupports proxies
xpcom proxies were a technology which allowed code to make asynchronous or synchronous xpcom calls to a different thread on arbitrary xpcom
interfaces.
... the following
interface is now obsolete: nsiproxyobjectmanager.
...see xpcom/proxy/public/nsiproxyobjectmanager.idl for the updated
interface and its documentation.
nsITXTToHTMLConv
netwerk/streamconv/public/nsitxttohtmlconv.idlscriptable this
interface allows you to modify the conversion from plain text to html.
...you should normally obtain an instance via the nsistreamconverterservice
interface.
... method overview void preformathtml(in boolean value); void settitle(in wstring text); prior versions of the
interface named the methods using the initialcaps style instead of the intercaps style.
nsITaskbarPreview
widget/public/nsitaskbarpreview.idlscriptable this
interface is used on microsoft windows as a common
interface for both window and tab taskbar previews.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can not directly instantiate this
interface.
... note: neither nsitaskbartabpreview or nsitaskbarwindowpreview makes full use of the controller; see the documentation for each
interface for details on which controller methods are used.
nsITaskbarPreviewController
widget/public/nsitaskbarpreviewcontroller.idlscriptable this
interface is used on microsoft windows to provide the behavior of taskbar previews.
... its methods and properties are used by the nsitaskbarpreview
interface.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) clients should provide their own implementation of this
interface.
nsITextInputProcessorCallback
dom/
interfaces/base/nsitextinputprocessor.idlscriptable a callback
interface for nsitextinputprocessor user 1.0 66 introduced gecko 38 inherits from: nsisupports last changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) nsitextinputprocessorcallback is defined for receiving requests and notifications to ime from gecko.
... this
interface has a "function" attribute.
... createinstance(components.
interfaces.nsitextinputprocessor); } if (!this._tip.begininputtransaction(window, this._callback)) { return false; } ...
nsIThreadEventFilter
the nsithreadeventfilter
interface may be implemented to determine whether or not an event may be accepted by a nested event queue; see nsithreadinternal.pusheventqueue() for more information.
... you should implement this
interface and its acceptevent() method, then pass the object implementing it as the filter.
... last changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview boolean acceptevent(in nsirunnable event);violates the xpcom
interface guidelines methods violates the xpcom
interface guidelines acceptevent() this method is called to determine whether or not an event may be accepted by a nested event queue.
nsITreeContentView
the nsitreecontentview
interface is implemented by tree views that are backed by dom content.
... it is typically reached by calling query
interface on a nsitreeview.
...remarks the nsitreecontentview
interface only applies to trees with dom element children, and does not apply to trees with flags="dontbuildcontent".
nsIURI
netwerk/base/public/nsiuri.idlscriptable this is an
interface for an uniform resource identifier with internationalization support, offering attributes that allow setting and querying the basic components of a uri, and methods for performing basic operations on uris.
... to create an nsiuri object, you should use nsiioservice.newuri(), like this: function makeuri(aurl, aorigincharset, abaseuri) { var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); return ioservice.newuri(aurl, aorigincharset, abaseuri); } components of a uri prepath path scheme userpass host port ref ftp :// username@password @ hostname : portnumber /pathname?query=value #ref method overview nsiuri clone(); nsiuri cloneignoringref(); ...
... if the uri stores information from the nsiioservice
interface's nsiioservice.newuri() call that created it, other than just the parsed string, the behavior of this information when setting the spec attribute is undefined.
nsIUUIDGenerator
xpcom/base/nsiuuidgenerator.idlscriptable this
interface can be used to generate an id that can be considered globally unique, often referred to as a uuid or guid.
... 1.0 66 introduced gecko 1.8.1 inherits from: nsisupports last changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) implemented by @mozilla.org/uuid-generator; as a service: var uuidgenerator = components.classes["@mozilla.org/uuid-generator;1"] .getservice(components.
interfaces.nsiuuidgenerator); method overview nsidptr generateuuid(); void generateuuidinplace(in nsnonconstidptr id); native code only!
... exceptions thrown ns_error_failure if a uuid cannot be generated (for example if an underlying source of randomness is not available) example generating a uuid var uuidgenerator = components.classes["@mozilla.org/uuid-generator;1"] .getservice(components.
interfaces.nsiuuidgenerator); var uuid = uuidgenerator.generateuuid(); var uuidstring = uuid.tostring(); ...
nsIUpdate
toolkit/mozapps/update/nsiupdateservice.idlscriptable an
interface that describes an object representing an available update to the current application - this update may have several available patches from which one must be selected to download and install, for example we might select a binary difference patch first and attempt to apply that, then if the application process fails fall back to downloading a complete file-replace patch.
... displayversion astring the string to display in the user
interface for the version.
...if the update is a security update, a more seriously-worded user
interface message is used to present the update to the user.
nsIUpdateTimerManager
toolkit/mozapps/update/nsiupdatetimermanager.idlscriptable this
interface provides a global application service that provides support for long-duration timers (on the order of many days, weeks, or even months).
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void registertimer(in astring id, in nsitimercallback callback, in unsigned long interval); methods registertimer() presents a user
interface that checks for and displays the available updates.
... method the method used to instantiate the
interface; this should be either getservice or createinstance, depending on your component.
nsIWebContentHandlerRegistrar
xpfe/appshell/public/nsiwebcontenthandlerregistrar.idlscriptable applications wishing to use web content handlers need to implement this
interface.
...mail.live.com/secure/start?action=compose&to=%s as a content or protocol handler' when calling method: [nsiwebcontenthandlerregistrar::registerprotocolhandler] if the host names do match then a confirmation like this will be seen: this domain check can be bypassed by setting the preference of gecko.handlerservice.allowregisterfromdifferenthost to true as in this code here: var {classes: cc,
interfaces: ci, utils: cu} = components; cu.import("resource://gre/modules/services.jsm"); var nsiwchr = cc["@mozilla.org/embeddor.implemented/web-content-handler-registrar;1"] .getservice(ci.nsiwebcontenthandlerregistrar); var allowregisterfromdifferenthost = services.prefs.getboolpref('gecko.handlerservice.allowregisterfromdifferenthost'); if (!allowregisterfromdifferenthost) { service...
...to take from: http://mxr.mozilla.org/mozilla-release/source/browser/components/feeds/src/webcontentconverter.js#372 and http://stackoverflow.com/questions/24900655/use-registerprotocolhandler-without-contentwindow place holder see also nsiwebcontentsonverterservice (under construction: page doesnt exist yet) registerprotocolhandler from non-privelaged scope web api
interfaces > navigator.registercontenthandler() web api
interfaces > navigator.registerprotocolhandler() ...
nsIWebNavigation
docshell/base/nsiwebnavigation.idlscriptable defines an
interface for navigating the web.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) this
interface is implemented by the following components: * @mozilla.org/browser/shistory-internal;1 * @mozilla.org/browser/shistory;1 * @mozilla.org/embedding/browser/nswebbrowser;1 * @mozilla.org/docshell;1 gecko 1.9.2 note in gecko 1.9.2 (firefox 3.6), the @mozilla.org/webshell;1 component no longer exists; you need to use @mozilla.org/docshell;1 instead.
...this will give priority to loading the requested uri in the object implementing this
interface.
nsIWritablePropertyBag2
xpcom/ds/nsiwritablepropertybag2.idlscriptable this
interface extends nsipropertybag2 with methods for setting properties.
...in astring value); void setpropertyasautf8string(in astring prop, in autf8string value); void setpropertyasbool(in astring prop, in boolean value); void setpropertyasdouble(in astring prop, in double value); void setpropertyasint32(in astring prop, in print32 value); void setpropertyasint64(in astring prop, in print64 value); void setpropertyas
interface(in astring prop, in nsisupports value); void setpropertyasuint32(in astring prop, in pruint32 value); void setpropertyasuint64(in astring prop, in pruint64 value); methods setpropertyasacstring() void setpropertyasacstring( in astring prop, in acstring value ); parameters prop property to set the value of.
... setpropertyas
interface() void setpropertyas
interface( in astring prop, in nsisupports value ); parameters prop property to set the value of.
nsIXFormsNSModelElement
it defines mozilla extensions to the nsixformsmodelelement
interface.
... last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0)
interface code [scriptable, uuid(85fd60c7-1db7-40c0-ae8d-f723fdd1eea8)]
interface nsixformsnsmodelelement : nsisupports { nsidomnodelist getinstancedocuments(); }; methods getinstancedocuments nsidomnodelist getinstancedocuments(); getinstancedocuments returns a nsidomnodelist containing all the instance documents for the model, making it possible to enumerate over instances in the model without knowing their names.
... related
interfaces nsixformsmodelelement example code none.
nsIXPCScriptable
note: this is not really an xpcom
interface.
... want_convert 1 << 10 want_finalize 1 << 11 want_checkaccess 1 << 12 want_call 1 << 13 want_construct 1 << 14 want_hasinstance 1 << 15 want_trace 1 << 16 use_jsstub_for_addproperty 1 << 17 use_jsstub_for_delproperty 1 << 18 use_jsstub_for_setproperty 1 << 19 dont_enum_static_props 1 << 20 dont_enum_query_
interface 1 << 21 dont_ask_instance_for_scriptable 1 << 22 classinfo_
interfaces_only 1 << 23 allow_prop_mods_during_resolve 1 << 24 allow_prop_mods_to_prototype 1 << 25 dont_share_prototype 1 << 26 dont_reflect_
interface_names 1 << 27 want_equality 1 << 28 want_outer_object 1 << 29 want_inner_object 1 << 30 reserved 1 << 31 the high order bit is reserved for consumer...
...no implementor of this
interface should ever return flags with this bit set.
nsIXULAppInfo
xpcom/system/nsixulappinfo.idlscriptable this
interface provides information about the host application.
...to create an instance, use: var xulappinfo = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulappinfo); the nsixulruntime
interface is also implemented by "xre/app-info".
... example display the application and the gecko version in an alert box: var info = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulappinfo); alert("application version: " + info.version + "\n" + "gecko version: " + info.platformversion); example this example here uses nsixulappinfo to get the version of the current browser and then compares it: example - compare current browser version see also using nsixulappinfo nsixulruntime get thunderbird version firefox code snippets ...
nsIXULTemplateBuilder
the nsitemplatebuilder
interface controls the display of elements using a xul template element and is automatically attached to an element containing a datasources attribute.
...results implement the nsixultemplateresult
interface and may be identified by an id which must be unique within a given set of query results.
...for convenience, each reference point as well as all results implement the nsixultemplateresult
interface, allowing the result objects from each iteration to be used directly as the reference points for the next iteration.
nsMsgViewFlagsType
the nsmsgviewflagstype
interface contains constants used for view flags in thunderbird.
... this
interface isn't ever implemented.
...for example, the 'unread only' view would use the flag: components.
interfaces.nsmsgviewflagstype.kunreadonly constants name value description knone 0x0 kthreadeddisplay 0x1 kshowignored 0x8 kunreadonly 0x10 kexpandall 0x20 kgroupbysort 0x40 ...
nsMsgViewSortOrder
the nsmsgviewsortorder
interface contains constants used for sort direction in thunderbird.
... this
interface isn't ever implemented.
...for example to sort by date you would pass a function the value: components.
interfaces.nsmsgviewsortorder.ascending mailnews/base/public/nsimsgdbview.idlscriptable please add a summary to this article.
nsMsgViewSortType
the nsmsgviewsorttype
interface contains constants used for sorting the thunderbird threadpane.
... this
interface isn't ever implemented.
...for example to sort by date you would pass a function the value: components.
interfaces.nsmsgviewsorttype.bydate mailnews/base/public/nsimsgdbview.idlscriptable please add a summary to this article.
nsMsgViewType
the nsmsgviewtype
interface contains constants used for views in thunderbird.
... this
interface isn't ever implemented.
...for example, to request the 'show all threads' view use the constant: components.
interfaces.nsmsgviewtype.eshowallthreads constants name value description eshowallthreads 0 eshowthreadswithunread 2 eshowwatchedthreadswithunread 3 eshowquicksearchresults 4 eshowvirtualfolderresults 5 eshowsearch 6 ...
Storage
nt asynchronously: statement.executeasync({ handleresult: function(aresultset) { for (let row = aresultset.getnextrow(); row; row = aresultset.getnextrow()) { let value = row.getresultbyname("column_name"); } }, handleerror: function(aerror) { print("error: " + aerror.message); }, handlecompletion: function(areason) { if (areason != components.
interfaces.mozistoragestatementcallback.reason_finished) print("query canceled or aborted!"); } }); the call to executeasync takes an object that implements mozistoragestatementcallback.
... synchronously if you are ok with the possibility of locking up your user
interface, or if you are running on a background thread, you can use mozistoragestatement.executestep().
...however, no other
interface or method is, so do not use them on different threads at the same time!
Using nsIPasswordManager
getting nsipasswordmanager to get a component implementing nsipasswordmanager, use the following: var passwordmanager = components.classes["@mozilla.org/passwordmanager;1"] .getservice(components.
interfaces.nsipasswordmanager); storing a password to store a password in the password manager, you need three things: a hostname/url (you'll need this to retrieve the password again later), a username, and a password.
...adding a password to the password manager is easy: passwordmanager.adduser('host', 'username', 'password'); since there's no provision to include names of html input fields, no password stored by this
interface will be used to fill in passwords on web pages.
... var pass = e.getnext().query
interface(components.
interfaces.nsipassword); if (pass.host == querystring) { // found it!
XPCOM ABI
xpcom abi is the binary
interface of xpcom components.
...ay be either: msvc - microsoft visual c++ n32 - irix 6 c++ compiler gcc2 - gnu c++ compiler 2.x gcc3 - gnu c++ compiler 3.x or 4.x sunc - sun c++ compiler ibmc - ibm c++ compiler for example: firefox built with the gnu c++ compiler 4.0.0 for the intel pentium processor would have xpcom abi of x86-gcc3 the xpcom abi string can be retrieved programmatically by using the nsixulruntime
interface.
... to retrieve the abi of your firefox or thunderbird, open the error console (accessible through tools | error console) and evaluate the following javascript code: components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulruntime) .xpcomabi if either the cpu architecture or the c++ compiler are unknown, the application wouldn't have an xpcom abi string and attempts to get it will result in error ns_error_not_available.
nsIMsgCloudFileProvider
nsimsgcloudfileprovider is the
interface that must be implemented by new filelink providers.
...n acstring afirstname, in acstring alastname, in nsirequestobserver acallback); void createexistingaccount(in nsirequestobserver acallback); acstring providerurlforerror(in unsigned long aerror); attributes attribute type description type acstring readonly: the type is a unique string identifier which can be used by
interface elements for styling.
... displayname acstring readonly: used for displaying the service name in the user
interface.
MailNews Protocols
the service classes usually have their own
interface, but they also implement nsimsgmessageservice.
...these implement nsimsgmailnewsurl, inherit from base/util/nsmsgmailnewsurl, and implement their own protocol-specific
interface (nsiimapurl, nsinntpurl, nsipop3url).
...these implement nsimsgprotocol, inherit from nsmsgprotocol, and implement their own protocol-specific
interface (nsiimapprotocol, nsipop3protocol, nsinntpprotocol) in addition, in mailnews/db/msgdb/public, we have protocol-specific msg db classes (and in the case of news, a nsinewsdatabase
interface), so that we can use polymorphism when msg db operations need to be specialized for different kinds of folders.
Adding items to the Folder Pane
each item in this array satisfies the following
interface: id (attribute) a unique string for this object.
... this._children.push(new numberrow(i)); } return this._children; }, getproperties: function gne_getprops() { // put your css attributes here }, command: function gne_command() { // just going to alert, to do something here components.classes["@mozilla.org/embedcomp/prompt-service;1"] .getservice(components.
interfaces.nsipromptservice) .alert(window, null, this.text); } }; second, our child items (the numbers 1, 2, and 3) are copies of the following prototype: function numberrow(anumber) { this._number = anumber; } numberrow.prototype = { get id() { return "numbers-child-row-" + this._number; }, get text() { return this._number; }, level: 1, ...
... open: false, children: [], getproperties: function gne_kid_getprops() {}, // no-op command: function gne_kid_command() { // just going to alert, to do something here components.classes["@mozilla.org/embedcomp/prompt-service;1"] .getservice(components.
interfaces.nsipromptservice) .alert(window, null, this.text); } }; putting it all together all that is left at this point is to actually add these newly defined folder-tree-items to the folder pane's _rowmap at the appropriate time.
Building a Thunderbird extension 5: XUL
thunderbird's user
interface is written in xul and javascript.
... xul is an xml grammar that provides user
interface widgets like buttons, menus, toolbars, trees etc.
...while xul provides the elements of the user
interface, actions are written in javascript.
Filter Incoming Mail
the, you've got components.
interfaces.nsimsgdbhdr from where you can modify the mail.
... by example, to modify the mail subject : var newmaillistener = { msgadded: function(amsghdr) { if( !amsghdr.isread ) { // here we are, a new mail has popped // let get a javascript string object from the subject property // querying mime conversion
interface var mimeconvert = components.classes["@mozilla.org/messenger/mimeconverter;1"] .getservice(components.
interfaces.nsimimeconverter); var subject = mimeconvert.decodemimeheader(amsghdr.subject, null, false, true); // here with have a string to modify with javascript.
...ocalelowercase(); // then we rebuild a subject objet by rencoding the string // and assign it to the message headers and we're done amsghdr.subject = mimeconvert.encodemimepartiistr_utf8(subject, false, "utf-8", 0, 72); } } }; function init() { var notificationservice = components.classes["@mozilla.org/messenger/msgnotificationservice;1"] .getservice(components.
interfaces.nsimsgfoldernotificationservice); notificationservice.addlistener(newmaillistener, notificationservice.msgadded); } addeventlistener("load", init, true); have a look to nsimsgdbhdr to get the full list of properties to be modified.
Add to iPhoto
downloadimage: function(src) { // get the file name to download from the url var filename = src.slice(src.lastindexof("/")+1); // build the path to download to var dest = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsiproperties) .get("tmpd", components.
interfaces.nsifile); dest.append(filename); dest.createunique(dest.normal_file_type, 0600); var wbp = components.classes['@mozilla.org/embedding/browser/nswebbrowserpersist;1'] .createinstance(components.
interfaces.nsiwebbrowserpersist); var ios = components.classes['@mozilla.org/network/io-service;1'] ...
... .getservice(components.
interfaces.nsiioservice); var uri = ios.newuri(src, document.characterset, gbrowser.selectedbrowser.contentdocument.documenturiobject); wbp.persistflags &= ~components.
interfaces.nsiwebbrowserpersist.persist_flags_no_conversion; // don't save gzipped wbp.saveuri(uri, null, null, null, null, dest); return dest.path; } this is pretty straightforward, typical mozilla code.
... closing remarks this is a fairly simple example of how to use js-ctypes, but it actually does something useful, and should be a helpful demonstration not just for how to use js-ctypes, but also more specifically for developers that want to
interface with mac os x system frameworks.
Attr - Web APIs
the attr
interface represents one of a dom element's attributes as an object.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="mid...
... note: dom level 3 defined namespaceuri, localname and prefix on the node
interface.
AudioScheduledSourceNode: ended event - Web APIs
the ended event of the audioscheduledsourcenode
interface is fired when the source node has stopped playing.
... bubbles no cancelable no
interface event event handler property audioscheduledsourcenode.onended usage notes this event occurs when a audioscheduledsourcenode has stopped playing, either because it's reached a predetermined stop time, the full duration of the audio has been performed, or because the entire buffer has been played.
... examples in this simple example, an event listener for the ended event is set up to enable a "start" button in the user
interface when the node stops playing: node.addeventlistener('ended', () => { document.getelementbyid("startbutton").disabled = false; }) you can also set up the event handler using the audioscheduledsourcenode.onended property: node.onended = function() { document.getelementbyid("startbutton").disabled = false; } for an example of the ended event in use, see our audio-buffer example on github.
AudioScheduledSourceNode.onended - Web APIs
the onended event handler for the audioscheduledsourcenode
interface specifies an eventhandler to be executed when the ended event occurs on the node.
... this event is sent to the node when the concrete
interface (such as audiobuffersourcenode, oscillatornode, or constantsourcenode) determines that it has stopped playing.
... examples in this simple example, an event listener for the ended event is set up to enable a "start" button in the user
interface when the node stops playing.
AudioTrackList - Web APIs
the audiotracklist
interface is used to represent a list of the audio tracks contained within a given html media element, with each track represented by a separate audiotrack object in the list.
... properties this
interface also inherits properties from its parent
interface, eventtarget.
... methods this
interface also inherits methods from its parent
interface, eventtarget.
AudioWorkletNode - Web APIs
although the
interface is available outside secure contexts, the baseaudiocontext.audioworklet property is not, thus custom audioworkletprocessors cannot be defined outside them.
... the audioworkletnode
interface of the web audio api represents a base class for a user-defined audionode, which can be connected to an audio routing graph along with other nodes.
... the audioworkletnode
interface does not define any methods of its own.
Beacon API - Web APIs
the beacon
interface is used to schedule an asynchronous and non-blocking request to a web server.
... example code of the
interfaces described in this document is included in using the beacon api.
... the beacon
interface addresses the needs of analytics and diagnostics code that typically attempts to send data to a web server before unloading the document.
BluetoothDevice - Web APIs
the bluetoothdevice
interface of the web bluetooth api represents a bluetooth device inside a particular script execution environment.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/bluetoothd...
...evice" target="_top"><rect x="151" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="226" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">bluetoothdevice</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;}
interface interface bluetoothdevice { readonly attribute domstring id; readonly attribute domstring?
CSSStyleDeclaration - Web APIs
the cssstyledeclaration
interface represents an object that is a css declaration block, and exposes style information and various style-related methods and properties.
... via window.getcomputedstyle(), which exposes the cssstyledeclaration object as a read-only
interface.
... working draft merged the dom level 2 style css2properties
interface into cssstyledeclaration.
CSSValue.cssValueType - Web APIs
the cssvaluetype read-only property of the cssvalue
interface represents the type of the current computed css property value.
... css_primitive_value the value is a primitive value and an instance of the cssprimitivevalue
interface can be obtained by using binding-specific casting methods on this instance of the cssvalue
interface.
... css_value_list the value is a cssvalue list and an instance of the cssvaluelist
interface can be obtained by using binding-specific casting methods on this instance of the cssvalue
interface.
CSSValue - Web APIs
the cssvalue
interface represents the current computed value of a css property.
... css_primitive_value the value is a primitive value and an instance of the cssprimitivevalue
interface can be obtained by using binding-specific casting methods on this instance of the cssvalue
interface.
... css_value_list the value is a cssvalue list and an instance of the cssvaluelist
interface can be obtained by using binding-specific casting methods on this instance of the cssvalue
interface.
CSS Font Loading API - Web APIs
the css font loading api provides events and
interfaces for dynamically loading font resources.
...
interfaces fontface represents a single usable font face.
... fontfaceset an
interface loading font faces and checking their download statuses.
CSS Properties and Values API - Web APIs
interfaces css.registerproperty defines how a browser should parse a css custom properties.
... access this
interface through css.registerproperty in javascript.
...access this
interface through @property in css.
Cache - Web APIs
the cache
interface provides a storage mechanism for request / response object pairs that are cached, for example as part of the serviceworker life cycle.
... note that the cache
interface is exposed to windowed scopes as well as workers.
...it holds the cachestorage object, by which it can access the cachestorage
interface.
CanvasCaptureMediaStreamTrack - Web APIs
the canvascapturemediastreamtrack
interface represents the video track contained in a mediastream being generated from a <canvas> following a call to htmlcanvaselement.capturestream().
... properties this
interface inherits the properties of its parent, mediastreamtrack.
... methods this
interface inherits the methods of its parent, mediastreamtrack.
CanvasImageSource - Web APIs
canvasimagesource provides a mechanism for other
interfaces to be used as image sources for some methods of the canvasdrawimage and canvasfillstrokestyles
interfaces.
...it’s not an
interface and there are no objects implementing it.
... the
interfaces that it allows to be used as image sources are the following: htmlimageelement svgimageelement htmlvideoelement htmlcanvaselement imagebitmap offscreencanvas specifications specification status comment html living standardthe definition of 'canvasimagesource' in that specification.
Canvas API - Web APIs
the actual drawing is done using the canvasrenderingcontext2d
interface.
... const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.fillstyle = 'green'; ctx.fillrect(10, 10, 150, 100); result reference htmlcanvaselement canvasrenderingcontext2d canvasgradient canvasimagesource canvaspattern imagebitmap imagedata renderingcontext textmetrics offscreencanvas path2d imagebitmaprenderingcontext note: the
interfaces related to the webglrenderingcontext are referenced under webgl.
... canvascapturemediastream is a related
interface.
ChildNode - Web APIs
living standard split the elementtraversal
interface in parentnode and childnode.
...the characterdata and documenttype implemented the new
interfaces.
... obsolete added the initial definition of its properties to the elementtraversal pure
interface and use it on element.
CompositionEvent - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1...
... properties this
interface also inherits properties of its parent, uievent, and its ancestor — event.
... methods this
interface also inherits methods of its parent, uievent, and its ancestor — event.
CustomEvent - Web APIs
the customevent
interface represents events initialized by an application for any purpose.
... this
interface inherits properties from its parent, event: event.bubbles read only a boolean indicating whether or not the event bubbles up through the dom.
... this
interface inherits methods from its parent, event: event.createevent() creates a new event, which must then be initialized by calling its initevent() method.
DedicatedWorkerGlobalScope - Web APIs
properties this
interface inherits properties from the workerglobalscope
interface, and its parent eventtarget, and therefore implements properties from windowtimers, windowbase64, and windoweventhandlers.
... event handlers this
interface inherits event handlers from the workerglobalscope
interface, and its parent eventtarget, and therefore implements event handlers from windowtimers, windowbase64, and windoweventhandlers.
... methods this
interface inherits methods from the workerglobalscope
interface, and its parent eventtarget, and therefore implements methods from windowtimers, windowbase64, and windoweventhandlers.
DirectoryReaderSync - Web APIs
the directoryreadersync
interface of the file system api lets you read the entries in a directory.
... this
interface has been abandonned: it was on a standard track and it proves not a good idea.
... basic concepts before you call the only method in this
interface, readentries(), create the directoryentrysync object.
Document: copy event - Web APIs
the copy event fires when the user initiates a copy action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncopy the original target for this event is the element that was the intended target of the copy action.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: cut event - Web APIs
the cut event is fired when the user has initiated a "cut" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncut the original target for this event is the element that was the intended target of the cut action.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: paste event - Web APIs
the paste event is fired when the user has initiated a "paste" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property onpaste the original target for this event is the element that was the intended target of the paste action.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Events and the DOM - Web APIs
the event
interface itself is described, as well as the
interfaces for event registration on nodes in the dom, and event listeners, and several longer examples that show how the various event
interfaces relate to one another.
... accessing event
interfaces event handlers may be attached to various objects (including dom elements, document, the window object, etc.).
... the event
interface is accessible from within the handler function, via the event object passed as the first argument.
DragEvent - Web APIs
the dragevent
interface is a dom event that represents a drag and drop interaction.
... this
interface inherits properties from mouseevent and event.
... constructors although this
interface has a constructor, it is not possible to create a useful datatransfer object from script, since datatransfer objects have a processing and security model that is coordinated by the browser during drag-and-drops.
Element.hasAttributes() - Web APIs
the hasattributes() method of the element
interface returns a boolean indicating whether the current element has any attributes or not.
... living standard moved from the node
interface to the more specialized element
interface.
... obsolete initial definition, on the node
interface.
ElementTraversal - Web APIs
the elementtraversal
interface used to define methods that allowed access from one node to another in the document tree.
...it has been split into two
interfaces, containing the useful methods and properties for each kind of nodes: childnode parentnode as it was a pure
interface, with no object of this type, this change has no effect on the web.
... living standard splitted the elementtraversal
interface in parentnode and childnode element traversal specificationthe definition of 'elementtraversal' in that specification.
EventListener - Web APIs
the eventlistener
interface represents an object that can handle an event dispatched by an eventtarget object.
... properties this
interface neither implements, nor inherits, any properties.
... methods this
interface doesn't inherit any methods.
EventSource - Web APIs
the eventsource
interface is web content's
interface to server-sent events.
... properties this
interface also inherits properties from its parent, eventtarget.
... methods this
interface also inherits methods from its parent, eventtarget.
FileException - Web APIs
it extends the fileexception
interface described in file writer and adds several new error codes.
... invalid_state_err 7 the operation cannot be performed on the current state of the
interface object.
... for example, the state that was cached in an
interface object has changed since it was last read from disk.
FileReaderSync - Web APIs
the filereadersync
interface allows to read file or blob objects synchronously.
... this
interface is only available in workers as it enables synchronous i/o that could potentially block.
... properties this
interface does not have any properties.
FileSystemDirectoryEntry - Web APIs
the filesystemdirectoryentry
interface of the file and directory entries api represents a directory in a file system.
...ot.getdirectory('documents', {create:true}, function(directoryentry){ //directoryentry.isfile === false //directoryentry.isdirectory === true //directoryentry.name === 'documents' //directoryentry.fullpath === '/documents' }, onerror); } // opening a file system with temporary storage window.requestfilesystem(temporary, 1024*1024 /*1mb*/, onfs, onerror); properties this
interface has no properties of its own, but inherits properties from its parent
interface, filesystementry.
... methods this
interface inherits methods from its parent
interface, filesystementry.
FileHandle API - Web APIs
api overview this api is based on the following
interfaces: idbdatabase.mozcreatefilehandle (was called idbdatabase.mozcreatefilehandle.) idbmutablefile (was previously filehandle.) lockedfile filerequest it also has connections with the file api, especially the file and blob
interfaces.
...the lockedfile
interface provides a readastext method and a readasarraybuffer method.
... var mysnapshot = null; var request = myfilehandle.getfile(); request.onsuccess = function () { mysnapshot = this.result; } managing progress all the methods from the lockedfile
interface return a filerequest object.
File and Directory Entries API support in Firefox - Web APIs
chrome deviations from the specification the largest compatibility issue still remaining is that chrome is still using older names for many of the
interfaces in the api, since they implemented a related but different specification: name in specification name in google chrome filesystemdirectoryentry directoryentry filesystemdirectoryentrysync directoryentrysync filesystemdirectoryreader directoryreader filesystemdirectoryreadersync directoryreadersync filesystementry entry ...
... only the asynchronous versions of the
interfaces are implemented.
... any
interfaces with names that end in "sync" aren't available.
FontFace - Web APIs
the fontface
interface represents a single usable font face.
... properties this
interface doesn't inherit any property.
... methods this
interface doesn't inherit any method.
FormDataEvent - Web APIs
the formdataevent
interface represents a formdata event — such an event is fired on an htmlformelement object after the entry list representing the form's data is constructed.
... properties inherits properties from its parent
interface, event.
... methods inherits methods from its parent
interface, event.
FullscreenOptions.navigationUI - Web APIs
the fullscreenoptions dictionary's navigationui property is used when calling requestfullscreen() to specify to what extent the user agent should include its standard user
interface while the element is presented in full-screen mode.
... "hide" the browser's navigation
interface will be hidden and the entire dimensions of the screen will be allocated to the display of the element.
... "show" the browser will present page navigation controls and possibly other user
interface; the dimensions of the element (and the perceived size of the screen) will be clamped to leave room for this user
interface.
GeolocationCoordinates - Web APIs
the geolocationcoordinates
interface represents the position and altitude of the device on earth, as well as the accuracy with which these properties are calculated.
... properties the geolocationcoordinates
interface doesn't inherit any properties.
... methods the geolocationcoordinates
interface neither implements, nor inherits any method.
GeolocationPosition - Web APIs
the geolocationposition
interface represents the position of the concerned device at a given time.
... properties the geolocationposition
interface doesn't inherit any properties.
... methods the geolocationposition
interface neither implements, nor inherits any methods.
GeometryUtils - Web APIs
the geometryutils
interface provides different utility function to retrieve geometry information about dom nodes.
... geometryutils is a raw
interface and no object of this type can be created; it is implemented by text, element, csspseudoelement, and document objects.
... properties this
interface does not implement any properties.
HTMLBaseElement - Web APIs
the htmlbaseelement
interface contains the base uri for a document.
... this object inherits all of the properties and methods as described in the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLBodyElement - Web APIs
the htmlbodyelement
interface provides special properties (beyond those inherited from the regular htmlelement
interface) for manipulating <body> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...htmlbodyelement implements this
interface.
HTMLContentElement - Web APIs
the htmlcontentelement
interface represents a <content> html element, which is used in shadow dom.
... properties this
interface inherits the properties of htmlelement.
... methods this
interface inherits the methods of htmlelement.
HTMLDetailsElement - Web APIs
the htmldetailselement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <details> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/htmldetailselement" target="_top"><rect x="1" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="91" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmldetailselement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its parent, htmlelement.
... events listen to this event using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
HTMLDialogElement - Web APIs
the htmldialogelement
interface provides methods to manipulate <dialog> elements.
... it inherits properties and methods from the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/htmldialogelement" target="_top"><rect x="1" y="1" width="170" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="86" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmldialogelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its parent, htmlelement.
HTMLHeadElement - Web APIs
the htmlheadelement
interface contains the descriptive information, or metadata, for a document.
... this object inherits all of the properties and methods described in the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLHeadingElement - Web APIs
the htmlheadingelement
interface represents the different heading elements, <h1> through <h6>.
... it inherits methods and properties from the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLHtmlElement - Web APIs
the htmlhtmlelement
interface serves as the root node for a given html document.
... this object inherits the properties and methods described in the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dd...
HTMLIFrameElement - Web APIs
the htmliframeelement
interface provides special properties and methods (beyond those of the htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of inline frame elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
... htmliframeelement.featurepolicy read only returns the featurepolicy
interface which provides a simple api for introspecting the feature policies applied to a specific document.
HTMLLabelElement - Web APIs
the htmllabelelement
interface gives access to properties specific to <label> elements.
... it inherits methods and properties from the base htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLLegendElement - Web APIs
the htmllegendelement is an
interface allowing to access properties of the <legend> elements.
... it inherits properties and methods from the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLMarqueeElement - Web APIs
the htmlmarqueeelement
interface provides methods to manipulate <marquee> elements.
... it inherits properties and methods from the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/htmlmarqueeelement" target="_top"><rect x="1" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="91" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlmarqueeelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its parent, htmlelement.
HTMLMenuElement - Web APIs
the htmlmenuelement
interface provides special properties (beyond those defined on the regular htmlelement
interface it also has available to it by inheritance) for manipulating <menu> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...htmlmenuelement" target="_top"><rect x="341" y="65" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="416" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlmenuelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} propertiesthis
interface has no properties, but inherits properties from: htmlelementmethodsthis
interface has no methods, but inherits methods from: htmlelement specifications specification status comment html living standardthe definition of 'htmlmenuelement' in that specification.
HTMLMenuItemElement - Web APIs
the htmlmenuitemelement
interface provides special properties (beyond those defined on the regular htmlelement
interface it also has available to it by inheritance) for manipulating <menuitem> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
...itemelement" target="_top"><rect x="301" y="65" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlmenuitemelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} propertiesthis
interface has no properties, but inherits properties from: htmlelementmethodsthis
interface has no methods, but inherits methods from: htmlelement specifications specification status comment html 5.1the definition of 'htmlmenuitemelement' in that specification.
HTMLMetaElement - Web APIs
the htmlmetaelement
interface contains descriptive metadata about a document.
... it inherits all of the properties and methods described in the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLMeterElement - Web APIs
the html <meter> elements expose the htmlmeterelement
interface, which provides special properties and methods (beyond the htmlelement object
interface they also have available to them by inheritance) for manipulating the layout and presentation of <meter> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
... methods this
interface does not implement any specific methods but inherits methods from its parent, htmlelement.
HTMLOptionsCollection - Web APIs
the htmloptionscollection
interface represents a collection of <option> html elements (in document order) and offers methods and properties for selecting from the list as well as optionally altering its items.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/htmlcollection" target="_top"><rect x="1" y="1" width="140" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="71" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlcollection</text></a><polyline points="141,25 151,20 151,30 141,25" stroke="#d4dde4" fill="none"/><line x1="151" y1="25" x2=...
... methods this
interface inherits the methods of its parent, htmlcollection.
HTMLTextAreaElement - Web APIs
the htmltextareaelement
interface provides special properties and methods for manipulating the layout and presentation of <textarea> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface: input event fires when the value of an <input>, <select>, or <textarea> element has been changed.
HTMLTitleElement - Web APIs
the htmltitleelement
interface contains the title for a document.
... this element inherits all of the properties and methods of the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
Drag Operations - Web APIs
the drag operations described in this document use the datatransfer
interface.
... this document does not use the datatransferitem
interface nor the datatransferitemlist
interface.
... however, you can also update the user
interface with an insertion point or highlight as needed.
History - Web APIs
the history
interface allows manipulation of the browser session history, that is the pages visited in the tab or frame that the current page is loaded in.
... properties the history
interface doesn't inherit any property.
... methods the history
interface doesn't inherit any methods.
IDBCursor - Web APIs
note: not to be confused with idbcursorwithvalue which is just an idbcursor
interface with an additional value property.
... the idbcursor
interface of the indexeddb api represents a cursor for traversing or iterating over multiple records in a database.
... properties note: idbcursorwithvalue is an idbcursor
interface with an additional value property.
IDBLocaleAwareKeyRange - Web APIs
the idblocaleawarekeyrange
interface of the indexeddb api is a firefox-specific version of idbkeyrange — it functions in exactly the same fashion, and has the same properties and methods, but it is intended for use with idbindex objects when the original index had a locale value specified upon its creation (see createindex()'s optionalparameters) — that is, it has locale aware sorting enabled.
... methods this
interface inherits all the methods of its parent
interface, idbkeyrange.
... properties this
interface inherits all the properties of its parent
interface, idbkeyrange.
IDBOpenDBRequest - Web APIs
the idbopendbrequest
interface of the indexeddb api provides access to the results of requests to open or delete databases (performed using idbfactory.open and idbfactory.deletedatabase), using specific event handler attributes.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke=...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
IDBTransaction - Web APIs
the idbtransaction
interface of the indexeddb api provides a static, asynchronous transaction on a database using event handler attributes.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px"...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
IDBVersionChangeRequest - Web APIs
warning: the latest specification does not include this
interface anymore as the idbdatabase.setversion() method has been removed.
...the new way to do it is to use the idbopendbrequest
interface which has now the onblocked handler and the newly needed onupgradeneeded one.
... the idbversionchangerequest
interface the indexeddb api represents a request to change the version of a database.
ImageCapture - Web APIs
the imagecapture
interface of the mediastream image capture api provides methods to enable the capture of images or photos from a camera or other photographic device.
... it provides an
interface for capturing images from a photographic device referenced through a valid mediastreamtrack.
... methods the imagecapture
interface is based on eventtarget, so it includes the methods defined by that
interface as well as the ones listed below.
LinkStyle - Web APIs
the linkstyle
interface provides access to the associated css style sheet of a node.
... linkstyle is a raw
interface and no object of this type can be created; it is implemented by htmllinkelement and htmlstyleelement objects.
... methods this
interface implements no method.
LocalFileSystem - Web APIs
the localfilesystem
interface of the file system api gives you access to a sandboxed file system.
... returns void exceptions this method can raise an fileerror with the following code: exception description security_error the application does not have permission to access the file system
interface.
... security_err the application does not have permission to access the file system
interface.
LocalFileSystemSync - Web APIs
the localfilesystemsync
interface of the file system api gives you access to a sandboxed file system.
... exceptions this method can raise an fileexception with the following code: exception description security_error the application does not have permission to access the file system
interface.
... security_err the application does not have permission to access the file system
interface.
MediaError - Web APIs
the mediaerror
interface represents an error which occurred while handling media in an html media element based on htmlmediaelement, such as <audio> or <video>.
... properties this
interface doesn't inherit any properties.
... methods this
interface doesn't implement or inherit any methods, and has none of its own.
MediaRecorder - Web APIs
the mediarecorder
interface of the mediastream recording api provides functionality to easily record media.
...the received event is based on the mediarecordererrorevent
interface, whose error property contains a domexception that describes the actual error that occurred.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
MediaRecorderErrorEvent - Web APIs
the mediarecordererrorevent
interface represents errors returned by the mediastream recording api.
... properties inherits properties from its parent
interface, event.
... methods inherits methods from its parent
interface, event.
MediaSource - Web APIs
the mediasource
interface of the media source extensions api represents a source of media data for an htmlmediaelement object.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line ...
... methods inherits methods from its parent
interface, eventtarget.
MediaStreamAudioSourceNode - Web APIs
the mediastreamaudiosourcenode
interface is a type of audionode which operates as an audio source whose media is received from a mediastream obtained using the webrtc or media capture and streams apis.
... track ordering for the purposes of the mediastreamtrackaudiosourcenode
interface, the order of the audio tracks on the stream is determined by taking the tracks whose kind is audio, then sorting the tracks by their id property's values, in unicode code point order (essentially, in alphabetical or lexicographical order, for ids which are simple alphanumeric strings).
... however, it's important to note that the rule establishing this ordering was added long after this
interface was first introduced into the web audio api.
MediaStreamTrackAudioSourceNode - Web APIs
the mediastreamtrackaudiosourcenode
interface is a type of audionode which represents a source of audio data taken from a specific mediastreamtrack obtained through the webrtc or media capture and streams apis.
...this
interface is similar to mediastreamaudiosourcenode, except it lets you specifically state the track to use, rather than assuming the first audio track on a stream.
... properties the mediastreamtrackaudiosourcenode
interface has no properties of its own; however, it inherits the properties of its parent, audionode.
MediaStreamTrackEvent - Web APIs
the mediastreamtrackevent
interface represents events which indicate that a mediastream has had tracks added to or removed from the stream through calls to media stream api methods.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4...
..." target="_top"><rect x="116" y="1" width="210" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="221" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">mediastreamtrackevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} the events based on this
interface are addtrack and removetrack properties also inherits properties from its parent
interface, event.
Using the MediaStream Recording API - Web APIs
this article aims to provide a basic guide on how to use the mediarecorder
interface, which provides this api.
... keeping the
interface constrained to the viewport, regardless of device height, with calc() the calc() function is one of those useful little utility features that's cropped up in css that doesn't look like much initially, but soon starts to make you think "wow, why didn't we have this before?
... const mediarecorder = new mediarecorder(stream); there are a series of methods available in the mediarecorder
interface that allow you to control recording of the media stream; in web dictaphone we just make use of two, and listen to some events.
MediaStream Recording API - Web APIs
basic concepts the mediastream recording api is comprised of a single major
interface, mediarecorder, which does all the work of taking the data from a mediastream and delivering it to you for processing.
... mediarecorder the primary
interface that implements the mediastream recording api.
... mediarecordererrorevent the
interface that represents errors thrown by the mediastream recording api.
Using the Media Capabilities API - Web APIs
the mediacapabilities
interface the mediacapabilities is available using the mediacapabilities property which is provided by both the navigator object and the workernavigator object; in other words, the media capabilities api is available both on the main thread and from workers.
...once the promises state is fulfilled, you can access the mediacapabilitiesinfo
interface's supported, smooth, and powerefficient properties.
...'' : 'not ') + 'power efficient.') }); the response provided is defined by the mediacapabilitiesinfo
interface.
Media Capabilities API - Web APIs
to test support, smoothness and power efficiency of a video or audio file, you define the media configuration you want to test, and then pass the audio or video configuration as the parameter of the mediacapabilities
interface's encodinginfo() and decodinginfo() methods.
... media capabilities
interfaces mediacapabilities provides information about the decoding abilities of the device, system and browser based on codecs, profile, resolution, and bitrates.
... mediacapabilitiesinfo the
interface of the promise returned by the mediacapabilities's encodinginfo() and decodinginfo() methods; returning whether the media configuration tested is supported, smooth, and powerefficient.
Media Capture and Streams API (Media Stream) - Web APIs
it provides the
interfaces and methods for working with the streams and their constituent tracks, the constraints associated with data formats, the success and error callbacks when using the data asynchronously, and the events that are fired during the process.
...
interfaces in these reference articles, you'll find the fundamental information you'll need to know about each of the
interfaces that make up the media capture and streams api.
...track inputdeviceinfo mediadevicekind mediadeviceinfo mediadevices mediastream mediastreamconstraints mediastreamevent mediastreamtrack mediastreamtrackevent mediatrackconstraints mediatracksettings mediatracksupportedconstraints overconstrainederror url early versions of the media capture and streams api specification included separate audiostreamtrack and videostreamtrack
interfaces—each based upon mediastreamtrack—which represented streams of those types.
MouseScrollEvent - Web APIs
the mousescrollevent
interface represents events that occur due to the user moving a mouse wheel or similar input device.
... do not use this
interface for wheel events.
... like mousewheelevent, this
interface is non-standard and deprecated.
MouseWheelEvent - Web APIs
the mousewheelevent
interface represents events that occur due to the user turning a mouse wheel.
... do not use this
interface for wheel events.
... like mousescrollevent, this
interface is non-standard and deprecated.
NDEFReader - Web APIs
the ndefreader
interface of the web nfc api is an abstract
interface used to read data from compatible nfc devices, e.g.
... properties in addition to the properties listed below, ndefreader inherits properties from its parent
interface, eventtarget.
... methods the ndefreader
interface inherits the methods of eventtarget, its parent
interface.
Navigation Timing API - Web APIs
interfaces performance the window.performance property returns a performance object.
... while this
interface is defined by the high resolution time api, the navigation timing api adds two properties: timing and navigation, of the types below.
...for example, this
interface can be used to determine how much time it takes to load or unload a document.
NavigatorLanguage - Web APIs
there is no object of type navigatorlanguage, but other
interfaces, like navigator or workernavigator, implement it.
... properties the navigatorlanguage
interface doesn't inherit any property.
... methods the navigatorlanguage
interface neither implements, nor inherit any method.
NodeIterator - Web APIs
the nodeiterator
interface represents an iterator over the members of a list of the nodes in a subtree of the dom.
... syntax a nodeiterator can be created using the document.createnodeiterator() method, as follows: const nodeiterator = document.createnodeiterator(root, whattoshow, filter); properties this
interface doesn't inherit any property.
... methods this
interface doesn't inherit any method.
NonDocumentTypeChildNode.nextElementSibling - Web APIs
living standard split the elementtraversal
interface in childnode, parentnode, and nondocumenttypechildnode.
... the element and characterdata
interfaces implemented the new
interface.
... obsolete added its initial definition to the elementtraversal pure
interface and use it on element.
NonDocumentTypeChildNode.previousElementSibling - Web APIs
living standard splitted the elementtraversal
interface in childnode, parentnode, and nondocumenttypechildnode.
... the element and characterdata
interfaces implemented the new
interface.
... obsolete added its initial definition to the elementtraversal pure
interface and use it on element.
NotificationEvent - Web APIs
the parameter passed into the onnotificationclick handler, the notificationevent
interface represents a notification click event that is dispatched on the serviceworkerglobalscope of a serviceworker.
... this
interface inherits from the extendableevent
interface.
... note: this
interface is specified in the notifications api, but accessed through serviceworkerglobalscope.
OfflineAudioCompletionEvent - Web APIs
the web audio api offlineaudiocompletionevent
interface represents events that occur when the processing of an offlineaudiocontext is terminated.
... the complete event implements this
interface.
... note: this
interface is marked as deprecated; it is still supported for legacy reasons, but it will soon be superseded when the promise version of offlineaudiocontext.startrendering is supported in browsers, which will no longer need it.
PaymentMethodChangeEvent - Web APIs
the paymentmethodchangeevent
interface of the payment request api describes the paymentmethodchange event which is fired by some payment handlers when the user switches payment instruments (e.g., a user selects a "store" card to make a purchase while using apple pay).
... properties in addition to the properties below, this
interface includes properties inherited from paymentrequestupdateevent.
... methods this
interface includes methods inherited from paymentrequestupdateevent.
PaymentRequestUpdateEvent - Web APIs
the paymentrequestupdateevent
interface is used for events sent to a paymentrequest instance when changes are made to shipping-related information for a pending paymentrequest.
... properties provides only the properties inherited from its parent
interface, event.
... methods in addition to methods inherited from the parent
interface, event, paymentrequestupdateevent offers the following methods: paymentrequestupdateevent.updatewith() secure context if the event handler determines that information included in the payment request needs to be changed, or that new information needs to be added, it calls updatewith() with the information that needs to be replaced or added.
PaymentResponse.complete() - Web APIs
the paymentrequest method complete() of the payment request api notifies the user agent that the user interaction is over, and causes any remaining user
interface to be closed.
... return value a promise which resolves with no input value once the payment
interface has been fully closed.
... exceptions aborterror the document in which the payment request is taking place became inactive while the user
interface was shown.
PaymentResponse - Web APIs
the paymentresponse
interface of the payment request api is returned after a user selects a payment method and approves a payment request.
...this causes any remaining user
interface to be closed.
... events listen to this event using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
Using the Payment Request API - Web APIs
in the code above, you'll see that we've called the paymentresponse.complete() method to signal that the interaction has finished — you'd use this to carry out finishing steps, like updating the user
interface to tell the user the transaction is complete, etc.
... showing additional user
interface after successful payments if the merchant desires to collect additional information not part of the api (e.g., additional delivery instructions), the merchant can show a page with additional <input type="text"> fields after the checkout.
...}); note: see our show additional user
interface after successful payment demo for the full code.
Payment Request API - Web APIs
interfaces paymentaddress an object that contains address information; used for billing and shipping addresses, for example.
... paymentrequest an object that provides the api for creating and managing the user agent's payment
interface.
... paymentdetailsupdate an object describing changes that need to be made to the payment details in the event that the server needs to update information following the instantiation of the payment
interface but before the user begins to interact with it.
PerformanceObserverEntryList.getEntries() - Web APIs
the getentries() method of the performanceobserverentrylist
interface returns a list of explicitly observed performance entry objects for a given filter.
... this method is exposed to window and worker
interfaces.
...the values are defined by the performanceresourcetiming.initiatortype
interface.
PerformanceServerTiming - Web APIs
the performanceservertiming
interface surfaces server metrics that are sent with the response in the server-timing http header.
... this
interface is restricted to the same origin, but you can use the timing-allow-origin header to specify the domains that are allowed to access the server metrics.
... note that this
interface is only available in secure contexts (https) in some browsers.
PointerEvent - Web APIs
the pointerevent
interface represents the state of a dom event produced by a pointer such as the geometry of the contact point, the device type that generated the event, the amount of pressure that was applied on the contact surface, etc.
... properties this
interface inherits properties from mouseevent and event.
... pointer event types the pointerevent
interface has several event types.
ProcessingInstruction - Web APIs
the processinginstruction
interface represents a processing instruction; that is, a node which embeds an instruction targeting a specific application but that can be ignored by any other applications which don't recognize the instruction.
... the processinginstruction
interface inherits methods and properties from node.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 10%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 700 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect ...
PromiseRejectionEvent - Web APIs
the promiserejectionevent
interface represents events which are sent to the global script context when javascript promises are rejected.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 ...
... methods this
interface has no unique methods; inherits methods from its parent event.
PublicKeyCredential - Web APIs
the publickeycredential
interface provides information about a public key / private key pair, which is a credential for logging in to a service using an un-phishable and data-breach resistant asymmetric key pair instead of a password.
...other
interfaces that inherit from credential are passwordcredential and federatedcredential.
...tions }) .then(function (credentialinfoassertion) { // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public key credentials level 1the definition of 'publickeycredential
interface' in that specification.
PushManager - Web APIs
the pushmanager
interface of the push api provides a way to receive notifications from third-party servers as well as request urls for push notifications.
... this
interface is accessed via the serviceworkerregistration.pushmanager property.
... note: this
interface replaces functionality previously offered by the obsolete pushregistrationmanager
interface.
Push API - Web APIs
interfaces pushevent represents a push action, sent to the global scope of a serviceworker.
...this
interface has replaced the functionality offered by the obsolete pushregistrationmanager
interface.
... serviceworkerregistration.pushmanager read only returns a reference to the pushmanager
interface for managing push subscriptions including subscribing, getting an active subscription, and accessing push permission status.
RTCDTMFSender - Web APIs
the rtcdtmfsender
interface provides a mechanism for transmitting dtmf codes on a webrtc rtcpeerconnection.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke...
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
RTCDTMFToneChangeEvent - Web APIs
the rtcdtmftonechangeevent
interface represents events sent to indicate that dtmf tones have started or finished playing.
... this
interface is used by the tonechange event.
... properties in addition to the properties of event, this
interface offers the following: rtcdtmftonechangeevent.tone read only a domstring specifying the tone which has begun playing, or an empty string ("") if the previous tone has finished playing.
RTCDataChannel: error event - Web APIs
bubbles yes cancelable no
interface rtcerrorevent event handler property onerror the rtcerrorevent object provides details about the error that occurred; see that article for details.
...console.error(" sent dlts failure alert: ", err.receivedalert); } break; } // add source file name and line information console.error(" error in file ", err.filename, " at line ", err.linenumber, ", column ", err.columnnumber); }, false); the received event provides details in an rtcerror object called error; rtcerror is an extension of the domexception
interface.
... you can also set up an event handler for error events using the rtcdatachannel
interface's onerror event handler property: dc.onerror = ev => { const err = ev.error; /* ...
RTCError - Web APIs
the rtcerror
interface describes an error which has occurred while handling webrtc operations.
... it's based upon the standard domexception
interface that describes general dom errors.
... properties in addition to the properties defined by the parent
interface, domexception, rtcerror includes the following properties: errordetail read only a domstring specifying the webrtc-specific error code identifying the type of error that occurred.
RTCPeerConnectionIceErrorEvent - Web APIs
the rtcpeerconnectioniceerrorevent
interface—based upon the event
interface—provides details pertaining to an ice error announced by sending an icecandidateerror event to the rtcpeerconnection object.
... properties the rtcpeerconnectioniceerrorevent
interface includes the properties found on the event
interface, as well as the following properties: address read only a domstring providing the local ip address used to communicate with the stun or turn server being used to negotiate the connection, or null if the local ip address has not yet been exposed as part of a local ice candidate.
... methods rtcpeerconnectioniceerrorevent has no methods other than any provided by the parent
interface, event.
RTCSctpTransport - Web APIs
the rtcsctptransport
interface provides information which describes a stream control transmission protocol (sctp) transport.
... possibly the most useful property on this
interface is its maxmessagesize property, which you can use to determine the upper limit on the size of messages you can send over a data channel on the peer connection.
... methods this
interface has no methods, but inherits methods from: eventtarget example tbd specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcsctptransport' in that specification.
RenderingContext - Web APIs
renderingcontext is a webidl typedef which can refer to any one of the
interfaces that represent a graphics rendering context within a <canvas> element: canvasrenderingcontext2d, webglrenderingcontext, or webgl2renderingcontext.
... by using the shorthand renderingcontext, methods and properties which can make use of any of these
interfaces can be specified and written more easily; since <canvas> supports several rendering systems, it's helpful from a specification and browser implementation perspective to have a shorthand that means "one of these
interfaces." as such, renderingcontext is an implementation detail, and isn't something web developers directly use.
... there is no renderingcontext
interface, and there are no objects which implement type renderingcontext.
Report - Web APIs
the report
interface of the reporting api represents a single report.
... methods this
interface has no methods defined on it.
... events this
interface has no events that fire on it.
ReportingObserver - Web APIs
the reportingobserver
interface of the reporting api allows you to collect and access reports.
... properties this
interface has no properties defined on it.
... events this
interface has no events that fire on it.
Response - Web APIs
the response
interface of the fetch api represents the response to a request.
... body
interface properties response implements body, so it also has the following properties available to it: body.body read only a simple getter exposing a readablestream of the body contents.
... body
interface methods response implements body, so it also has the following methods available to it: body.arraybuffer() takes a response stream and reads it to completion.
SVGAngle - Web APIs
the svgangle
interface is used to represent a value that can be an <angle> or <number> value.
... properties unittype the type of the value as specified by one of the svg_angletype_* constants defined on this
interface.
... exceptions: a domexception with code not_supported_err is raised if unittype is svg_angletype_unknown or not a valid unit type constant (one of the other svg_angletype_* constants defined on this
interface).
SVGAnimateColorElement - Web APIs
the svganimatecolorelement
interface corresponds to the <animatecolor> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svganimatecolorelement" target="_top"><rect x="1" y="1" width="220" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="111" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svganimatecolorelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface has no properties but inherits properties from i...
... methods this
interface has no methods but inherits methods from its parent, svganimationelement.
SVGAnimatedAngle - Web APIs
svg animated angle
interface the svganimatedangle
interface is used for attributes of basic type <angle> which can be animated.
...
interface overview also implement none methods none properties readonly svgangle baseval readonly svgangle animval normative document svg 1.1 (2nd edition) properties name type description baseval svgangle the base value of the given attribute before applying any animations.
... methods the svganimatedangle
interface do not provide any specific methods.
SVGAnimatedBoolean - Web APIs
svg animated boolean
interface the svganimatedboolean
interface is used for attributes of type boolean which can be animated.
...
interface overview also implement none methods none properties readonly boolean baseval readonly boolean animval normative document svg 1.1 (2nd edition) properties name type description baseval boolean the base value of the given attribute before applying any animations.
... methods the svganimatedboolean
interface do not provide any specific methods.
SVGAnimatedEnumeration - Web APIs
svg animated enumeration
interface the svganimatedenumeration
interface is used for attributes whose value must be a constant from a particular enumeration and which can be animated.
...
interface overview also implement none methods none properties unsigned short baseval readonly unsigned short animval normative document svg 1.1 (2nd edition) properties name type description baseval unsigned short the base value of the given attribute before applying any animations.
... methods the svganimatedenumeration
interface do not provide any specific methods.
SVGAnimatedInteger - Web APIs
svg animated integer
interface the svganimatedinteger
interface is used for attributes of basic type <integer> which can be animated.
...
interface overview also implement none methods none properties readonly long baseval readonly long animval normative document svg 1.1 (2nd edition) properties name type description baseval long the base value of the given attribute before applying any animations.
... methods the svganimatedinteger
interface do not provide any specific methods.
SVGAnimatedLength - Web APIs
svg animated length
interface the svganimatedlength
interface is used for attributes of basic type <length> which can be animated.
...
interface overview also implement none methods none properties readonly svglength baseval readonly svglength animval normative document svg 1.1 (2nd edition) properties name type description baseval svglength the base value of the given attribute before applying any animations.
... methods the svganimatedlength
interface do not provide any specific methods.
SVGAnimatedLengthList - Web APIs
svg animated length list
interface the svganimatedlengthlist
interface is used for attributes of type svglengthlist which can be animated.
...
interface overview also implement none methods none properties readonly svglengthlist baseval readonly svglengthlist animval normative document svg 1.1 (2nd edition) properties name type description baseval svglengthlist the base value of the given attribute before applying any animations.
... methods the svganimatedlengthlist
interface do not provide any specific methods.
SVGAnimatedNumber - Web APIs
svg animated number
interface the svganimatednumber
interface is used for attributes of basic type <number> which can be animated.
...
interface overview also implement none methods none properties float baseval readonly float animval normative document svg 1.1 (2nd edition) properties name type description baseval float the base value of the given attribute before applying any animations.
... methods the svganimatednumber
interface do not provide any specific methods.
SVGAnimatedNumberList - Web APIs
svg animated number list
interface the svganimatednumber
interface is used for attributes which take a list of numbers and which can be animated.
...
interface overview also implement none methods none properties readonly svgnumberlist baseval readonly svgnumberlist animval normative document svg 1.1 (2nd edition) properties svganimatednumberlist.baseval read only is a svgnumberlist that represents the base value of the given attribute before applying any animations.
... methods the svganimatednumberlist
interface do not provide any specific methods.
SVGAnimatedPathData - Web APIs
svg animated path data
interface the svganimatedpathdata
interface supports elements which have a 'd' attribute which holds svg path data, and supports the ability to animate that attribute.
...
interface overview also implement none methods none properties svgpathseglist animatednormalizedpathseglist svgpathseglist animatedpathseglist svgpathseglist normalizedpathseglist svgpathseglist pathseglist normative document svg 1.1 (2nd edition) properties this
interface also inherits properties from its parent, svgpathelement.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgpathelement.
SVGAnimatedPoints - Web APIs
svg animated points
interface the svganimatedpoints
interface supports elements which have a points attribute which holds a list of coordinate values and which support the ability to animate that attribute.
...
interface overview also implement none methods none properties readonly svgpointlist points readonly svgpointlist animatedpoints normative document svg 1.1 (2nd edition) properties name type description points svgpointlist provides access to the base (i.e., static) contents of the points attribute.
... methods the svganimatedpoints
interface do not provide any specific methods.
SVGAnimatedPreserveAspectRatio - Web APIs
svg animated preserveaspectratio
interface the svganimatedpreserveaspectratio
interface is used for attributes of type svgpreserveaspectratio which can be animated.
...
interface overview also implement none methods none properties readonly float baseval readonly float animval normative document svg 1.1 (2nd edition) properties svganimatedpreserveaspectratio.baseval read only is a svgpreserveaspectratio that represents the base value of the given attribute before applying any animations.
... methods the svganimatedpreserveaspectratio
interface do not provide any specific methods.
SVGAnimatedRect - Web APIs
the svganimatedrect
interface is used for attributes of basic svgrect which can be animated.
...
interface overview also implement none methods none properties readonly svgrect baseval readonly svgrect animval normative document svg 1.1 (2nd edition) properties name type description baseval svgrect the base value of the given attribute before applying any animations.
... methods the svganimatedrect
interface do not provide any specific methods.
SVGAnimatedTransformList - Web APIs
svg animated transform list
interface the svganimatedtransformlist
interface is used for attributes which take a list of numbers and which can be animated.
...
interface overview also implement none methods none properties readonly svgtransformlist baseval readonly svgtransformlist animval normative document svg 1.1 (2nd edition) properties name type description baseval svgtransformlist the base value of the given attribute before applying any animations.
... methods the svganimatedtransformlist
interface doesn't provide any specific methods.
SVGColorProfileElement - Web APIs
the svgcolorprofileelement
interface corresponds to the <color-profile> element.
...it takes one of the rendering_intent_* constants defined on the svgrenderingintent
interface that corresponds to the value of the rendering-intent attribute.
... methods this
interface does not provide any specific methods, but implements those of its parent, svgelement, and implements methods of svgurireference and svgrenderingintent.
SVGDocument - Web APIs
svg document
interface when an "svg" element is embedded inline as a component of a document from another namespace, such as when an "svg" element is embedded inline within an xhtml document, then an svgdocument object will not exist; instead, the root object in the document object hierarchy will be a document object of a different type, such as an htmldocument object.
...
interface overview also implement none methods none properties domstring domain domstring referrer svgsvgelement rootelement domstring title domstring url normative document svg 1.1 (2nd edition) properties name type description domain domstring the domain name of the server that served the document, or a null string if the server cannot be identified by a domain name.
... methods the svgdocument
interface does not provide any specific methods.
SVGElement - Web APIs
all of the svg dom
interfaces that correspond directly to elements in the svg language derive from the svgelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targ...
... methods this
interface has no methods, but inherits methods from: documentandelementeventhandlers, element, elementcssinlinestyle, globaleventhandlers, htmlorforeignelement, svgelementinstance events listen to these events using addeventlistener() or by assigning an event listener to the equivalent on...
SVGExternalResourcesRequired - Web APIs
the svgexternalresourcesrequired
interface defines an
interface which applies to all elements where this element or one of its descendants can reference an external resource.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgexternalresourcesrequired" target="_top"><rect x="1" y="1" width="280" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="141" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgexternalresourcesrequired</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: this
interface was removed in the svg 2 specification.
... methods this
interface doesn't implement any specific methods.
SVGFilterPrimitiveStandardAttributes - Web APIs
the svgfilterprimitivestandardattributes
interface defines the set of dom attributes that are common across the filter primitive
interfaces.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgfilterprimitivestandardattributes" target="_top"><rect x="1" y="1" width="360" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="181" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgfilterprimitivestandardattributes</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties svgfilterprimitivestandardattribut...
... methods this
interface does not provide any specific methods.
SVGFitToViewBox - Web APIs
svg fit to view box
interface the svgfittoviewbox
interface is used to reflect the viewbox and preserveaspectratio attributes, and is mixed in to other
interfaces for elements that support these two attributes.
...
interface overview also implement none methods none properties svganimatedpreserveaspectratio preserveaspectratio svganimatedrect viewbox normative document svg 1.1 (2nd edition) properties name type description preserveaspectratio svganimatedpreserveaspectratio corresponds to attribute preserveaspectratio on the given element.
... methods the svgfittoviewbox
interface does not provide any specific methods.
SVGGlyphRefElement - Web APIs
the svgglyphrefelement
interface corresponds to the <glyphref> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgglyphrefelement" target="_top"><rect x="1" y="1" width="180" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="91" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgglyphrefelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, svgelement and ...
... methods this
interface has no methods but inherits methods from its parent, svgelement and implements methods from svgurireference and svgstylable.
SVGNumberList - Web APIs
svg number list
interface the svgnumberlist defines a list of svgnumber objects.
... note: starting in gecko 5.0,the svgnumberlist dom
interface is now indexable and can be accessed like arrays.
...
interface overview also implement none methods void clear() svgnumber initialize(in svgnumber newitem) svgnumber getitem(in unsigned long index) svgnumber insertitembefore(in svgnumber newitem, in unsigned long index) svgnumber replaceitem(in svgnumber newitem, in unsigned long index) svgnumber removeitem(in unsigned long index) svgnumber appenditem(in svgnumber newitem) properties readonly unsigned long numberofitems readonly unsigned long length normative document svg 1.1 (2nd edition) properties name type description numberofitems unsigned long the number of items in the list.
SVGRect - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgrect" target="_top"><rect x="1" y="1" width="75" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="38.
... methods this
interface also inherits properties from its parent, domrectreadonly.
... specifications specification status comment geometry
interfaces module level 1the definition of 'domrect' in that specification.
SVGStringList - Web APIs
svg string list
interface the svgstringlist defines a list of domstring objects.
...
interface overview also implement none methods void clear() domstring initialize(in domstring newitem) domstring getitem(in unsigned long index) domstring insertitembefore(in domstring newitem, in unsigned long index) domstring replaceitem(in domstring newitem, in unsigned long index) domstring removeitem(in unsigned long index) domstring appenditem(in domstring newitem) properties readonly unsigned long numberofitems readonly unsigned long length normative document svg 1.1 (2nd edition) properties name type ...
... length unsigned long a mirror of the value in numberofitems, for consistency with other
interfaces.
SVGTransformable - Web APIs
svg transformable
interface interface svgtransformable contains properties and methods that apply to all elements which have attribute transform.
...
interface overview also implement none methods none properties readonly svganimatedtransformlist transform normative document svg 1.1 (2nd edition) properties name type description transform svganimatedtransformlist corresponds to attribute transform on the given element.
... methods the svgtransformable
interface do not provide any specific methods.
SVGURIReference - Web APIs
the svgurireference
interface is used to reflect the href attribute and the deprecated xlink:href attribute.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgurireference" target="_top"><rect x="1" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="76" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgurireference</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties svgurireference.href read only an svganimatedstring that represents the val...
... methods this
interface does not provide any specific methods.
SVGViewElement - Web APIs
the svgviewelement
interface provides access to the properties of <view> elements, as well as methods to manipulate them.
... properties this
interface also inherits properties from its parent
interface, svgelement.
... methods this
interface doesn't implement any specific methods, but inherits methods from its parent
interface, svgelement.
SVGZoomAndPan - Web APIs
the svgzoomandpan
interface is used to reflect the zoomandpan attribute, and is mixed in to other
interfaces for elements that support this attribute.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/svgzoomandpan" target="_top"><rect x="1" y="1" width="130" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="66" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgzoomandpan</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} constants name value description svg_zoomandpan_unknown 0 the ty...
... methods this
interface doesn't implement any specific methods.
Screen.availHeight - Web APIs
the read-only screen
interface's availheight property returns the height, in css pixels, of the space available for web content on the screen.
... since screen is exposed on the window
interface's window.screen property, you access availheight using window.screen.availheight.
... on a windows system, this would function similarly, by opening the window and sizing it vertically so it uses all available vertical space, leaving room for the taskbar and any other
interface elements that reserve space.
Screen - Web APIs
the screen
interface represents a screen, usually the one on which the current window is being rendered, and is obtained using window.screen.
... properties screen.availtop specifies the y-coordinate of the first pixel that is not allocated to permanent or semipermanent user
interface features.
... screen.availheight specifies the height of the screen, in pixels, minus permanent or semipermanent user
interface features displayed by the operating system, such as the taskbar on windows.
Screen Wake Lock API - Web APIs
it's a good idea to show some feedback on the
interface to show if wake lock is active and a way for the user to disable it if they wish.
... screen wake lock api
interfaces wakelock the wakelock
interface prevents device screens from dimming or locking when an application needs to keep running.
... // create a reference for the wake lock let wakelock = null; // create an async function to request a wake lock const requestwakelock = async () => { try { wakelock = await navigator.wakelock.request('screen'); // change up our
interface to reflect wake lock active statuselem.textcontent = 'wake lock is active!'; } catch (err) { // if wake lock request fails - usually system related, such as battery statuselem.textcontent = `${err.name}, ${err.message}`; } } releasing wake lock the following example shows how to release the previously acquired wake lock.
ServiceWorkerGlobalScope - Web APIs
the serviceworkerglobalscope
interface of the serviceworker api represents the global execution context of a service worker.
... this
interface inherits from the workerglobalscope
interface, and its parent eventtarget, and therefore implements properties from windowtimers, windowbase64, and windoweventhandlers.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 12.142857142857142%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 85" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/workerglob...
SourceBuffer - Web APIs
the sourcebuffer
interface represents a chunk of media to be passed into an htmlmediaelement and played, via a mediasource object.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" str...
... methods inherits methods from its parent
interface, eventtarget.
SourceBufferList - Web APIs
the sourcebufferlist
interface represents a simple container list for multiple sourcebuffer objects.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,...
... methods inherits methods from its parent
interface, eventtarget.
SpeechRecognitionError - Web APIs
the speechrecognitionerror
interface of the web speech api represents error messages from the recognition service.
... this speechrecognitionerror
interface was renamed to speechrecognitionerrorevent in the web speech api specification.
... properties speechrecognitionerror also inherits properties from its parent
interface, event.
SpeechSynthesisErrorEvent - Web APIs
the speechsynthesiserrorevent
interface of the web speech api contains information about any errors that occur while processing speechsynthesisutterance objects in the speech service.
... properties speechsynthesiserrorevent extends the speechsynthesisevent
interface, which inherits properties from its parent
interface, event.
... methods speechsynthesiserrorevent extends the speechsynthesisevent
interface, which inherits methods from its parent
interface, event.
SpeechSynthesisEvent - Web APIs
the speechsynthesisevent
interface of the web speech api contains information about the current state of speechsynthesisutterance objects that have been processed in the speech service.
... properties the speechsynthesisevent
interface also inherits properties from its parent
interface, event.
... methods the speechsynthesisevent
interface also inherits methods from its parent
interface, event.
SpeechSynthesisUtterance - Web APIs
the speechsynthesisutterance
interface of the web speech api represents a speech request.
... properties speechsynthesisutterance also inherits properties from its parent
interface, eventtarget.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
StaticRange - Web APIs
the dom staticrange
interface extends abstractrange to provide a method to specify a range of content in the dom whose contents don't update to reflect changes which occur within the dom tree.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/abstractrange" target="_top"><rect x="1" y="1" width="130" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="66" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">abstractrange</text></a><polyline points="131,25 141,20 141,3...
... properties the properties below are inherited from its parent
interface, abstractrange.
StorageEvent - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fi...
... methods initstorageevent() initializes the event in a manner analogous to the similarly-named initevent() method in the dom events
interfaces.
... specifications specification statuc comment html living standardthe definition of 'the storageevent
interface' in that specification.
SubmitEvent - Web APIs
the submitevent
interface defines the object used to represent an html form's submit event.
... properties in addition to the properties listed below, this
interface inherits the properties of its parent
interface, event.
... methods while submitevent offers no methods of its own, it inherits any specified by its parent
interface, event.
SubtleCrypto - Web APIs
the subtlecrypto
interface of the web crypto api provides a number of low-level cryptographic functions.
... properties this
interface doesn't inherit any properties, as it has no parent
interface.
... methods this
interface doesn't inherit any methods, as it has no parent
interface.
SyncEvent - Web APIs
the syncevent
interface represents a sync action that is dispatched on the serviceworkerglobalscope of a serviceworker.
... this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/extendableevent" target="_t...
Text - Web APIs
the text
interface represents the textual content of element or attr.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke...
... properties included from slotable the text
interface includes the following property, defined on the slotable mixin.
TextDecoder - Web APIs
the textdecoder
interface represents a decoder for a specific text encoding, such as utf-8, iso-8859-2, koi8-r, gbk, etc.
... properties the textdecoder
interface doesn't inherit any properties.
... methods the textdecoder
interface doesn't inherit any method.
TextTrack - Web APIs
the texttrack
interface—part of the api for handling webvtt (text tracks on media presentations)—describes and controls the text track associated with a particular <track> element.
... properties this
interface also inherits properties from eventtarget.
... methods this
interface also inherits methods from eventtarget.
TextTrackList - Web APIs
the texttracklist
interface is used to represent a list of the text tracks defined by the <track> element, with each track represented by a separate texttrack object in the list.
... properties this
interface also inherits properties from its parent
interface, eventtarget.
... methods this
interface also inherits methods from its parent
interface, eventtarget.
TimeEvent - Web APIs
the timeevent
interface, a part of svg smil animation, provides specific contextual information associated with time events.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/timeevent" target="_top"><...
... methods inittimeevent(domstring typearg, abstractview viewarg, long detailarg) the inittimeevent method is used to initialize the value of a timeevent created through the documentevent
interface.
Touch - Web APIs
the touch
interface represents a single contact point on a touch-sensitive device.
... properties this
interface has no parent, and doesn't inherits or implements any other property.
... methods this
interface has no method and no parent, and doesn't inherits or implements any method.
TouchEvent - Web APIs
the touchevent
interface represents an uievent which is sent when the state of contacts with a touch-sensitive surface changes.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dd...
... properties this
interface inherits properties from its parent, uievent and event.
TrackDefaultList - Web APIs
the trackdefaultlist
interface represents a simple container list for multiple trackdefault objects.
... properties inherits properties from its parent
interface, eventtarget.
... methods inherits properties from its parent
interface, eventtarget.
URL - Web APIs
the url
interface is used to parse, construct, normalize, and encode urls.
... if a browser doesn't yet support the url() constructor, you can access a url object using the window
interface's window.url property.
...for instance: url.pathname = 'démonstration.html'; console.log(url.href); // "http://www.example.com/d%c3%a9monstration.html" the urlsearchparams
interface can be used to build and manipulate the url query string.
USBDevice.configuration - Web APIs
the configuration read only property of the usbdevice
interface returns a usbconfiguration object for the currently selected
interface for a paired usb device.
... example the following example uses this property to test for the existence of a usbconfiguration property to select a configuration before claiming an
interface.
... async function connectdevice(usbdevice) { await usbdevice.open(); if (usbdevice.configuration === null) await usbdevice.selectconfiguration(1); await usbdevice.claim
interface(0); } specifications specification status comment webusbthe definition of 'configuration' in that specification.
USBDevice.controlTransferIn() - Web APIs
the controltransferin() method of the usbdevice
interface returns a promise that resolves with a usbintransferresult when the result of a command or status request has been received from the usb device.
... recipient: specifices the target of the transfer on the device, one of "device", "
interface", "endpoint", or "other".
... index: the
interface number of the recipient.
USBDevice.controlTransferOut() - Web APIs
the controltransferout() method of the usbdevice
interface returns a promise that resolves with a usbouttransferresult when a command or status operation has been transmitted to the usb device.
... recipient: specifices the target of the transfer on the device, one of "device", "
interface", "endpoint", or "other".
... index: the
interface number of the recipient.
VideoTrackList - Web APIs
the videotracklist
interface is used to represent a list of the video tracks contained within a <video> element, with each track represented by a separate videotrack object in the list.
... properties this
interface also inherits properties from its parent
interface, eventtarget.
... methods this
interface also inherits methods from its parent
interface, eventtarget.
WebGL2RenderingContext - Web APIs
the webgl2renderingcontext
interface provides the opengl es 3.0 rendering context for the drawing surface of an html <canvas> element.
... to get an object of this
interface, call getcontext() on a <canvas> element, supplying "webgl2" as the argument: var canvas = document.getelementbyid('mycanvas'); var gl = canvas.getcontext('webgl2'); webgl 2 is an extension to webgl 1.
... the webgl2renderingcontext
interface implements all members of the webglrenderingcontext
interface.
WebGLRenderingContext - Web APIs
the webglrenderingcontext
interface provides an
interface to the opengl es 2.0 graphics rendering context for the drawing surface of an html <canvas> element.
...the webgl rendering context is an
interface, through which you can set and query the state of the graphics machine, send data to the webgl, and execute draw commands.
... saving the state of the graphics machine within a single context
interface is not unique to webgl.
WebGL: 2D and 3D graphics for the web - Web APIs
the webgl 2 api introduces support for much of the opengl es 3.0 feature set; it's provided through the webgl2renderingcontext
interface.
... reference standard
interfaces webglrenderingcontext webgl2renderingcontext webglactiveinfo webglbuffer webglcontextevent webglframebuffer webglprogram webglquery webglrenderbuffer webglsampler webglshader webglshaderprecisionformat webglsync webgltexture webgltransformfeedback webgluniformlocation webglvertexarrayobject extensions angle_instanced_arrays ext_blend_minmax ext_color_buffer_float ext_color_buffer_half_float ext_disjoint_timer_query ext_float_blend ext_frag_depth ext_srgb ext_shader_texture_lod ext_texture_compression_bptc ext_texture_compression_rgtc ext_texture_filter_anisotropic khr_parallel_shader_compile oes_element_index_uint oes_fbo_render_mipmap oes...
...ompressed_texture_s3tc webgl_compressed_texture_s3tc_srgb webgl_debug_renderer_info webgl_debug_shaders webgl_depth_texture webgl_draw_buffers webgl_lose_context events webglcontextlost webglcontextrestored webglcontextcreationerror constants and types webgl constants webgl types webgl 2 webgl 2 is a major update to webgl which is provided through the webgl2renderingcontext
interface.
WebXR application life cycle - Web APIs
if it's not supported, disable any user
interface used to activate xr features and abort any attempts to enter xr mode.
... if the session type you want to use is available, provide the appropriate
interface to the user to allow them to activate it.
... when the user requests the activation of webxr functionality by engaging with the user
interface enabled above, request an xrsession using the desired mode.
Advanced techniques: Creating and sequencing audio - Web APIs
the
interface consists of master controls, which allow us to play/stop the sequencer, and adjust the bpm (beats per minute) to speed up or slow down the "music".
...however, instead of using the standard waves that come by default, we're going to create our own using the periodicwave
interface and values set in a wavetable.
...we can allow the user to control these using range inputs on the
interface: <label for="attack">attack</label> <input name="attack" id="attack" type="range" min="0" max="1" value="0.2" step="0.1" /> <label for="release">release</label> <input name="release" id="release" type="range" min="0" max="1" value="0.5" step="0.1" /> now we can create some variables over in javascript and have them change when the input values are updated: let attacktime = 0.2; const attackco...
Web Audio API best practices - Web APIs
if you're looking to work with audio from the user's camera or microphone you can access it via the media stream api and the mediastreamaudiosourcenode
interface.
... r-audio, from the bbc's research & development department, is a library of react components aiming to provide a "more intuitive, declarative
interface to web audio".
... setting audioparam values there are two ways to manipulate audionode values, which are themselves objects of type audioparam
interface.
Web audio spatialization basics - Web APIs
the baseaudiocontext (the
interface the audiocontext is extended from) has a listener property that returns an audiolistener object.
...these are also the parameters we're going to change when the controls on our
interface are used.
... we need to set up a few things for the
interface.
Web Crypto API - Web APIs
the web crypto api is an
interface allowing a script to use cryptographic primitives in order to build systems using cryptography.
...
interfaces some browsers implemented an
interface called crypto without having it well defined or being cryptographically sound.
... in order to avoid confusion, methods and properties of this
interface have been removed from browsers implementing the web crypto api, and all web crypto api methods are available on a new
interface: subtlecrypto.
Window: copy event - Web APIs
the copy event fires when the user initiates a copy action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncopy the original target for this event is the element that was the intended target of the copy action.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: cut event - Web APIs
the cut event is fired when the user has initiated a "cut" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncut the original target for this event is the element that was the intended target of the cut action.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window.history - Web APIs
the window.history read-only property returns a reference to the history object, which provides an
interface for manipulating the browser session history (pages visited in the tab or frame that the current page is loaded in).
... specifications specification status comment html living standardthe definition of 'the history
interface' in that specification.
... living standard html5the definition of 'the history
interface' in that specification.
Window: paste event - Web APIs
the paste event is fired when the user has initiated a "paste" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property onpaste the original target for this event is the element that was the intended target of the paste action.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
WindowClient - Web APIs
the windowclient
interface of the serviceworker api represents the scope of a service worker client that is a document in a browsing context, controlled by an active worker.
... methods windowclient inherits methods from its parent
interface, client.
... properties windowclient inherits properties from its parent
interface, client.
WindowOrWorkerGlobalScope - Web APIs
the windoworworkerglobalscope mixin describes several features common to the window and workerglobalscope
interfaces.
... each of these
interfaces can, of course, add more features in addition to the ones listed below.
... note: windoworworkerglobalscope is a mixin and not an
interface; you can't actually create an object of type windoworworkerglobalscope.
XDomainRequest - Web APIs
this
interface can send both get and post requests.
...method"); xdr.onprogress = function () { //progress }; xdr.ontimeout = function () { //timeout }; xdr.onerror = function () { //error occurred }; xdr.onload = function() { //success(xdr.responsetext); } settimeout(function () { xdr.send(); }, 0); } note: the xdr.send() call is wrapped in a timeout (see window.settimeout() to prevent an issue with the
interface where some requests are lost if multiple xdomainrequests are being sent at the same time.
... specifications this
interface and its methods are non-standard.
XMLHttpRequest - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.076923076923077%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 650 150" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,mona...
... if your communication needs to involve receiving event data or message data from a server, consider using server-sent events through the eventsource
interface.
... properties this
interface also inherits properties of xmlhttprequesteventtarget and of eventtarget.
XPathEvaluator - Web APIs
the xpathevaluator
interface allows to compile and evaluate xpath expressions.
... it is implemented by the document
interface.
... example the following example shows the use of the xpathevaluator
interface.
XRInputSource - Web APIs
the webxr device api's xrinputsource
interface describes a single source of control input which is part of the user's webxr-compatible virtual or augmented reality system.
... note: while xrinputsource uses the gamepad
interface from the gamepad api, this input device is strictly associated with the webxr hardware and is not a general-purpose gaming device.
... methods the xrinputsource
interface defines no methods.
XRInputSourcesChangeEvent - Web APIs
the webxr device api
interface xrinputsourceschangeevent is used to represent the inputsourceschange event sent to an xrsession when the set of available webxr input controllers changes.
...the specified type must be inputsourceschange, which is the only event that uses this
interface.
... methods while xrinputsourceschangeevent defines no methods of its own, it inherits methods from its parent
interface, event.
XRPermissionDescriptor.optionalFeatures - Web APIs
the "
interface" column in the table below indicates which of the two types is returned for each reference space type constant..
... reference space descriptors the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
XRPermissionStatus.granted - Web APIs
the webxr device api's xrpermissionstatus
interface's granted property is an array of strings, each identifying one of the webxr features for which permission has been granted as of the time at which the permission api's navigator.permissions.query() method was called.
... the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
XRReferenceSpaceEvent - Web APIs
the webxr device api
interface xrreferencespaceevent represents an event sent to an xrreferencespace.
... properties in addition to inheriting the properties available on the parent
interface, event, xrreferencespaceevent objects include the following properties: referencespace read only an xrreferencespace indicating the reference space that generated the event.
... methods while xrreferencespaceevent does not define any methods, it inherits the methods of its parent
interface, event.
XRReferenceSpaceType - Web APIs
the "
interface" column in the table below indicates which of the two types is returned for each reference space type constant..
... reference space descriptors the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
Web APIs
below is a list of all the apis and
interfaces (object types) that you may be able to use while developing your web app or site.
...apipermissions apipointer eventspointer lock apiproximity events push api rresize observer apiresource timing apisserver sent eventsservice workers apistoragestorage access apistreams ttouch eventsuurl apivvibration apivisual viewport wweb animationsweb audio apiweb authentication apiweb crypto apiweb notificationsweb storage apiweb workers apiwebglwebrtcwebvttwebxr device apiwebsockets api
interfaces this is a list of all the
interfaces (that is, types of objects) that are available.
...nt subtlecrypto syncevent syncmanager t taskattributiontiming text textdecoder textencoder textmetrics textrange texttrack texttrackcue texttracklist timeevent timeranges touch touchevent touchlist trackdefault trackdefaultlist trackevent transferable transformstream transitionevent treewalker typeinfo u uievent ulongrange url urlsearchparams urlutilsreadonly usb usbalternate
interface usbconfiguration usbdevice usbendpoint usbintransferresult usb
interface usbisochronousintransferpacket usbisochronousintransferresult usbisochronousouttransferpacket usbisochronousouttransferresult usbouttransferresult usvstring userdatahandler userproximityevent v vttcue vttregion validitystate videoconfiguration videoplaybackquality videotrack videotracklist visualviewp...
Perceivable - Accessibility
note: to read the w3c definitions for perceivable and its guidelines and success criteria, see principle 1: perceivable - information and user
interface components must be presentable to users in ways they can perceive.
... understanding identify input purpose 1.3.6 identify purpose (aaa) added in 2.1 in content implemented using markup languages, the purpose of user
interface components, icons, and regions can be programmatically determined.
...-right languages (like english) or right-to-left languages (like arabic) no vertical scrolling for top-to-bottom languages (like japanese) except for parts of the content which require two-dimensional layout for usage or meaning (like a large data table) understanding reflow 1.4.11 non-text contrast(aa) added in 2.1 minimum color contrast ratio of 3:1 for user
interface components and graphical objects.
:-moz-locale-dir(ltr) - CSS: Cascading Style Sheets
the :-moz-locale-dir(ltr) css pseudo-class is a mozilla extension that matches an element if the user
interface is being displayed left-to-right.
... note: this selector is mainly used by extensions and themes to adapt the user
interface based on the user's locale.
... html <p>if you're using a left-to-right
interface, this should be red.</p> css p:-moz-locale-dir(ltr) { color: red; } result specifications not part of any standard.
:-moz-locale-dir(rtl) - CSS: Cascading Style Sheets
the :-moz-locale-dir(rtl) css pseudo-class is a mozilla extension that matches an element if the user
interface is being displayed right-to-left.
... note: this selector is mainly used by extensions and themes to adapt the user
interface based on the user's locale.
... html <p>if you're using a right-to-left
interface, this should be red.</p> css p:-moz-locale-dir(rtl) { color: red; } result specifications not part of any standard.
cursor - CSS: Cascading Style Sheets
progress the program is busy in the background, but the user can still interact with the
interface (in contrast to wait).
... wait the program is busy, and the user can't interact with the
interface (in contrast to progress).
...ize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing ] ] examples setting cursor types .foo { cursor: crosshair; } .bar { cursor: zoom-in; } /* a fallback keyword value is required when using a url */ .baz { cursor: url("hyper.cur"), auto; } specifications specification status comment css basic user
interface module level 3the definition of 'cursor' in that specification.
User input and controls - Developer guides
recommendations available input mechanisms depend on the capabilities of the device running the application: some devices provide touchscreen displays: the web platform offers touch events to interpret finger activity on touch-based user
interfaces.
... mouse the events occurring when the user interacts with a pointing device such as a mouse are represented by the mouseevent dom
interface.
...the list of all events using the mouse event
interface is provided in the events reference.
HTML attribute: rel - HTML: Hypertext Markup Language
icon valid with <link>, the linked resource represents the icon, a resource for representing the page in the user
interface, for the current document.
... search relevant to <form>, <link>, <a>, and <area> elements, the search keywords indicates that the hyperlink references a document whose
interface is specially designed for searching in the current document, site, and related resources, providing a link to a resource that can be used to search.
... if the type attribute is set to application/opensearchdescription+xml the resource is an opensearch plugin that can be easily added to the
interface of some browsers like firefox or internet explorer.
<details>: The Details disclosure element - HTML: Hypertext Markup Language
implicit aria role group permitted aria roles no role permitted dom
interface htmldetailselement attributes this element includes the global attributes.
...nt: 16px "open sans", calibri, sans-serif; width: 620px; } details > summary { padding: 2px 6px; width: 15em; background-color: #ddd; border: none; box-shadow: 3px 3px 4px black; cursor: pointer; } details > p { border-radius: 0 0 10px 10px; background-color: #ddd; padding: 2px 6px; margin: 0; box-shadow: 3px 3px 4px black; } this css creates a look similar to a tabbed
interface, where clicking the tab opens it to reveal its contents.
...padding: 2px 6px; width: 15em; background-color: #ddd; border: none; box-shadow: 3px 3px 4px black; cursor: pointer; list-style: none; } details > summary::-webkit-details-marker { display: none; } details > p { border-radius: 0 0 10px 10px; background-color: #ddd; padding: 2px 6px; margin: 0; box-shadow: 3px 3px 4px black; } this css creates a look similar to a tabbed
interface, where activating the tab expands and opens it to reveal its contents.
<input type="color"> - HTML: Hypertext Markup Language
<input> elements of type color provide a user
interface element that lets a user specify a color, either by using a visual color picker
interface or by entering the color into a text field in #rrggbb hexadecimal format.
... colorwell.select(); appearance variations as previously mentioned, when a browser doesn't support a color picker
interface, its implementation of color inputs will be a text box that validates the contents automatically to ensure that the value is in the correct format.
... finally, we call select() to select the text content of the color input if the control is implemented as a text field (this has no effect if a color picker
interface is provided instead).
Link types - HTML: Hypertext Markup Language
icon defines a resource for representing the page in the user
interface, usually an icon (auditory or visual).
... search indicates that the hyperlink references a document whose
interface is specially designed for searching in this document, or site, and its resources.
... if the type attribute is set to application/opensearchdescription+xml the resource is an opensearch plugin that can be easily added to the
interface of some browsers like firefox or internet explorer.
Strict mode - JavaScript
these words are implements,
interface, let, package, private, protected, public, static, and yield.
...
interface: // !!!
... while (true) { break
interface; // !!!
Autoplay guide for media and Web Audio APIs - Web media technologies
edia will be allowed to autoplay only if at least one of the following is true: the audio is muted or its volume is set to 0 the user has interacted with the site (by clicking, tapping, pressing keys, etc.) if the site has been whitelisted; this may happen either automatically if the browser determines that the user engages with media frequently, or manually through preferences or other user
interface features if the autoplay feature policy is used to grant autoplay support to an <iframe> and its document.
...if that's the case, we should present a user
interface to let the user manually start playback; that's handled here by a function showplaybutton().
...if this is false, the allowedtoplay property is missing from the htmlmediaelement
interface, and is thus not present on either <audio> or <video> elements.
Navigation and resource timings - Web Performance
checking compression ratios is important but ensure to also check duration and the time between when the domcontentloaded event ended and when the dom is complete, as running javascript on the main thread for long periods of time can lead to a non-responsive user
interface.
...keeping this at 50ms or faster helps ensure a responsive user
interface.
... the performancenavigationtiming
interface also provides information about what type of navigation you are measuring, returning navigate, reload, back_forward or prerender.
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
general change notes length attribute and indexed property for list
interfaces implementation status unknown <script> element in content model of all elements implementation status unknown initialize(), appenditem(), replaceitem(), and insertitembefore() on list objects making a copy of any list item being inserted that is already in another list implementation status unknown crossorigin attribute for <image> and <script> elements not implemented yet (at ...
...bug 1240357) rendering model change notes svg root and <foreignobject> not overflow:hidden in ua style sheet implementation status unknown allow overflow: auto; to clip and show scroll bars implementation status unknown allow overflow: scroll; to show scroll bars on <svg> elements implementation status unknown basic data types and
interfaces change notes dommatrix or dommatrixreadonly instead of svgmatrix implementation status unknown domrect or domrectreadonly instead of svgrect implementation status unknown dompoint or dompointreadonly instead of svgpoint implementation status unknown members of svgstylable and svglangspace available in svgelement implementation stat...
... scripting change notes contentscripttype removed implementation status unknown animationevents.onload removed implementation status unknown fonts change notes <font>, <glyph>, <missing-glyph>, <hkern>, <vkern>, <font-face>, <font-face-src>, <font-face-uri>, <font-face-format>, and <font-face-name> and corresponding idl
interfaces removed implementation status unknown extensibility chapter change notes made <foreignobject> graphics element implementation status unknown ...
Index - XSLT: Extensible Stylesheet Language Transformations
5 the xslt/javascript
interface in gecko xslt no summary!
... 8
interface list needscontent, reference see xsltprocessor in the web api documentation section.
... 18 using the mozilla javascript
interface to xsl transformations xslt this document describes the javascript
interface in mozilla 1.2 and up to the xslt processing engine (transformiix).
Content Scripts - Archive of obsolete content
additionally, some sdk user
interface components - panel, sidebar, frame - are specified using html, and use separate scripts to interact with this content.
...to learn about how to interact with the content for a given user
interface module, please see the module-specific documentation: panel, sidebar, frame.
Porting the Library Detector - Archive of obsolete content
however, instead of maintaining its own state by listening for gbrowser events and updating the user
interface, the content script will just run when it's loaded, collect the array of library names, and post it back to main.js: function testlibraries() { var win = unsafewindow; var librarylist = []; for(var i in ld_tests) { var passed = ld_tests[i].test(win); if (passed) { var libraryinfo = { name: i, version: passed.version }; librarylist.push(libraryinfo)...
... implementing the user
interface showing the library array the widget module is a natural fit for displaying the library list.
simple-prefs - Archive of obsolete content
title this is used as a label for the preference in the add-ons manager user
interface.
... hidden a boolean value which, if present and set to true, means that the preference won't appear in the add-ons manager
interface, so users of your add-on won't be able to see or alter it.
test/assert - Archive of obsolete content
implements the assert
interface defined in the commonjs unit testing specification version 1.1.
... the assert object's
interface is defined by the commonjs unit testing specification, version 1.1.
ui/button/toggle - Archive of obsolete content
experimental add a toggle button to the firefox user
interface.
...when a button is checked it gets a "pressed" look in the user
interface (note that the "pressed" look currently does not work in mac os x).
Overview - Archive of obsolete content
the annotator uses content scripts to build user
interfaces, get user input, and examine the dom of pages loaded by the user.
... we could represent the basic interactions between the main module and the various content scripts like this: user
interface the annotator's main user
interface consists of a widget and three panels.
Using XPCOM without chrome - Archive of obsolete content
below is an example, where we extend the xpcom module's unknown class with an nsinavbookmarkobserver
interface and one of its optional
interface methods (onitemchanged).
... // this removes the need to import ci and the xpcomutils const { class } = require("sdk/core/heritage"); const { unknown } = require('sdk/platform/xpcom'); const { placesutils } = require("resource://gre/modules/placesutils.jsm"); let bmlistener = class({ extends: unknown,
interfaces: [ "nsinavbookmarkobserver" ], //this event most often handles all events onitemchanged: function(bid, prop, an, nv, lm, type, parentid, aguid, aparentguid) { console.log("onitemchanged", "bid: "+bid, "property: "+prop, "isanno: "+an, "new value: "+nv, "lastmod: "+lm, "type: "+type, "parentid:"+parentid, "aguid:"+aguid);0 // code to handle the event here } }); //we just have a class, but need an object.
Localization - Archive of obsolete content
to reference localized strings from html, add a data-l10n-id attribute to the html tag where you want the localized string to appear, and assign the identifier to it: <html> <body> <h1 data-l10n-id="hello_id"></h1> </body> </html> then you can use this html file to build your
interface, for example inside a panel: var button = require("sdk/ui/button/action").actionbutton({ id: "localized-hello", label: "localized hello", icon: "./icon-16.png", onclick: function() { hello.show(); } }); var hello = require("sdk/panel").panel({ height: 75, width: 150, contenturl: require("sdk/self").data.url("my-panel.html") }); given locale files for "en-us" and "fr" which ...
... however, this approach makes it difficult to maintain an add-on which has many localizations, because you're using the default language strings both as user
interface strings and as keys to look up your translations.
Alerts and Notifications - Archive of obsolete content
this works on windows, linux and (if growl is installed) mac os x: function popup(title, text) { try { components.classes['@mozilla.org/alerts-service;1'] .getservice(components.
interfaces.nsialertsservice) .showalertnotification(null, title, text, false, '', null); } catch(e) { // prevents runtime error on platforms that don't implement nsialertsservice } } if you need to display a comparable alert on a platform that doesn't support nsialertsservice, you can do this: function popup(title, msg) { var image = null; var win = components.classes['@mozilla.org/embedcomp/wi...
...ndow-watcher;1'] .getservice(components.
interfaces.nsiwindowwatcher) .openwindow(null, 'chrome://global/content/alerts/alert.xul', '_blank', 'chrome,titlebar=no,popup=yes', null); win.arguments = [image, title, msg, false, '']; } using notification box another way of non-modal notification and further interaction with users is using of xul elements notificationbox and notification (implicitly).
Dialogs and Prompts - Archive of obsolete content
nsipromptservice is an xpcom
interface available to c++ and chrome javascript code (not to web pages' js), that provides methods for displaying a few simple types of dialogs.
... refer to the
interface documentation for documentation and sample code.
Adding sidebars - Archive of obsolete content
« previousnext » the sidebar in firefox is a relatively large and flexible space to add rich
interfaces without requiring new windows or complicated overlays.
...this kind of positioning can be useful for various artistic effects, as well as some type of desktop-like or dashboard-like
interface, where items are located in positions determined by the user, and they can overlap with each other.
Handling Preferences - Archive of obsolete content
preference listeners the xpcom way to add a listener was mentioned in the xpcom section when describing the query
interface method: this._prefservice.query
interface(ci.nsiprefbranch2); this._prefservice.addobserver(prefname, this, false); this._prefservice.query
interface(ci.nsiprefbranch); all the qi'ing is necessary because the addobserver method is in a different
interface, and other than for adding and removing observers, we use the nsiprefbranch
interface for everything related to preferences.
... } }, always remember to remove the observer when you don't need it anymore: this._prefservice.query
interface(ci.nsiprefbranch2); this._prefservice.removeobserver(prefname, this); preference windows it's very common for extensions to have a few settings that their users can change to tailor them to their needs.
JavaScript Object Management - Archive of obsolete content
var exported_symbols = [ "〈modulenamespace〉" ]; const { classes: cc,
interfaces: ci } = components; /** * 〈modulenamespace〉 namespace.
...we frequently need to use xpcom components in our code, so instead of doing this: this.obsservice = components.classes["@mozilla.org/observer-service;1"].getservice(components.
interfaces.nsiobserverservice); it's better to do this: this.obsservice = cc["@mozilla.org/observer-service;1"].getservice(ci.nsiobserverservice); these 2 constants don't need to be defined in the overlay because they are already defined globally in the browser.js file in firefox.
Local Storage - Archive of obsolete content
the structure could be something like this: s435l.default (your profile directory) xulschool log.txt somedbfile.sqlite the directory service and the nsifile
interface are used to create the local directory.
... files are handled with the nsifile
interface.
Mozilla Documentation Roadmap - Archive of obsolete content
the documentation on
interfaces is very complete, but it isn't nearly as useful as the documentation that existed at xulplanet and was later taken down.
... xulplanet allowed you to navigate between
interfaces and their related components, which makes locating components very easy.
Overlay extensions - Archive of obsolete content
this page contains links to documentation for the approach to developing extensions for gecko-based applications which uses: xul overlays to specify the
interface apis available to privileged code, such as tabbrowser and javascript modules, to interact with the application and content.
... xul tutorials and reference for the user
interface language used by xul extensions.
Extensions support in SeaMonkey 2 - Archive of obsolete content
shorthand expansion cc components.classes ci components.
interfaces cr components.results cu components.utils multi-browser compatibility to make an extension compatible with seamonkey as well as firefox/thunderbird, you may need to do different things depending on which application is running the extension.
... in javascript code you can use the following technique to detect the application: const firefox_id = "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"; const thunderbird_id = "{3550f703-e582-4d05-9a08-453d09bdfdc6}"; const seamonkey_id = "{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}"; var appinfo = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulappinfo); if(appinfo.id == firefox_id) { // running under firefox } else if(appinfo.id == thunderbird_id) { // running under thunderbird } else if(appinfo.id == seamonkey_id) { // running under seamonkey } else { // another app } see using nsixulappinfo for more details.
Security best practices in extensions - Archive of obsolete content
this approach is preferable because it provides users with a familiar
interface for interacting with logins, via the firefox password manager.
... apis and other data handling web content is more than just pages, and more and more add-ons are interacting with web services via an application programming
interface (api).
Firefox addons developer guide - Archive of obsolete content
if you use the
interface template when mentioning
interfaces by name, mdc will automatically format them and generate links to their documentation, like this: nsiconsoleservice.
... todo: all fixme notes inside the documents; add abbreviation definition to acronyms; add some link to the internal mdc documentation when it makes sense; indent source code; make sure documentation is relevant for all platforms: gnu/linux, macos, windows; add anchor links to figures & listings; add credits to original authors and license; completed sometimes,
interfaces names are misspelled: s/nsl/nsi; talk about fuel; titles of chapters and sub-headings should have caps for first letter of each word; we should add a part about bad and good practices (leaks, global scopes, ...); add external resources (mozdev.org/community/books.html); add to chapter 3 or 5 more informations about overlay (how to overlay some interesting part of firefox like status bar, me...
Making it into a static overlay - Archive of obsolete content
a xul overlay is a xul file containing elements to be inserted into another xul file when the other xul file is rendered into an application
interface.
...when navigator.xul is rendering into the browser's application
interface, this causes any attributes or child elements of the statusbar element in the overlay file to be added to the
interface's dom and thus show up in the
interface as if they were defined on the same element in navigator.xul.
Layout System Overview - Archive of obsolete content
the class nsframe is the base class for all frames, and it inherits from the base class nsiframe (note: nsiframe is not an
interface, it is an abstract base class.
... it was once an
interface but was changed to be a base class when the style system was modified - the name was not changed to reflect that it is not an
interface).
Menu - Archive of obsolete content
this is the context menu that appears when right-clicking on an element in firefox's
interface, such as a bookmark on the bookmarks toolbar.
... many parts of firefox's
interface are actually anonymous content.
Extensions - Archive of obsolete content
most notably, the prism application id and the differences in the user
interface (ui).
...installing prism supports a basic add-on user
interface which allows a user to manage extensions.
Prism - Archive of obsolete content
prism is a simple xulrunner-based browser that hosts web applications without the normal web browser user
interface.
... minimal user
interface: a general-purpose browser ui is not necessary or appropriate for most web apps.
The life of an HTML HTTP request - Archive of obsolete content
the parser then parses the stream it gets via its streamlistener
interface and converts it to nsiparsernodes which it places in the contentsink.
...these element nodes implement the nsihtmlcontent
interface as well as their respective dom
interfaces.
When To Use ifdefs - Archive of obsolete content
this can mean that there are completely different
interfaces with the same name which are built conditionally.
... for example (at the time of writing) there are two nsiextensionmanager
interfaces: toolkit version and suite version.
Building accessible custom components in XUL - Archive of obsolete content
however, it is less well-known that the same dhtml accessibility techniques can be applied to xul, mozilla's xml markup language for building user
interfaces.
... (the firefox
interface itself is built in xul, as well as the graphical
interface presented by firefox extensions.) xul itself has a much richer set of built-in controls than html.
ContextMenus - Archive of obsolete content
var element = aevent.target.triggernode; var isimage = (element instanceof components.
interfaces.nsiimageloadingcontent && element.currenturi); document.getelementbyid("enlarge").hidden = !isimage; document.getelementbyid("details").hidden = !isimage; } </script> <menupopup id="contentareacontextmenu" onpopupshowing="showhideitems(event)"> <menuitem label="copy"/> <menuitem id="enlarge" label="enlarge image"/> <menuitem id="details" label="image details"/> </menu...
...the nsiimageloadingcontent
interface is implemented by all types of images.
OpenClose - Archive of obsolete content
this can be done by either placing alternate commands elsewhere in the user
interface, or by providing a keyboard shortcut to open the menu.
...if the panel is open, you might want to avoid manipulating the user
interface within the main window, as the user won't be directly interacting with it.
Positioning - Archive of obsolete content
the following assumes a left to right user
interface.
... for right to left user
interfaces, the same values should be used, but will cause the popup to appear and be aligned on the opposite side.
contentView - Archive of obsolete content
this
interface lets you retrieve the dom element corresponding to a given a row index and vice versa.
...in newer versions of mozilla, the contentview property is actually a synonym for the view property, since the two
interfaces are flattened together into a single
interface in javascript.
textbox (Toolkit autocomplete) - Archive of obsolete content
autocompletesearch new in thunderbird 2requires seamonkey 1.1 type: space-separated list of values a space-separated list of search component names, each of which implements the nsiautocompletesearch
interface.
... related
interfaces nsiaccessibleprovider, nsiautocompleteinput, nsidomxulmenulistelement articles how to implement custom autocomplete search component ...
Features of a Window - Archive of obsolete content
as in html, you can use the window
interface's open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name.
... see also window
interface's open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name.
Localization - Archive of obsolete content
entities many applications are built such that translating the
interface into a different language is as simple as possible.
... for japanese: <!entity findlabel "検索"> for example, the following text: <description value="&findlabel;"/> is translated as: english version: <description value="find"/> japanese version: <description value="検索"/> you would declare an entity for each label or string of text that you use in your
interface.
XUL controls - Archive of obsolete content
the following table lists the xul user
interface controls.
... description reference <groupbox> a groupbox displays a labelled box around other user
interface controls.
button - Archive of obsolete content
constants for the possible values for this attribute are in the nsidomxulbuttonelement
interface.
...haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider, nsidomxulbuttonelement ...
prefpane - Archive of obsolete content
a prefpane is made up of two parts, the preferences descriptions, which specify the set of preferences that will be modified, and the user
interface for adjusting those preferences.
... methods domelement getpreferenceelement(in domelement startelement) preferenceforelement( uielement ) return type: preference element returns the preference element to which a user
interface element is attached.
richlistbox - Archive of obsolete content
scrollboxobject type: nsiscrollboxobject the scroll box object implements the nsiscrollboxobject
interface, which may be used to retrieve and adjust the scroll position of the list box.
... related
interfaces nsiaccessibleprovider, nsidomxulmultiselectcontrolelement ...
toolbar - Archive of obsolete content
the chromeclass-toolbar class may be used to create a toolbar where its visibility depends on the toolbar flag when opening the window with the window
interface's open() method loads the specified resource into the browsing context (window, <iframe> or tab) with the specified name.
... related elements toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox
interfaces nsiaccessibleprovider ...
toolbarbutton - Archive of obsolete content
constants for the possible values for this attribute are in the nsidomxulbuttonelement
interface.
... queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements toolbar, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox
interfaces nsiaccessibleprovider, nsidomxulbuttonelement ...
How to enable locale switching in a XULRunner application - Archive of obsolete content
xul control: <listbox id="locale-listbox"> <!-- generated list items go in here --> </listbox> <button label="&switchlocale.button;" oncommand="changelocale()"/> the javascript code to populate the control: try { // query available and selected locales var chromeregservice = components.classes["@mozilla.org/chrome/chrome-registry;1"].getservice(); var xulchromereg = chromeregservice.query
interface(components.
interfaces.nsixulchromeregistry); var toolkitchromereg = chromeregservice.query
interface(components.
interfaces.nsitoolkitchromeregistry); var selectedlocale = xulchromereg.getselectedlocale("localeswitchdemo"); var availablelocales = toolkitchromereg.getlocalesforpackage("localeswitchdemo"); // render locale menulist by iterating through the query result from getlocalesfor...
... getservice(components.
interfaces.nsiprefbranch); prefs.setcharpref("general.useragent.locale", newlocale); // restart application var appstartup = components.classes["@mozilla.org/toolkit/app-startup;1"] .getservice(components.
interfaces.nsiappstartup); appstartup.quit(components.
interfaces.nsiappstartup.erestart | components.
interfaces.nsiappstartup.eattemptquit); } catch...
Using LDAP XPCOM with XULRunner - Archive of obsolete content
actually, the ldap
interfaces are available (for exemple, components.
interfaces.nsildapconnection is not null), but the components can't be loaded (for example, components.classes["@mozilla.org/network/ldap-connection;1"] is null).
... libcomponent.dll on linux static char krealcomponent[] = moz_dll_prefix "mozldap" moz_dll_suffix; nsresult nsgetmodule(nsicomponentmanager* acompmgr, nsifile* alocation, nsimodule* *aresult) { nsresult rv; nscomptr<nsifile> libraries; rv = alocation->getparent(getter_addrefs(libraries)); if (ns_failed(rv)) return rv; nscomptr<nsilocalfile> library(do_query
interface(libraries)); if (!library) return ns_error_unexpected; library->setnativeleafname(ns_literal_cstring("libraries")); library->appendnative(ns_literal_cstring("dummy")); // loop through and load dependent libraries for (char const *const *dependent = kdependentlibraries; *dependent; ++dependent) { library->setnativeleafname(nsdependentcstring(*dependent)); prli...
MacFAQ - Archive of obsolete content
le="" width="0" height="0" persist="screenx screeny width height sizemode" > <!-- load the mozilla helpers --> <script type="application/javascript" src="chrome://global/content/nsusersettings.js" /> <script><![cdata[ function debug(alogstring) { var mconsoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice) mconsoleservice.logstringmessage("myxul: " + alogstring + "\n"); } function checkotherwindows() { var singletonwindowtype = nspreferences.copyunicharpref("toolkit.singletonwindowtype"); var windowmediator = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.
interfaces.nsiwindowmediator);...
... var win = windowmediator.getmostrecentwindow(singletonwindowtype); if (win) { window.close(); win.focus(); } } if (window.arguments && window.arguments[0]){ try { var cmdline = window.arguments[0] .query
interface(components.
interfaces.nsicommandline); for (var i = 0; i < cmdline.length; ++i) { debug(cmdline.getargument(i)) } } catch(ex) { debug(window.arguments[0]) // do something with window.arguments[0] //nspreferences.setunicharpref("myxul.cmdlinevalue", window.arguments[0]) } window.addeventlistener("load", checkotherwindows , false); } ]]></script> </window> ...
Opening a Link in the Default Browser - Archive of obsolete content
this can be done using the nsiexternalprotocolservice
interface: // first construct an nsiuri object using the ioservice var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var uritoopen = ioservice.newuri("http://www.example.com/", null, null); var extps = components.classes["@mozilla.org/uriloader/external-protocol-service;1"] .getservice(components.
interfaces.nsiexternalprotocolservice); // now, open it!
...this is how you do it: var extps = components.classes["@mozilla.org/uriloader/external-protocol-service;1"] .getservice(components.
interfaces.nsiexternalprotocolservice); if (extps.externalprotocolhandlerexists("http")) { // handler for http:// urls exists } link within an iframe to enable a link inside an html document that is the "src" of an iframe to be opened in the default browser, setting the preference: pref("network.protocol-handler.expose-all", false); seems to work.
XULRunner tips - Archive of obsolete content
var windowds = components.classes["@mozilla.org/rdf/datasource;1?name=window-mediator"] .getservice(components.
interfaces.nsiwindowdatasource); var tmpnamespace = {}; var sl = components.classes["@mozilla.org/moz/jssubscript-loader;1"] .createinstance(components.
interfaces.mozijssubscriptloader); sl.loadsubscript("chrome://inspector/content/hooks.js", tmpnamespace); tmpnamespace.inspectdomdocument(document); } now create a hook in your application window to start dom inspector, like this one: <but...
... pref("signon.remembersignons", true); pref("signon.expiremasterpassword", false); pref("signon.signonfilename", "signons.txt"); you also need to get an instance of the login manager service, which internally initializes the system: components.classes["@mozilla.org/login-manager;1"].getservice(components.
interfaces.nsiloginmanager); using firefox to run xulrunner applications firefox 3 and up contain the xulrunner runtime.
XUL Application Packaging - Archive of obsolete content
example: enableextensionmanager=1 enableprofilemigrator specifies whether, when the application is launched for the first time and there are no profiles, to enable profile migration code through the nsiprofilemigrator
interface.
... optional - default is 0 note: the application author is responsible for implementing the nsiprofilemigrator
interface; if an implementation is not found no migration will be performed.
calICalendarViewController - Archive of obsolete content
interface code [scriptable, uuid(1f783898-f4c2-4b2d-972e-360e0de38237)]
interface calicalendarviewcontroller : nsisupports { void createnewevent (in calicalendar acalendar, in calidatetime astarttime, in calidatetime aendtime); void modifyoccurrence (in caliitemoccurrence aoccurrence, in calidatetime anewstarttime, in calidatetime anewendtime); void deleteoccurr...
... related
interfaces calicalendarview calidecoratedview example code var myviewcontroller = { query
interface: function(aiid) { if (!aiid.equals(components.
interfaces.calicalendarviewcontroller) && !aiid.equals(components.
interfaces.nsisupports)) { throw components.results.ns_error_no_
interface; } return this; }, createnewevent: function (acalendar, ast...
Extentsions FAQ - Archive of obsolete content
//myexten/skin/toolbar-button-off.png"); -moz-image-region: rect(0px 24px 24px 0px);} to implement a third i would simply change add an attribute and the corresponding css see http://www.w3.org/tr/rec-css2/cascade.html#cascade friday, october 13 - 20, 2006 (↑ top) how to get a refenece to the sidebar window assuming you have chrome privileges, this should work: var ci = components.
interfaces; var toplevelwindow = window.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsiwebnavigation) .query
interface(ci.nsidocshelltreeitem) .roottreeitem .query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsidomwindow) .query
interface(ci.nsidomchromewindow); var sidebar = toplevelwindow.document.getelementbyid("sidebar"); alert(sidebar.conte...
... you can write a dummy xpcom component implementing the necessary
interfaces and register it with the sane contract id.
XEmbed Extension for Mozilla Plugins - Archive of obsolete content
key differences all of the
interfaces that you would normally expect to exist in the plugins will still exist when using xembed plugins.
...other toolkits and out of process plugins it should be possible to use this
interface to build a plugin that would run out of process as well as using other toolkits like qt to build plugins.
XForms API Reference - Archive of obsolete content
note the word beginning :-) naming convention the xforms
interfaces has the following naming convention: nsixforms...element
interfaces implemented by the c++ part of a control nsixformsns...element
interfaces extending xforms specification
interfaces nsixforms...uielement
interfaces implemented by the js part of a control nsixforms...accessors
interface exposing states about the bound instance node for a given control frozen
interfaces nsixformsmodelelement the model
interface experimental
interfaces nsixformsdelegate the delegate
interface for xforms:custom_controls nsixformsaccessors the accessors
interface for xforms:custom_...
...controls nsixformsnsmodelelement custom extension(s) to the nsixformsmodelelement
interface nsixformsnsinstanceelement custom extension(s) to the instance element ...
Mozilla XForms Specials - Archive of obsolete content
} the pseudo elements are defined in the css3 basic user
interface specification .
...custom control
interface we have added a lot of functionality to our user
interface, which allows the form authors to create custom controls.
Archive of obsolete content
the new design clearly shows what some experts have been saying: that standards-based design can be visually compelling and preserve the
interface conventions we've come to expect from web pages.
...due to a limitation of the present implementation of nspr io on nt, programs must follow the following guideline: using ssh to connect to cvs using web standards in your web pages using workers in extensions this article shows you how to use worker threads in extensions to perform tasks in the background without blocking the user
interface.
Introduction to game development for the Web - Game development
html and css together, these two technologies let you build, style, and lay out your game's user
interface.
... pointer lock api the pointer lock api lets you lock the mouse or other pointing device within your game's
interface so that instead of absolute cursor positioning you receive coordinate deltas that give you more precise measurements of what the user is doing, and prevent the user from accidentally sending their input somewhere else, thereby missing important action.
Audio for Web games - Game development
the htmlmediaelement
interface comes with lots of properties to help determine whether a track is in a state to be playable.
... here's an example of an audio sprite player — first let's set up the user
interface in html: <audio id="myaudio" src="https://udn.realityripple.com/samples/f0/2909c16512.mp3"></audio> <button data-start="18" data-stop="19">0</button> <button data-start="16" data-stop="17">1</button> <button data-start="14" data-stop="15">2</button> <button data-start="12" data-stop="13">3</button> <button data-start="10" data-stop="11">4</button> <button data-start="8" data-stop="9">5</button>...
Unconventional controls - Game development
as well as being great for virtual
interfaces, it can also be used for a casual 2d gaming experiences.
... makey makey if you want to go completely bananas you can use makey makey, a board that can turn anything into a controller — it's all about connecting real-world, conductive objects to a computer and using them as touch
interfaces.
Visual typescript game engine - Game development
main file: app.ts src/libs/ is a common and smart pack of classes,
interfaces etc.
...| | | ├── sprite-animation.ts | | | | ├── text.ts | | | | ├── texture.ts | | | ├── browser.ts | | | ├── math.ts | | | ├── position.ts | | | ├── resources.ts | | | ├── sound.ts | | | ├── system.ts | | | ├── view-port.ts | | | ├── visual-render.ts | | ├──
interface/ | | | ├── drawi.ts | | | ├── global.ts | | | ├── visual-components.ts | | ├── multiplatform/ | | | ├── mobile/ | | | | ├── player-controls.ts | | | ├── global-event.ts | | ├── types/ | | | ├── global.ts | | ├── engine-config.ts | | ├── ioc.ts | | ├── starter.ts ...
Plug-in Development Overview - Gecko Plugin API Reference
npp_getvalue is called after the plug-in is initialized to get the scripting
interface while np_getvalue is called during initialization to retrieve the plug-in's name and description, which will appear in the navigator.plugins dom object which is used to populate about:plugins.
...to make the user feel that the plug-in is part of the the browser user
interface, your plug-in can emulate the browser behavior by providing status line messages.
API - MDN Web Docs Glossary: Definitions of Web-related terms
an api (application programming
interface) is a set of features and rules that exist inside a software program (the application) enabling interaction with it through software - as opposed to a human user
interface.
... the api can be seen as a simple contract (the
interface) between the application offering it and other items, such as third party software or hardware.
Gaia - MDN Web Docs Glossary: Definitions of Web-related terms
the user
interface and default application suite of the firefox os platform.
...gaia is implemented entirely with html, css, and javascript, and its only
interfaces to the underlying operating system are through open web apis, which the gecko layer implements.
MVC - MDN Web Docs Glossary: Definitions of Web-related terms
mvc (model-view-controller) is a pattern in software design commonly used to implement user
interfaces, data, and controlling logic.
...your data model is probably contained in some kind of database (be it a traditional server-side database like mysql, or a client-side solution such as indexeddb [en-us].) your app's controlling code is probably written in html/javascript, and your user
interface is probably written using html/css/whatever else you like.
RIL - MDN Web Docs Glossary: Definitions of Web-related terms
ril (radio
interface layer) is a mobile operating system component which communicates between the device's software and the device's phone, radio, or modem hardware.
... learn more general knowledge radio
interface layer on wikipedia technical reference firefox os architecture: the userspace process architecture ...
What text editors are available? - Learn web development
an ide provides many tools in one
interface and it's a bit daunting for beginners, but always an option if your text editor feels too limited.
... well, that's a matter of taste, but some people like customizing every bit of the ui (user
interface), from colors to button positions.
How do I use GitHub Pages? - Learn web development
here's what you'd type if you've put your website in a directory called test-site on your desktop: cd desktop/test-site when the command line is pointing inside your website directory, type the following command, which tells the git tool to turn the directory into a git repository: git init an aside on command line
interfaces the best way to upload your code to github is via the command line — this is a window where you type in commands to do things like create files and run programs, rather than clicking inside a user
interface.
... it will look something like this: note: you could also consider using a git graphical user
interface to do the same work, if you feel uncomfortable with the command line.
Client-side form validation - Learn web development
the constraint validation api most browsers support the constraint validation api, which consists of a set of methods and properties available on the following form element dom
interfaces: htmlbuttonelement (represents a <button> element) htmlfieldsetelement (represents a <fieldset> element) htmlinputelement (represents an <input> element) htmloutputelement (represents an <output> element) htmlselectelement (represents a <select> element) htmltextareaelement (represents a <textarea> element) the constraint validation api makes the following properties available on the a...
... here is the live result: note: you can find this example live on github as detailed-custom-validation.html (see also the source code.) the constraint validation api gives you a powerful tool to handle form validation, letting you have enormous control over the user
interface above and beyond what you can do with html and css alone.
Video and audio content - Learn web development
controls users must be able to control video and audio playback (it's especially critical for people who have epilepsy.) you must either use the controls attribute to include the browser's own control
interface, or build your
interface using the appropriate javascript api.
... at a minimum, the
interface must include a way to start and stop the media, and to adjust the volume.
Manipulating documents - Learn web development
inside your script element, add the following line: const link = document.queryselector('a'); now we have the element reference stored in a variable, we can start to manipulate it using properties and methods available to it (these are defined on
interfaces like htmlanchorelement in the case of <a> element, its more general parent
interface htmlelement, and node — which represents all nodes in a dom).
...const text = document.createtextnode(' — the premier source for web development knowledge.'); now we'll grab a reference to the paragraph the link is inside, and append the text node to it: const linkpara = document.queryselector('p'); linkpara.appendchild(text); that's most of what you need for adding nodes to the dom — you'll make a lot of use of these methods when building dynamic
interfaces (we'll look at some examples later).
Video and Audio APIs - Learn web development
this
interface is available to both <audio> and <video> elements, as the features you'll want to implement are nearly identical.
... implementing the javascript we've got a fairly complete html and css
interface already; now we just need to wire up all the buttons to get the controls working.
What is JavaScript? - Learn web development
so-called application programming
interfaces (apis) provide you with extra superpowers to use in your javascript code.
... a very common use of javascript is to dynamically modify html and css to update a user
interface, via the document object model api (as mentioned above).
Measuring performance - Learn web development
these
interfaces allows the accurate measurement of the time it takes for javascript tasks to complete.
... you can also use the performance monitor to measure the performance of a web app or site's user
interface as you perform different actions.
Getting started with Ember - Learn web development
the service side provides long-lived shared state, behavior, and an
interface to integrating with other libraries or systems.
... installing the ember tooling ember uses a command-line
interface (cli) tool for building and scaffolding parts of your application.
Framework main features - Learn web development
typescript is not concerned with the writing of user
interfaces, but it is a domain-specific language, and has significant differences to vanilla javascript.
...testing tools are not built into the frameworks themselves, but the command-line
interface tools used to generate framework apps give you access to the appropriate testing tools.
Getting started with Svelte - Learn web development
svelte: a new approach to building rich user
interfaces svelte provides a different approach to building web apps than some of the other frameworks covered in this module.
... use cases svelte can be used to develop small pieces of an
interface or whole applications.
Accessibility API cross-reference
fill out tagged pdf column (relevant documents from pdf association) add missing aria properties fill out events cross reference table use this info to expand mozilla's accessibility api coverage to include mac, so that we can start to freeze them talk about the fact that msaa uses one
interface (iaccessible), wherease gnome accessibility uses a lot of different
interfaces depending on the type of object go through the atk info and make sure it's up-to-date accessible roles description & notes msaa role (role_system_*) java accessibility role gnome accessibility role (atk_role_*) mac os x accessibility role aria (role=*) html tagged pdf relevant xul ...
... whitespace filler filler n/a <br> an interactive component of a graphical user
interface.
Accessibility Features in Firefox
we are optimistic that nuance will work to improve access to the user
interface in the coming year.
...have announced they are already working with the technology their new richer
interfaces accessible with this new technology.
Add-ons
among other things, an add-on could: change the appearance or content of particular websites modify the firefox user
interface add new features to firefox there are several types of add-ons, but the most common type are extensions.
... language packs let you have more languages available for the user
interface of firefox.
Command line options
you can open the command line
interface by pressing shift + f2.
... --kiosk url open url full screen without user
interface.
How Mozilla's build system works
config.status contains 2 parts: data structures representing the output of configure and a command-line
interface for preparing, configuring, or generating an appropriate build backend.
... makefile examples standard makefile header installing headers using exports compiling
interfaces using xpidlsrcs installing a javascript component building a component dll building a static library building a dynamic library makefiles - best practices and suggestions makefile - targets makefile - variables, values makefile - *.mk files & user config building libraries there are three main types of libraries that are built in mozilla: components are shared libraries (except in ...
Eclipse CDT
for example, in content/svg/content/src/nssvgellipseelement.cpp eclipse shows a parse error due to ns_dom_
interface_map_entry_classinfo not being defined.
... via the following include chain: content/svg/content/src/nssvgellipseelement.cpp content/svg/content/src/nssvgpathgeometryelement.h content/svg/content/src/nssvggraphicelement.h content/svg/content/src/nssvgstylableelement.h content/svg/content/src/nssvgelement.h content/base/src/nsgenericelement.h obj-debug/dist/include/nsdomclassinfoid.h in nsdomclassinfoid.h the ns_dom_
interface_map_entry_classinfo define is behind an |ifdef _impl_ns_layout|.
Index
10 firefox ui considerations for web developers activity stream, firefox, icons, mozilla, new tab, newtab, ui, web, web development, favicon there are a number of places within the firefox user
interface where web sites are listed for the user to choose a destination to visit or a site to manage in some way.
...always keep in mind the side effects your changes may have, from blocking other tasks to interfering with other user
interface elements.
Limitations of frame scripts
it looks something like this: window.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsiwebnavigation) .query
interface(ci.nsidocshelltreeitem) .roottreeitem .query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsidomwindow); this will no longer work.
... in the content process the root tree item is an nsitabchild, that cannot be converted to an nsidomwindow, so the second get
interface call here will fail.
Limitations of frame scripts
it looks something like this: window.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsiwebnavigation) .query
interface(ci.nsidocshelltreeitem) .roottreeitem .query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsidomwindow); this will no longer work.
... in the content process, the root tree item is an nsitabchild, that cannot be converted to an nsidomwindow, so the second get
interface call here will fail.
Process scripts
this can be achieved by traversing the docshell tree up to the top window and then retrieving its content message manager, as follows: function contentmmfromcontentwindow(window) { let tree = window.query
interface(ci.nsi
interfacerequestor).get
interface(ci.nsidocshelltreeitem); let top = tree.sametyperoottreeitem; let iface = query
interface(ci.nsidocshell).query
interface(ci.nsi
interfacerequestor); return iface.get
interface(ci.nsicontentframemessagemanager); } this is intended for unprivileged pages running in a content process.
... if the above doesn't work try this: function contentmmfromcontentwindow_method2(acontentwindow) { return acontentwindow.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsidocshell) .query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsicontentframemessagemanager); } ...
Performance best practices for Firefox front-end engineers
always keep in mind the side effects your changes may have, from blocking other tasks, to interfering with other user
interface elements.
... writing tests to ensure you don’t add more unintentional reflow the
interface nsireflowobserver lets us detect both interruptible and uninterruptible reflows.
Firefox
the most useful is the url about:config, which displays preferences and settings that can be inspected and changed.firefox ui considerations for web developersthere are a number of places within the firefox user
interface where web sites are listed for the user to choose a destination to visit or a site to manage in some way.
...always keep in mind the side effects your changes may have, from blocking other tasks, to interfering with other user
interface elements.privacythis document lists privacy-related documentation.security best practices for firefox front-end engineersthis article will help firefox developers understand the security controls in place and avoid common pitfalls when developing front-end code for firefox.site identity buttonthe site identity button is a feature in firefox that gives users more information about the sites they v...
IPDL Tutorial
using struct mozilla::void_t from "ipc/ipcmessageutils.h"; union variant { void_t; bool; int; double; nscstring; ppluginscriptableobject; }; this union generates a c++
interface which includes the following: struct variant { enum type { tvoid_t, tbool, tint, tdouble, tnscstring, tpplugionscriptableobject }; type type(); void_t& get_void_t(); bool& get_bool(); int& get_int(); double& get_double(); nscstring& get_nscstring(); ppluginscriptableobject* get_ppluginscriptableobject(); }; aunion.type() can be used to determine the type of a union receiv...
... in the example protocol below, the child actor offers a "callmecallyou()" rpc
interface, and the parent offers a "callyou()" rpc
interface.
CustomizableUI.jsm
areas areas are parts of the user
interface in which customizable widgets can be placed.
...this can be useful if other parts of the code need to react to changes in the customization of the user
interface.
Log.jsm
until stabilized, expect frequent updates, including different
interfaces and behavior in different versions of the platform.
...ngth: 1 keys of prototype: doappend(); getinputstream(); newoutputstream(); outputstream reset(); structuredformatter(); length: 0 keys of prototype: format(); method overview enumerate
interfaces(); length: 0 enumerateproperties(); length: 2 member fields variable type description level object contains the following fields: field name value all 0 config 30 debug 20 desc { 0: "all", 10: "trace",...
Using workers in JavaScript code modules
note: as of gecko 8.0, the nsiworkerfactory
interface has been removed starting in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1), you can use workers in javascript code modules (jsms).
...to create a chromeworker for this purpose, you need to use the nsiworkerfactory
interface: var workerfactory = components.classes['@mozilla.org/threads/workerfactory;1'] .createinstance(components.
interfaces.nsiworkerfactory); var worker = workerfactory.newchromeworker('script_url.js'); this will create a new chrome worker that will immediately begin to run the script at the specified url (in this case, "script_url.js").
source-editor.jsm
this can be any of the following changes: one or more new breakpoints were added, using either the api or editor user
interface.
... one or more breakpoints were removed, using either the api or editor user
interface.
Localizing with Koala
introduction this tutorial will guide you through making a couple of changes to firefox's user
interface using koala, an add-on for komodo edit created to help localizing mozilla.
...dtd's files are read by the xml parser, which goes through the xul files used in mozilla to create the
interface when it launches.
Localizing without a specialized tool
with that document, users can see immediately two localized files in their user
interface by following closely and carefully the steps to create a language pack or a binary file that is ready for installation.
...you can follow more detailed guidelines on compare-locale's page, but running the following command from the command line should be enough: $ sudo easy_install -u compare-locales to start, be sure to open your command line
interface and change your directory to where you are keeping your localization files, the en-us sources $ cd /path/to/your/working/directory now, you will need run compare locales.
Translation phase
help localize the mdn user
interface for everyone in your region.
...help localize the sumo user
interface for everyone in your region.
SVN for Localizers
a possible alternative is to install tortoisesvn (graphical
interface and command line client).
... you can also double check your changes using the viewvc
interface.
Creating localizable web applications
after that, it is tempting to use the $category or $tab variables in the
interface.
... so in order to display a localized label of a category or a tab, you should create a mapping between the non-localizable english names used in the urls and the localizable english strings used in the
interface.
Mozilla Framework Based on Templates (MFBT)
mfbt code goes to some length to document all its
interfaces in comments, including examples when possible.
... functionality types and type manipulation standardinteger.h implements the <stdint.h>
interface.
Mozilla Style System
the barrier between these two halves consists of three abstract
interfaces, plus some smaller structures associated with some methods on each: nsistylesheet nsistylesheet represents what one would think of as a style sheet: the in-memory representation of a css file or other source of style data.
... computed style (front end) the
interface that the front end exposes to the rest of mozilla consists of a single nsstyleset object and many nsstylecontext objects, each of which holds the computed style for an element, pseudo-element, or text node.
TimerFirings logging
next is the timer kind, one of fn (function), iface (
interface) or obs (observer), which are the three kinds of timers that gecko supports.
...
interface and observer timers only have an address, which is less useful, but they are uncommon enough that this usually doesn't matter much.
A brief guide to Mozilla preferences
preference changes via user
interface usually take effect immediately.
... preferences saving usually when the user specifically commits a preference change via user
interface such as the preferences dialog, the application saves the change by overwriting prefs.js .
PRSockOption
syntax #include <prio.h> typedef enum prsockoption { pr_sockopt_nonblocking, pr_sockopt_linger, pr_sockopt_reuseaddr, pr_sockopt_keepalive, pr_sockopt_recvbuffersize, pr_sockopt_sendbuffersize, pr_sockopt_iptimetolive, pr_sockopt_iptypeofservice, pr_sockopt_addmember, pr_sockopt_dropmember, pr_sockopt_mcast
interface, pr_sockopt_mcasttimetolive, pr_sockopt_mcastloopback, pr_sockopt_nodelay, pr_sockopt_maxsegment, pr_sockopt_last } prsockoption; enumerators the enumeration has the following enumerators: pr_sockopt_nonblocking nonblocking i/o.
... pr_sockopt_mcast
interface ip multicast
interface address.
NSS Certificate Download Specification
for nss-based servers it will depend upon the options selected in the server's administration
interface.
... server certificates are imported via the server admin
interface.
JSS
legacy jss information can still be found at: source: https://hg.mozilla.org/projects/jss issues: https://bugzilla.mozilla.org/buglist.cgi?product=jss wiki: /docs/mozilla/projects/nss/jss network security services for java (jss) is a java
interface to nss.
...jss also provides a pure java
interface for asn.1 types and ber/der encoding.
NSS_3.12_release_notes.html
salt as having no password bug 405966: unknown signature oid 1.3.14.3.2.29 causes sec_error_bad_signature, 3.11 ignores it bug 413010: cert_comparerdn may return a false match bug 417664: false positive crl revocation test on ppc/ppc64 nss_enable_pkix_verify=1 bug 404526: glibc detected free(): invalid pointer bug 300929: certificate policy extensions not supported bug 129303: nss needs to expose
interfaces to deal with multiple token sources of certs.
... bug 217538: softoken databases cannot be shared between multiple processes bug 294531: design new
interfaces for certificate path building and verification for libpkix bug 326482: nss ecc performance problems (intel) bug 391296: need an update helper for shared databases bug 395090: remove duplication of pkcs7 code from pkix_pl_httpcertstore.c bug 401026: need to provide a way to modify and create new pkcs #11 objects.
NSS 3.52 release notes
bug 1623374 - support new pkcs #11 v3.0 message
interface for aes-gcm and chachapoly.
... bug 1623374 - support new pkcs #11 v3.0 message
interface for aes-gcm and chachapoly.
PKCS11 Implement
this document supplements the information in pkcs #11: cryptographic token
interface standard, version 2.0 with guidelines for implementors of cryptographic modules who want their products to work with mozilla client software: how nss calls pkcs #11 functions.
...how nss calls pkcs #11 functions this section is organized according to the categories used in pkcs #11: cryptographic token
interface standard, version 2.0.
Python binding for NSS
some functionality and
interface have already been deprecated due to lessons learned.
... unicode objects now accepted as well as str objects for
interfaces expecting a string.
Multithreading in Necko
necko's primary
interfaces are not thread safe.
...the internal i/o
interfaces default to proxying all callbacks to the main thread.
Tutorial: Embedding Rhino
in this document: runscript: a simple embedding entering a context initializing standard objects collecting the arguments evaluating a script printing the result exiting the context expose java apis using java apis implementing
interfaces adding java objects using javascript objects from java using javascript variables calling javascript functions javascript host objects defining host objects counter example counter's constructors class name dynamic properties defining javascript "methods" adding counter to runscript runscript: a simple embedding abou...
...the javascript feature calledliveconnect allows javascript programs to interact with java objects: $ java runscript "java.lang.system.out.println(3)" 3.0 undefined implementing
interfaces using rhino, javascript objects can implement arbitrary java
interfaces.
Rhino Examples
the enum.js script is a good example of using a javaadapter to implement a java
interface using a javascript object.
...the matrix class - implementing scriptable matrix.java provides a simple multidimensional array by implementing the scriptable
interface.
Rhino JavaScript compiler
-implements java-intf-name specifies that a java class implementing the java
interface java-intf-name should be generated from the incoming javascript source file.
... each global function in the source file is made a method of the generated class, implementing any methods in the
interface by the same name.
Rhino overview
in addition, rhino has implemented javaadapters, which allows javascript to implement any java
interface or extend any java class with a javascript object.
...first, every context that is created must be supplied an instance of an object that implements the securitysupport
interface.
Exact Stack Rooting
because of the lifo restriction, using this
interface manually is extremely cumbersome.
...by using js::handlet in the
interface instead of direct gcpointers, we ensure that the gcthing is already rooted on some previous stack frame, freeing us from having to worry about rooting the gcthing for the duration of the call.
SpiderMonkey 1.8.8
the file must conform to the standard c99 <stdint.h> header
interface in all respects, providing all that header's types and macro definitions.
... (the msstdint project includes an implementation of this header for microsoft visual studio which demonstrates what the c99
interface looks like.) otherwise, if the compiler doesn't provide a usable <stdint.h> header, a custom implementation shipped with the spidermonkey source is used.
SpiderMonkey 17
the file must conform to the standard c99 <stdint.h> header
interface in all respects, providing all that header's types and macro definitions.
... (the msstdint project includes an implementation of this header for microsoft visual studio which demonstrates what the c99
interface looks like.) otherwise, if the compiler doesn't provide a usable <stdint.h> header, a custom implementation shipped with the spidermonkey source is used.
Implementation Details
supported features
interfaces refer to specific pages to get information of supported
interfaces for interested at api: core: gecko
interfaces windows: msaa, ia2, ienumvariant and isimpledom*
interfaces linux: at-spi roles refer to specific pages to get information of supported roles for interested at api: gecko msaa ia2 at-spi states refer to specific pages to get information of supported states for interested at api: gecko msaa ia2 at-spi relations refer to specific pages to get information of supported relations for interested at api: gecko msaa ia2 at-spi attributes object attributes refer to specific pages to get information of supported object attributes for interested at api: gecko msaa ia2 at-spi text attribut...
...instead, the same information is available via theisimpledomdocument
interface.
History Service Design
view the service
interface definition: nsinavhistoryservice.idl.
...history service provides the basics to create such adaptive search paths, allowing for a better browsing experience through a common
interface.
Using the Places favicon service
the favicon service, implemented by the nsifaviconservice
interface, stores the favicons for pages in bookmarks and history.
... creating the favicon service the favicon service's contract id is @mozilla.org/browser/favicon-service;1, so to gain access to the favicon service, you should do something like this: var faviconservice = components.classes["@mozilla.org/browser/favicon-service;1"] .getservice(components.
interfaces.nsifaviconservice); caching the favicon service stores an expiration time for each favicon.
Using the Places tagging service
the tagging service, offered by the nsitaggingservice
interface, provides methods to tag and untag a uri, to retrieve uris for a given tag, and to retrieve all tags for a uri.
... initiating the tagging service before using the tagging service, you need to obtain a reference to an instance of it: var taggingsvc = components.classes["@mozilla.org/browser/tagging-service;1"] .getservice(components.
interfaces.nsitaggingservice); tagging a uri the nsitaggingservice.taguri() method tags a url with the given set of tags.
Places
it also introduces new user
interfaces for managing all this information; see places on the mozilla wiki.
... places stores its data in an sqlite database using the mozstorage
interfaces.
Bundling multiple binary components
if the component uses only "frozen" xpcom
interfaces, there is a good chance the same binary component will work with different versions of gecko (version 1.8 and 1.9, for example).
... the more likely case is that the component uses "unfrozen"
interfaces and those
interfaces can change between gecko versions.
Generating GUIDs
guids are used in mozilla programming for identifying several types of entities, including xpcom
interfaces (this type of guids is callled iid), components (cid), and legacy add-ons—like extensions and themes—that were created prior to firefox 1.5.
... sfink's update-uuids will change the uuid for a given
interface and all of its descendants, updating all *.idl files within a directory tree.
Packaging WebLock
« previousnext » in this final part of the tutorial, we'll put all of the pieces of the web locking component - the library itself, the type library, the header file, and the user
interface resources - into a package that can be installed on other systems.
... archiving resources once you have compiled all the resources that make up the weblock component and the files that make up the user
interface that will be added to the browser, you can place these within a subdirectory called weblock.
Components.isSuccessCode
const cc = components.classes; const ci = components.
interfaces; const cr = components.results; // global flags polled externally var copyfailed = false; var copyinprogress = false; function copybufferedstream(instream, outstream) { var copyobserver = { onstartrequest: function(request, context) { copyinprogress = true; }, onstoprequest: function(request, context, statuscode) { copyinprogress = false; ...
... if (!components.issuccesscode(statuscode)) copyfailed = true; }, query
interface: function(aiid) { if (aiid.equals(ci.nsirequestobserver) || aiid.equals(ci.nsisupports)) return this; throw cr.ns_error_no_
interface; } }; var copier = cc["@mozilla.org/network/async-stream-copier;1"] .createinstance(ci.nsiasyncstreamcopier); copier.init(instream, outstream, null, true, false, 8192, true, true); copier.asynccopy(copyobserver, null); } ...
Components.lastResult
most
interfaces only return one success code -- ns_ok -- so components.lastresult is rarely necessary.
... if (e instanceof components.
interfaces.nsixpcexception) { // we might do something interesting here with the exception object var rv = e.result; } else { // if we don't know how to handle it then rethrow throw e; } } ...
Components.returnCode
however, there are a very few xpcom
interfaces that specify success code return values.
... components.returncode exists in order to make it possible to implement these rare
interfaces in javascript.
Components.utils
its
interface is defined at js/xpconnect/idl/xpccomponents.idl.
...declared in the
interface) method or property of an xpcom object.
Architecture basics
it lets you get pointers to components inside mozilla, and it lets you talk about their
interfaces as well.
... xpcshell is a command line
interface to mozilla javascript.
HOWTO
"component returned failure code: 0x80040111 (ns_error_not_available) [nsixpccomponents_utils.import]" nsresult: "0x80040111 (ns_error_not_available)" location: "js frame :: file.js :: <top_level> :: line 12" data: no] solution 1 var loader = components.classes["@mozilla.org/moz/jssubscript-loader;1"] .getservice(components.
interfaces.mozijssubscriptloader); loader.loadsubscript("chrome://myall/content/file.jsm"); see: http://mxr.mozilla.org/comm-central/...figutils.js#54 solution 2 append the following at the top of your js file which you want to run in xpcshell { // <https://developer.mozilla.org/en/xpconnect/xpcshell/howto> // <https://bugzilla.mozilla.org/show_bug.cgi?id=546628> let cc = components.classes; let ...
...ci = components.
interfaces; // register resource://app/ uri let ios = cc["@mozilla.org/network/io-service;1"] .getservice(ci.nsiioservice); let reshandler = ios.getprotocolhandler("resource") .query
interface(ci.nsiresprotocolhandler); let mozdir = cc["@mozilla.org/file/directory_service;1"] .getservice(ci.nsiproperties) .get("curprocd", ci.nsilocalfile); let mozdiruri = ios.newfileuri(mozdir); reshandler.setsubstitution("app", mozdiruri); // register chrome://* uris let cr = cc["@mozilla.org/chrome/chrome-registry;1"] .getservice(ci.nsichromeregistry); cr.checkfornewchrome(); } bug 546628 would make this unnecessary.
nsLocalFile
class id 2e23e220-60be-11d3-8c4a-000064657374 contractid @mozilla.org/file/local;1 supported
interfaces nsilocalfile, nsifile remarks this component should be accessed via the xpcom component manager.
... createinstance(components.
interfaces.nsilocalfile); file.initwithpath(path); return file.filesize; } see also components, nsicomponentmanager ...
nsScriptableInputStream
class id 7225c040-a9bf-11d3-a197-0050041caf44 contractid @mozilla.org/scriptableinputstream;1 supported
interfaces nsiscriptableinputstream, nsiinputstream remarks this component should be accessed via the xpcom component manager.
... example code const nsiscriptableinputstream = components.
interfaces.nsiscriptableinputstream; function consumestream(inputstream) { var factory = components.classes["@mozilla.org/scriptableinputstream;1"]; var sis = factory.createinstance(nsiscriptableinputstream); sis.init(inputstream); try { while (true) { var chunk = sis.read(512); if (chunk.length == 0) break; // ok, chunk now contains a portion of the stream's data.
XPCOM glue classes
be released, typically on destruction of the object.</t>nsautoreftraitsnsautoreftraits<t> is a template class describing traits of resources held by objects of class nsautoref<t> and/or nscountedref<t>.</t>nsautostringclass declarationnsautostring (external)class declarationnscautostringclass declarationnscautostring (external)class declarationnscomptrthis utility class simplifies managing xpcom
interface references from c++ code.nscountedrefnscountedref<t> is a template class implementing an object that takes a strong reference to a reference-counted resource that must be released, typically on destruction of the object.</t>nscstringclass declarationnscstring externalclass declarationnscstringcontainer (external)class declaration nscstringencodingthe nscstringencoding enumeration describes th...
...it is similar to nscomptr, but does not require that the type be an xpcom
interface.
IAccessibleAction
other-licenses/ia2/accessibleaction.idlnot scriptable this
interface gives access to actions that can be executed for accessible objects.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) every accessible object that can be manipulated via the native gui beyond the methods available either in the msaa iaccessible
interface or in the set of iaccessible2
interfaces (other than this iaccessibleaction
interface) should support the iaccessibleaction
interface in order to provide assistive technology access to all the actions that can be performed by the object.
IAccessibleImage
other-licenses/ia2/accessibleimage.idlnot scriptable this
interface represents images and icons.
... 1.0 66 introduced gecko 1.9 inherits from: iunknown last changed in gecko 1.9 (firefox 3) this
interface is used for a representation of images like icons on buttons.
IAccessibleRelation
other-licenses/ia2/accessiblerelation.idlnot scriptable this
interface gives access to an object's set of relations.
...you will need to use query
interface on the iunknown to get the iaccessible2.
IAccessibleTable
other-licenses/ia2/accessibletable.idlnot scriptable this
interface gives access to a two-dimensional table.
...the range of valid coordinates for this
interface are implementation dependent.
amIWebInstaller
toolkit/mozapps/extensions/amiwebinstaller.idlscriptable this
interface is used to allow web pages to start installing add-ons.
... auris, [array, size_is(ainstallcount)] in wstring ahashes, [array, size_is(ainstallcount)] in wstring anames, [array, size_is(ainstallcount)] in wstring aicons, [optional] in amiinstallcallback acallback, [optional] in pruint32 ainstallcount); boolean isinstallenabled(in astring amimetype, in nsiuri areferer); note: prior to gecko 8.0, all references to nsidomwindow used in this
interface were nsidomwindow.
jsdIStackFrame
setting or getting this attribute on any other context will throw a ns_error_no_
interface exception.
...after you return from that handler the bottom frame, and any frame you found attached through it, are invalidated via the jsdiephemeral
interface.
mozIAsyncHistory
toolkit/components/places/moziasynchistory.idlscriptable this
interface allows you to add multiple visits to a single url in a batch.
... 1.0 66 introduced gecko 24.0 inherits from: nsisupports last changed in gecko 24.0 (firefox 24.0 / thunderbird 24.0 / seamonkey 2.21) implemented by: @mozilla.org/browser/history;1 as a service: var asynchistory = components.classes["@mozilla.org/browser/history;1"] .getservice(components.
interfaces.moziasynchistory); method overview void getplacesinfo(in jsval aplaceidentifiers, in mozivisitinfocallback acallback); void isurivisited(in nsiuri auri, in mozivisitedstatuscallback acallback); void updateplaces(in moziplaceinfo, [optional] in mozivisitinfocallback acallback); methods getplacesinfo() starts an asynchronous request to determine whether or not a given uri has been visited; you must implement a callback to recei...
mozIJSSubScriptLoader
js/xpconnect/idl/mozijssubscriptloader.idlscriptable this
interface can be used from privileged javascript to load and run javascript code from the given url at runtime.
...to get this service, use: var mozijssubscriptloader = components.classes["@mozilla.org/moz/jssubscript-loader;1"] .getservice(components.
interfaces.mozijssubscriptloader); note: see components.utils.import for another way to import javascript code.
mozIPersonalDictionary
extensions/spellcheck/idl/mozipersonaldictionary.idlscriptable this
interface represents a personal dictionary.
... to access this service, use var personaldictionary = components.classes["@mozilla.org/spellchecker/personaldictionary;1"] .getservice(components.
interfaces.mozipersonaldictionary); method overview void addcorrection(in wstring word,in wstring correction, in wstring lang); void addword(in wstring word, in wstring lang); boolean check(in wstring word, in wstring lang); void endsession(); void getcorrection(in wstring word, [array, size_is(count)] out wstring words, out pruint32 count); void ignoreword(in wstring word); void load(); void removecorrection(in wstring word,in ...
mozIPlaceInfo
warning: this
interface is experimental and will change after gecko 2.0.
... toolkit/components/places/public/moziasynchistory.idlscriptable this
interface provides additional info for a places entry 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description frecency long read only: the frecency of the place.
mozIStorageAggregateFunction
this is an
interface that must be implemented by consumers.
... objects implementing this
interface can be registered with mozistorageconnection.createaggregatefunction().
mozIStorageFunction
this is an
interface that must be implemented by consumers.
...objects implementing this
interface can be registered with mozistorageconnection.createfunction().
mozIStorageStatement
storage/public/mozistoragestatement.idlscriptable this
interface lets you create and execute sql statements on a mozistorageconnection.
... inherits from: mozistoragevaluearray last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) for an introduction on how to use this
interface, see the storage overview document.
mozIStorageVacuumParticipant
/storage/public/mozistoragevacuumparticipant.idlscriptable components can implement this
interface to provide information to allow a database to be periodically vacuumed by the storage service.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) to create an instance of this
interface, use the category manger, with the category "vacuum-participant".
mozIStorageValueArray
the mozistoragevaluearray
interface obtains provides methods to obtain data from a given result.
... for an introduction on how to use this
interface, see the storage overview document.
mozITXTToHTMLConv
the mozitxttohtmlconv
interface is used to convert text into html format.
... last changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) inherits from nsistreamconverter implemented by @mozilla.org/txttohtmlconv;1 as a service: var ios = components.classes["@mozilla.org/txttohtmlconv;1"] .getservice(components.
interfaces.mozitxttohtmlconv); method overview unsigned long citeleveltxt(in wstring line, out unsigned long loglinestart) void findurlinplaintext(in wstring text, in long alength, in long apos, out long astartpos, out long aendpos) wstring scanhtml(in wstring text, in unsigned long whattodo) wstring scantxt(in wstring text, in unsigned long whattodo) constant...
nsIAccessibleHyperText
accessible/public/nsiaccessiblehypertext.idlscriptable this
interface is the main
interface to expose hyperlinks in a document, typically a text document, that are used to reference other documents.
... a typical implementation is to implement this
interface on the small text object such as a paragraph of text.
nsIAccessibleProvider
for that xbl binding, element should implement the
interface.
...ullistheader 0x00001025 xullistitem 0x0000100c xulmenubar 0x0000100d xulmenuitem 0x0000100e xulmenupopup 0x0000100f xulmenuseparator 0x00001010 xulpane 0x00001011 xulprogressmeter 0x00001012 xulscale 0x00001013 xulstatusbar 0x00001014 xulradiobutton 0x00001015 xulradiogroup 0x00001016 xultab 0x00001017 the single tab in a dialog or tabbrowser/editor
interface.
nsIAppShell
widget/public/nsiappshell.idlnot scriptable
interface for the native event system layer.
... this
interface is designed to be used on the main application thread only.
nsIApplicationUpdateService
toolkit/mozapps/update/nsiupdateservice.idlscriptable this
interface describes a global application service that handles performing background update checks.
...this information is most commonly used to update a user
interface that informs the user as to the status of an update.
nsIAsyncInputStream
if the stream implements nsiasyncinputstream, then the caller can use this
interface to request an asynchronous notification when the stream becomes readable or closed (via the asyncwait() method).
... while this
interface is almost exclusively used with non-blocking streams, it is not necessary that nsiinputstream.isnonblocking() return true.
nsIAsyncOutputStream
if the stream implements nsiasyncoutputstream, then the caller can use this
interface to request an asynchronous notification when the stream becomes writable or closed (via the asyncwait() method).
... while this
interface is almost exclusively used with non-blocking streams, it is not necessary that nsioutputstream.isnonblocking() return true.
nsIAsyncVerifyRedirectCallback
netwerk/base/public/nsiasyncverifyredirectcallback.idlscriptable implement this
interface to receive a callback that lets you know whether an asynchronous redirect was verified or vetoed.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface implements the callbacks passed to the nsichanneleventsink.asynconchannelredirect() method.
nsIAuthInformation
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the caller of nsiauthprompt2.promptusernameandpassword() or nsiauthprompt2.promptpasswordasync() provides an object implementing this
interface; the prompt implementation can then read the values here to prefill the dialog.
...the user
interface should show a domain field, prefilled with the domain attributes value.
nsIAuthPromptCallback
netwerk/base/public/nsiauthpromptcallback.idlscriptable
interface for callback methods for the asynchronous nsiauthprompt2 method.
...they must not call any method on this
interface before nsiauthprompt2.asyncpromptauth() returns.
nsIBidiKeyboard
widget/public/nsibidikeyboard.idlscriptable this
interface lets the application detect bidirectional writer users, and do some magic for them.
...in the gecko 1.9 branch, we are going to implement all the
interface, with xkb functions for xlib and gtk2 backends.
nsIBrowserSearchService
to access this service, use: var browsersearchservice = components.classes["@mozilla.org/browser/search-service;1"] .getservice(components.
interfaces.nsibrowsersearchservice); attempting to use any method or attribute of this
interface before init() has completed will force the service to fall back to a slower, synchronous, initialization.
... attempting to call any method of this
interface before init() has completed will force the service to fall back to a slower, synchronous, initialization.
nsIChannelEventSink
netwerk/base/public/nsichanneleventsink.idlscriptable implement this
interface to gain control over various channel events, such as redirects.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) channels will try to get this
interface from a channel's notificationcallbacks or, if not available there, from the loadgroup's notificationcallbacks.
nsIChannelPolicy
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface exists to allow the content policy mechanism to function properly during channel redirects.
... channels can be created with this
interface placed in the property bag and upon redirect, the
interface can be transferred from the old channel to the new channel.
nsIChromeRegistry
inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: @mozilla.org/chrome/chrome-registry;1 as a service: var chromeregistry = components.classes["@mozilla.org/chrome/chrome-registry;1"] .getservice(components.
interfaces.nsichromeregistry); method overview void canonify(in nsiuri achromeurl); obsolete since gecko 1.8 void checkfornewchrome(); nsiuri convertchromeurl(in nsiuri achromeurl); boolean wrappersenabled(in nsiuri auri); violates the xpcom
interface guidelines constants constant value description none 0 partial 1 ...
... violates the xpcom
interface guidelines wrappersenabled() returns whether xpcnativewrappers are enabled for the specified uri.
nsIClipboardCommands
webshell/public/nsiclipboardcommands.idlscriptable an
interface for embedding clients who wish to interact with the system-wide os clipboard.
...the webshell implements this
interface.
nsICommandController
content/xul/document/public/nsicontroller.idlscriptable an enhanced controller
interface that supports passing parameters to commands.
...to create an instance, use: var commandcontroller = components.classes["@mozilla.org/embedcomp/base-command-controller;1"] .createinstance(components.
interfaces.nsicommandcontroller); method overview void docommandwithparams(in string command, in nsicommandparams acommandparams); void getcommandstatewithparams( in string command, in nsicommandparams acommandparams); methods docommandwithparams() executes the specified command with a set of parameters contained in an nsicommandparams object.
nsIConsoleMessage
xpcom/base/nsiconsolemessage.idlscriptable this
interface is a base
interface for messages passed to or from the nsiconsoleservice.
... inherits from: nsisupports last changed in gecko 1.7 implementations may provide an object that can be query
interfaced, nsisupports.query
interface(), to provide more specific message information.
nsIControllers
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) this
interface is used to manage instances of the nsicontroller
interface.
...to create an instance, use: var controllers = components.classes["@mozilla.org/xul/xul-controllers;1"] .createinstance(components.
interfaces.nsicontrollers); method overview void appendcontroller(in nsicontroller controller); nsicontroller getcontrollerat(in unsigned long index); nsicontroller getcontrollerbyid(in unsigned long controllerid); unsigned long getcontrollercount(); nsicontroller getcontrollerforcommand(in string command); unsigned long getcontrollerid(in nsicontroller controller); void insertcontrollerat(...
nsICookieManager
an optional
interface for accessing or removing the cookies that are in the cookie list.
... last changed in gecko 1.7 inherits from: nsisupports this
interface is intended to be used as a service.
nsIDBChangeListener
the nsidbchangelistener
interface is used by components wanting to receive notification when the current database changes somehow.
...hdrchanged, aparentkey, aflags, ainstigator) {}, onparentchanged: function(akeychanged, oldparent, newparent, ainstigator) {}, onannouncergoingaway: function(ainstigator) {}, onreadchanged: function(ainstigator) {}, onjunkscorechanged: function(ainstigator) {}, onhdrpropertychanged: function(ahdrtochange, aprechange, astatus, ainstigator) {}, onevent: function(adb, aevent) {}, query
interface: function(aiid) { if (!aiid.equals(components.
interfaces.nsidbchangelistener) && !aiid.equals(components.
interfaces.nsisupports)) throw components.results.ns_error_no_
interface; return this; } }; and to attach it in thunderbird, we must call addlistener on a nsidbchangeannouncer, typically through a nsimsgdatabase.
nsIDBFolderInfo
add brief description of
interface ???
...as a service: var dbfolderinfo = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.nsidbfolderinfo); method overview long andflags(in long flags); void changeexpungedbytes(in long delta); void changenummessages(in long delta); void changenumunreadmessages(in long delta); boolean getbooleanproperty(in string propertyname, in boolean defaultvalue); void getcharacterset(out acstring charset, out boo...
nsIDOMClientRect
dom/
interfaces/base/nsidomclientrect.idlscriptable represents a rectangular box.
... see also cssom view module : the clientrect
interfacewd this object was renamed a few times: initial name was textrectangle, then clientrect, then domrect.
nsIDOMFileException
the nsidomfileexception
interface represents exceptions that can be raised by calls to the methods in the nsidomfile
interface.
... note: gecko's implementation of this
interface presently differs from the working draft of the file api specification.
nsIDOMFileList
the nsidomfilelist
interface contains a list of nsidomfile objects describing the files selected by the user for a "file" input field on a web form.
... this
interface implements the dom filelist object.
nsIDOMFileReader
the nsidomfilereader
interface provides a way to read data from a file specified by an nsidomfile.
...to create an instance, use: var filereader = components.classes["@mozilla.org/files/filereader;1"].createinstance(components.
interfaces.nsidomfilereader); this
interface implements the dom filereader object; see that documentation for details.
nsIDOMGeoPositionCoords
the nsidomgeopositioncoords
interface describes a geographical location.
... dom/
interfaces/geolocation/nsidomgeopositioncoords.idlscriptable please add a summary to this article.
nsIDOMGeoPositionError
the nsidomgeopositionerror
interface represents an error that occurred while performing geolocation operations.
... dom/
interfaces/geolocation/nsidomgeopositionerror.idlscriptable please add a summary to this article.
nsIDOMGeoPositionErrorCallback
the nsidomgeopositionerrorcallback
interface is used to represent an object that receives callback notifications when geolocation errors occur.
... dom/
interfaces/geolocation/nsidomgeopositionerrorcallback.idlscriptable please add a summary to this article.
nsIDOMGeoPositionOptions
the nsidomgeopositionoptions
interface is used to specify options for geolocation operations.
... dom/
interfaces/geolocation/nsidomgeopositionoptions.idlscriptable please add a summary to this article.
nsIDOMGlobalPropertyInitializer
dom/
interfaces/base/nsidomglobalpropertyinitializer.idlscriptable an initializer for global properties that lets them know about the window they're being attached to.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) an xpcom component implementing this
interface can be exposed to web content as a property on the window.
nsIDOMHTMLAudioElement
the nsidomhtmlaudioelement
interface is used to implement the html5 <audio> element.
... dom/
interfaces/html/nsidomhtmlaudioelement.idlscriptable please add a summary to this article.
nsIDOMHTMLMediaElement
dom/
interfaces/html/nsidomhtmlmediaelement.idlscriptable the basis for the nsidomhtmlaudioelement and nsidomhtmlvideoelement
interfaces, which in turn implement the <audio> and <video> html5 elements.
... 1.0 67 introduced gecko 1.9.1 inherits from: nsidomhtmlelement last changed in gecko 1.1 the nsidomhtmlmediaelement
interface implements the dom htmlmediaelement
interface.
nsIDOMHTMLSourceElement
the nsidomhtmlsourceelement
interface is the dom
interface to the source child of the audio and video media elements in html.
... dom/
interfaces/html/nsidomhtmlsourceelement.idlscriptable please add a summary to this article.
nsIDOMHTMLTimeRanges
the nsidomhtmltimeranges
interface represents a set of time ranges in media; it's primarily used by the nsidomhtmlmediaelement
interface, and implements the dom timeranges
interface.
... dom/
interfaces/html/nsidomhtmltimeranges.idlscriptable please add a summary to this article.
nsIDOMMozNetworkStats
dom/network/
interfaces/nsidomnetworkstats.idlscriptable
interface of the network stats object.
...to create an instance, use: var networkstatsmanager = components.classes["@mozilla.org/networkstats;1"] .createinstance(components.
interfaces.nsidomnetworkstats); attributes attribute type description connectiontype domstring connection type of the stats.
nsIDOMMozTouchEvent
the nsidommoztouchevent
interface describes a raw touch event.
... dom/
interfaces/events/nsidommoztouchevent.idlscriptable please add a summary to this article.
nsIDOMNSHTMLDocument
dom/
interfaces/html/nsidomnshtmldocument.idlscriptable this
interface defines methods and properties supported by gecko on the document object that are not part of dom level 2.
... implemented by classes that implement this
interface: nshtmldocument class: content/html/document/src/nshtmldocument.h ...
nsIDOMOfflineResourceList
the nsidomofflineresourcelist
interface provides access to the application cache that allows web content's resources to be cached locally for use while offline.
... dom/
interfaces/offline/nsidomofflineresourcelist.idlscriptable please add a summary to this article.
nsIDOMOrientationEvent
the nsidomorientationevent
interface describes the event that can be delivered to dom windows, providing information from the device's accelerometer, allowing code to determine the orientation of the device.
... dom/
interfaces/events/nsidomorientationevent.idlscriptable please add a summary to this article.
nsIDOMParser
to create a domparser when the constructor is not available (e.g., from a js xpcom component, a js module, or an xpcshell test), use: var parser = components.classes["@mozilla.org/xmlextras/domparser;1"] .createinstance(components.
interfaces.nsidomparser); // optionally, call parser.init(principal, documenturi, baseuri); principals, document and base uri note: this section covers changes introduced to domparser in gecko 1.9.
...examples within the context of a window: var parser = new domparser(); var doc = parser.parsefromstring(astr, "application/xml"); outside of a window (e.g., a js xpcom component, a js module, or an xpcshell test): var parser = components.classes["@mozilla.org/xmlextras/domparser;1"] .createinstance(components.
interfaces.nsidomparser); var doc = parser.parsefromstring(astr, "application/xml"); using components.constructor(): const domparser = new components.constructor("@mozilla.org/xmlextras/domparser;1", "nsidomparser"); var parser = new domparser(); parser.init(principal, documenturi, baseuri); var doc = parser.parsefromstring(astr, "application/xml"); ...
nsIDOMSimpleGestureEvent
dom/
interfaces/events/nsidomsimplegestureevent.idlscriptable this
interface describes a mouse or trackpad gesture event.
... 1.0 66 introduced gecko 1.9.1 inherits from: nsidommouseevent last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) the nsidomsimplegestureevent
interface is the datatype for all mozilla-specific simple gesture events in the document object model.
nsIDOMStorageManager
dom/
interfaces/storage/nsidomstoragemanager.idlscriptable this
interface provides methods for managing data stored in the offline apps cache.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by @mozilla.org/dom/storagemanager;1 as a service: var domstoragemanager = components.classes["@mozilla.org/dom/storagemanager;1"] .getservice(components.
interfaces.nsidomstoragemanager); method overview void clearofflineapps(); nsidomstorage getlocalstorageforprincipal(in nsiprincipal aprincipal, in domstring adocumenturi); long getusage(in astring aownerdomain); methods clearofflineapps() clears keys owned by offline applications.
nsIDOMXPathEvaluator
dom/
interfaces/xpath/nsidomxpathevaluator.idlscriptable this
interface is used to evaluate xpath expressions against a dom node.
...to create an instance, use: var domxpathevaluator = components.classes["@mozilla.org/dom/xpath-evaluator;1"] .createinstance(components.
interfaces.nsidomxpathevaluator); method overview nsidomxpathexpression createexpression(in domstring expression, in nsidomxpathnsresolver resolver) nsidomxpathnsresolver creatensresolver(in nsidomnode noderesolver); nsisupports evaluate(in domstring expression, in nsidomnode contextnode, in nsidomxpathnsresolver resolver, in unsigned short type, in nsisupports result) methods createexpression() creates an nsidomxpathexpression which can then be used for (repeated) evaluations.
nsIDeviceMotion
xpcom/system/nsidevicemotion.idlscriptable this
interface is used to implement accelerometer support.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) note: this
interface was named nsidevicemotion prior to gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3).
nsIDeviceMotionData
xpcom/system/nsidevicemotion.idlscriptable this
interface provides information about device motion.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) note: this
interface was named nsidevicemotiondata prior to gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3).
nsIDirectoryService
xpcom/io/nsidirectoryservice.idlscriptable this
interface provides methods to initialize and configure a directory service instance.
... the xpcom directory service implements this
interface to provide support for a variety of well-known file and directory locations.
nsIDirectoryServiceProvider
xpcom/io/nsidirectoryservice.idlscriptable this
interface is used by the directory service to get file locations.
... __definegetter__("currdir", function getcurrdir() { return components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.
interfaces.nsidirectoryserviceprovider) .getfile("curworkd",{}).path; }); test it with to see the magic happen.
nsIDocumentLoader
uriloader/base/nsidocumentloader.idlscriptable this
interface responsible for tracking groups of loads that belong together (images, external scripts, and so on.) and subdocuments (iframe, frame, and so on.).
...to create an instance, use: var documentloader = components.classes["@mozilla.org/docloaderservice;1"] .createinstance(components.
interfaces.nsidocumentloader); method overview void clearparentdocloader(); obsolete since gecko 1.8 void createdocumentloader(out nsidocumentloader aninstance); obsolete since gecko 1.8 void destroy(); obsolete since gecko 1.8 void fireonlocationchange(in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri auri); obsolete since gecko 1.8 void fireonstatuschange(in nsiwe...
nsIDownload
this
interface is deprecated as of firefox 26.
... toolkit/components/downloads/public/nsidownload.idlscriptable this
interface describes a download object.
nsIDownloadHistory
docshell/base/nsidownloadhistory.idlscriptable this
interface can be used to add a download to history.
... there is a separate
interface specifically for downloads in case embedders choose to track downloads differently from other types of history.
nsIEnumerator
nsienumerator.idl warning: this is a broken
interface; don't use it unless you have to.
... the
interface commonly used for enumerators is nsisimpleenumerator.
nsIEnvironment
getservice(components.
interfaces.nsienvironment); method overview void set(in astring aname, in astring avalue); astring get(in astring aname); boolean exists(in astring aname); methods set() set the value of an environment variable.
... var nsienvironment = components.classes["@mozilla.org/process/environment;1"].getservice(components.
interfaces.nsienvironment); var pathtoprogramfiles = nsienvironment.get("programfiles"); //for me this returns "c:\program files" ...
nsIFaviconService
to use this service, use: var faviconservice = components.classes["@mozilla.org/browser/favicon-service;1"] .getservice(components.
interfaces.nsifaviconservice); method overview void addfailedfavicon(in nsiuri afaviconuri); void expireallfavicons(); void getfavicondata(in nsiuri afaviconuri, out autf8string amimetype, [optional] out unsigned long adatalen, [array,retval,size_is(adatalen)] out octet adata); obsolete since gecko 22.0 astring getfavicondataasdataurl(in nsiuri afaviconuri); obsolete ...
... example var ioservice = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var pageuri = ioservice.newuri("http://www.mozilla.org/", null, null); var faviconuri = ioservice.newuri("http://www.mozilla.org/favicon.ico", null, null); faviconservice.setandloadfaviconforpage(pageuri, faviconuri, false); setfavicondata() obsolete since gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamonkey 2.19) note: this method was removed in g...
nsIFeedContainer
toolkit/components/feeds/public/nsifeedcontainer.idlscriptable this
interface provides standard fields used by both feeds (nsifeed) and feed entries (nsifeedentry) 1.0 66 introduced gecko 1.8 inherits from: nsifeedelementbase last changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) method overview void normalize(); attributes attribute type description authors nsiarray an array of nsifeedperson objects describing the authors of the feed or entry.
...note: the returned array will contain nsifeedcategory objects, except that
interface has not been implemented yet.
nsIFeedElementBase
toolkit/components/feeds/public/nsifeedelementbase.idlscriptable this
interface is a base
interface from which several of the other feed access
interfaces derive.
...most derived
interfaces provide convenience accessors for their standard fields, so this is only useful when looking for nonstandard fields.
nsIFeedEntry
toolkit/components/feeds/public/nsifeedentry.idlscriptable this
interface describes a single entry in an rss or atom news feed, providing attributes allowing access to the entry's data.
...note, that the related updated attribute is available from the nsifeedcontainer
interface.
nsIFocusManager
dom/
interfaces/base/nsifocusmanager.idlscriptable please add a summary to this article.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamonkey 2.2) implemented by: @mozilla.org/focus-manager;1 as a service: var focusmanager = components.classes["@mozilla.org/focus-manager;1"] .getservice(components.
interfaces.nsifocusmanager); method overview void clearfocus(in nsidomwindow awindow); void contentremoved(in nsidocument adocument, in nsicontent aelement); native code only!
nsIFrameMessageListener
content/base/public/nsimessagemanager.idlscriptable implement this
interface in a remote frame handling process to receive messages from the browser process.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface is used when implementing out-of-process handling of frames; the process handling a frame should implement this
interface in order to receive messages.
nsIGeolocationProvider
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) this must be called on the main thread
interface provides location information to the nsgeolocator via the nsidomgeolocationcallback
interface.
...the nsigeolocationprovider
interface provides information about the current users location to interested parties via nsigeolocationupdate.
nsIHttpActivityDistributor
netwerk/protocol/http/nsihttpactivityobserver.idlscriptable this
interface is used to register and unregister clients that wish to observe http transport activity.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsihttpactivityobserver last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: mozilla.org/network/http-activity-distributor;1 as a service: var httpactivitydistributor = components.classes["@mozilla.org/network/http-activity-distributor;1"] .getservice(components.
interfaces.nsihttpactivitydistributor); method overview void addobserver(in nsihttpactivityobserver aobserver); void removeobserver(in nsihttpactivityobserver aobserver); methods addobserver() begins delivery of notifications of http transport activity.
nsIHttpActivityObserver
netwerk/protocol/http/nsihttpactivityobserver.idlscriptable this
interface provides a way for http transport activities to be reported to observers.
...ecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void observeactivity(in nsisupports ahttpchannel, in pruint32 aactivitytype, in pruint32 aactivitysubtype, in prtime atimestamp, in pruint64 aextrasizedata, in acstring aextrastringdata); attributes attribute type description isactive boolean true when the
interface is active and should observe http activity, otherwise false.
nsIHttpChannel
netwerk/protocol/http/nsihttpchannel.idlscriptable this
interface allows for the modification of http request parameters and the inspection of the resulting http response status and headers when they become available.
... inherits from: nsichannel last changed in gecko 1.3 to create an http channel, use nsiioservice with a http uri, for example: var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice); var ch = ios.newchannel("https://www.example.com/", null, null); method overview void getoriginalresponseheader(in acstring aheader, in nsihttpheadervisitor avisitor); acstring getrequestheader(in acstring aheader); acstring getresponseheader(in acstring header); boolean isnocacheresponse(); boolean isnostoreresponse(); void redirectto(in nsiuri anewuri); void setemptyrequestheader(in acstring aheader); void setreferrerwithpolicy(in nsiuri referrer, in unsig...
nsIHttpChannelInternal
netwerk/protocol/http/nsihttpchannelinternal.idlscriptable an internal
interface for http channels.
... using features exposed by this
interface is not recommended, as it will change in unpredictable ways.
nsIIDNService
netwerk/dns/nsiidnservice.idlscriptable this
interface provides support for internationalized domain names, including methods for manipulating idn hostnames according to ietf specification.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/network/idn-service;1 as a service: var idnservice = components.classes["@mozilla.org/network/idn-service;1"] .getservice(components.
interfaces.nsiidnservice); method overview autf8string convertacetoutf8(in acstring input); autf8string converttodisplayidn(in autf8string input, out boolean isascii); acstring convertutf8toace(in autf8string input); boolean isace(in acstring input); autf8string normalize(in autf8string input); methods convertacetoutf8() converts an ace (ascii compatible encoding) hostname into unicode format, returning a utf-8 format string.
nsIInProcessContentFrameMessageManager
add brief description of
interface here!
... 1.0 66 introduced gecko 2.0 inherits from: nsicontentframemessagemanager last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsicontent getownercontent(); violates the xpcom
interface guidelines methods violates the xpcom
interface guidelines getownercontent() nsicontent getownercontent(); parameters none.
nsIInstallLocation
toolkit/mozapps/extensions/public/nsiextensionmanager.idlscriptable
interface representing a location where extensions, themes and so on are installed.
...you can get the install location of a particular add-on using nsiextensionmanager
interface: var il = components.classes["@mozilla.org/extensions/manager;1"] .getservice(components.
interfaces.nsiextensionmanager) .getinstalllocation("add-on id") method overview astring getidforlocation(in nsifile file); nsifile getitemfile(in astring id, in astring path); nsifile getitemlocation(in astring id); nsifile getstagefile(in astring id); boole...
nsIJumpListItem
widget/public/nsijumplistitem.idlscriptable implements windows 7 taskbar jump list item
interfaces.
...to add types, create the specific
interface here, add an implementation class to winjumplistitem, and add support to addlistbuild and removed items processing.
nsILocaleService
intl/locale/idl/nsilocaleservice.idlscriptable the locale service
interface.
...to use this service, use: var localeservice = components.classes["@mozilla.org/intl/nslocaleservice;1"] .getservice(components.
interfaces.nsilocaleservice); method overview nsilocale getapplicationlocale(); astring getlocalecomponentforuseragent(); nsilocale getlocalefromacceptlanguage(in string acceptlanguage); nsilocale getsystemlocale(); nsilocale newlocale(in astring alocale); nsilocale newlocaleobject(in nsilocaledefinition localedefinition); obsolete since gecko 1.9 methods getapplicationlocale() gets the user preference for loca...
Using nsILoginManager
getting nsiloginmanager to get a component implementing nsiloginmanager, use the following: var passwordmanager = components.classes["@mozilla.org/login-manager;1"].getservice( components.
interfaces.nsiloginmanager ); most login manager functions take an nsilogininfo object as a parameter.
...defining an nsilogininfo object is simple: var nslogininfo = new components.constructor( "@mozilla.org/login-manager/logininfo;1", components.
interfaces.nsilogininfo, "init" ); var logininfo = new nslogininfo( hostname, formsubmiturl, httprealm, username, password, usernamefield, passwordfield ); examples creating a login for a web page var formlogininfo = new nslogininfo( 'http://www.example.com', 'http://login.example.com', null, 'joe', 'secret123', 'uname', 'pword' ); this login would correspond to a html form such as: <form...
nsILoginManager
toolkit/components/passwordmgr/public/nsiloginmanager.idlscriptable used to
interface with the built-in password manager 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) replaces nsipasswordmanager which was used in older versions of gecko.
...to create an instance, use: var loginmanager = components.classes["@mozilla.org/login-manager;1"] .getservice(components.
interfaces.nsiloginmanager); method overview void addlogin(in nsilogininfo alogin); nsiautocompleteresult autocompletesearch(in astring asearchstring, in nsiautocompleteresult apreviousresult, in nsidomhtmlinputelement aelement); unsigned long countlogins(in astring ahostname, in astring aactionurl, in astring ahttprealm); boolean fillform(in nsidomhtmlformelement aform); void findlogins(out unsigned long count, in astring ahostname, in astring aactionurl, in astring ahttprealm, [retval, array, size_is(count)] out nsilogininfo logins); void getalldisabledh...
nsILoginManagerPrompter
to call this service, use: var loginmanagerprompter = components.classes["@mozilla.org/login-manager/prompter;1"] .getservice(components.
interfaces.nsiloginmanagerprompter); method overview void init(in nsidomwindow awindow); void prompttochangepassword(in nsilogininfo aoldlogin, in nsilogininfo anewlogin); void prompttochangepasswordwithusernames([array, size_is(count)] in nsilogininfo logins, in pruint32 count, in nsilogininfo anewlogin); void prompttosavepassword(in nsilogininfo alogin); metho...
...must be called before using other
interfaces.
nsIMIMEInputStream
to create an instance, use: var mimeinputstream = components.classes["@mozilla.org/network/mime-input-stream;1"] .createinstance(components.
interfaces.nsimimeinputstream); method overview void addheader(in string name, in string value); void setdata(in nsiinputstream stream); attributes attribute type description addcontentlength boolean when true a "content-length" header is automatically added to the stream.
... example var postdata = components.classes["@mozilla.org/network/mime-input-stream;1"] .createinstance(components.
interfaces.nsimimeinputstream); postdata.addheader("content-type", "application/x-www-form-urlencoded"); postdata.addcontentlength = true; postdata.setdata(stringstream); ...
nsIMessageListener
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisupports this
interface is used to receive messages sent using the nsimessagebroadcaster, nsimessagesender, or nsisyncmessagesender
interfaces.
... listeners are attached using the nsimessagelistenermanager
interface.
nsIMessageListenerManager
dom/base/nsimessagemanager.idlscriptable this
interface enables clients to listen for messages sent using the nsimessagebroadcaster, nsimessagesender, or nsisyncmessagesender
interfaces.
...to access this service, use: var globalmm = components.classes["@mozilla.org/globalmessagemanager;1"] .getservice(components.
interfaces.nsimessagelistenermanager); method overview void addmessagelistener(in astring messagename, in nsimessagelistener listener, [optional] in boolean listenwhenclosed) void removemessagelistener(in astring messagename, in nsimessagelistener listener); void addweakmessagelistener(in astring messagename, ...
nsIMicrosummaryService
toolkit/components/places/public/nsimicrosummaryservice.idlscriptable this
interface provides methods for managing installed microsummaries, and the bookmarks they apply to.
...solete gecko 6.0 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) implemented by: @mozilla.org/microsummary/service;1 as a service: var microsummaryservice = components.classes["@mozilla.org/microsummary/service;1"] .getservice(components.
interfaces.nsimicrosummaryservice); method overview void addgenerator(in nsiuri generatoruri); nsimicrosummary createmicrosummary(in nsiuri pageuri, in nsiuri generatoruri); nsisimpleenumerator getbookmarks(); nsimicrosummarygenerator getgenerator(in nsiuri generatoruri); nsimicrosummaryset getmicrosummaries(in nsiuri pageuri, in long long bookmarkid); ...
nsIMimeHeaders
add brief description of
interface ???
...as a service: var mimeheaders = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.nsimimeheaders); method overview string extractheader([const] in string headername, in boolean getallofthem); void initialize([const] in string allheaders, in long allheaderssize); attributes attribute type description allheaders string read only.
nsIMsgCompFields
« xpcom api reference summary the nsimsgcompfields
interface provides properties for an composition of an outgoing message.
...runichar * recipients, in prbool emailaddressonly ); void convertbodytoplaintext ( ); attachment handling methods void addattachment ( in nsimsgattachment attachment ); void removeattachment ( in nsimsgattachment attachment ); void removeattachments ( ); header methods void setheader(char* name, char* value); references this
interface is the type of the following properties: nsimsgcompose.compfields, nsimsgcomposeparams.composefields this
interface is passed as an argument to the following methods: nsimsgcomposesecure.begincryptoencapsulation, nsimsgcomposesecure.requirescryptoencapsulation, nsimsgsend.createandsendmessage, nsimsgsend.sendmessagefile, nsismimejshelper.getnocertaddresses, nsismimejshelper.getrecipientcertsin...
nsIMsgDBHdr
the nsimsgdbhdr
interface describes headers for mail messages.
... inherits from: nsisupports this
interface is usually given to you in return to a query from the message database.
nsIMsgDatabase
the nsimsgdatabase
interface is an abstract
interface used to access the mail database backend.
... void startbatch(); endbatch() void endbatch(); getofflineopforkey() offline operations - we could move these into an offline operation
interface but it would have to be in nsmaildatabase, since local folders can be move destinations.
nsIMsgFolder
the nsimsgfolder
interface is used to interact with folders in thunderbird.
... messages nsisimpleenumerator readonly: returns a list of components.
interfaces.nsimsgdbhdr.
nsIMsgHeaderParser
add brief description of
interface ???
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) to create an instance, use: var msgheaderparser = components.classes["@mozilla.org/messenger/headerparser;1"] .createinstance(components.
interfaces.nsimsgheaderparser); method overview string extractheaderaddressmailboxes(in string line); void extractheaderaddressname(in string line, out string name); void extractheaderaddressnames(in string line, out string usernames); astring makefulladdress(in astring aname, in astring aaddress); string makefulladdressstring(in string aname, in string aaddress); wstring makefulladdresswstring(in wstring name, in wstring addr); obsolete since gecko 1.9 void parseheaderaddresses(in string line, out string ...
nsIMsgSendLater
the nsimsgsendlater
interface provides functions for managing the unsent folder of a messaging account.
...to create an instance, use var msgsendlater = components.classes["@mozilla.org/messengercompose/sendlater;1"] .getservice(components.
interfaces.nsimsgsendlater); method overview void sendunsentmessages(in nsimsgidentity identity); void removelistener(in nsimsgsendlaterlistener listener); void addlistener(in nsimsgsendlaterlistener listener); nsimsgfolder getunsentmessagesfolder](in nsimsgidentity identity); attributes attribute type description msgwindow nsimsgwindow methods sendunsentmessages() sends all unsent messages for an identity.
nsIMutableArray
xpcom/ds/nsimutablearray.idlscriptable this
interface is a subclass of nsiarray that provides arrays that are mutable; that is, they can be altered programmatically.
... inherits from: nsiarray last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) consumers of nsiarray should not query
interface to nsimutablearray unless they own the array.
nsINavHistoryFullVisitResultNode
toolkit/components/places/public/nsinavhistoryservice.idlscriptable this
interface describes a result from a result_type_full_visit query on the places service.
... 1.0 66 introduced gecko 1.9 inherits from: nsinavhistoryvisitresultnode last changed in gecko 1.9 (firefox 3) the information returned in this
interface is not commonly used, hence its separation into a separate query type for efficiency.
nsINavHistoryResultObserver
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1), this
interface replaced the older nsinavhistoryresultviewer
interface, which only allowed one client at a time.
...this is especially useful when updating user
interfaces, to avoid flicker or continuous selection changes, which may result in performance degradation (for example, if updating a view for each update).
nsINavHistoryVisitResultNode
toolkit/components/places/public/nsinavhistoryservice.idlscriptable this
interface describes a result from a result_type_visit query on the places service.
...this
interface provides the session id so that it's possible to group items from the same session together.
nsINetworkLinkService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: @mozilla.org/network/network-link-service;1 as a service: var networklinkservice = components.classes["@mozilla.org/network/network-link-service;1"] .getservice(components.
interfaces.nsinetworklinkservice); attributes attribute type description islinkup boolean this is set to true when the system is believed to have a usable network connection.
...for example, the link is down during dhcp configuration (unless there is another usable
interface already configured).
nsIObserver
xpcom/ds/nsiobserver.idlscriptable this
interface is implemented by an object that wishes to observe notifications.
... }, register: function() { var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); observerservice.addobserver(this, "mytopicid", false); }, unregister: function() { var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.
interfaces.nsiobserverservice); observerservice.removeobserver(this, "mytopicid"); } } instantiation - this should be fired once you're ready to st...
nsIPasswordManager
netwerk/base/public/nsipasswordmanager.idlscriptable used to
interface with the built-in password manager 66 introduced gecko 1.0 deprecated gecko 1.9 inherits from: nsisupports last changed in gecko 1.0 see using nsipasswordmanager for examples.
...to create an instance, use: var passwordmanager = components.classes["@mozilla.org/passwordmanager;1"] .getservice(components.
interfaces.nsipasswordmanager); method overview void adduser(in autf8string ahost, in astring auser, in astring apassword); void removeuser(in autf8string ahost, in astring auser); void addreject(in autf8string ahost); void removereject(in autf8string ahost); attributes attribute type description enumerator nsisimpleenumerator readonly: an enumeration of the stored usernames and passwords as nsipassword objects.
nsIPlacesView
the nsiplacesview
interface provides a view-agnostic way to access information about a places view.
...views do this, and other things, by implementing the nsiplacesview
interface.
nsIPrefBranch2
in gecko 13 this
interface was merged into the nsiprefbranch
interface.
...the object must implement the nsisupportsweakreference
interface or this will fail.
nsIProfile
this
interface was superseded by the nsitoolkitprofileservice
interface in gecko 1.8.1.
...to get access to the profile manager service: var profile = components.classes["@mozilla.org/profile/manager;1"] .getservice(components.
interfaces.nsiprofile); note: this
interface was used by seamonkey up through seamonkey 1.1 versions, which were based off gecko 1.8.1.
nsIPropertyBag
xpcom/ds/nsipropertybag.idlscriptable this
interface is used to store a set of properties.
...to do this use nsipropertybag: services.sysinfo.getproperty("version"); //output 5.1 services.sysinfo.getproperty("name"); //output windows_nt services.sysinfo.getproperty("arch"); //output x86 services.sysinfo.getproperty("haswindowstouch
interface"); //outputs false or true if windows touch is there consult the uxp repo (//github.com/realityripple/uxp/blob/master/xpcom/base/nssysteminfo.cpp) for the properties supported.
nsIPushMessage
dom/
interfaces/push/nsipushnotifier.idlscriptable a push message sent to a system subscription.
... this
interface resembles pushmessagedata from the push api.
nsISHistoryListener
docshell/shistory/public/nsishistorylistener.idlscriptable an
interface you can implement to receive notifications about activities that occur in session history, and optionally cancel them.
...see the nsiwebnavigation
interface's load constants.
nsISSLErrorListener
method overview boolean notifysslerror(in nsi
interfacerequestor socketinfo, in print32 error, in autf8string targetsite); methods notifysslerror() called in case of an ssl error.
... boolean notifysslerror( in nsi
interfacerequestor socketinfo, in print32 error, in autf8string targetsite ); parameters socketinfo a network communication context that can be used to obtain more information about the active connection.
nsISSLSocketControl
netwerk/socket/nsisslsocketcontrol.idlscriptable this
interface establishes tls and ssl connections.
... inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void proxystartssl(); void starttls(); attributes attribute type description forcehandshake boolean obsolete since gecko 1.9 notificationcallbacks nsi
interfacerequestor methods proxystartssl() starts an ssl proxy connection.
nsIScreenManager
widget/public/nsiscreenmanager.idlscriptable this
interface lets you get information about the display screen (or screens) attached to the user's computer.
... 66 introduced gecko 0.9.5 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/gfx/screenmanager;1 as a service: var screenmanager = components.classes["@mozilla.org/gfx/screenmanager;1"] .getservice(components.
interfaces.nsiscreenmanager); method overview nsiscreen screenfornativewidget( in voidptr nativewidget ); native code only!
nsIScriptableUnicodeConverter
intl/uconv/idl/nsiscriptableuconv.idlscriptable this
interface is a unicode encoder for use by scripts.
...to create an instance, use: var converter = components.classes["@mozilla.org/intl/scriptableunicodeconverter"] .createinstance(components.
interfaces.nsiscriptableunicodeconverter); method overview acstring convertfromunicode(in astring asrc); acstring finish(); astring converttounicode(in acstring asrc); astring convertfrombytearray([const,array,size_is(acount)] in octet adata, in unsigned long acount); void converttobytearray(in astring astring,[optional] out unsigned long alen,[array, size_is(alen),retval] out octet adata); nsiinputstream converttoinputstrea...
nsISmsDatabaseService
nsismsdatabaseservice dom/sms/
interfaces/nsismsdatabaseservice.idlscriptable used to store and manage sms text messages for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsdatabaseservice;1.
... to create an instance, use: var smsservice = components.classes["@mozilla.org/sms/smsdatabaseservice;1"] .createinstance(components.
interfaces.nsismsdatabaseservice); method overview long savereceivedmessage(in domstring asender, in domstring abody, in unsigned long long adate); long savesentmessage(in domstring areceiver, in domstring abody, in unsigned long long adate); void getmessage(in long messageid, in long requestid, [optional] in unsigned long long processid); void deletemessage(in long messageid, in long requestid, [optional] in unsigned long long processid); void createmessagelist(in nsidommozsmsfilter filter, in boolean reverse, in long requestid, [optional] in unsigned long long processid); void getnextmessageinlist(in long listid, in long requestid, [op...
nsISmsRequestManager
nsismsrequestmanager dom/sms/
interfaces/nsismsrequestmanager.idlscriptable used to manage sms related requests and notifications for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsrequestmanager;1.
... to create an instance, use: var smsrequestmanager = components.classes["@mozilla.org/sms/smsrequestmanager;1"] .createinstance(components.
interfaces.nsismsrequestmanager); method overview long addrequest(in nsidommozsmsrequest arequest); long createrequest(in nsidommozsmsmanager amanager, out nsidommozsmsrequest arequest); void notifycreatemessagelist(in long arequestid, in long alistid, in nsidommozsmsmessage amessage); void notifygetsmsfailed(in long arequestid, in long aerror); void notifygotnextmessage(in long arequestid, in nsidommozsmsmessage amessage); void notifygotsms(in long arequestid, in nsidommozsmsmessage amessage); void notifymarkedmessageread(in long arequestid, in bool aread); void notifymarkmessagereadfailed(in long arequestid, in long ae...
nsISmsService
dom/sms/
interfaces/nsismsservice.idlscriptable used to send sms text messages for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsservice;1.
... to create an instance, use: var smsservice = components.classes["@mozilla.org/sms/smsservice;1"] .createinstance(components.
interfaces.nsismsservice); method overview [implicit_jscontext] nsidommozsmsmessage createsmsmessage(in long id, in domstring delivery, in domstring sender, in domstring receiver, in domstring body, in jsval timestamp, in bool read ); unsigned short getnumberofmessagesfortext(in domstring text); boolean hassupport(); void send(in domstring number, in domstring message, in long requestid, [optional] in unsigned long long processid); methods createsmsmessage() [implicit_jscontext] nsidommozsmsmessage createsmsmessage( in long id, in domstring delivery, in domstring sender, in domstring receiver, in doms...
nsIStreamConverter
netwerk/streamconv/public/nsistreamconverter.idlscriptable provides an
interface to implement when you have code that converts data from one type to another.
...you could implement this
interface to allow everyone else to use your conversion logic using a standard api.
nsIStreamListener
netwerk/base/public/nsistreamlistener.idlscriptable this
interface is used to listen to data being received on a stream.
... inherits from: nsirequestobserver last changed in gecko 1.0 classes which want to consume data from a nsichannel need to implement this
interface.
nsIStringBundle
intl/strres/nsistringbundle.idlscriptable this
interface provides functions for retrieving both formatted and unformatted strings from a properties file.
... inherits from: nsisupports last changed in gecko 1.7 this
interface is used by xul:stringbundle to retrieve strings.
nsIStringBundleOverride
intl/strres/nsistringbundleoverride.idlscriptable provides the string bundle override service; this
interface is an implementation detail.
...to create an instance, use: var stringbundleservice = components.classes["@mozilla.org/intl/stringbundle/text-override;1"] .getservice(components.
interfaces.nsistringbundleoverride); note: you should never need to use this service directly.
nsITaskbarPreviewButton
widget/public/nsitaskbarpreviewbutton.idlscriptable this
interface is used on microsoft windows to get access to a window preview's toolbar button properties.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can't directly instantiate this
interface.
nsITextInputProcessorNotification
dom/
interfaces/base/nsitextinputprocessorcallback.idlscriptable this
interface of a request or notification to ime 1.0 66 introduced gecko 38 inherits from: nsisupports last changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) this
interface tells details of a request or notification to ime.
... when gecko supports new notification to ime, this
interface may have some new attributes.
nsIThread
this
interface provides a high-level abstraction for an operating system thread.
... to create a thread, use the nsithreadmanager
interface.
nsIThreadObserver
the nsithreadobserver
interface may be implemented to let an observer implement a layered event queue.
... the implementation of this
interface must be thread safe.
nsIToolkitProfile
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) you should not create these objects yourself; to obtain them, use the nsitoolkitprofileservice
interface to create and obtain them.
...example: var profile = profilelist.getnext().query
interface(ci.nsitoolkitprofile); var locker = profile.lock({}); remove() removes the profile from the registry of profiles.
nsIToolkitProfileService
to access the service, you can use the following code: var toolkitprofileservice = components.classes["@mozilla.org/toolkit/profile-service;1"] .createinstance(components.
interfaces.nsitoolkitprofileservice); prior to gecko 1.9.1 only the built-in profile manager was able to access the toolkit profile service.
... profiles nsisimpleenumerator an enumerator providing access to the list of profiles; each profile is an nsitoolkitprofile object (though you must first call aprofile.query
interface(components.
interfaces.nsitoolkitprofile) to get access to its attributes and methods).
nsITransferable
to create an instance, use: var transferable = components.classes["@mozilla.org/widget/transferable;1"] .createinstance(components.
interfaces.nsitransferable); it's important to note that a flavor, which specifies a type of data the transferable supports, is represented by a null-terminated string indicating the mime type of the format supported by the flavor.
... to get the appropriate load context in javascript callers, one needs to get to the document that the transferable corresponds to, and then get the load context from the document like this: var loadcontext = doc.defaultview.query
interface(ci.nsi
interfacerequestor) .get
interface(ci.nsiwebnavigation) .query
interface(ci.nsiloadcontext); in c++ callers, if you have the corresponding document, you can just call nsidocument.getloadcontext() to get to the load context object.
nsITreeBoxObject
the nsitreeboxobject
interface contains information about the size and layout of a tree.
... last changed in gecko 1.9 (firefox 3) inherits from: nsisupports to get the treeboxobject for a tree: let boxobject = tree.boxobject; boxobject.query
interface("components.
interfaces.nsitreeboxobject"); or simply: let boxobject = tree.treeboxobject; method overview long getfirstvisiblerow(); long getlastvisiblerow(); long getpagelength(); void ensurerowisvisible(in long index); void ensurecellisvisible(in long row, in nsitreecolumn col); void scrolltorow(in long index); void scrollbylines(in long numlines); void scrollbypages(in long numpages); vo...
nsITreeView
layout/xul/base/src/tree/public/nsitreeview.idlscriptable this
interface is used by the tree widget to get information about what and how to display a tree widget.
...to add properties for a particular row, you must use the nsiatomservice to create an nsiatom string, which can then be appended to the array to alter the style (see also styling a tree) getrowproperties: function(index, properties) { var atomservice = components.classes["@mozilla.org/atom-service;1"].getservice(components.
interfaces.nsiatomservice); var atom = atomservice.getatom("dummy"); properties.appendelement(atom); } hasnextsibling() used to determine if the row at rowindex has a nextsibling that occurs after the index specified by afterindex.
nsIURIFixup
docshell/base/nsiurifixup.idlscriptable
interface implemented by objects capable of fixing up strings into uris.
... inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/docshell/urifixup;1 as a service: var urifixup = components.classes["@mozilla.org/docshell/urifixup;1"] .createinstance(components.
interfaces.nsiurifixup); method overview nsiuri createexposableuri(in nsiuri auri); nsiuri createfixupuri(in autf8string auritext, in unsigned long afixupflags); nsiuri keywordtouri(in autf8string akeyword); nsiurifixupinfo getfixupuriinfo(in autf8string auritext, in unsigned long afixupflags); constants constant value description fixup_flag_none 0 no fixup flags.
nsIURL
netwerk/base/public/nsiurl.idlscriptable this
interface provides convenience methods that further break down the path portion of nsiuri.
.../host/directory/filebasename.fileextension;param \ \ / \ ----------------------- \ | / \ filename / ---------------------------- | filepath you can get a nsiurl from an nsiuri, using the query
interface() method: var myuri = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.
interfaces.nsiioservice) .newuri("http://developer.mozilla.org", null, null); try { var myurl = myuri.query
interface(components.
interfaces.nsiurl); } catch(e) { // the uri is not an url } or using instanceof: if (myuri instanceof components.interfac...
nsIUpdateChecker
toolkit/mozapps/update/nsiupdateservice.idlscriptable this
interface describes an object that knows how to check for software updates.
...this is used by any user
interface that offers the user the opportunity to check for updates immediately.
nsIUploadChannel
netwerk/base/public/nsiuploadchannel.idlscriptable a channel may optionally implement this
interface if it supports the notion of uploading a data stream.
...most implementations of this
interface require that the stream: implement threadsafe addref and release implement nsiinputstream.readsegments() implement nsiseekablestream.seek().
nsIVersionComparator
xpcom/base/nsiversioncomparator.idlscriptable this
interface is used to compare version strings.
...the service can be accessed directly via services.vc after loading services.jsm or with the following code: var versioncomparator = components.classes["@mozilla.org/xpcom/version-comparator;1"] .getservice(components.
interfaces.nsiversioncomparator); method overview long compare(in acstring a, in acstring b); methods compare() compare two version strings.
nsIWebBrowserFind
inherits from: nsisupports last changed in gecko 1.7 get one by doing a get
interface on an nsiwebbrowser.
...to change this behavior, and to explicitly set the frame to search, query
interface to nsiwebbrowserfindinframes.
nsIWebNavigationInfo
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/webnavigation-info;1 as a service: var webnavigationinfo = components.classes["@mozilla.org/webnavigation-info;1"] .getservice(components.
interfaces.nsiwebnavigationinfo); method overview unsigned long istypesupported(in acstring atype, in nsiwebnavigation awebnav); constants support type constants constant value description unsupported 0 returned by istypesupported() to indicate lack of support for a type.
...example let webnavigationinfo_service = components.classes["@mozilla.org/webnavigation-info;1"] .getservice(components.
interfaces.nsiwebnavigationinfo); let support_code = webnavigationinfo_service.istypesupported(contenttype, null); if (support_code == webnavigationinfo_service.unsupported) { dump("unsupported content-type: not displaying in the browser\n"); } see also nsiwebnavigation ...
nsIWebSocketChannel
to create an instance, use: var websocketchannel = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.nsiwebsocketchannel); method overview void asyncopen(in nsiuri auri, in acstring aorigin, in nsiwebsocketlistener alistener, in nsisupports acontext); void close(in unsigned short acode, in autf8string areason); void sendbinarymsg(in acstring amsg); void sendmsg(in autf8string amsg); attributes attribute type description extensio...
... notificationcallbacks nsi
interfacerequestor the notification callbacks for authorization and so forth.
nsIWifiMonitor
netwerk/wifi/nsiwifimonitor.idlscriptable this
interface can be used to be alerted when the list of available wifi access points changes.
...implemented by @mozilla.org/wifi/monitor;1 as a service: var wifimonitor = components.classes["@mozilla.org/wifi/monitor;1"] .getservice(components.
interfaces.nsiwifimonitor); method overview void startwatching(in nsiwifilistener alistener); void stopwatching(in nsiwifilistener alistener); methods startwatching() starts listening for changes to the wifi access point list.
nsIWorkerFactory
dom/
interfaces/threads/nsidomworkers.idlscriptable creates and returns a new worker 1.0 66 introduced gecko 2.0 obsolete gecko 8.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface was removed in gecko 8.0.
...to create an instance, use: var workerfactory = components.classes['@mozilla.org/threads/workerfactory;1'] .createinstance(components.
interfaces.nsiworkerfactory); method overview nsiworker newchromeworker(in domstring ascripturl); methods newchromeworker() returns a new chromeworker that will run a specified script.
nsIWorkerGlobalScope
dom/
interfaces/threads/nsidomworkers.idlscriptable this
interface is an abstract
interface representing the 'inside' of a worker.
... this
interface allows a worker to look up information about itself, as well as to control itself.
nsIXFormsNSInstanceElement
last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0)
interface code [scriptable, uuid(80669b92-8331-4f92-aaf8-06e80e6827b3)]
interface nsixformsnsinstanceelement : nsisupports { nsidomdocument getinstancedocument(); }; methods getinstancedocument nsidomdocument getinstancedocument(); getinstancedocument returns a dom document that corresponds to the instance data associated with the instance element.
...related
interfaces nsixformsmodelelement example code none.
nsIXMLHttpRequestEventTarget
content/base/public/nsixmlhttprequest.idlscriptable this
interface provides access to the event listeners used when uploading data using the xmlhttprequest object.
... handling the events when the handler functions for these events are called, they receive as a parameter a progressevent, which implements the nsidomprogressevent
interface.
nsIXULBrowserWindow
xpfe/appshell/public/nsixulbrowserwindow.idlscriptable provides methods that may be called from the internals of the browser area to tell the containing xul window to update its user
interface.
... inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the xulbrowserwindow attribute exists on the nsixulwindow
interface although both firefox and seamonkey also store their nsixulbrowserwindow reference in the global xulbrowserwindow object accessible from javascript code.
nsIXULRuntime
to get an instance, use: var xulruntime = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulruntime); method overview void invalidatecachesonrestart(); attributes attribute type description accessibilityenabled boolean if true, the accessibility service is running.
... example display the user's operating system in an alert box: var xulruntime = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.
interfaces.nsixulruntime); alert(xulruntime.os); see also nsixulappinfo - a related
interface providing information about the host application, it's also implemented by xre/app-info.
nsIXmlRpcClient
warning: this
interface was removed from firefox 3 and is no longer available.
...no query
interface call is needed, the object has been query
interfaced to the correct
interface.
nsPIPromptService
embedding/components/windowwatcher/public/nspipromptservice.idlscriptable this
interface is for the dialog implementers, not for other developers.
...this
interface defines the meaning of each indexes of getint(), setint(), getstring() and setstring() of the nsidialogparamblock
interface but they are defined on in c++.
nsMsgNavigationType
the nsmsgnavigationtype
interface contains constants used for message navigation in thunderbird.
... for example to move forward a message, you would call: // assuming gdbview is a global nsimsgdbview var resultid = new object(); var resultindex = new object(); var threadindex = new object(); gdbview.viewnavigate(components.
interfaces.nsmsgnavigationtype.nextmessage, resultid, resultindex, threadindex, true); the nsmsgnavigationtype
interface is defined as a global variable in thunderbird: var nsmsgviewcommandtype = components.
interfaces.nsmsgviewcommandtype; mailnews/base/public/nsimsgdbview.idlscriptable please add a summary to this article.
nsMsgViewCommandType
the nsmsgviewcommandtype
interface contains constants used for commands in thunderbird.
... for example to mark a message read, you would call: // assuming gdbview is a global nsimsgdbview gdbview.docommand(components.
interfaces.nsmsgviewcommandtype.markmessagesread); mailnews/base/public/nsimsgdbview.idlscriptable please add a summary to this article.
Using nsIClassInfo
if you use a c++ class which implements nsiclassinfo from javascript, then you don't have to explicitly call query
interface on the javascript object to access the object's
interfaces.
... if you're writing javascript code which uses a c++ class implementing nsiclassinfo, you don't need to do anything to activate the auto-
interface magic which makes calling query
interface unnecessary.
XPIDL Syntax
idl_file = 1*definition definition = [type_decl / const_decl /
interface] ";"
interface = [prop_list] "
interface" ident [[inheritance] "{" *(ifacebody) "}"] inheritance = ":" *(scoped_name ",") scoped_name] ifacebody = [type_decl / op_decl /attr_decl / const_decl] ";" / codefrag type_decl = [prop_list] "typedef" type_spec *(ident ",") ident type_decl /= [prop_list] "native" ident [parens] const_decl = "const" type_spec ident "=" expr op_decl = [prop_list] (ty...
... pyxpidl syntax idlfile = *(cdata / include /
interface / typedef / native) typedef = "typedef" identifer identifier ";" native = [attributes] "native" identifier "(" nativeid ")"
interface = [attributes] "
interface" identifier" [ifacebase] [ifacebody] ";" ifacebase = ":" identifier ifacebody = "{" *(member) "}" member = cdata / "const" identifier identifier "=" number ";" member /= [attributes] ["readonly"] "attribute" identifier identifer...
Filelink Providers
filelink storage providers must implement the nsimsgcloudfileprovider
interface.
... management
interface once an account has been created, it is manageable from within the preferences dialog, in the attachment pane, in the outgoing tab.
MailNews Filters
for new incoming messages, the protocol specific object that handles new messages calls nsimsgfilterlist::applyfilterstohdr and passes itself in as nsimsgfilterhitnotify
interface to handle filter hits.
...applyfilterstohdr will in turn call the applyfilterhit method of the passed in nsimsgfilterhitnotify
interface ptr.
Mail client architecture overview
s) js (menus, events) libmime mail datasources mail javascript folder/message management msgdb imap/nntp/pop3 necko (networking) sections in grey refer to modules outside of mail/news the base module the base module provides a generic
interface to a set of protocol-independant messaging services.
...rdf will use the datasource to create user
interfaces based on this data.
Mailnews and Mail code review requirements
mailnews and mail review rules patches affecting thunderbird user experience or
interfaces note: it is recommended that when working on bugs that affect user experience or
interfaces, that ui-review is obtained at an early stage in the patch development process.
... all patches that affect user experience or
interfaces on thunderbird should have ui-review on those patches in addition to the reviews required below.
Main Windows
the rest is loaded from overlays: mailwindowoverlay.xul this is the red sections shown in the
interface above (where?), including the toolbars, notification bars, and the status bar, but also includes most of the commands, keysets, and context menus of thunderbird, along with a whole lot of javascript.
... mailwindowoverlay.xul this is the red sections shown in the
interface above, including the toolbars, notification bars and the status bar.it also includes most of the commands, keysets, and context menus of thunderbird, along with a whole lot of javascript.
Building a Thunderbird extension 1: introduction
it shares many of the technologies used by mozilla firefox, including javascript, the gecko layout engine, the xul xml user
interface language and the xpcom cross-platform component object model.
...the tutorial has the following pages: introduction (this page) the extension filesystem (setting up your local system) install manifest (the install.rdf file that contains meta-information about the extension) chrome manifest (list of packages and overlays) xul (the xml user
interface language that is used to modify the thunderbird user
interface) adding javascript (explains how to add some simple javascript to your thunderbird extension) installing locally (enabling the extension on your local thunderbird instance) packaging (making a distribution package that contains the extension) distributing (from your own site or from http://addons.mozilla.org/) this tutorial is c...
Finding the code for a feature
frequently you are trying to figure out the code that implements a specific feature of the user
interface.
...i know the underlying code, but i don't remember the user
interface level function to do it.
Get Thunderbird version
(version 3.0b3pre was the first build to include steel.) var versionchecker = components.classes["@mozilla.org/xpcom/version-comparator;1"].getservice(components.
interfaces.nsiversioncomparator); if (versionchecker.compare(application.version, "3.0b4") >= 0) // code for >= 3.0b4 else // code for < 3.0b4 for versions prior to 3.0b3pre, you can use something like this: var version; if ( "@mozilla.org/xre/app-info;1" in components.classes ) version = components.classes["@mozilla.org/xre/app-info; 1"].getservice(components.
interfaces.nsixulappinfo).version; else version = components.classes["@mozilla.org/preferences-service; 1"].getservice(components.
interfaces.nsiprefbranch).getc...
...harpref ("app.version"); var versionchecker = components.classes["@mozilla.org/xpcom/version- comparator;1"].getservice(components.
interfaces.nsiversioncomparator); if ( versionchecker.compare( version, "3.0b3" ) >= 0 ) // code for >= 3.0b3 else // code for < 3.0b3 ...
Folders and message lists
getting the current nsimsgfolder the nsimsgfolder
interface contains many methods and attributes for working with folders.
...components.utils.import("resource:///modules/iteratorutils.jsm"); for (let msghdr in fixiterator(myfolder.messages, components.
interfaces.nsimsgdbhdr)) { // do something with msghdr...
libmime content type handlers
the following xp-com
interface is implemented by libmime and is necessary for content type handler plugin development.
... /* * this
interface is implemented by content type handlers that will be * called upon by libmime to process various attachments types.
ABI
http://en.wikipedia.org/wiki/x86_calling_conventions abi abi stands for "application binary
interface".
... http://en.wikipedia.org/wiki/application_binary_
interface os specific windows https://msdn.microsoft.com/en-us/library/k2b2ssfy.aspx https://msdn.microsoft.com/en-us/library/9b372w95.aspx details with respect to js-ctypes this explains how to use it in the js-ctypes scope.
Flash Activation: Browser Comparison - Plugins
each of the major browsers has now implemented a feature where adobe flash content does not run by default, but each of the browsers has implemented this feature and the user
interface in slightly different ways.
...pecifies the flash object to be a size that makes it visible, like this: <!-- give the plugin an initial size so it is visible --> <object type="application/x-shockwave-flash" data="myapp.swf" id="myplugin" width="300" height="300"> <param name="callback" value="plugincreated()"> </object> the callback parameter defined in the html can be called in flash using its flash.external.external
interface api.
Plug-in Basics - Plugins
the plug-in application programming
interface (api) is made up of two groups of functions and a set of shared data structures.
... the browser user
interface remains relatively constant regardless of which type of plug-in is displayed.
Plug-in Development Overview - Plugins
npp_getvalue is called after the plug-in is initialized to get the scripting
interface while np_getvalue is called during initialization to retrieve the plug-in's name and description, which will appear in the navigator.plugins dom object which is used to populate about:plugins.
...to make the user feel that the plug-in is part of the the browser user
interface, your plug-in can emulate the browser behavior by providing status line messages.
Streams - Plugins
use this feature only as a last resort; plug-ins should implement an incremental stream-based
interface wherever possible.
...use this feature only as a last resort; plug-ins should implement an incremental stream-based
interface whenever possible.
Browser Console - Firefox Developer Tools
this means you can interact with all the browser's tabs using the gbrowser global, and even with the xul used to specify the browser's user
interface.
... modifying the browser ui since the global window object is the browser's chrome window, you can also modify the browser's user
interface.
Web Console remoting - Firefox Developer Tools
the web console is split between a client with its user
interface, and the server which has listeners for all the things that happen in the tab.
...the isxhr flag indicates if the request was initiated via an xmlhttprequest instance, that is: the nsihttpchannel's notification is of an nsixmlhttprequest
interface.
Ambient Light Sensor API - Web APIs
the ambient light sensor api provides an
interface to monitor the ambient light level or illuminance of the device’s environment.
...
interfaces ambientlightsensor returns an
interface for accessing ambientlightsensorreadings.
AnalyserNode - Web APIs
the analysernode
interface represents a node able to provide real-time frequency and time-domain analysis information.
... number of inputs 1 number of outputs 1 (but may be left unconnected) channel count mode "max" channel count 2 channel interpretation "speakers" inheritance this
interface inherits from the following parent
interfaces: <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" tar...
Animation() - Web APIs
syntax var animation = new animation([effect][, timeline]); parameters effect optional the target effect, as an object based on the animationeffectreadonly
interface, to assign to the animation.
... timeline optional specifies the timeline with which to associate the animation, as an object of a type based on the animationtimeline
interface.
Animation.finish() - Web APIs
the finish() method of the web animations api's animation
interface sets the current playback time to the end of the animation corresponding to the current playback direction.
...
interfaceelement.addeventlistener("mousedown", function() { try { player.finish(); } catch(e if e instanceof invalidstate) { console.log("finish() called on paused or finished animation."); } catch(e); logmyerrors(e); //pass exception object to error handler } }); the following example finishes all the animations on a single element, regardless of their direction of playback.
AnimationEvent - Web APIs
the animationevent
interface represents events providing information related to animations.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/animationevent" target="_t...
AnimationTimeline - Web APIs
the animationtimeline
interface of the web animations api represents the timeline of an animation.
... this
interface exists to define timeline features (inherited by documenttimeline and future timeline types) and is not itself directly used by developers.
AudioBufferSourceNode - Web APIs
the audiobuffersourcenode
interface is an audioscheduledsourcenode which represents an audio source consisting of in-memory audio data, stored in an audiobuffer.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" strok...
AudioContext.getOutputTimestamp() - Web APIs
the getoutputtimestamp() property of the audiocontext
interface returns a new audiotimestamp object containing two audio timestamp values relating to the current audio context.
... performancetime: a point in the time coordinate system of a performance
interface; the time after the document containing the audio context was first rendered examples in the following code we start to play an audio file after a play button is clicked, and start off a requestanimationframe loop running, which constantly outputs the contexttime and performancetime.
AudioNode.connect() - Web APIs
the connect() method of the audionode
interface lets you connect one of the node's outputs to a target, which may be either another audionode (thereby directing the sound data to the specified node) or an audioparam, so that the node's output data is automatically used to change the value of that parameter over time.
...in some browsers, older implementations of this
interface return undefined.
AudioParam.exponentialRampToValueAtTime() - Web APIs
the exponentialramptovalueattime() method of the audioparam
interface schedules a gradual exponential change in the value of the audioparam.
...in some browsers older implementations of this
interface return void.
AudioParam.linearRampToValueAtTime() - Web APIs
the linearramptovalueattime() method of the audioparam
interface schedules a gradual linear change in the value of the audioparam.
...in some browsers older implementations of this
interface return void.
AudioParam.setTargetAtTime() - Web APIs
the settargetattime() method of the audioparam
interface schedules the start of a gradual change to the audioparam value.
...some older browser implementations of this
interface return void.
AudioParam.setValueAtTime() - Web APIs
the setvalueattime() method of the audioparam
interface schedules an instant change to the audioparam value at a precise time, as measured against audiocontext.currenttime.
...in some browsers older implementations of this
interface return void.
AudioParam.setValueCurveAtTime() - Web APIs
the setvaluecurveattime() method of the audioparam
interface schedules the parameter's value to change following a curve defined by a list of values.
...some older browser implementations of this
interface return undefined.
AudioTrack - Web APIs
the audiotrack
interface represents a single audio track from one of the html media elements, <audio> or <video>.
... example this example returns an array of track kinds and labels for potential use in a user
interface to select audio tracks for a specified media element.
AudioTrackList.onchange - Web APIs
example this snippet establishes a handler for the change event that looks at each of the tracks in the list, calling a function to update the state of a user
interface control that indicates the current state of the track.
... var tracklist = document.queryselector("video").audiotracks; tracklist.onchange = function(event) { tracklist.foreach(function(track) { updatetrackenabledbutton(track.id, track.enabled); }); }; the updatetrackenabledbutton(), in this example, should be a function that finds a user
interface control using the track's id (perhaps the app uses the track id as the control element's id) and the track's enabled flag to determine which state the control should be in now.
AudioWorkletGlobalScope - Web APIs
the audioworkletglobalscope
interface of the web audio api represents a global execution context for user-supplied code, which defines custom audioworkletprocessor-derived classes.
... methods registerprocessor() registers a class derived from the audioworkletprocessor
interface.
BatteryManager - Web APIs
the batterymanager
interface provides ways to get information about the system's battery charge level.
... the navigator.getbattery() method returns a battery promise that is resolved in a batterymanager
interface which you can use to interact with the battery status api.
Using the Beacon API - Web APIs
the beacon
interface schedules an asynchronous and non-blocking request to a web server.
... this document contains examples of the beacon
interfaces.
BeforeInstallPromptEvent - Web APIs
this
interface inherits from the event
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/beforeinstallpromptevent" t...
BeforeUnloadEvent - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-widt...
...f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="201" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">beforeunloadevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} bubbles no cancelable yes target objects defaultview
interface event examples window.addeventlistener("beforeunload", function( event ) { event.returnvalue = "\o/"; }); // is equivalent to window.addeventlistener("beforeunload", function( event ) { event.preventdefault(); }); webkit-derived browsers don't follow the spec for the dialog box.
Blob.arrayBuffer() - Web APIs
the arraybuffer() method in the blob
interface returns a promise that resolves with the contents of the blob as binary data contained in an arraybuffer.
... usage notes while similar to the filereader.readasarraybuffer() method, arraybuffer() returns a promise rather than being an event-based api, as is the case with the filereader
interface's method.
Blob.stream() - Web APIs
the blob
interface's stream() method returns a readablestream which upon reading returns the data contained within the blob.
... usage notes with stream() and the returned readablestream, you gain several interesting capabilities: call getreader() on the returned stream to get an object to use to read the data from the blob using methods such as the readablestreamdefaultreader
interface's read() method.
Blob - Web APIs
the file
interface is based on blob, inheriting blob functionality and expanding it to support files on the user's system.
... specifications specification status comment file apithe definition of 'the blob
interface' in that specification.
BlobBuilder - Web APIs
the blobbuilder
interface provides an easy way to construct blob objects.
... note: the blobbuilder
interface has been deprecated in favor of the newly introduced blob constructor.
Bluetooth - Web APIs
the bluetooth
interface of the web bluetooth api returns a promise to a bluetoothdevice object with the specified options.
...
interface interface bluetooth : eventtarget { promise<boolean> getavailability(); attribute eventhandler onavailabilitychanged; [sameobject] readonly attribute bluetoothdevice?
BluetoothAdvertisingData - Web APIs
the bluetoothdevice
interface of the web bluetooth api provides advertising data about a particular bluetooth device.
...
interface interface bluetoothadvertisingdata { readonly attribute unsigned short?
BluetoothCharacteristicProperties - Web APIs
the bluetoothcharacteristicproperties
interface of the the web bluetooth api provides the operations that are valid on the given bluetoothremotegattcharacteristic.
... this
interface is returned by calling bluetoothremotegattcharacteristic.properties.
BluetoothRemoteGATTCharacteristic - Web APIs
the bluetoothremotegattcharacteristic
interface of the web bluetooth api represents a gatt characteristic, which is a basic data element that provides further information about a peripheral’s service.
...
interface interface bluetoothremotegattcharacteristic { readonly attribute bluetoothremotegattservice service; readonly attribute uuid uuid; readonly attribute bluetoothcharacteristicproperties properties; readonly attribute dataview?
BluetoothRemoteGATTDescriptor - Web APIs
the bluetoothremotegattdescriptor
interface of the web bluetooth api provides a gatt descriptor, which provides further information about a characteristic’s value.
...
interface interface bluetoothremotegattdescriptor { readonly attribute bluetoothgattcharacteristic characteristic; readonly attribute uuid uuid; readonly attribute arraybuffer?
BluetoothRemoteGATTServer - Web APIs
the bluetoothremotegattserver
interface of the web bluetooth api represents a gatt server on a remote device.
...
interface interface bluetoothremotegattserver { readonly attribute bluetoothdevice device; readonly attribute boolean connected; promise<bluetoothremotegattserver> connect(); void disconnect(); promise<bluetoothremotegattservice> getprimaryservice(bluetoothserviceuuid service); promise<sequence<bluetoothremotegattservice>> getprimaryservices(optional bluetoothserviceuuid service); }; properties bluetoothremotegattserver.connectedread only a boolean value that returns true while this script execution environment is connected to this.device.
BluetoothRemoteGATTService - Web APIs
the bluetoothremotegattservice
interface of the web bluetooth api represents a service provided by a gatt server, including a device, a list of referenced services, and a list of the characteristics of this service.
...
interface interface bluetoothremotegattservice : serviceeventhandlers { readonly attribute uuid uuid; readonly attribute boolean isprimary; readonly attribute bluetoothdevice device; promise<bluetoothgattcharacteristic> getcharacteristic(bluetoothcharacteristicuuid characteristic); promise<sequence<bluetoothgattcharacteristic>> getcharacteristics(optional bluetoothcharacteristicuuid characteristic); promise<bluetoothgattservice> getincludedservice(bluetoothserviceuuid service); promise<sequence<bluetoothgattservice>> getincludedservices(optional bluetoothserviceuuid service); }; properties bluetoothremotegattservice.deviceread only returns information about a bluetooth device through an instance of bluetoothdevice.
Broadcast Channel API - Web APIs
broadcast channel
interface creating or joining a channel a client joins a broadcast channel by creating a broadcastchannel object.
... // disconnect the channel bc.close(); conclusion the broadcast channel api's self-contained
interface allows cross-context communication.
CSSConditionRule - Web APIs
an object implementing the cssconditionrule
interface represents a single condition css at-rule, which consists of a condition and a statement block.
...
interface cssconditionrule : cssgroupingrule { attribute domstring conditiontext; } properties the cssconditionrule derives from cssrule, cssgroupingrule and inherits all properties of these classes.
CSSGroupingRule - Web APIs
an object implementing the cssgroupingrule
interface represents any css at-rule that contains other rules nested within it.
...
interface cssgroupingrule : cssrule { readonly attribute cssrulelist cssrules; unsigned long insertrule (domstring rule, unsigned long index); void deleterule (unsigned long index); } properties common to all cssgroupingrule instances the cssgroupingrule derives from cssrule and inherits all properties of this class.
CSSKeywordValue - Web APIs
the csskeywordvalue
interface of the the css typed object model api creates an object to represent css keywords and other identifiers.
... the
interface instance name is a stringifier meaning that when used anywhere a string is expected it will return the value of csskeyword.value.
CSSMathValue.operator - Web APIs
the cssmathvalue.operator read-only property of the cssmathvalue
interface indicates the operator that the current subtype represents.
...
interface value cssmathsum "sum" cssmathproduct "product" cssmathmin "min" cssmathmax "max" cssmathclamp "clamp" cssmathnegate "negate" cssmathinvert "invert" examples we create an element with a width determined using a calc() function, then console.log() the operator.
CSSMathValue - Web APIs
the cssmathvalue
interface of the css typed object model api a base class for classes representing complex numeric values.
...
interfaces based on cssmathvalue below is a list of
interfaces based on the cssmathvalue
interface.
CSSNumericValue - Web APIs
the cssnumericvalue
interface of the css typed object model api represents operations that all numeric values can perform.
...
interfaces based on cssnumericvalue below is a list of
interfaces based on the cssnumericvalue
interface.
CSSPrimitiveValue.getCounterValue() - Web APIs
the getcountervalue() method of the cssprimitivevalue
interface is used to get the counter value.
...modification to the corresponding style property can be achieved using the counter
interface.
CSSPrimitiveValue.getRGBColorValue() - Web APIs
the getrgbcolorvalue() method of the cssprimitivevalue
interface is used to get an rgb color value.
...modification to the corresponding style property can be achieved using the rgbcolor
interface.
CSSPrimitiveValue.getRectValue() - Web APIs
the getrectvalue() method of the cssprimitivevalue
interface is used to get a rect value.
...modification to the corresponding style property can be achieved using the rect
interface.
CSSPseudoElement - Web APIs
the csspseudoelement
interface represents a pseudo-element that may be the target of an event or animated using the web animations api.
... instances of this
interface may be obtained by calling element.pseudo().
CSSStyleSheet - Web APIs
the cssstylesheet
interface represents a single css stylesheet, and lets you inspect and modify the list of rules contained in the stylesheet.
... stylesheets list getting the owner element/rule given the style sheet object the
interface for the owner object getting the cssstylesheet object from the owner <style> and <link> elements in the document yes .ownernode htmllinkelement, htmlstyleelement, or svgstyleelement .sheet css @import rule in other style sheets applied to the document yes .ownerrule cssimportrule .stylesheet <?xml-stylesheet ?> processing instructi...
CSSStyleValue - Web APIs
the cssstylevalue
interface of the the css typed object model api is the base class of all css values accessible through the typed om api.
...
interfaces based on cssstylevalue below is a list of
interfaces based on the cssstylevalue
interface.
CSSValueList - Web APIs
the cssvaluelist
interface derives from the cssvalue
interface and provides the abstraction of an ordered collection of css values.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/cssvalue" target="_top"><rect x="1" y="1" width="80" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="41" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4...
CSS Painting API - Web APIs
interfaces paintworklet programmatically generates an image where a css property expects a file.
... access this
interface through css.paintworklet.
Using the CSS Typed Object Model - Web APIs
for example, the parameters for a csspositionvalue is one to two cssunitvalues or csskeywordvalues, or one of each: let position = new csspositionvalue( new csskeywordvalue("center"), new cssunitvalue(10, "px")); cssstylevalue the cssstylevalue
interface of the the css typed object model api is the base class of all css values accessible through the typed om api, including cssimagevalue, csskeywordvalue, cssnumericvalue, csspositionvalue, csstransformvalue, and cssunparsedvalue.
...take a look at all the css typed om
interfaces to learn more.
CacheStorage - Web APIs
the cachestorage
interface represents the storage for cache objects.
... the
interface: provides a master directory of all the named caches that can be accessed by a serviceworker or other type of worker or window scope (you’re not limited to only using it with service workers, even though the service workers spec defines it).
CanvasRenderingContext2D - Web APIs
the canvasrenderingcontext2d
interface, part of the canvas api, provides the 2d rendering context for the drawing surface of a <canvas> element.
... see the
interface's properties and methods in the sidebar and below.
CaretPosition - Web APIs
the caretposition
interface represents the caret position, an indicator for the text insertion point.
... properties this
interface doesn't inherit any properties.
ClipboardItem() - Web APIs
see the browser compatibility table for the clipboard
interface.
... note: to work with text see the clipboard.readtext() and clipboard.writetext() methods of the clipboard
interface.
CloseEvent - Web APIs
properties this
interface also inherits properties from its parent, event.
... methods this
interface also inherits methods from its parent, event.
ContentIndex.getAll() - Web APIs
the getall() method of the contentindex
interface returns a promise that resolves with an iterable list of content index entries.
... examples the below example shows an asynchronous function that retrieves items within the content index and iterates over each entry, building a list for the
interface.
Credential Management API - Web APIs
interfaces credential provides information about an entity as a prerequisite to a trust decision.
...this
interfaces is accessible from navigator.credentials.
CredentialsContainer - Web APIs
the credentialscontainer
interface of the the credential management api exposes methods to request credentials and notify the user agent when events such as successful sign in or sign out happen.
... this
interface is accessible from navigator.credentials.
CryptoKey - Web APIs
the cryptokey
interface of the web crypto api represents a cryptographic key obtained from one of the subtlecrypto methods generatekey(), derivekey(), importkey(), or unwrapkey().
... for security reasons, the cryptokey
interface can only be used in a secure context.
DOMImplementation - Web APIs
the domimplementation
interface represents an object providing methods which are not dependent on any particular document.
... property this
interface has no specific property and doesn't inherit any.
DOMMatrixReadOnly.flipX() - Web APIs
the flipx() method of the dommatrixreadonly
interface creates a new matrix being the result of the original matrix flipped about the x-axis.
... const flipped = document.getelementbyid('flipped'); const matrix = new dommatrixreadonly(); const flippedmatrix = matrix.flipx(); flipped.setattribute('transform', flippedmatrix.tostring()); screenshotlive sample specifications specification status comment geometry
interfaces module level 1the definition of 'dommatrixreadonly.flipx()' in that specification.
DOMMatrixReadOnly.scale() - Web APIs
the scale() method of the dommatrixreadonly
interface creates a new matrix being the result of the original matrix with a scale transform applied.
...(browserexpectssixparamscale) { scaledmatrixwithorigin = matrix.scale(0.5, 0.5, 1, 25, 25, 0); } document.queryselector('#transformed').setattribute('transform', scaledmatrix.tostring()); document.queryselector('#transformedorigin').setattribute('transform', scaledmatrixwithorigin.tostring()); screenshotlive sample specifications specification status comment geometry
interfaces module level 1the definition of 'dommatrixreadonly.scale()' in that specification.
DOMMatrixReadOnly.translate() - Web APIs
the translate() method of the dommatrixreadonly
interface creates a new matrix being the result of the original matrix with a translation applied.
... const matrix = new dommatrixreadonly().translate(25, 25); document.queryselector('#transformed').setattribute('transform', matrix.tostring()); screenshotlive sample specifications specification status comment geometry
interfaces module level 1the definition of 'dommatrixreadonly.translate()' in that specification.
DOMParser - Web APIs
the domparser
interface provides the ability to parse xml or html source code from a string into a dom document.
... you can perform the opposite operation—converting a dom tree into xml or html source—using the xmlserializer
interface.
DOMPoint.fromPoint() - Web APIs
although this
interface is based on dompointreadonly, it is not read-only; the properties within may be changed at will.
... var center = dompoint.frompoint({x: 75, y: -50, z: -55, w: 0.25}); specifications specification status comment geometry
interfaces module level 1the definition of 'frompoint()' in that specification.
DOMPoint.w - Web APIs
the dompoint
interface's w property holds the point's perspective value, w, for a point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'w' in that specification.
DOMPoint.x - Web APIs
the dompoint
interface's x property holds the horizontal coordinate, x, for a point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'x' in that specification.
DOMPoint.y - Web APIs
the dompoint
interface's y property holds the vertical coordinate, y, for a point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'y' in that specification.
DOMPoint.z - Web APIs
the dompoint
interface's z property specifies the depth coordinate of a point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'z' in that specification.
DOMPointInit - Web APIs
this same code will work to create a dompointreadonly object; just change the
interface name in the code.
... const pointdesc = { x: window.screenx, y: window.screeny, z: 5.0 }; const windtopleft = dompoint.frompoint(pointdesc) specifications specification status comment geometry
interfaces module level 1the definition of 'dompointreadonly.frompoint()' in that specification.
DOMPointReadOnly.w - Web APIs
the dompointreadonly
interface's w property holds the point's perspective value, w, for a read-only point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'w' in that specification.
DOMPointReadOnly.x - Web APIs
the dompointreadonly
interface's x property holds the horizontal coordinate, x, for a read-only point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'x' in that specification.
DOMPointReadOnly.y - Web APIs
the dompointreadonly
interface's y property holds the vertical coordinate, y, for a read-only point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'y' in that specification.
DOMPointReadOnly.z - Web APIs
the dompointreadonly
interface's z property holds the depth coordinate, z, for a read-only point in space.
... specifications specification status comment geometry
interfaces module level 1the definition of 'z' in that specification.
DOMPointReadOnly - Web APIs
the dompointreadonly
interface specifies the coordinate and perspective fields used by dompoint to define a 2d or 3d point in a coordinate system.
... specifications specification status comment geometry
interfaces module level 1the definition of 'dompoint' in that specification.
DOMRect - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/domrectreadonly" target="_top"><rect x="1" y="1" width="150" height="50" fill="#fff" stroke="#d4dde4" stroke-...
... specifications specification status comment geometry
interfaces module level 1the definition of 'domrect' in that specification.
DOMRectReadOnly.bottom - Web APIs
the bottom read-only property of the domrectreadonly
interface returns the bottom coordinate value of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'bottom' in that specification.
DOMRectReadOnly.fromRect() - Web APIs
the fromrect() property of the domrectreadonly
interface creates a new domrectreadonly object with a given location and dimensions.
... specifications specification status comment geometry
interfaces module level 1the definition of 'fromrect()' in that specification.
DOMRectReadOnly.height - Web APIs
the height read-only property of the domrectreadonly
interface represents the height of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'height' in that specification.
DOMRectReadOnly.left - Web APIs
the left read-only property of the domrectreadonly
interface returns the left coordinate value of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'left' in that specification.
DOMRectReadOnly.right - Web APIs
the right read-only property of the domrectreadonly
interface returns the right coordinate value of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'right' in that specification.
DOMRectReadOnly.top - Web APIs
the top read-only property of the domrectreadonly
interface returns the top coordinate value of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'top' in that specification.
DOMRectReadOnly.width - Web APIs
the width read-only property of the domrectreadonly
interface represents the width of the domrect.
... specifications specification status comment geometry
interfaces module level 1the definition of 'width' in that specification.
DOMRectReadOnly.x - Web APIs
the x read-only property of the domrectreadonly
interface represents the x coordinate of the domrect's origin.
... specifications specification status comment geometry
interfaces module level 1the definition of 'x' in that specification.
DOMRectReadOnly.y - Web APIs
the y read-only property of the domrectreadonly
interface represents the y coordinate of the domrect's origin.
... specifications specification status comment geometry
interfaces module level 1the definition of 'y' in that specification.
DOMRectReadOnly - Web APIs
the domrectreadonly
interface specifies the standard properties used by domrect to define a rectangle whose properties are immutable.
... specifications specification status comment geometry
interfaces module level 1the definition of 'domrectreadonly' in that specification.
DataTransferItem - Web APIs
this
interface has no constructor.
... example all of this
interface's methods and properties have their own reference page, and each reference page has an example of its usage.
DataTransferItemList - Web APIs
this
interface has no constructor.
... example each of this
interface's methods and properties has a reference page, and each reference page has an example of its usage.
DirectoryEntrySync - Web APIs
the directoryentrysync
interface of the file system api represents a directory in a file system.
... this
interface has been abandonned: it was on a standard track and it proves not a good idea.
Document: animationcancel event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationcancel the original target for this event is the element that had the animation applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: animationend event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationend the original target for this event is the element that had the animation applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: animationiteration event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationiteration the original target for this event is the element that had the animation applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: animationstart event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationstart the original target for this event is the element that had the animation applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document.forms - Web APIs
the forms read-only property of the document
interface returns an htmlcollection listing all the <form> elements contained in the document.
...ll support yessamsung internet android full support yeslegend full support full support compatibility unknown compatibility unknown see also html forms <form> and the htmlformelement
interface ...
Document: pointercancel event - Web APIs
bubbles yes cancelable no
interface pointerevent event handler property onpointercancel some examples of situations that will trigger a pointercancel event: a hardware event occurs that cancels the pointer activities.
... this may include, for example, the user switching applications using an application switcher
interface or the "home" button on a mobile device.
Document: transitioncancel event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property globaleventhandlers.ontransitioncancel the original target for this event is the element that had the transition applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: transitionend event - Web APIs
bubbles yes cancelable yes
interface transitionevent event handler property ontransitionend the transitionend event is fired in both directions - as it finishes transitioning to the transitioned state, and when it fully reverts to the default or non-transitioned state.
...you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: transitionrun event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property ontransitionrun the original target for this event is the element that had the transition applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
Document: transitionstart event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property globaleventhandlers.ontransitionstart the original target for this event is the element that had the transition applied.
... you can listen for this event on the document
interface to handle it in the capture or bubbling phases.
DocumentOrShadowRoot.pointerLockElement - Web APIs
the pointerlockelement property of the document and shadowroot
interfaces provides the element set as the target for mouse events while the pointer is locked.
... candidate recommendation extend the document
interface ...
DocumentTimeline - Web APIs
the documenttimeline
interface of the the web animations api represents animation timelines, including the default document timeline (accessed via document.timeline).
... properties this
interface inherits its property from its parent, animationtimeline.
DocumentTouch - Web APIs
the documenttouch
interface used to provide convenience methods for creating touch and touchlist objects, but documenttouch been removed from the standards.
... these two methods now live on the document
interface.
Examples of web and XML development using the DOM - Web APIs
'odd':'even'; addcell(row, row.rowindex); addcell(row, p); addcell(row, e[p]); } document.body.appendchild(table); } window.onload = function(event){ showeventproperties(event); } </script> </head> <body> <h1>properties of the dom <span id="eventtype"></span> event object</h1> </body> </html> example 8: using the dom table
interface the dom htmltableelement
interface provides some convenience methods for creating and manipulating tables.
... there are a number of other convenience methods belonging to the table
interface that can be used for creating and modifying tables.
How whitespace is handled by HTML, CSS, and in the DOM - Web APIs
* * @param nod a node implementing the |characterdata|
interface (i.e., * a |text|, |comment|, or |cdatasection| node * @return true if all of the text content of |nod| is whitespace, * otherwise false.
... * * @param nod an object implementing the dom1 |node|
interface.
DragEvent() - Web APIs
although this
interface has a constructor, it is not possible to create a useful datatransfer object from script, since datatransfer objects have a processing and security model that is coordinated by the browser during drag-and-drops.
... this
interface inherits properties from mouseevent and event.
Element: DOMMouseScroll event - Web APIs
it's represented by the mousescrollevent
interface.
... bubbles yes cancelable yes
interface mousescrollevent if you want to prevent the default action of mouse wheel events, it's not enough to handle only this event on gecko because if scroll amount by a native mouse wheel event is less than 1 line (or less than 1 page when the system setting is by page scroll), other mouse wheel events may be fired without this event.
Element: MozMousePixelScroll event - Web APIs
it's represented by the mousescrollevent
interface.
... bubbles yes cancelable yes
interface mousescrollevent getting the distance scrolled the event's detail property indicates the scroll distance in terms of lines, with negative values indicating the scrolling movement is either toward the bottom or toward the right, and positive values indicating scrolling to the top or left.
Element: click event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onclick if the button is pressed on one element and the pointer is moved outside the element before the button is released, the event is fired on the most specific ancestor element that contained both elements.
...the interval is also likely to be affected by user preferences; for example, accessibility options may extend this interval to make it easier to perform multiple clicks with adaptive
interfaces.
Element.computedStyleMap() - Web APIs
the computedstylemap() method of the element
interface returns a stylepropertymapreadonly
interface which provides a read-only representation of a css declaration block that is an alternative to cssstyledeclaration.
... return value a stylepropertymapreadonly
interface.
Element: copy event - Web APIs
the copy event fires when the user initiates a copy action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncopy the event's default action is to copy the selection (if any) to the clipboard.
Element: cut event - Web APIs
the cut event is fired when the user has initiated a "cut" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncut the event's default action is to copy the current selection (if any) to the system clipboard and remove it from the document.
Element.onfullscreenchange - Web APIs
the element
interface's onfullscreenchange property is an event handler for the fullscreenchange event that is fired when the element has transitioned into or out of full-screen mode.
... this gives us a value, isfullscreen, which we pass into a function called adjustmycontrols(), which we imagine to be a function that makes adjustments to the app's user
interface to present itself optimally when it's in full-screen mode versus being displayed in a window.
Element: paste event - Web APIs
the paste event is fired when the user has initiated a "paste" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property onpaste if the cursor is in an editable context (for example, in a <textarea> or an element with contenteditable attribute set to true) then the default action is to insert the contents of the clipboard into the document at the cursor position.
Encoding API - Web APIs
the api provides four
interfaces: textdecoder, textencoder, textdecoderstream and textencoderstream.
...
interfaces textdecoder textencoder textdecoderstream textencoderstream tutorials & tools a shim allowing to use this
interface in browsers that don't support it.
Encrypted Media Extensions API - Web APIs
the encrypted media extensions api provides
interfaces for controlling the playback of content which is subject to a digital restrictions management scheme.
...
interfaces mediakeymessageevent contains the content and related data when the content decryption module (cdm) generates a message for the session.
ErrorEvent - Web APIs
the errorevent
interface represents events providing information related to errors in scripts or in files.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/errorevent" target="_top"><rect x="116" y...
Comparison of Event Targets - Web APIs
there are five targets to consider: property defined in purpose event.target dom event
interface the dom element on the lefthand side of the call that triggered this event, eg: element.dispatchevent(event) event.currenttarget dom event
interface the eventtarget whose eventlisteners are currently being processed.
... event.relatedtarget dom mouseevent
interface identifies a secondary target for the event.
EventTarget.addEventListener() - Web APIs
listener the object that receives a notification (an object that implements the event
interface) when an event of the specified type occurs.
... this must be an object implementing the eventlistener
interface, or a javascript function.
EventTarget - Web APIs
eventtarget is a dom
interface implemented by objects that can receive events and may have listeners for them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12...
ExtendableMessageEvent - Web APIs
the extendablemessageevent
interface of the service worker api represents the event object of a message event fired on a service worker (when a message is received on the serviceworkerglobalscope from another context) — extends the lifetime of such events.
... this
interface inherits from the extendableevent
interface.
FederatedCredential - Web APIs
the federatedcredential
interface of the the credential management api provides information about credentials from a federated identity provider.
... in browsers that support it, an instance of this
interface may be passed in the credential member of the init object for global fetch.
Fetch basic concepts - Web APIs
the fetch api provides an
interface for fetching resources (including across the network).
... in a nutshell at the heart of fetch are the
interface abstractions of http requests, responses, headers, and body payloads, along with a global fetch method for initiating asynchronous resource requests.
Using Fetch - Web APIs
the fetch api provides a javascript
interface for accessing and manipulating parts of the http pipeline, such as requests and responses.
... headers the headers
interface allows you to create your own headers object via the headers() constructor.
Using files from web applications - Web APIs
/ end of optional code document.getelementbyid("filenum").innerhtml = nfiles; document.getelementbyid("filesize").innerhtml = soutput; } document.getelementbyid("uploadinput").addeventlistener("change", updatesize, false); </script> </body> </html> using hidden file input elements using the click() method you can hide the admittedly ugly file <input> element and present your own
interface for opening the file picker and displaying which file or files the user has selected.
... the html that presents the
interface looks like this: <input type="file" id="fileelem" multiple accept="image/*" style="display:none"> <a href="#" id="fileselect">select some files</a> <div id="filelist"> <p>no files selected!</p> </div> this establishes our file <input> element as well as a link that invokes the file picker (since we keep the file input hidden to prevent that less-than-attractive user
interface from being disp...
FileReaderSync.readAsArrayBuffer() - Web APIs
the readasarraybuffer() method of the filereadersync
interface allows to read file or blob objects in a synchronous way into an arraybuffer.
... this
interface is only available in workers as it enables synchronous i/o that could potentially block.
FileReaderSync.readAsBinaryString() - Web APIs
the readasbinarystring() method of the filereadersync
interface allows to read file or blob objects in a synchronous way into an domstring.
... this
interface is only available in workers as it enables synchronous i/o that could potentially block.
FileReaderSync.readAsDataURL() - Web APIs
the readasdataurl() method of the filereadersync
interface allows to read file or blob objects in a synchronous way into an domstring representing a data url.
... this
interface is only available in workers as it enables synchronous i/o that could potentially block.
FileReaderSync.readAsText() - Web APIs
the readastext() method of the filereadersync
interface allows to read file or blob objects in a synchronous way into an domstring.
... this
interface is only available in workers as it enables synchronous i/o that could potentially block.
FileRequest - Web APIs
summary the filerequest
interface extends the domrequest
interface to provide some extra properties necessary for the lockedfile objects.
... the filerequest
interface also inherits from the domrequest
interface.
FileSystem - Web APIs
the file and directory entries api
interface filesystem is used to represent a file system.
... this
interface will not grant you access to the users filesystem.
FileSystemEntrySync - Web APIs
the filesystementrysync
interface of the file and directory entries api represents an entry in a file system; it can be either a fileentrysync or directoryentry.
... basic concepts the filesystementrysync
interface includes methods that you would expect for manipulating files and directories, but it also include a really handy method for getting a url of the entry: tourl().
FileSystemFileEntry - Web APIs
the filesystemfileentry
interface of the file system api represents a file in a file system.
... properties inherits the properties of its parent
interface, filesystementry, but has no properties unique to this
interface.
GainNode - Web APIs
the gainnode
interface represents a change in volume.
...to prevent this from happening, never change the value directly but use the exponential interpolation methods on the audioparam
interface.
Gamepad.timestamp - Web APIs
the gamepad.timestamp property of the gamepad
interface returns a domhighrestimestamp representing the last time the data for this gamepad was updated.
...the value must be relative to the navigationstart attribute of the performancetiming
interface.
Gamepad - Web APIs
the gamepad
interface of the gamepad api defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
... experimental extensions to gamepad the following
interfaces are defined in the gamepad extensions specification, and provide access to experimental features like haptic feedback and webvr controller pose information.
GamepadButton - Web APIs
the gamepadbutton
interface defines an individual button of a gamepad or other controller, allowing access to the current state of different types of buttons available on the control device.
... a gamepadbutton object is returned by querying any value of the array returned by the buttons property of the gamepad
interface.
GamepadHapticActuator - Web APIs
the gamepadhapticactuator
interface of the gamepad api represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
... this
interface is accessible through the gamepad.hapticactuators property.
GeolocationCoordinates.longitude - Web APIs
the geolocationcoordinates
interface's read-only longitude property is a double-precision floating point value which represents the longitude of a geographical position, specified in decimal degrees.
... together with a domtimestamp indicating a time of measurement, the geolocationcoordinates object is part of the geolocationposition
interface, which is the object type returned by geolocation api functions that obtain and return a geographical position.
GlobalEventHandlers.onerror - Web APIs
error events are fired at various targets for different kinds of errors: when a javascript runtime error (including syntax errors and exceptions thrown within handlers) occurs, an error event using
interface errorevent is fired at window and window.onerror() is invoked (as well as handlers attached by window.addeventlistener (not only capturing)).
... when a resource (such as an <img> or <script>) fails to load, an error event using
interface event is fired at the element that initiated the load, and the onerror() handler on the element is invoked.
HTMLAnchorElement - Web APIs
the htmlanchorelement
interface represents hyperlink elements and provides special properties and methods (beyond those of the regular htmlelement object
interface that they inherit from) for manipulating the layout and presentation of such elements.
... this
interface corresponds to <a> element; not to be confused with <link>, which is represented by htmllinkelement) <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="non...
HTMLAreaElement - Web APIs
the htmlareaelement
interface provides special properties and methods (beyond those of the regular object htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of <area> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLBRElement - Web APIs
the htmlbrelement
interface represents a html line break element (<br>).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web...
HTMLButtonElement - Web APIs
the htmlbuttonelement
interface provides properties and methods (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <button> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLCollection - Web APIs
the htmlcollection
interface represents a generic collection (array-like object similar to arguments) of elements (in document order) and offers methods and properties for selecting from the list.
... note: this
interface is called htmlcollection for historical reasons (before the modern dom, collections implementing this
interface could only have html elements as their items).
HTMLDListElement - Web APIs
the htmldlistelement
interface provides special properties (beyond those of the regular htmlelement
interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLDataElement - Web APIs
the htmldataelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <data> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLDataListElement - Web APIs
the htmldatalistelement
interface provides special properties (beyond the htmlelement object
interface it also has available to it by inheritance) to manipulate <datalist> elements and their content.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLDivElement - Web APIs
the htmldivelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <div> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLElement.forceSpellCheck() - Web APIs
the forcespellcheck() method of the htmlelement
interface forces a spelling and grammar check on html elements, even if the user has not focused on the elements.
...the specific user
interface of the check, for example whether red underlining appears, is determined by the user agent.
HTMLElement: pointercancel event - Web APIs
bubbles yes cancelable no
interface pointerevent event handler property onpointercancel some examples of situations that will trigger a pointercancel event: a hardware event occurs that cancels the pointer activities.
... this may include, for example, the user switching applications using an application switcher
interface or the "home" button on a mobile device.
HTMLFieldSetElement - Web APIs
the htmlfieldsetelement
interface provides special properties and methods (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of <fieldset> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLFrameSetElement - Web APIs
the htmlframesetelement
interface provides special properties (beyond those of the regular htmlelement
interface they also inherit) for manipulating <frameset> elements.
... living standard from the html5 snapshot, the windoweventhandlers
interface now have a onlanguagechange property.
HTMLHRElement - Web APIs
the htmlhrelement
interface provides special properties (beyond those of the htmlelement
interface it also has available to it by inheritance) for manipulating <hr> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLImageElement - Web APIs
the htmlimageelement
interface represents an html <img> element, providing the properties and methods used to manipulate image elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLKeygenElement - Web APIs
note: this page describes the keygen element
interface as specified, not as currently implemented by gecko.
... the <keygen> elements expose the htmlkeygenelement
interface, which provides special properties and methods (beyond the regular element object
interface they also have available to them by inheritance) for manipulating the layout and presentation of keygen elements.
HTMLLIElement - Web APIs
the htmllielement
interface exposes specific properties and methods (beyond those defined by regular htmlelement
interface it also has available to it by inheritance) for manipulating list elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLMapElement - Web APIs
the htmlmapelement
interface provides special properties and methods (beyond those of the regular object htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of map elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLMediaElement.onencrypted - Web APIs
this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targe...
HTMLMediaElement.onwaitingforkey - Web APIs
this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" targe...
HTMLModElement - Web APIs
the htmlmodelement
interface provides special properties (beyond the regular methods and properties available through the htmlelement
interface they also have available to them by inheritance) for manipulating modification elements, that is <del> and <ins>.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLOListElement - Web APIs
the htmlolistelement
interface provides special properties (beyond those defined on the regular htmlelement
interface it also has available to it by inheritance) for manipulating ordered list elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLObjectElement - Web APIs
the htmlobjectelement
interface provides special properties and methods (beyond those on the htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of <object> element, representing external resources.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLOptGroupElement - Web APIs
the htmloptgroupelement
interface provides special properties and methods (beyond the regular htmlelement object
interface they also have available to them by inheritance) for manipulating the layout and presentation of <optgroup> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLOptionElement - Web APIs
the htmloptionelement
interface represents <option> elements and inherits all classes and methods of the htmlelement
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLParagraphElement - Web APIs
the htmlparagraphelement
interface provides special properties (beyond those of the regular htmlelement object
interface it inherits) for manipulating <p> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLParamElement - Web APIs
the htmlparamelement
interface provides special properties (beyond those of the regular htmlelement object
interface it inherits) for manipulating <param> elements, representing a pair of a key and a value that acts as a parameter for an <object> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLPictureElement - Web APIs
the htmlpictureelement
interface represents a <picture> html element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><...
HTMLPreElement - Web APIs
the htmlpreelement
interface exposes specific properties and methods (beyond those of the htmlelement
interface it also has available to it by inheritance) for manipulating a block of preformatted text (<pre>).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLProgressElement - Web APIs
the htmlprogresselement
interface provides special properties and methods (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of <progress> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLQuoteElement - Web APIs
the htmlquoteelement
interface provides special properties and methods (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating quoting elements, like <blockquote> and <q>, but not the <cite> element.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLScriptElement - Web APIs
html <script> elements expose the htmlscriptelement
interface, which provides special properties and methods for manipulating the behavior and execution of <script> elements (beyond the inherited htmlelement
interface).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12...
HTMLSourceElement - Web APIs
the htmlsourceelement
interface provides special properties (beyond the regular htmlelement object
interface it also has available to it by inheritance) for manipulating <source> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableCaptionElement - Web APIs
the htmltablecaptionelement
interface special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating table caption elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableCellElement - Web APIs
the htmltablecellelement
interface provides special properties and methods (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of table cells, either header or data cells, in an html document.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableColElement - Web APIs
the htmltablecolelement
interface provides special properties (beyond the htmlelement
interface it also has available to it inheritance) for manipulating single or grouped table column elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableElement - Web APIs
the htmltableelement
interface provides special properties and methods (beyond the regular htmlelement object
interface it also has available to it by inheritance) for manipulating the layout and presentation of tables in an html document.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableRowElement - Web APIs
the htmltablerowelement
interface provides special properties and methods (beyond the htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of rows in an html table.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTableSectionElement - Web APIs
the htmltablesectionelement
interface provides special properties and methods (beyond the htmlelement
interface it also has available to it by inheritance) for manipulating the layout and presentation of sections, that is headers, footers and bodies, in an html table.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTemplateElement.content - Web APIs
syntax var documentfragment = templateelement.content example var templateelement = document.queryselector("#foo"); var documentfragment = templateelement.content.clonenode(true); specifications specification status comment html living standardthe definition of 'htmltemplateelement
interface' in that specification.
... living standard html5the definition of 'htmltemplateelement
interface' in that specification.
HTMLTimeElement - Web APIs
the htmltimeelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <time> elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLTrackElement - Web APIs
the htmltrackelement
interface represents an html <track> element within the dom.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 ...
HTMLUListElement - Web APIs
the htmlulistelement
interface provides special properties (beyond those defined on the regular htmlelement
interface it also has available to it by inheritance) for manipulating unordered list elements.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
HTMLUnknownElement - Web APIs
the htmlunknownelement
interface represents an invalid html element and derives from the htmlelement
interface, but without implementing any additional properties or methods.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" target="_top"><rect...
In depth: Microtasks and the JavaScript runtime environment - Web APIs
your web site or app's code runs in the same thread, sharing the same event loop, as the user
interface of the web browser itself.
... problems because your code runs in the same thread, using the same event loop, as the browser's user
interface, if your code blocks or enters an infinite loop, the browser itself will stall.
Using microtasks in JavaScript with queueMicrotask() - Web APIs
in order to allow microtasks to be used by third-party libraries, frameworks, and polyfills, the queuemicrotask() method is exposed on the window and worker
interfaces through the windoworworkerglobalscope mixin.
... simply pass the javascript function to call while the context is handling microtasks into the queuemicrotask() method, which is exposed on the global context as defined by either the window or worker
interface, depending on the current execution context.
Headers - Web APIs
the headers
interface of the fetch api allows you to perform various actions on http request and response headers.
... you can add to this using methods like append() (see examples.) in all methods of this
interface, header names are matched by case-insensitive byte sequence.
IDBFactory - Web APIs
the idbfactory
interface of the indexeddb api lets applications asynchronously access the indexed databases.
... the object that implements the
interface is window.indexeddb.
IDBIndex - Web APIs
idbindex
interface of the indexeddb api provides asynchronous access to an index in a database.
...you use this
interface to retrieve data.
IDBMutableFile - Web APIs
summary the idbmutablefile
interface provides access in read or write mode to a file, dealing with all the necessary locks.
... note: this
interface used to be called filehandle , but it was changed to this (bug 1006485.) as idbmutablefile objects are bound to a fake file system built on top of indexeddb, such an object is created using the idbdatabase.createmutablefile method.
IDBVersionChangeEvent.newVersion - Web APIs
the newversion read-only property of the idbversionchangeevent
interface returns the new version number of the database.
...these events are fired via the custom idbversionchangeevent
interface.
IDBVersionChangeEvent - Web APIs
the idbversionchangeevent
interface of the indexeddb api indicates that the version of the database has changed, as the result of an idbopendbrequest.onupgradeneeded event handler function.
...upon a version change (after an upgradedneeded event), the success event will implement the idbversionchangeevent
interface.
ImageBitmapRenderingContext - Web APIs
the imagebitmaprenderingcontext
interface is a canvas rendering context that provides the functionality to replace the canvas's contents with the given imagebitmap.
... this
interface is available in both the window and the worker context.
InputDeviceCapabilities API - Web APIs
we can assume that if the touchstart event is triggered that the user's device has a touch
interface.
... if (!e.sourcecapabilities.firestouchevents) mybutton.classlist.add("pressed"); });
interfaces inputdevicecapabilities provides logical information about an input device.
IntersectionObserverEntry - Web APIs
the intersectionobserverentry
interface of the intersection observer api describes the intersection between the target element and its root container at a specific moment of transition.
... methods this
interface has no methods.
Keyboard.unlock() - Web APIs
the unlock() method of the keyboard
interface unlocks all keys captured by the keyboard.lock() method and returns synchronously.
... editor's draft defines the keyboard
interface.
KeyboardEvent.key - Web APIs
the keyboardevent
interface's key read-only property returns the value of the key pressed by the user, taking into consideration the state of modifier keys such as shift as well as the keyboard locale and layout.
...{e.data}" input [event: input]`); }); textarea.addeventlistener('keyup', (e) => { logmessage(`key "${e.key}" released [event: keyup]`); }); btnclearconsole.addeventlistener('click', (e) => { let child = consolelog.firstchild; while (child) { consolelog.removechild(child); child = consolelog.firstchild; } }); result note: on browsers that don't fully implement the inputevent
interface which is used for the beforeinput and input events, you may get incorrect output on those lines of the log output.
KeyframeEffect - Web APIs
the keyframeeffect
interface of the web animations api lets us create sets of animatable properties and values, called keyframes.
... methods this
interface inherits some of its methods from its parent, animationeffect.
Location - Web APIs
the location
interface represents the location (url) of the object it is linked to.
...both the document and window
interface have such a linked location, accessible via document.location and window.location respectively.
MathMLElement - Web APIs
the mathmlelement
interface represents any mathml element.
... properties this
interface has no properties, but inherits properties from: documentandelementeventhandlers, element, elementcssinlinestyle, globaleventhandlers, htmlorforeignelement methods this
interface has no methods, but inherits methods from: documentandelementeventhandlers, element, elementcssinlinestyle, globaleventhandlers, htmlorforeignelement examples mathml <math xmlns="http://www.w3.org/1998/math/mathml"> <msqrt> <mi>x</mi> </msqrt> </math> javascript document.queryselector('msqrt').constructor.name; // mathmlelement specifications specification status comment mathmlelement
interface ...
MediaCapabilities.encodingInfo() - Web APIs
the mediacapabilities.encodinginfo() method, part of the mediacapabilities
interface of the media capabilities api, returns a promise with the tested media configuration's mediacapabilitiesinfo; this contains the three boolean properties supported, smooth, and powerefficient, which describe how compatible the device is with the type of media.
... return value a promise fulfilling with a mediacapabilitiesinfo
interface containing three boolean attributes: supported smooth powerefficient exceptions a typeerror is raised if the mediaconfiguration passed to the encodinginfo() method is invalid, either because the type is not video or audio, the contenttype is not a valid codec mime type, or any other error in the media configuration passed to the method, including omitting any of the media encoding configuration elements...
MediaCapabilities - Web APIs
the mediacapabilities
interface of the media capabilities api provides information about the decoding abilities of the device, system and browser.
... the information is accessed through the mediacapabilities property of the navigator
interface.
MediaCapabilitiesInfo - Web APIs
the mediacapabilitiesinfo
interface of the media capabilities api is made available when the promise returned by the mediacapabilities.encodinginfo() or mediacapabilities.decodinginfo() methods of the mediacapabilities
interface fulfills, providing information as to whether the media type is supported, and whether encoding or decoding such media would be smooth and power efficient.
... properties the mediacapabilitiesinfo
interface contains three boolean attribues: supported: given the properties defined in the mediaconfiguration, can the specified piece of media content be encoded (if mediaencodingconfiguration is set) or decode (if mediadecodingconfiguration is set) at all?
MediaDeviceInfo.groupId - Web APIs
the groupid readonly property of the mediadeviceinfo
interface returns a domstring that is a group identifier.
...this might be used to produce a user
interface that gathers associated devices together for presentation purposes, or to make it easy for the user to choose to use the built-in camera and microphone on the same display at the same time.
MediaKeyMessageEvent - Web APIs
the mediakeymessageevent
interface of the encryptedmediaextensions api contains the content and related data when the content decryption module generates a message for the session.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/mediakeymessageevent" targ...
MediaKeySession.onkeystatuseschange - Web APIs
this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/mediakeyses...
MediaKeySession.onmessage - Web APIs
this
interface inherits from the extendableevent
interface.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 8.571428571428571%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-20 0 700 60" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/mediakeyses...
MediaPositionState.duration - Web APIs
this information can then, in turn, be used by the user agent to provide a user
interface which displays media playback information to the viewer.
... for example, a browser might use this information along with the position property and the navigator.mediasession.playbackstate, as well as the session's metadata to provide an integrated common user
interface showing the currently playing media as well as standard pause, play, forward, reverse, and other controls.
MediaPositionState.playbackRate - Web APIs
this information can then, in turn, be used by the user agent to provide a user
interface which displays media playback information to the viewer.
... for example, a browser might use this information along with the position property and the navigator.mediasession.playbackstate, as well as the session's metadata to provide an integrated common user
interface showing the currently playing media as well as standard pause, play, forward, reverse, and other controls.
MediaPositionState.position - Web APIs
this information is then, in turn, used by the user agent to provide a user
interface which displays media playback information to the viewer.
... for example, a browser might use this information along with the position property and the navigator.mediasession.playbackstate, as well as the session's metadata to provide an integrated common user
interface showing the currently playing media as well as standard pause, play, forward, reverse, and other controls.
MediaQueryList - Web APIs
properties the mediaquerylist
interface inherits properties from its parent
interface, eventtarget.
... methods the mediaquerylist
interface inherits methods from its parent
interface, eventtarget.
MediaQueryListEvent - Web APIs
properties the mediaquerylistevent
interface inherits properties from its parent
interface, event.
... methods the mediaquerylistevent
interface inherits methods from its parent
interface, event.
MediaRecorder: dataavailable event - Web APIs
the mediarecorder
interface's dataavailable event is fired when the mediarecorder delivers media data to your application for its use.
... bubbles no cancelable no
interface blobevent event handler property ondataavailable for details of the all the possible reasons this event may raise, see the documentation for the event handler property: ondataavailable.
MediaRecorder: error event - Web APIs
the mediarecorder
interface's error event is fired when an error occurs: for example because recording wasn't allowed or was attempted using an unsupported codec.
... bubbles no cancelable no
interface mediarecordererrorevent event handler property onerror for details of the all the possible errors see the documentation for the event handler property: onerror.
MediaSession.metadata - Web APIs
the metadata property of the mediasession
interface contains a mediametadata object providing descriptive information about the currently playing media, or null if the metadata has not been set.
... this metadata is provided by the browser to the device for presentation in any standard media control user
interface the device might offer.
MediaSession - Web APIs
the mediasession
interface of the media session api allows a web page to provide custom behaviors for standard media playback interactions, and to report metadata that can be sent by the user agent to the device or operating system for presentation in standardized user
interface elements.
...a browser on that device might deliver the metadata provided by calling mediasession to the device in order to be controllable using the global user
interface.
MediaStream.getAudioTracks() - Web APIs
the getaudiotracks() method of the mediastream
interface returns a sequence that represents all the mediastreamtrack objects in this stream's track set where mediastreamtrack.kind is audio.
... early versions of this api included a special audiostreamtrack
interface which was used as the type for each entry in the list of audio streams; however, this has since been merged into the main mediastreamtrack
interface.
MediaStream.getVideoTracks() - Web APIs
the getvideotracks() method of the mediastream
interface returns a sequence of mediastreamtrack objects representing the video tracks in this stream.
... early versions of this api included a special videostreamtrack
interface which was used as the type for each entry in the list of video streams; however, this has since been merged into the main mediastreamtrack
interface.
MediaStreamTrack: ended event - Web APIs
the ended event of the mediastreamtrack
interface is fired when playback or streaming has stopped because the end of the media was reached or because no further data is available.
... bubbles no cancelable no
interface event event handler property mediastreamtrack.onended usage notes ended events fire when the media stream track's source permanently stops sending data on the stream.
MediaStreamTrack - Web APIs
the mediastreamtrack
interface represents a single media track within a stream; typically, these are audio or video tracks, but other track types may exist as well.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface: ended sent when playback of the track ends (when the value readystate changes to ended).
Recording a media element - Web APIs
while the article using the mediastream recording api demonstrates using the mediarecorder
interface to capture a mediastream generated by a hardware device, as returned by navigator.mediadevices.getusermedia(), you can also use an html media element (namely <audio> or <video>) as the source of the mediastream to be recorded.
... <div class="left"> <div id="startbutton" class="button"> start </div> <h2>preview</h2> <video id="preview" width="160" height="120" autoplay muted></video> </div> we present our main
interface in two columns.
Media Source API - Web APIs
interfaces mediasource represents a media source to be played via an htmlmediaelement object.
... extensions to other
interfaces url.createobjecturl() creates an object url pointing to a mediasource object that can then be specified as the src value of an html media element to play a media stream.
Metadata - Web APIs
the metadata
interface is used by the file and directory entries api to contain information about a file system entry.
... this
interface isn't available through the global scope; instead, you obtain a metadata object describing a filesystementry using the method filesystementry.getmetadata().
MouseEvent.pageX - Web APIs
the pagex read-only property of the mouseevent
interface returns the x (horizontal) coordinate (in pixels) at which the mouse was clicked, relative to the left edge of the entire document.
... prior to being added to the cssom view specification, pagex and pagey were available on the uievent
interface in a limited subset of browsers for a short time.
NameList - Web APIs
note: although this
interface was previously implemented in gecko, there was no way to actually create one.
... namelist has been removed, effective with gecko 10.0 the namelist
interface provides an abstraction for an ordered collection of name and namespace value pairs.
Navigator.xr - Web APIs
the read-only xr property provided by the navigator or workernavigator
interface returns an xr object which can be used to access the webxr device api.
... syntax const xr = navigator.xr value the xr object used to
interface with the webxr device api in the current context.
NavigatorPlugins - Web APIs
the navigatorplugins mixin adds to the navigator
interface methods and properties for discovering and interacting with plugins installed into the browser.
... methods the navigatorplugins
interface doesn't inherit any methods.
Notification - Web APIs
the notification
interface of the notifications api is used to configure and display desktop notifications to the user.
...the notification object also inherits from the eventtarget
interface.
OfflineAudioContext: complete event - Web APIs
the complete event of the offlineaudiocontext
interface is fired when the rendering of an offline audio context is complete.
... bubbles no cancelable no default action none
interface offlineaudiocompletionevent event handler property offlineaudiocontext.oncomplete examples when processing is complete, you might want to use the oncomplete handler the prompt the user that the audio can now be played, and enable the play button: let offlineaudioctx = new offlineaudiocontext(); offlineaudioctx.addeventlistener('complete', () => { console.log('offline audio processing now complete'); showmodaldialog('song processed and ready to play'); playbtn.disabled = false; }) you can also set up the event handler using the offlineaudiocontext.oncomplete property: let offlineaudioctx = new offlineaudiocontext(); offlineaudioctx.oncomplete = function() { consol...
PageTransitionEvent - Web APIs
<div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 ...
...itionevent" target="_top"><rect x="116" y="1" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="211" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">pagetransitionevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this
interface also inherits properties from its parent, event.
ParentNode - Web APIs
living standard split the elementtraversal
interface into childnode and parentnode.
... obsolete added the initial definition of its properties to the elementtraversal pure
interface and used it on element.
PasswordCredential - Web APIs
the
interface of the credential management api provides information about a username/password pair.
... note: this
interface is restricted to top-level contexts and cannot be used from an <iframe>.
Path2D - Web APIs
the path2d
interface of the canvas 2d api is used to declare a path that can then be used on a canvasrenderingcontext2d object.
... the path methods of the canvasrenderingcontext2d
interface are also present on this
interface, which gives you the convenience of being able to retain and replay your path whenever desired.
PaymentDetailsBase - Web APIs
paymentdetailsupdate provides updated payment details while the payment user
interface is being handled.
... this can be delivered to the payment
interface using either paymentdetailsupdateevent.updatewith() or by returning it from the optional detailsupdate promise provided to the paymentrequest.show() call that begins the user interaction.
PaymentDetailsUpdate - Web APIs
the paymentdetailsupdate dictionary is used to provide updated information to the payment user
interface after it has been instantiated.
... this can be done either by calling the paymentrequestupdateevent.updatewith() method or by using the paymentrequest.show() method's detailspromise parameter to provide a promise that returns a paymentdetailsupdate that updates the payment information before the user
interface is even enabled for the first time.
PaymentRequest: paymentmethodchange event - Web APIs
bubbles no cancelable no
interface paymentmethodchangeevent event handler property onpaymentmethodchange examples let's take a look at an example.
... this code creates a new paymentrequest, adds a handler for the paymentmethodchange event by calling the request's addeventlistener(), then calls show() to present the payment
interface to the user.
PaymentRequest - Web APIs
the payment request api's paymentrequest
interface the primary access point into the api, and lets web content and apps accept payments from the end user on behalf of the operator of the site or the publisher of the app.
... paymentrequest.abort() secure context causes the user agent to end the payment request and to remove any user
interface that might be shown.
Payment processing concepts - Web APIs
payment handler the implementation of the code needed to
interface with a particular payment method provider in order to process payments.
...validated merchants are allowed to
interface with a payment handler.
performance.mark() - Web APIs
the application defined timestamp can be retrieved by one of the performance
interface's getentries*() methods (getentries(), getentriesbyname() or getentriesbytype()).
...if the name given to this method already exists in the performancetiming
interface, syntaxerror is thrown.
PerformanceLongTaskTiming - Web APIs
the performancelongtasktiming
interface of the the long tasks api reports instances of long tasks.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceentry</text></a><polyline points="161,25 171,20 171,30 161,25" stroke="#d4dde4" fill="none"/><line x1="171" y1="25" x2="201" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/...
PerformanceNavigation.type - Web APIs
this
interface of this property is deprecated in the navigation timing level 2 specification.
... please use the performancenavigationtiming
interface instead.
PerformanceObserver - Web APIs
the performanceobserver
interface is used to observe performance measurement events and be notified of new performance entries as they are recorded in the browser's performance timeline.
... candidate recommendation initial definition of performanceobserver
interface.
PerformanceObserverEntryList.getEntriesByName() - Web APIs
the getentriesbyname() method of the performanceobserverentrylist
interface returns a list of explicitly observed performance entry objects for a given name and entry type.
... this method is exposed to window and worker
interfaces.
PerformanceObserverEntryList - Web APIs
the performanceobserverentrylist
interface is a list of peformance events that were explicitly observed via the observe() method.
... note: this
interface is exposed to window and worker.
PerformanceTiming.connectEnd - Web APIs
this
interface of this property is deprecated in the navigation timing level 2 specification.
... please use the performancenavigationtiming
interface instead.
Point - Web APIs
point is an
interface, which existed only briefly in the css transforms level 1 specification, which represents a point in 2-dimensional space.
... although it is not directly related to this defunct
interface, you are probably looking for dompoint, which is part of the geometry
interfaces module level 1 specification.
PointerEvent.width - Web APIs
the width read-only property of the pointerevent
interface represents the width of the pointer's contact geometry along the x-axis, measured in css pixels.
... example this example illustrates using the pointerevent
interface's width and height properties to calculate the contact area.
Pointer Lock API - Web APIs
(from https://w3c.github.io/pointerlock/#extensions-to-the-element-
interface) pointerlockelement and exitpointerlock() the pointer lock api also extends the document
interface, adding both a new property and a new method.
... extensions to mouse events the pointer lock api extends the normal mouseevent
interface with movement attributes.
ProgressEvent - Web APIs
the progressevent
interface represents events measuring progress of an underlying process, like an http request (for an xmlhttprequest, or the loading of the underlying resource of an <img>, <audio>, <video>, <style> or <link>).
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/event" target="_top"><rect x="1" y="1" width="75" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/progressevent" target="_to...
PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() - Web APIs
isuserverifyingplatformauthenticatoravailable() is a static method of the publickeycredential
interface that returns a promise which resolves to true if a user-verifying platform authenticator is available.
... note: this is a static method which is directly called on the publickeycredential
interface and not on an instance.
PushManager.hasPermission() - Web APIs
the pushmanager.haspermission() method of the pushmanager
interface returns a promise that resolves to the pushpermissionstatus of the requesting webapp, which will be one of granted, denied, or default.
...} ); example // tbd specification specification status comment push api working draft defines the pushmanager
interface.
PushMessageData - Web APIs
the pushmessagedata
interface of the push api provides methods which let you retrieve the push data sent by a server in various formats.
... messages received through the push api are sent encrypted by push services and then automatically decrypted by browsers before they are made accessible through the methods of the pushmessagedata
interface.
PushRegistrationManager - Web APIs
returns an
interface to register or unregister a push registration, get an active registration, or check the permission status of the registration.
... this
interface has been superceded by pushmanager.
PushSubscription - Web APIs
the pushsubscription
interface of the push api provides a subcription's url endpoint and allows unsubscription from a push service.
... an instance of this
interface can be serialized.
RTCIceCandidate.tcpType - Web APIs
the rtcicecandidate
interface's read-only tcptype property is included on tcp candidates to provide additional details about the candidate type.
... example in this example, the candidate's protocol and tcptype are used to adjust the user
interface for simultaneous-open tcp candidates.
RTCIceCandidate.type - Web APIs
the rtcicecandidate
interface's read-only type specifies the type of candidate the object represents.
... example in this example, the candidate's type is used to present a modified user
interface for host candidates (those where the ip refers directly to the remote peer, rather than an intermediary).
RTCIdentityAssertion - Web APIs
the rtcidentityassertion
interface of the the webrtc api represents the identity of the a remote peer of the current connection.
... if no peer has yet been set and verified this
interface returns null.
RTCIdentityErrorEvent - Web APIs
the rtcidentityerrorevent
interface represents an error associated with the identity provider (idp).
... firefox implements this
interface under the following name: rtcpeerconnectionidentityerrorevent.
RTCIdentityEvent - Web APIs
the rtcidentityevent
interface represents an identity assertion generated by an identity provider (idp).
... firefox implements this
interface under the following name: rtcpeerconnectionidentityevent.
RTCPeerConnection.createDataChannel() - Web APIs
the createdatachannel() method on the rtcpeerconnection
interface creates a new channel linked with the remote peer, over which any kind of data may be transmitted.
... the options which can be configured using the rtcdatachannelinit dictionary represent the script-settable subset of the properties on the rtcdatachannel
interface.
RTCPeerConnection: datachannel event - Web APIs
bubbles no cancelable no
interface rtcdatachannelevent event handler property ondatachannel examples this example sets up a function that handles datachannel events by gathering the information needed to communicate with the newly added rtcdatachannel and by adding event handlers for the events that occur on that channel.
... this same code can also instead use the rtcpeerconnection
interface's ondatachannel event handler property, like this: pc.ondatachannel = ev => { receivechannel = ev.channel; receivechannel.onmessage = myhandlemessage; receivechannel.onopen = myhandleopen; receivechannel.onclose = myhandleclose; } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'datachannel' in t...
RTCPeerConnection.generateCertificate() - Web APIs
the generatecertificate() method of the rtcpeerconnection
interface creates and stores an x.509 certificate and corresponding private key then returns an rtccertificate, providing access to it.
... rtcpeerconnection.generatecertificate() is a static method, so it is always called on the rtcpeerconnection
interface itself, not an instance thereof.
RTCPeerConnection: removestream event - Web APIs
you can use the rtcpeerconnection
interface's onremovestream property to set a handler for this event.
... bubbles no cancelable no
interface mediastreamevent event handler property rtcpeerconnection.onremovestream important: this event has been removed from the webrtc specification in favor of the existing removetrack event on the remote mediastream and the corresponding mediastream.onremovetrack event handler property of the remote mediastream.
RTCRtpStreamStats - Web APIs
while the dictionary has a base set of properties that are present in each of these cases, there are also additional properties added depending on which
interface the method is called on.
... note: this
interface was called rtcrtpstreamstats until a specification update in the spring of 2017.
RTCSessionDescription - Web APIs
the rtcsessiondescription
interface describes one end of a connection—or potential connection—and how it's configured.
... properties the rtcsessiondescription
interface doesn't inherit any properties.
SVGAnimatedString - Web APIs
the svganimatedstring
interface represents string attributes which can be animated from each svg declaration.
... methods the svganimatedstring
interface do not provide any specific methods.
SVGAnimationElement: beginEvent event - Web APIs
the beginevent event of the svganimationelement
interface is fired when the element local timeline begins to play.
... bubbles no cancelable no
interface timeevent event handler property onbegin examples animated circle <svg xmlns="http://www.w3.org/2000/svg" width="300px" height="100px"> <title>svg smil animate with path</title> <circle cx="0" cy="50" r="50" fill="blue" stroke="black" stroke-width="1"> <animatemotion path="m 0 0 h 300 z" dur="5s" repeatcount="indefinite" /> </circle> </svg> <hr> <ul> </ul> ul { height: 100px; border: 1px solid #ddd;...
SVGAnimationElement: endEvent event - Web APIs
the endevent event of the svganimationelement
interface is fired when at the active end of the animation is reached.
... bubbles no cancelable no
interface timeevent event handler property onend examples animated circle <svg xmlns="http://www.w3.org/2000/svg" width="300px" height="100px"> <title>svg smil animate with path</title> <circle cx="0" cy="50" r="50" fill="blue" stroke="black" stroke-width="1"> <animatemotion path="m 0 0 h 300 z" dur="5s" repeatcount="indefinite" /> </circle> </svg> <hr> <button>stop animation</button> <ul> </ul> ul { height: 100px; border: 1px solid #ddd; ...
SVGAnimationElement: repeatEvent event - Web APIs
the repeatevent event of the svganimationelement
interface is fired when the element's local timeline repeats.
... bubbles no cancelable no
interface timeevent event handler property onrepeat examples animated circle <svg xmlns="http://www.w3.org/2000/svg" width="300px" height="100px"> <title>svg smil animate with path</title> <circle cx="0" cy="50" r="50" fill="blue" stroke="black" stroke-width="1"> <animatemotion path="m 0 0 h 300 z" dur="5s" repeatcount="indefinite" /> </circle> </svg> <hr> ...
SVGFilterElement - Web APIs
the svgfilterelement
interface provides access to the properties of <filter> elements, as well as methods to manipulate them.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 23.333333333333332%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 140" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/node" tar...
SVGGraphicsElement: copy event - Web APIs
the copy event fires on svggraphicselements when the user initiates a copy action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncopy the event's default action is to copy the selection (if any) to the clipboard.
SVGGraphicsElement: cut event - Web APIs
the cut event is fired on an svggraphicselement when the user has initiated a "cut" action through the browserʼs user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property oncut the eventʼs default action is to copy the current selection (if any) to the system clipboard and remove it from the document.
SVGGraphicsElement: paste event - Web APIs
the paste event is fired on an svggraphicselement when the user has initiated a "paste" action through the browser's user
interface.
... bubbles yes cancelable yes
interface clipboardevent event handler property onpaste if the cursor is in an editable context (for example, in a <textarea> or an element with contenteditable attribute set to true) then the default action is to insert the contents of the clipboard into the document at the cursor position.
SVGLengthList - Web APIs
svg length list
interface the svglengthlist defines a list of svglength objects.
... note: starting in gecko 5.0,the svglengthlist dom
interface is now indexable and can be accessed like arrays
interface overview also implement none methods void clear() svglength initialize(in svglength newitem) svglength getitem(in unsigned long index) svglength insertitembefore(in svglength newitem, in unsigned long index) svglength replaceitem(in svglength newitem, in unsigned long index) svglength removeitem(in unsigned long index) svglength appenditem(in svglength newitem) properties readonly unsigned long numberofitems readonly unsigned long length ...
SVGNumber - Web APIs
the svgnumber
interface corresponds to the <number> basic data type.
... methods this
interface doesn't provide any specific methods.
SVGPathSegList - Web APIs
svg path segment list
interface this
interface defines a list of svgpathseg objects.
...
interface overview also implement none methods void clear() svgpathseg initialize(in svgpathseg newitem) svgpathseg getitem(in unsigned long index) svgpathseg insertitembefore(in svgpathseg newitem, in unsigned long index) svgpathseg replaceitem(in svgpathseg newitem, in unsigned long index) svgpathseg removeitem(in unsigned long index) svgpathseg appenditem(in svgpathseg newitem) properties readonly unsigned long numberofitems normative document svg 1.1 (2nd ...
SVGPointList - Web APIs
svg point list
interface the svgpointlist defines a list of svgpoint objects.
...
interface overview also implement none methods void clear() svgpoint initialize(in svgpoint newitem) svgpoint getitem(in unsigned long index) svgpoint insertitembefore(in svgpoint newitem, in unsigned long index) svgpoint replaceitem(in svgpoint newitem, in unsigned long index) svgpoint removeitem(in unsigned long index) svgpoint appenditem(in svgpoint newitem) properties readonly unsigned long numberofitems ...
SVGStylable - Web APIs
svg stylable
interface the svgstylable
interface is implemented on all objects corresponding to svg elements that can have style, class and presentation attributes specified on them.
...
interface overview also implement none methods cssvalue getpresentationattribute(in domstring name) properties readonly svganimatedstring classname readonly cssstyledeclaration style normative document svg 1.1 (2nd edition) properties name type description classname svganimatedstring corresponds to attribute class on the given element.
SVGTransformList - Web APIs
svg transform list
interface the svgtransformlist defines a list of svgtransform objects.
... note: starting in gecko 9.0,the svgtransformlist dom
interface is now indexable and can be accessed like arrays
interface overview also implement none methods void clear() svgtransform initialize(in svgtransform newitem) svgtransform getitem(in unsigned long index) svgtransform insertitembefore(in svgtransform newitem, in unsigned long index) svgtransform replaceitem(in svgtransform newitem, in unsigned long index) svgtransform removeitem(in unsigned long index) svgtransform appenditem(in svgtransform newitem) svgtransform createsvgtransformfrommatrix(in svgmatrix) svgtran...
Using the Screen Capture API - Web APIs
starting screen capture: promise style function startcapture(displaymediaoptions) { let capturestream = null; return navigator.mediadevices.getdisplaymedia(displaymediaoptions) .catch(err => { console.error("error:" + err); return null; }); } either way, the user agent responds by presenting a user
interface that prompts the user to choose the screen area to share.
...if your browser supports screen capture api, clicking "start capture" will present the user agent's
interface for selecting a screen, window, or tab to share.
Screen Capture API - Web APIs
additions to existing
interfaces the screen capture api doesn't have any
interfaces of its own; instead, it adds one method to the existing mediadevices
interface.
... mediadevices
interface mediadevices.getdisplaymedia() the getdisplaymedia() method is added to the mediadevices
interface.
ScriptProcessorNode: audioprocess event - Web APIs
the audioprocess event of the scriptprocessornode
interface is fired when an input buffer of a script processor is ready to be processed.
... bubbles no cancelable no default action none
interface audioprocessingevent event handler property scriptprocessornode.onaudioprocess examples scriptnode.addeventlistener('audioprocess', function(audioprocessingevent) { // the input buffer is a song we loaded earlier var inputbuffer = audioprocessingevent.inputbuffer; // the output buffer contains the samples that will be modified and played var outputbuffer = audioprocessingevent.outputbuffer; // loop through the output channels (in this case there is only one) for (var channel = 0; channel < outputbuffer.numberofchannels; channel++) { var inputdata = inputbuffer.getchanneldata(channel); var outputdata = outputbuffer.getchanneldata(channel); // loop th...
Selection API - Web APIs
selection api
interfaces selection represents the range of text selected by the user or the current position of the caret.
... extensions to other
interfaces window.getselection(), document.getselection() returns a selection object representing the range of text selected by the user or the current position of the caret.
ServiceWorkerGlobalScope: activate event - Web APIs
the activate event of the serviceworkerglobalscope
interface is fired when a serviceworkerregistration acquires a new serviceworkerregistration.active worker.
... bubbles no cancelable no
interface extendableevent event handler property serviceworkerglobalscope.onactivate examples the following snippet shows how you could use an activate event handler to upgrade a cache.
ServiceWorkerGlobalScope: contentdelete event - Web APIs
the contentdelete event of the serviceworkerglobalscope
interface is fired when an item is removed from the indexed content via the user agent.
... bubbles no cancelable no
interface contentindexevent event handler property oncontentdelete examples the following example uses a contentdelete event handler to remove cached content related to the deleted index item.
ServiceWorkerGlobalScope: install event - Web APIs
the install event of the serviceworkerglobalscope
interface is fired when a serviceworkerregistration acquires a new serviceworkerregistration.installing worker.
... bubbles no cancelable no
interface extendableevent event handler property serviceworkerglobalscope.oninstall examples the following snippet shows how an install event handler can be used to populate a cache with a number of responses, which the service worker can then use to serve assets offline: this.addeventlistener('install', function(event) { event.waituntil( caches.open('v1').then(function(cache) { return cache.add( '/sw-test/', '/sw-test/index.html', '/sw-test/style.css', '/sw-test/app.js', '/sw-test/image-list.js', '/sw-test/star-wars-logo.jpg', '/sw-test/gallery/', '/sw-test/gallery/bountyhunters.jpg', '/sw-test/gallery/mylittlevader.jpg', ...
ServiceWorkerGlobalScope: message event - Web APIs
the message event of the serviceworkerglobalscope
interface occurs when incoming messages are received.
... bubbles no cancelable no
interface extendablemessageevent event handler property onmessage examples in the below example a page gets a handle to the serviceworker object via serviceworkerregistration.active, and then calls its postmessage() function.
ServiceWorkerGlobalScope.onmessage - Web APIs
the onmessage property of the serviceworkerglobalscope
interface is an event handler fired whenever a message event occurs — when incoming messages are received.
...for the message event, service workers use the extendablemessageevent
interface which extends the extendableevent
interface.
ServiceWorkerGlobalScope.onpushsubscriptionchange - Web APIs
the serviceworkerglobalscope.onpushsubscriptionchange event of the serviceworkerglobalscope
interface is fired to indicate a change in push subscription that was triggered outside the application's control, e.g.
... previously, it was defined as the event
interface that is fired whenever a push subscription has been invalidated (or is about to become so).
ServiceWorkerGlobalScope: push event - Web APIs
the push event is sent to a service worker's global scope (represented by the serviceworkerglobalscope
interface) when the service worker has received a push message.
... bubbles no cancelable no
interface pushevent event handler property onpush example this example sets up a handler for push events that takes json data, parses it, and dispatches the message for handling based on information contained within the message.
ServiceWorkerMessageEvent.data - Web APIs
service worker messages will now use the messageevent
interface, for consistency with other web messaging features.
... the data read-only property of the serviceworkermessageevent
interface returns the event's data.
ServiceWorkerMessageEvent.lastEventId - Web APIs
service worker messages will now use the messageevent
interface, for consistency with other web messaging features.
... the lasteventid read-only property of the serviceworkermessageevent
interface represents, in server-sent events, the last event id of the event source.
ServiceWorkerMessageEvent.origin - Web APIs
service worker messages will now use the messageevent
interface, for consistency with other web messaging features.
... the origin read-only property of the serviceworkermessageevent
interface returns the origin of the service worker's environment settings object.
ServiceWorkerMessageEvent.ports - Web APIs
service worker messages will now use the messageevent
interface, for consistency with other web messaging features.
... the ports read-only property of the serviceworkermessageevent
interface returns an array of messageport objects connected with the message channel the message is being sent through.
SharedWorker - Web APIs
the sharedworker
interface represents a specific kind of worker that can be accessed from several browsing contexts, such as several windows, iframes or even workers.
... they implement an
interface different than dedicated workers and have a different global scope, sharedworkerglobalscope.
SpeechRecognitionError.error - Web APIs
the error read-only property of the speechrecognitionerror
interface returns the type of error raised.
... this speechrecognitionerror
interface was renamed to speechrecognitionerrorevent in the web speech api specification.
SpeechRecognitionError.message - Web APIs
the message read-only property of the speechrecognitionerror
interface returns a message describing the error in more detail.
... this speechrecognitionerror
interface was renamed to speechrecognitionerrorevent in the web speech api specification.
SpeechRecognitionErrorEvent - Web APIs
the speechrecognitionerrorevent
interface of the web speech api represents error messages from the recognition service.
... properties speechrecognitionerrorevent also inherits properties from its parent
interface, event.
SpeechRecognitionEvent - Web APIs
the speechrecognitionevent
interface of the web speech api represents the event object for the result and nomatch events, and contains all the data associated with an interim or final speech recognition result.
... properties speechrecognitionevent also inherits properties from its parent
interface, event.
StereoPannerNode - Web APIs
the stereopannernode
interface of the web audio api represents a simple stereo panner node that can be used to pan an audio stream left or right.
...this
interface was introduced as a much simpler way to apply a simple panning effect than having to use a full pannernode.
Storage.removeItem() - Web APIs
the removeitem() method of the storage
interface, when passed a key name, will remove that key from the given storage object if it exists.
... the storage
interface of the web storage api provides access to a particular domain's session or local storage.
StorageManager - Web APIs
the storagemanager
interface of the the storage api provides an
interface for managing persistance permissions and estimating available storage.
... you can get a reference to this
interface using either navigator.storage or workernavigator.storage.
StorageQuota - Web APIs
the storagequota property of the navigator
interface of the quota management api provides means to query and request storage usage and quota information.
... you can get a reference to this
interface using navigator.storagequota.
Streams API - Web APIs
stream
interfaces readable streams readablestream represents a readable stream of data.
... bytestream-related
interfaces important: these are not implemented anywhere as yet, and questions have been raised as to whether the spec details are in a finished enough state for them to be implemented.
StylePropertyMap - Web APIs
the stylepropertymap
interface of the the css typed object model api provides a representation of a css declaration block that is an alternative to cssstyledeclaration.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/stylepropertymap" target="_top"><rect x="1" y="1" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">stylepropertymap</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits properties from its parent, stylepropertymapreadonly.
StylePropertyMapReadOnly - Web APIs
the stylepropertymapreadonly
interface of the the css typed object model api provides a read-only representation of a css declaration block that is an alternative to cssstyledeclaration.
... retrieve an instance of this
interface using element.computedstylemap().
StyleSheet - Web APIs
an object implementing the stylesheet
interface represents a single style sheet.
... css style sheets will further implement the more specialized cssstylesheet
interface.
TaskAttributionTiming - Web APIs
the taskattributiontiming
interface of the long tasks api returns information about the work involved in a long task and its associate frame context.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/performanceentry" target="_top"><rect x="1" y="1" width="160" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="81" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performanceentry</text></a><polyline points="161,25 171,20 ...
TextEncoder - Web APIs
properties the textencoder
interface doesn't inherit any property.
... methods the textencoder
interface doesn't inherit any method.
TextTrack.mode - Web APIs
the texttrack
interface's mode property is a string specifying and controlling the text track's mode: disabled, hidden, or showing.
... tracks whose kind is "chapters" are used by the user agent or the web site or web app to construct and present an
interface for navigating the named chapters, where each cue in the list represents a chapter in the media.
Multi-touch interaction - Web APIs
the touch event
interfaces support application-specific single and multi-touch interactions.
... however, the
interfaces can be a bit tricky for programmers to use because touch events are very different from other dom input events, such as mouse events.
TrackEvent - Web APIs
the trackevent
interface, which is part of the html dom specification, is used for events which represent changes to a set of available tracks on an html media element; these events are addtrack and removetrack.
... it's important not to confuse trackevent with the rtctrackevent
interface, which is used for tracks which are part of an rtcpeerconnection.
TreeWalker - Web APIs
properties this
interface doesn't inherit any property.
... methods this
interface doesn't inherit any method.
USBConfiguration - Web APIs
the usbconfiguration
interface of the webusb api provides information about a particular configuration of a usb device and the
interfaces that it supports.
... usbconfiguration.
interfacesread only returns an array containing instances of the usb
interface describing each
interface supported by this configuration.
VRStageParameters - Web APIs
the vrstageparameters
interface of the webvr api represents the values describing the the stage area for devices that support room-scale experiences.
... this
interface is accessible through the vrdisplay.stageparameters property.
VTTCue - Web APIs
the vttcue
interface—part of the api for handling webvtt (text tracks on media presentations)—describes and controls the text track associated with a particular <track> element.
... properties this
interface also inherits properties from texttrackcue.
ValidityState - Web APIs
the validitystate
interface represents the validity states that an element can be in, with respect to constraint validation.
... recommendation first snapshot of html living standard containing this
interface.
VideoPlaybackQuality - Web APIs
properties the videoplaybackquality
interface doesn't inherit properties from any other
interfaces.
... methods the videoplaybackquality
interface has no methods, and does not inherit any.
VideoTrackList.onchange - Web APIs
example this snippet establishes a handler for the change event that looks at each of the tracks in the list, calling a function to update the state of a user
interface control that indicates the current state of the track.
... var tracklist = document.queryselector("video").videotracks; tracklist.onchange = function(event) { tracklist.foreach(function(track) { updatetrackselectedbutton(track.id, track.selected); }); }; the updatetrackselectedbutton(), in this example, should be a function that finds a user
interface control using the track's id (perhaps the app uses the track id as the control element's id) and the track's selected flag to determine which state the control should be in now.
VisualViewport: resize event - Web APIs
the resize event of the visualviewport
interface is fired when the visual viewport is resized.
... bubbles no cancelable no
interface event event handler property onresize examples you can use the resize event in an addeventlistener method: visualviewport.addeventlistener('resize', function() { ...
VisualViewport: scroll event - Web APIs
the scroll event of the visualviewport
interface is fired when the visual viewport is scrolled.
... bubbles no cancelable no
interface event event handler property onscroll examples you can use the scroll event in an addeventlistener method: visualviewport.addeventlistener('scroll', function() { ...
VisualViewport - Web APIs
the visualviewport
interface of the visual viewport api represents the visual viewport for a given window.
... events listen to these events using addeventlistener() or by assigning an event listener to the relevant oneventname property of this
interface.
Visual Viewport API - Web APIs
user-
interface features like the on-screen keyboard (osk) can shrink the visual viewport without affecting the layout viewport.
...
interfaces visualviewport represents the visual viewport for a given window.
WakeLockSentinel - Web APIs
the wakelocksentinel
interface of the screen wake lock api provides a handle to the underlying platform wake lock and can be manually released and reacquired.
... properties this
interface provides the following properties.
Detect WebGL - Web APIs
the webgl rendering context is an
interface, through which you can set and query the state of the graphics machine, send data to the webgl, and execute draw commands.
... saving the state of the graphics machine within a single context
interface is not unique to webgl.
WebGL constants - Web APIs
table of contents standard webgl 1 constants standard webgl 2 constants webgl extension constants standard webgl 1 constants these constants are defined on the webglrenderingcontext
interface.
... constant name value description unpack_flip_y_webgl 0x9240 unpack_premultiply_alpha_webgl 0x9241 unpack_colorspace_conversion_webgl 0x9243 additional constants defined webgl 2 these constants are defined on the webgl2renderingcontext
interface.
Introduction to the Real-time Transport Protocol (RTP) - Web APIs
leveraging rtp to implement a "hold" feature because the streams for an rtcpeerconnection are implemented using rtp and the
interfaces above, you can take advantage of the access this gives you to the internals of streams to make adjustments.
... deactivating hold mode local peer when the local user clicks the
interface widget to disable hold mode, the disablehold() method is called to begin the process of restoring normal functionality.
Taking still photos with WebRTC - Web APIs
the html markup our html
interface has two main operational sections: the stream and capture panel and the presentation panel.
... note: this takes advantage of the fact that the htmlvideoelement
interface looks like an htmlimageelement to any api that accepts an htmlimageelement as a parameter, with the video's current frame presented as the image's contents.
Using DTMF with WebRTC - Web APIs
each time a tone is sent, the rtcpeerconnection receives a tonechange event with a tone property specifying which tone finished playing, which is an opportunity to update
interface elements, for example.
...in a more advanced application, you might update the user
interface, for example, to indicate which note is currently playing.
Migrating from webkitAudioContext - Web APIs
renaming of audioparam.settargetvalueattime the settargetvalueattime() method on the audioparam
interface has been renamed to settargetattime().
... console.log(activesources()); renaming of wavetable the wavetable
interface has been renamed to periodicwave.
Example and tutorial: Simple synth keyboard - Web APIs
this example makes use of the following web api
interfaces: audiocontext, oscillatornode, periodicwave, and gainnode.
... changing the master volume the volume slider in the settings bar provides a simple
interface to change the gain value on the master gain node, thereby changing the loudness of all playing notes.
Using IIR filters - Web APIs
the iirfilternode
interface of the web audio api is an audionode processor that implements a general infinite impulse response (iir) filter; this type of filter can be used to implement tone control devices and graphic equalizers, and the filter response parameters can be specified, so that it can be tuned as needed.
... the iirfilternode the web audio api now comes with an iirfilternode
interface.
Web Storage API - Web APIs
note: access to web storage from third-party iframes is denied if the user has disabled third-party cookies (firefox implements this behaviour from version 43 onwards.) note: web storage is not the same as mozstorage (mozilla's xpcom
interfaces to sqlite) or the session store api (an xpcom storage utility for use by extensions).
... web storage
interfaces storage allows you to set, retrieve and remove data for a specific domain and storage type (session or local.) window the web storage api extends the window object with two new properties — window.sessionstorage and window.localstorage — which provide access to the current domain's session and local storage objects respectively, and a window.onstorage event handler that fires when a storage area changes (e.g.
Web Workers API - Web APIs
web worker
interfaces abstractworker abstracts properties and methods common to all kind of workers (i.e.
...different types of worker have scope objects that inherit from this
interface and add more specific features.
Window: DOMContentLoaded event - Web APIs
bubbles yes cancelable yes (although specified as a simple event that isn't cancelable)
interface event event handler property none the original target for this event is the document that has loaded.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: animationcancel event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationcancel the original target for this event is the element that had the animation applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: animationend event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationend the original target for this event is the element that had the animation applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: animationiteration event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationiteration the original target for this event is the element that had the animation applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: animationstart event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationstart the original target for this event is the element that had the animation applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: offline event - Web APIs
the offline event of the window
interface is fired when the browser has lost access to the network and the value of navigator.online switches to false.
... bubbles no cancelable no
interface event event handler property onoffline examples // addeventlistener version window.addeventlistener('offline', (event) => { console.log("the network connection has been lost."); }); // onoffline version window.onoffline = (event) => { console.log("the network connection has been lost."); }; specifications specification status html living standardthe definition of 'offline event' in that specification.
Window: online event - Web APIs
the online event of the window
interface is fired when the browser has gained access to the network and the value of navigator.online switches to true.
... bubbles no cancelable no
interface event event handler property ononline examples // addeventlistener version window.addeventlistener('online', (event) => { console.log("you are now connected to the network."); }); // ononline version window.ononline = (event) => { console.log("you are now connected to the network."); }; specifications specification status html living standardthe definition of 'online event' in that specification.
Privileged features - Web APIs
chrome if on, the page is loaded as window's only content, without any of the browser's
interface elements.
...the page is supposed to provide a user
interface of its own, usually this feature is used to open xul documents (standard dialogs like the javascript console are opened this way).
Window.open() - Web APIs
the window
interface's open() method loads the specified resource into the new or existing browsing context (window, <iframe> or tab) with the specified name.
...therefore, tab-browsing is preferred by a lot of users because the normal user-
interface of the browser window they prefer is kept intact, remains stable.
Window: popstate event - Web APIs
the popstate event of the window
interface is fired when the active history entry changes while the user navigates the session history.
... bubbles yes cancelable no
interface popstateevent event handler property onpopstate the history stack if the history entry being activated was created by a call to history.pushstate() or was affected by a call to history.replacestate(), the popstate event's state property contains a copy of the history entry's state object.
Window: storage event - Web APIs
the storage event of the window
interface fires when a storage area (localstorage) has been modified in the context of another document.
... bubbles no cancelable no
interface storageevent event handler property onstorage examples log the samplelist item to the console when the storage event fires: window.addeventlistener('storage', () => { // when local storage changes, dump the list to // the console.
Window: transitioncancel event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property globaleventhandlers.ontransitioncancel the original target for this event is the element that had the transition applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: transitionend event - Web APIs
bubbles yes cancelable yes
interface transitionevent event handler property ontransitionend the transitionend event is fired in both directions - as it finishes transitioning to the transitioned state, and when it fully reverts to the default or non-transitioned state.
...you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: transitionrun event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property ontransitionrun the original target for this event is the element that had the transition applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Window: transitionstart event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property globaleventhandlers.ontransitionstart the original target for this event is the element that had the transition applied.
... you can listen for this event on the window
interface to handle it in the capture or bubbling phases.
Worker - Web APIs
the worker
interface of the web workers api represents a background task that can be created via script, which can send messages back to its creator.
... not all
interfaces and functions are available to scripts inside a worker.
WritableStream.getWriter() - Web APIs
the getwriter() method of the writablestream
interface returns a new instance of writablestreamdefaultwriter and locks the stream to that instance.
... examples the following example illustrates several features of this
interface.
WritableStream - Web APIs
the writablestream
interface of the the streams api provides a standard abstraction for writing streaming data to a destination, known as a sink.
... examples the following example illustrates several features of this
interface.
XMLDocument - Web APIs
the xmldocument
interface represents an xml document.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text...
Sending and Receiving Binary Data - Web APIs
var stream = components.classes["@mozilla.org/network/file-input-stream;1"] .createinstance(components.
interfaces.nsifileinputstream); stream.init(file, 0x04 | 0x08, 0644, 0x04); // file is an nsifile instance // try to determine the mime type of the file var mimetype = "text\/plain"; try { var mimeservice = components.classes["@mozilla.org/mime;1"] .getservice(components.
interfaces.nsimimeservice); mimetype = mimeservice.gettypefromfile(file); // file is an nsifile instance } catch (oevent) ...
...{ /* eat it; just use text/plain */ } // send var req = components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"] .createinstance(components.
interfaces.nsixmlhttprequest); req.open('put', url, false); /* synchronous!
XMLHttpRequestEventTarget - Web APIs
xmlhttprequesteventtarget is the
interface that describes the event handlers you can implement in an object that will handle events for an xmlhttprequest.
... <div id="
interfacediagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveaspectratio="xminymin meet"><a xlink:href="/docs/web/api/eventtarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/xmlhttpreq...
XPathExpression - Web APIs
this
interface is a compiled xpath expression that can be evaluated on a document or specific node to return information from its dom tree.
... example the following example shows the use of the xpathexpression
interface.
XPathNSResolver - Web APIs
the xpathnsresolver
interface permits prefix strings in an xpath expression to be properly bound to namespace uri strings.
... the xpathevaluator
interface can construct an implementation of xpathnsresolver from a node, or the
interface may be implemented by any application.
XPathResult - Web APIs
the xpathresult
interface represents the results generated by evaluating an xpath expression within the context of a given node.
... since xpath expressions can result in a variety of result types, this
interface makes it possible to determine and handle the type and value of the result.
XRBoundedReferenceSpace - Web APIs
the webxr device api's xrboundedreferencespace
interface describes a virtual world reference space which has preset boundaries.
... methods xrboundedreferencespace inherits the methods of its parent
interface, xrreferencespace.
XRInputSourceArray.entries() - Web APIs
the xrinputsourcearray
interface's entries() method returns a javascript iterator which can then be used to iterate over the key/value pairs in the input source array.
... specifications specification status comment webxr device apithe definition of 'xrinputsourcearray' in that specification.1 working draft xrinputsourcearray
interface [1] see iterator-like methods in information contained in a webidl file for information on how an iterable declaration in an
interface definition causes entries(), foreach(), keys(), and values() methods to be exposed from objects that implement the
interface.
XRInputSourceArray.keys() - Web APIs
the keys() method in the xrinputsourcearray
interface returns a javascript iterator which can then be used to iterate over the keys used to reference each item in the array of input sources.
... specifications specification status comment webxr device apithe definition of 'xrinputsourcearray' in that specification.1 working draft xrinputsourcearray
interface [1] see iterator-like methods in information contained in a webidl file for information on how an iterable declaration in an
interface definition causes entries(), foreach(), keys(), and values() methods to be exposed from objects that implement the
interface.
XRInputSourceEvent - Web APIs
the webxr device api's xrinputsourceevent
interface describes an event which has occurred on a webxr user input device such as a hand controller, gaze tracking system, or motion tracking system.
... methods the xrinputsourceevent
interface doesn't define any methods; however, several methods are inherited from the parent
interface, event.
XRPermissionDescriptor.requiredFeatures - Web APIs
the permitted values are: the types of reference space are listed in the table below, with brief information about their use cases and which
interface is used to implement them.
... xrreferencespacetype description
interface bounded-floor similar to the local type, except the user is not expected to move outside a predetermined boundary, given by the boundsgeometry in the returned object.
XRPermissionStatus - Web APIs
the xrpermissionstatus
interface defines the object returned by calling navigator.permissions.query() for the xr permission name; it indicates whether or not the app or site has permission to use webxr, an may be monitored over time for changes to that permissions tate.
... properties in addition to the properties listed below, xrpermissionstatus includes the properties defined by its parent
interface, permissionstatus.
XRSystem: ondevicechange - Web APIs
the ondevicechange property of the xrsystem
interface is passed a devicechange event whenever availability of an immersive device changes.
... the event that is fired is a "simple event" that implements the event
interface.
XRViewerPose - Web APIs
the webxr device api
interface xrviewerpose represents the pose (the position and orientation) of a viewer's point of view on the scene.
...the viewer may be the virtual representation of the user, or it may represent another device or
interface which may serve as the source of a position and orientation that make up a view upon the scene.
Color contrast - Accessibility
when designing readable
interfaces for different vision capabilities, the wcag guidelines recommend the following contrast ratios: type of content minimum ratio (aa rating) enhanced ratio (aaa rating) body text 4.5 : 1 7 : 1 large-scale text (120-150% larger than body text) 3 : 1 4.5 : 1 active user
interface components and graphical objects such as icons and graphs 3 : 1 not defined these ratios do not apply to "incidental" text, such as inactive controls, logotypes, or purely decorative text.
... 1.4.11 non-text contrast (aa) (added in 2.1) there should be a minimum color contrast ratio of 3 to 1 for user
interface components and graphical objects.
prefers-color-scheme - CSS: Cascading Style Sheets
syntax light indicates that user has notified the system that they prefer an
interface that has a light theme, or has not expressed an active preference.
... dark indicates that user has notified the system that they prefer an
interface that has a dark theme.
prefers-contrast - CSS: Cascading Style Sheets
more indicates that user has notified the system that they prefer an
interface that has a higher level of contrast.
... less indicates that user has notified the system that they prefer an
interface that has a lower level of contrast.
appearance (-moz-appearance, -webkit-appearance) - CSS: Cascading Style Sheets
syntax /* css basic user
interface module level 4 values */ appearance: none; appearance: auto; appearance: menulist-button; appearance: textfield; /* "compat-auto" values, which have the same effect as 'auto' */ appearance: button; appearance: searchfield; appearance: textarea; appearance: push-button; appearance: slider-horizontal; appearance: checkbox; appearance: radio; appearance: square-button; appearance: menulist; appeara...
... specifications specification status comment css basic user
interface module level 4the definition of 'appearance' in that specification.
outline-style - CSS: Cascading Style Sheets
formal definition initial valuenoneapplies toall elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax auto | <'border-style'> examples setting outline style to auto the auto value indicates a custom outline style — typically a style [that] is either a user
interface default for the platform, or perhaps a style that is richer than can be described in detail in css, e.g.
...px; } result setting outline style to inset and outset html <div> <div class="inset"> <p class="outset">outline demo</p> </div> </div> css .inset { outline-style: inset; } .outset { outline-style: outset; } /* to make the demo clearer */ * { outline-width: 10px; padding: 15px; } result specifications specification status comment css basic user
interface module level 3the definition of 'outline-style' in that specification.
perspective() - CSS: Cascading Style Sheets
the perspective() css function defines a transformation that sets the distance between the user and the z=0 plane, the perspective from which the viewer would be if the 2-dimensional
interface were 3-dimensional.
...a positive value makes the element appear closer to the user than the rest of the
interface, a negative value farther.
Event reference
each event is represented by an object which is based on the event
interface, and may have additional custom fields and/or functions used to get additional information about what happened.
...each event is listed along with the
interface representing the object sent to recipients of the event (so you can find information about what data is provided with each event) as well as a link to the specification or specifications that define the event.
Ajax - Developer guides
when these technologies are combined in the ajax model, web applications are able to make quick, incremental updates to the user
interface without reloading the entire browser page.
...this article will explain how to use some ajax techniques, like: analyzing and manipulating the response of the server monitoring the progress of a request submitting forms and upload binary files – in pure ajax, or using formdata objects using ajax within web workers fetch api the fetch api provides an
interface for fetching resources.
Parsing and serializing XML - Developer guides
note: there is in fact an htmldocument
interface as well, but it is not necessarily an independent type.
... in some browsers it is, while in others it is simply an alias for the document
interface.
<acronym> - HTML: Hypertext Markup Language
dom
interface this element implements the htmlelement
interface.
... implementation note: up to gecko 1.9.2 inclusive, firefox implements the htmlspanelement
interface for this element.
<audio>: The Embed Audio element - HTML: Hypertext Markup Language
note: even though it's an <audio> element, it still has video and text track lists, and can in fact be used to present video, although the use
interface implications can be odd.
... implicit aria role no corresponding role permitted aria roles application dom
interface htmlaudioelement specifications specification status comment html living standardthe definition of '<audio>' in that specification.
<big>: The Bigger Text element - HTML: Hypertext Markup Language
<span class="bigger">this whole sentence is in bigger letters.</span> </p> result dom
interface this element implements the htmlelement
interface.
... implementation note: up to gecko 1.9.2 inclusive, firefox implements the htmlspanelement
interface for this element.
<input type="datetime-local"> - HTML: Hypertext Markup Language
the main reasons why this was removed are a lack of implementation in browsers, and concerns over the user
interface/experience.
...as an example, the datetime-local picker on firefox for android looks like this: non-supporting browsers gracefully degrade to a text input, but this creates problems both in terms of consistency of user
interface (the presented control will be different), and data handling.
<input type="file"> - HTML: Hypertext Markup Language
events change and input supported common attributes required additional attributes accept, capture, files, multiple idl attributes files and value dom
interface htmlinputelement properties properties that apply only to elements of type file methods select() value a file input's value attribute contains a domstring that represents the path to the selected file(s).
... attribute description webkitdirectory a boolean indicating whether or not to only allow the user to choose a directory (or directories, if multiple is also present) webkitdirectory the boolean webkitdirectory attribute, if present, indicates that only directories should be available to be selected by the user in the file picker
interface.
<input type="password"> - HTML: Hypertext Markup Language
it may simply fill in a new suggested password, or it might show the user an
interface for creating one.
... <label for="userpassword">password: </label> <input id="userpassword" type="password" required> <input type="submit" value="submit"> specifying an input mode if your recommended (or required) password syntax rules would benefit from an alternate text entry
interface than the standard keyboard, you can use the inputmode attribute to request a specific one.
<label> - HTML: Hypertext Markup Language
the html <label> element represents a caption for an item in a user
interface.
... implicit aria role no corresponding role permitted aria roles no role permitted dom
interface htmllabelelement specifications specification status comment html living standardthe definition of '<label>' in that specification.
<optgroup> - HTML: Hypertext Markup Language
implicit aria role group permitted aria roles no role permitted dom
interface htmloptgroupelement note: optgroup elements may not be nested.
... label the name of the group of options, which the browser can use when labeling the options in the user
interface.
<s> - HTML: Hypertext Markup Language
implicit aria role no corresponding role permitted aria roles any dom
interface htmlelement attributes this element only includes the global attributes.
... implementation note: up to gecko 1.9.2 inclusive, firefox implements the htmlspanelement
interface for this element.
<span> - HTML: Hypertext Markup Language
implicit aria role no corresponding role permitted aria roles any dom
interface htmlspanelement (before html5, the
interface was htmlelement) attributes this element only includes the global attributes.
... recommendation the dom
interface is now htmlspanelement.
<ul>: The Unordered List element - HTML: Hypertext Markup Language
implicit aria role list permitted aria roles directory, group, listbox, menu, menubar, none, presentation, radiogroup, tablist, toolbar, tree dom
interface htmlulistelement attributes this element includes the global attributes.
...the values defined under html3.2 and the transitional version of html 4.0/4.01 are: circle disc square a fourth bullet type has been defined in the webtv
interface, but not all browsers support it: triangle.
<video>: The Video Embed element - HTML: Hypertext Markup Language
addtype video/webm .webm your web host may provide an easy
interface to mime type configuration changes for new technologies until a global update naturally occurs.
... implicit aria role no corresponding role permitted aria roles application dom
interface htmlvideoelement specifications specification feedback html living standardthe definition of '<video>' in that specification.
<xmp> - HTML: Hypertext Markup Language
dom
interface this element implements the htmlelement
interface.
... implementation note: up to gecko 1.9.2 inclusive, firefox implements the htmlspanelement
interface for this element.
Content negotiation - HTTP
a default value is often set according the language of the graphical
interface of the user agent, but most browsers allow to set different language preferences.
...most user-agents provide a default value for the accept-language header, adapted to the user
interface language and end users often do not modify it, either by not knowing how, or by not being able to do it, as in an internet café for instance.
Accept-Language - HTTP
browsers set adequate values for this header according to their user
interface language and even if a user can change it, this happens rarely (and is frowned upon as it leads to fingerprinting).
...the content of the accept-language is often out of the control of the user (like when traveling and using an internet cafe in a different country); the user may also want to visit a page in another language than the locale of their user
interface.
JavaScript technologies overview - JavaScript
the w3c standardizes the core document object model, which defines language-agnostic
interfaces that abstract html and xml documents as objects, and also defines mechanisms to manipulate this abstraction.
... other notable apis the settimeout and setinterval functions were first specified on the window
interface in html standard.
Authoring MathML - MathML
cons: this may be harder to use: people must learn a syntax, typos in the code may easily lead to parsing or rendering errors etc the
interface is not user-friendly: only code editor without immediate display of the mathematical expression.
... graphical
interface input box texzilla has several
interfaces, including a ckeditor plugin used on mdn, an online demo, a firefox add-on or a firefoxos webapp.
Web audio codec guide - Web media technologies
that having been said, it's been in use for decades, is "good enough" for voice applications, and is vital if you may need to
interface with a standard telephone network.
... handbrake a highly popular open source front-end to ffmpeg which adds a graphical user
interface that makes it much easier to control the wide variety of options ffmpeg offers while encoding audio and/or video.
Performance fundamentals - Web Performance
high-level declarative languages), or use low-level imperative
interfaces offered by the <canvas> element (which includes webgl).
... keep your
interface simple one big performance issue we found in html5 apps was that moving lots of dom elements around makes everything sluggish — especially when they feature lots of gradients and drop shadows.
Optimizing startup performance - Web Performance
other than the reasons suggested above, consider the impact of a non-responsive page or user
interface.
...you should present some kind of
interface, such as a progress bar, so that the user knows how much longer they'll need to wait while your app starts up.
Installing and uninstalling web apps - Progressive web apps (PWAs)
by reducing the user experience differential between the web app and native apps on the user's device, you reduce both the loss of any muscle memory they have revolving around the native
interface of the device and the sensation of "something isn't quite right" that users can experience when switching between native and web-based apps.
...you'll see fox pictures, but more importantly, some form of user
interface will be available to let you install the site as a web app.
How to make PWAs installable - Progressive web apps (PWAs)
this makes the web app easier to access; additionally, you can specify that the app be launched in fullscreen or standalone mode, thus removing the default browser user
interface that would otherwise be present, creating an even more seamless and native-like feel.
...this information is needed for the browser to present the web app properly during the installation process, as well as within the device's app-launching
interface, such as the home screen of a mobile device.
console - Archive of obsolete content
depending on the console's underlying implementation and user
interface, you may be able to examine the properties of non-primitive objects that are logged.
Cookies - Archive of obsolete content
reading existing cookies cookies for a given host, represented as nsicookie2 objects, can be enumerated as such: let enum = services.cookies.getcookiesfromhost("example.com"); while (enum.hasmoreelements()) { var cookie = enum.getnext().query
interface(ci.nsicookie2); dump(cookie.host + ";" + cookie.name + "=" + cookie.value + "\n"); } all cookies, regardless of host, can be enumerated using services.cookies.enumerator rather than getcookiesfromhost().
HTML in XUL for rich tooltips - Archive of obsolete content
is inside the custom xul tooltip var div = document.getelementbyid("myhtmltipdiv"); //clear the html div element of any prior shown custom html while(div.firstchild) div.removechild(div.firstchild); //safely convert html string to a simple dom object, stripping it of javascript and more complex tags var injecthtml = components.classes["@mozilla.org/feed-unescapehtml;1"] .getservice(components.
interfaces.nsiscriptableunescapehtml) .parsefragment(txt, false, null, div); //attach the dom object to the html div element div.appendchild(injecthtml); } } window.addeventlistener('load', htmltip.onload, false); in the xul overlay, xmlns:html is used to enable html tags to be used inside the xul.
Post data to window - Archive of obsolete content
here is an example: var datastring = "name1=data1&name2=data2"; // post method requests must wrap the encoded text in a mime // stream const cc = components.classes; const ci = components.
interfaces; var stringstream = cc["@mozilla.org/io/string-input-stream;1"].
Sidebar - Archive of obsolete content
resizing the sidebar programmatically in case you need to change the width of the sidebar, use the following code: function setsidebarwidth(newwidth) { var mainwindow = window.query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsiwebnavigation) .query
interface(components.
interfaces.nsidocshelltreeitem) .roottreeitem .query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsidomwindow); mainwindow.document.getelementbyid("sidebar-box").width=newwidth; } or function setsidebarwidth(newwidth) ...
StringView - Archive of obsolete content
the aims of this library are: to create a c-like
interface for strings (i.e., an array of character codes — an arraybufferview in javascript) based upon the javascript arraybuffer
interface to create a highly extensible library that anyone can extend by adding methods to the object stringview.prototype to create a collection of methods for such string-like objects (since now: stringviews) which work strictly on arrays of numbers rather than on creating new immutable javascript strings to work with unicode encodings other than javascript's default utf-16 domstrings introduction as web applications become more and more powerful, adding features such as audio and video manipulation, access to raw data using websockets, and so forth, it has become clear that there are times when it w...
JavaScript Daemons Management - Archive of obsolete content
this.index + 1 > this.length; }; daemon.prototype.synchronize = function () { if (this.paused) { return; } clearinterval(this.session); this.session = setinterval(daemon.forcecall, this.rate, this); }; daemon.prototype.pause = function () { clearinterval(this.session); this.paused = true; }; /* system not required daemon instances methods */ /** * basic user
interface.
Beginner tutorials - Archive of obsolete content
this technical note examines the use of underscores in css, and why they should be generally avoided in most circumstances.xml datathis page contains an example of how you can use css with xml data.xul user
interfacesthis page illustrates mozilla's specialized language for creating user
interfaces.
MozBeforeResize - Archive of obsolete content
general info specification mozilla specific
interface event bubbles no cancelable no target window default action none properties property type description target read only eventtarget the event target (the topmost target in the dom tree).
cached - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
chargingchange - Archive of obsolete content
general info specification battery
interface event bubbles no cancelable no target batterymanager default action none properties the event callback doesn't receive any event objects, but properties can be read from the batterymanager object received from the navigator.getbattery method.
chargingtimechange - Archive of obsolete content
general info specification battery
interface event bubbles no cancelable no target batterymanager default action none properties the event callback doesn't receive any event objects, but properties can be read from the batterymanager object received from the navigator.getbattery method.
checking - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
dischargingtimechange - Archive of obsolete content
general info specification battery
interface event bubbles no cancelable no target batterymanager default action none properties the event callback doesn't receive any event objects, but properties can be read from the batterymanager object received from the navigator.getbattery method.
downloading - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
error - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
levelchange - Archive of obsolete content
general info specification battery
interface event bubbles no cancelable no target batterymanager default action none properties the event callback doesn't receive any event objects, but properties can be read from the batterymanager object received from the navigator.getbattery method.
noupdate - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
obsolete - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
progress - Archive of obsolete content
general info specification offline
interface progressevent bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
updateready - Archive of obsolete content
general info specification offline
interface event bubbles no cancelable no target applicationcache default action none properties property type description target eventtarget (dom element) the event target (the topmost target in the dom tree).
Documentation for BiDi Mozilla - Archive of obsolete content
improvements to lists with hebrew and arabic list-style-type summary of new classes class name xpcom
interface (if applicable) implementation comments nsibidi intl\unicharutil\public\nsibidi.h intl\unicharutil\src\nsbidiimp.cpp implementation of the unicode bidi algorithm nsiubidiutils intl\unicharutil\public\nsiubidiutils.h intl\unicharutil\src\nsbidiutilsimp.cpp utilities for bidi processing, including: character classification symmetric swapping reordering shaping numeric translation conversion t...
Code snippets - Archive of obsolete content
let mainwindow = window.query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsiwebnavigation) .query
interface(components.
interfaces.nsidocshelltreeitem) .roottreeitem .query
interface(components.
interfaces.nsi
interfacerequestor) .get
interface(components.
interfaces.nsidomwindow); ...
Extenders - Archive of obsolete content
manifest chief mechanism for allowing advanced api use within your jetpack superpowers similar to libraries, superpowers are for adding deeper platform coupling for your jetpack sandboxes safely abstracts library interoperability issues so you don't have to worry about them future api
interface method for including not yet finalized functionality in your jetpack ...
Meta - Archive of obsolete content
first run control over the content and experience of your jetpack's initial use me introspection of your jetpack's dynamic state settings
interface for defining and accessing user settings with built-in ui ...
Storage - Archive of obsolete content
simple storage an easy-to-use persistent object data store file access
interface for performing file i/o settings settings persist across browser sessions and are accessible to jetpacks via simple object retrieval and assignment.
BundleLibrary - Archive of obsolete content
er: greader.webapp facebook: facebook.webapp twitter: twitter.webapp user contributed bundles gmail w/gtalk: gmail.webapp (note: work with latest version of prism!) 32 online todo lists: zip file with web apps for 32 online todo lists anywhere.fm: anywhere.fm@prism.app.webapp a service that lets you upload your entire music library to their servers and listen from anywhere through a slick flash
interface.
FAQ - Archive of obsolete content
it lets users start web applications from their desktop, start menu, and dock, and it opens those applications in their own window separate from a web browser and without the browser
interface (back and forward buttons, location bar, etc.).
Remote XUL - Archive of obsolete content
the remote xul manager extension lets you manage this whitelist, which is maintained using nsipermissionmanager, by creating entries of type "allowxulxbl", like this: components.classes["@mozilla.org/permissionmanager;1"] .getservice(components.
interfaces.nsipermissionmanager) .add(uri, 'allowxulxbl', components.
interfaces.nsipermissionmanager.allow_action); see using remote xul.
arrowscrollbox - Archive of obsolete content
scrollboxobject type: nsiscrollboxobject the scroll box object implements the nsiscrollboxobject
interface, which may be used to retrieve and adjust the scroll position of the list box.
checkbox - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider, nsidomxulcheckboxelement ...
colorpicker - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsidomxulcontrolelement bugs the onchange event only fires if attribute type is set to "button".
datepicker - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsidomxulcontrolelement ...
groupbox - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider ...
label - Archive of obsolete content
related elements description attributes label
interfaces nsiaccessibleprovider, nsidomxullabelelement notes labels are not focusable note: starting in gecko 2.0, labels are properly not focusable.
listbox - Archive of obsolete content
related elements listcell, listcol, listcols, listhead, listheader, listitem
interfaces nsiaccessibleprovider, nsidomxulmultiselectcontrolelement ...
menu - Archive of obsolete content
related elements menubar, menuitem, menulist, menupopup, menuseparator
interfaces nsiaccessibleprovider, nsidomxulcontainerelement, nsidomxulcontaineritemelement, nsidomxulselectcontrolitemelement ...
menubar - Archive of obsolete content
e, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements menu, menuitem, menulist, menupopup, menuseparator
interfaces nsiaccessibleprovider ...
menuitem - Archive of obsolete content
related elements menu, menubar, menulist, menupopup, menuseparator
interfaces nsiaccessibleprovider, nsidomxulcontaineritemelement, nsidomxulselectcontrolitemelement ...
menuseparator - Archive of obsolete content
ualnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements menu, menubar, menuitem, menulist, menupopup
interfaces nsiaccessibleprovider, nsidomxulcontaineritemelement, nsidomxulselectcontrolitemelement ...
progressmeter - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider ...
radio - Archive of obsolete content
defaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements radiogroup, checkbox
interfaces nsiaccessibleprovider, nsidomxulselectcontrolitemelement, nsidomxullabeledcontrolelement ...
richlistitem - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsiaccessibleprovider, nsidomxulselectcontrolitemelement ...
scrollbox - Archive of obsolete content
do this instead: var xpcom
interface =scrollbox_element.boxobject.query
interface( components.
interfaces.nsiscrollboxobject); xpcom
interface.ensureelementisvisible(child_element_to_make_visible); see the nsiscrollboxobject api for other scroll-related methods.
statusbar - Archive of obsolete content
(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements statusbarpanel
interfaces nsiaccessibleprovider ...
textbox - Archive of obsolete content
l script: <textbox id="pnnote" multiline="true" rows="2" cols="70" onkeypress="return pncountnotechars(event);"/> the javascript: function pncountnotechars(evt) { //allow non character keys (delete, backspace and and etc.) if ((evt.charcode == 0) && (evt.keycode != 13)) return true; if (evt.target.value.length < 10) { return true; } else { return false; } } related
interfaces nsiaccessibleprovider, nsidomxultextboxelement ...
timepicker - Archive of obsolete content
haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related
interfaces nsidomxulcontrolelement ...
toolbargrippy - Archive of obsolete content
ize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements toolbar, toolbarbutton, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring, toolbox
interfaces nsiaccessibleprovider ...
toolbarspacer - Archive of obsolete content
ize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspring, toolbox
interfaces nsiaccessibleprovider ...
toolbarspring - Archive of obsolete content
ector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata related elements toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbox
interfaces nsiaccessibleprovider ...
toolbox - Archive of obsolete content
related elements toolbar, toolbarbutton, toolbargrippy, toolbaritem, toolbarpalette, toolbarseparator, toolbarset, toolbarspacer, toolbarspring
interfaces nsiaccessibleprovider ...
Building XULRunner with Python - Archive of obsolete content
the jsconsole can also be open and used from code, for example (in javascript) function openjavascriptconsole() { var wwatch = components.classes["@mozilla.org/embedcomp/window-watcher;1"] .getservice(components.
interfaces.nsiwindowwatcher); wwatch.openwindow(null, "chrome://global/content/console.xul", "_blank", "chrome,dialog=no,all", null); } // dump to the js console (xulrunner -jsconsole) function jsdump(str) { components.classes['@mozilla.org/consoleservice;1'] .getservice(components.
interfaces.nsiconsoleservice) .logstringmessage(str); } function jserror(s...
Components - Archive of obsolete content
for new components or
interface changes of existing ones to be noticed at all, you need to change the buildid in application.ini to trigger a re-registration of the components.
Debugging a XULRunner Application - Archive of obsolete content
jsdump(str) (function defined below) will output str as a "message" with a speech bubble icon next to it: function jsdump(str) { components.classes['@mozilla.org/consoleservice;1'] .getservice(components.
interfaces.nsiconsoleservice) .logstringmessage(str); } for more information about the error console see the error console and browser console article.
Dialogs in XULRunner - Archive of obsolete content
the xul filepickers are xpcom components and must be instantiated before using, like this: function dofileopen() { /* see: http://developer.mozilla.org/en/docs/xul_tutorial:open_and_save_dialogs */ var nsifilepicker = components.
interfaces.nsifilepicker; var fp = components.classes["@mozilla.org/filepicker;1"].createinstance(nsifilepicker); fp.init(window, "open file", nsifilepicker.modeopen); fp.appendfilters(nsifilepicker.filtertext | nsifilepicker.filterall); var res = fp.show(); if (res == nsifilepicker.returnok) { var thefile = fp.file; alert(thefile.leafname); // --- do something with the file here --...
Make your xulrunner app match the system locale - Archive of obsolete content
from xpcom import components ps_cls = components.classes["@mozilla.org/preferences-service;1"] ps = ps_cls.getservice(components.
interfaces.nsiprefservice) branch = ps.getbranch("general.useragent.") branch.setcharpref("locale", lang) i also set the language environment variable to match the system locale so that python's gettext functionality will work (it pulls straight from language instead of using setlocale): os.environ["language"] = lang ...
What XULRunner Provides - Archive of obsolete content
tion support (no ui) cryptography xbl (xbl2 planned) xul svg xslt xml extras (xmlhttprequest, domparser, etc.) web services (soap) auto-update support (not yet complete) type ahead find toolbar history implementation (the places implementation in the 1.9 cycle) accessibility support ipc services for communication between gecko-based apps (not yet complete) storage/sqlite
interfaces user
interface features the following user
interface is supplied by xulrunner, and may be overridden by embedders under certain circumstances: apis and user
interface for installing, uninstalling, and upgrading xul applications.
2006-12-01 - Archive of obsolete content
peter wilson's reply was to add a method that does the deleting with a native implementation that releases the resources held by the object as seen in this database
interface: var mydbase = new pgsqlconnection; mydbase.connect("database"); mydbase.exec("select * from mytable where ..."); // use the result data - (native implementation function) mydbase.close() spidermonkey for server side inquiry about why javascript hasn't caught on for general server-side scripting.
JS-Engine FAQ - Archive of obsolete content
to write wrappers in pure javascript to
interface with any c library on the system there are mechanisms such as xpcshell, wxjs, jsdb, jsni coding spidermonkey in c check out this tutorial how to compile tamarin on linux/x86 there is a patch that allows you to compile it.
2006-10-27 - Archive of obsolete content
multiple presshells discussion on why current
interfaces allow for multiple presshells and how the relationships work for the following objects: docshell, presshell, prescontext, document, domwindow, widget, docshell and contentviewer.
2006-11-24 - Archive of obsolete content
discussions tutorials: non c++ bindings for xpcom tutorials on how to
interface with firefox using xpcom on a similar basis to how a developer can with internet explorer through it's com
interface tutorals and references related to extension development tutorials on developing extensions which use the third party libraries for firefox references to mozilla api exposed javascript component + xmldocument not accessible a discussion on error: uncaught exception: permission denied to get property xmldocument.textcontent creating xpcom components a good discussion about "components.classes[cid] has no properties" error firefox http explanation about how firefox handles the http aspec...
2006-12-08 - Archive of obsolete content
discussions xpcom cpp to js callback engaging discussion on a problem with trying to call back from c++ to a javascript object using an
interface the developer created with an idl.
Web standards - MDN Web Docs Glossary: Definitions of Web-related terms
specifications for markup language (e.g., html), style definitions (i.e., css), dom, accessibility iana (internet assigned numbers authority): name and number registries ecma intl.: scripting standards, most prominently for javascript iso (international organization for standardization): standards governing a diverse array of aspects, including character encodings, website management, and user-
interface design learn more general knowledge web standards on wikipedia ...
MDN Web Docs Glossary: Definitions of Web-related terms
xhtml xinclude xlink xml xpath xquery xslt other 404 502 alpn at-rule attack byte-order mark character set client cryptosystem debug digital signature execution flex-direction glsl
interface library memory management routers self-executing anonymous function stylesheet vector image ...
Mobile accessibility - Learn web development
there are some exceptions that need special consideration for mobile; the main ones are: control mechanisms — make sure
interface controls such as buttons are accessible on mobiles (i.e., mainly touchscreen), as well as desktops/laptops (mainly mouse/keyboard).
Styling links - Learn web development
previous overview: styling text next when styling links, it is important to understand how to make use of pseudo-classes to style link states effectively, and how to style links for use in common varied
interface features such as navigation menus and tabs.
Styling text - Learn web development
styling links when styling links, it is important to understand how to make use of pseudo-classes to style link states effectively, and how to style links for use in common varied
interface features such as navigation menus and tabs.
Basic native form controls - Learn web development
keep in mind this is just a user
interface feature; unless you submit your form securely, it will get sent in plain text, which is bad for security — a malicious party could intercept your data and steal passwords, credit card details, or whatever else you've submitted.
Your first form - Learn web development
forms allow users to enter data, which is generally sent to a web server for processing and storage (see sending form data later in the module), or used on the client-side to immediately update the
interface in some way (for example, add another item to a list, or show or hide a ui feature).
JavaScript basics - Learn web development
these include: browser application programming
interfaces (apis) built into web browsers, providing functionality such as dynamically creating html and setting css styles; collecting and manipulating a video stream from a user's webcam, or generating 3d graphics and audio samples.
Responsive images - Learn web development
vector images are great for simple graphics, patterns,
interface elements, etc., but it starts to get very complex to create a vector-based image with the kind of detail that you'd find in say, a photo.
JavaScript — Dynamic client-side scripting - Learn web development
client-side web apis when writing client-side javascript for web sites or applications, you won't go very far before you start to use apis —
interfaces for manipulating different aspects of the browser and operating system the site is running on, or even data from other web sites or services.
React resources - Learn web development
routing while routing is traditionally handled by a server and not an application on the user's computer, it is possible to configure a web application to read and update the browser's location, and render certain user
interfaces.
Continuous Integration
the talos harness produces a single number per test (typically the median of all the replicates excluding the first 1-5), which are stored in treeherder's database, and are accessible via the perfherder
interface.
Debugging JavaScript
log.jsm (formerly log4moz) this is a partial implementation of the log4*
interfaces (for example, see log4j or log4net).
Adding APIs to the navigator object
programmatically adding an object to navigator var categorymanager = components.classes["@mozilla.org/categorymanager;1"] .getservice(components.
interfaces.nsicategorymanager); categorymanager.addcategoryentry("javascript-navigator-property", "myapi", my_contract_id, false, true); this adds a new object, myapi, to the window.navigator object.
The Firefox codebase: CSS Guidelines
colors for common areas of the firefox
interface (panels, toolbar buttons, etc.), mozilla-central often comes with some useful css variables that are adjusted with the correct values for different platform configurations, so using those css variables can definitively save some testing time, as you can assume they already work correctly.
Gecko Logging
#include "mozilla/logging.h" static mozilla::lazylogmodule sfoolog("foo"); logging
interface a basic
interface is provided in the form of 2 macros and an enum class.
Developer guide
interface compatibility guidelines for modifying scriptable and binary apis in mozilla.
Performance
} object.assign(contentypolicy.prototype, { classdescription: ..., classid: ..., contractid: ..., query
interface: xpcomutils.generateqi([ci.nsicontentpolicy]), shouldload: function(type, location, origin, context) { let resultlist = services.cpmm.sendsyncmessage("my-addon:check-load", {destination: location, source: origin}) // <=== sync message!
Using the Browser API
api extensions: the api includes several new methods and events to manipulate and listen for changes to the embedded content's state, interited by the htmliframeelement
interface.
HTMLIFrameElement.download()
the download() method of the htmliframeelement
interface downloads a specified url, storing it at /sdcard/download.
HTMLIFrameElement.executeScript()
the executescript() method of the htmliframeelement
interface allows a specified script to be executed against a page loaded in the browser <iframe>.
HTMLIFrameElement.getCanGoBack()
the getcangoback() method of the htmliframeelement
interface is used to indicate whether it's possible to go back in the navigation history of the browser <iframe>.
HTMLIFrameElement.getManifest()
the getmanifest() method of the htmliframeelement
interface retrieves the manifest of an app loaded in the browser <iframe> and returns it as json.
HTMLIFrameElement.getStructuredData()
the getstructureddata() method of the htmliframeelement
interface retrieves any structured microdata (and hcard and hcalendar microformat data) contained in the html loaded in the browser <iframe> and returns it as json.
HTMLIFrameElement.goBack()
the goback() method of the htmliframeelement
interface is used to navigate backwards in the browser <iframe>'s history.
mozbrowseractivitydone
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserasyncscroll
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowseraudioplaybackchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsercaretstatechanged
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserclose
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the event target (the topmost target in the dom tree).
mozbrowsercontextmenu
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserdocumentfirstpaint
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the event target (the topmost target in the dom tree).
mozbrowsererror
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserfindchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserfirstpaint
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the event target (the topmost target in the dom tree).
mozbrowsericonchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserloadend
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserloadstart
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the event target (the topmost target in the dom tree).
mozbrowserlocationchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsermanifestchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsermetachange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowseropensearch
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowseropentab
the mozbrowseropentab event is fired when a new tab is opened within a browser <iframe> as a result of the user issuing a command to open a link target in a new tab (for example ctrl/cmd + click.) general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowseropenwindow
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserresize
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserscroll
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserscrollareachanged
this can occur on resize and when the page size changes (while loading for example.) general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserscrollviewchange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsersecuritychange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserselectionstatechanged
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsershowmodalprompt
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowsertitlechange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowserusernameandpasswordrequired
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
mozbrowservisibilitychange
general info specification non standard
interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
HTMLIFrameElement.purgeHistory()
the purgehistory() method of the htmliframeelement
interface is used to clear the browsing history associated with the browser <iframe>.
HTMLIFrameElement.sendMouseEvent()
the sendmouseevent() method of the htmliframeelement
interface allows you to fake a mouse event and send it to the browser <iframe>'s content.
HTMLIFrameElement.stop()
the stop() method of the htmliframeelement
interface is used to stop loading the content of the <iframe>.
HTMLIFrameElement.zoom()
the zoom() method of the htmliframeelement
interface changes the zoom factor of the browser <iframe>'s content.
MozScrolledAreaChanged
specification mozilla specific
interface uievent bubbles yes cancelable yes target defaultview, document default action none properties property type description targetread only eventtarget the event target (the topmost target in the dom tree).
smartcard-insert
the smartcard-insert event is fired when the insertion of a smart card has been detected specification mozilla specific
interface event bubbles no cancelable no target document default action none properties property type description targetread only eventtarget the event target (the topmost target in the dom tree).
smartcard-remove
specification mozilla specific
interface event bubbles no cancelable no target document default action none properties property type description targetread only eventtarget the event target (the topmost target in the dom tree).
Gecko SDK
contents of the sdk the sdk contains the following: 1.9.2 idl files for frozen
interfaces (under idl/) header files for frozen
interfaces, xpcom functions, and nspr functions (under include/) import libraries or shared libraries (under lib/) static utility libraries (under lib/) various tools (under bin/) for more information about safely linking xpcom components using the xpcom "glue" library, see xpcom glue.
HTML parser threading
due to legacy
interface design oddities, an nshtml5parser is initialized by calling nshtml5parser::parse(nsiuri*, nsirequestobserver*, void*, nsdtdmode).
Gecko
in xul-based applications gecko also renders the application's user
interface.
How to Report a Hung Firefox
getservice(ci.nsiwindowmediator); let win = wm.getmostrecentwindow("navigator:browser"); let browser = win.gbrowser.selectedbrowser; if (browser.isremotebrowser) { browser.messagemanager.loadframescript('data:,let appinfo = components.classes["@mozilla.org/xre/app-info;1"];if (appinfo && appinfo.getservice(components.
interfaces.nsixulruntime).processtype != components.
interfaces.nsixulruntime.process_type_default) {components.utils.import("resource://gre/modules/ctypes.jsm");var zero = new ctypes.intptr_t(8);var badptr = ctypes.cast(zero, ctypes.pointertype(ctypes.int32_t));var crash = badptr.contents;}', true); } other techniques on os x if you use a nightly build (>= firefox 16), you can use activity monitor's "sam...
IME handling guide
tsftextstore implements some com
interfaces which is necessary to work with tip.
IPDL Best Practices
calling ipdl functions willy-nilly let's say you have an object that implements an ipdl
interface, but it also outlives it (case in point: reference-counted).
Introduction to Layout in Mozilla
creates pres context and pres shell content model construction content arrives from network via nsistreamlistener::ondataavailable parser tokenizes & processes content; invokes methods on nsicontentsink with parser node objects some buffering and fixup occurs here opencontainer, closecontainer, addleaf content sink creates and attaches content nodes using nsicontent
interface content sink maintains stack of “live” elements more buffering and fixup occurs here insertchildat, appendchildto, removechildat frame construction content sink uses nsidocument
interface to notify of Δs in content model contentappended, contentinserted, contentremoved presshell is registered as document observer receives contenta...
Addon
the
interface can represent many different kinds of add-ons and as such, some of the methods and properties are considered "required" and others "optional," which means that the optional methods or property may not exist on addon instances for some types of add-ons.
AddonType
uipriority integer a number used to determine the order of types displayed in the user
interface.
Code Samples
components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("yourextensionid", function(addon) { var addonlocation = addon.getresourceuri("").query
interface(components.
interfaces.nsifileurl).file.path; }); accessing file and version information components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("my-addon@foo.com", function(addon) { alert("my extension's version is " + addon.version); alert("did i remember to include that file.txt file in my xpi?
Add-on Manager
many functions in the add-on manager
interface operate asynchronously returning results through callbacks passed to the functions.
Add-on Repository
the add-on repository is responsible for finding available add-ons; it provides an
interface for interacting with the addons.mozilla.org (amo) site.
Assert.jsm
the assert.jsm javascript code module implements the commonjs unit testing specification version 1.1, which provides a basic, standardized
interface for performing in-code logical assertions with optional, customizable error reporting.
DeferredTask.jsm
firefox 28 note
interface was changed in firefox 28, and old methods were removed.
Download
this object is transient, though it can be included in a downloadlist so that it can be managed by the user
interface and persisted across sessions.
DownloadList
a downloadlist object represents a collection of download objects that can be viewed and managed by the user
interface, and persisted across sessions.
Power profiling overview
power estimates the next best measurements come from recent (sandy bridge and later) intel processors that implement the rapl (running average power limit)
interface that provides msrs containing energy consumption estimates for up to four power planes or domains of a machine, as seen in the diagram above.
Performance
tools/power/rapl (mac, linux) tools/power/rapl is a command-line utility in the mozilla codebase that uses the intel rapl
interface to gather direct power estimates for the package, cores, gpu and memory.
ui.textSelectBackground
ui.textselectbackground saves the color in which the background of a text selection in the user
interface or in content will be styled.
ui.textSelectForeground
ui.textselectforeground saves the color in which the text of a text selection in the user
interface or the content will be styled.
Preference reference
in.ui.spellcheckerunderlineui.spellcheckerunderline holds the colour which is used to underline words not recognized by the spellchecker.ui.spellcheckerunderlinestyleui.spellcheckerunderlinestyle holds the style which is used to underline words not recognized by the spellchecker.ui.textselectbackgroundui.textselectbackground saves the color in which the background of a text selection in the user
interface or in content will be styled.ui.textselectforegroundui.textselectforeground saves the color in which the text of a text selection in the user
interface or the content will be styled.ui.tooltipdelayui.tooltipdelay stores the delay in milliseconds between the mouse stopping over an element and the appearing of its tooltip.view_source.syntax_highlightthe preference view_source.syntax_highlight contr...
Crash reporting
this system is combination of projects: google breakpad client and server libraries mozilla-specific crash reporting user
interface and bootstrap code socorro collection and reporting server where did my crash get submitted?
AsyncTestUtils extended framework
helpers for the asynchronous function contract it can be annoying to have to write
interface boilerplate just to call async_driver.
Date and Time
clock/calendar time, used for human
interfaces, represents time in the familiar year, month, day, hour, minute, second components.
Dynamic Library Linking
this section describes nspr's programming
interface to load, unload and resolve symbols in dynamic libraries.
I/O Functions
type praccesshow functions that act on file descriptors pr_close pr_read pr_write pr_writev pr_getopenfileinfo pr_getopenfileinfo64 pr_seek pr_seek64 pr_available pr_available64 pr_sync pr_getdesctype pr_getspecialfd pr_createpipe directory i/o functions pr_opendir pr_readdir pr_closedir pr_mkdir pr_rmdir socket manipulation functions the network programming
interface presented here is a socket api modeled after the popular berkeley sockets.
Named Shared Memory
the nspr shared memory api provides a cross-platform named shared-memory
interface that is modeled on similar constructs in the unix and windows operating systems.
PRIPv6Addr
it is equivalent to struct in6_addr in the berkeley socket
interface.
PRNetAddr
prnetaddr is binary-compatible with the socket address structures in the familiar berkeley socket
interface, although this fact should not be relied upon.
Rhino shell
the class must be a class that implements the script
interface, as will any script compiled by rhino javascript compiler.
Statistics API
the browser preference javascript.options.mem.notify controls emission of json encoded gc stats to an observer
interface.
JSGetObjectOps
thus jsclass (which pre-dates jsobjectops in the api) provides a low-level
interface to class-specific code and data, while jsobjectops allows for a higher level of operation, which does not use the object's class except to find the class's jsobjectops struct, by calling clasp->getobjectops, and to finalize the object.
SpiderMonkey 31
the js::handle<js::value> and js::mutablehandle<js::value> classes have been specialized to implement the same
interface as js::value, for simplicity and to ease migration pain.
SpiderMonkey 38
the js::handle<js::value> and js::mutablehandle<js::value> classes have been specialized to implement the same
interface as js::value, for simplicity and to ease migration pain.
Mozinfo
mozinfo is a bridge
interface, making the underlying (complex) plethora of os and architecture combinations conform to a subset of values of relevance to mozilla software.
ROLE_CELL
interfaces nsiaccessible nsisupports nsiaccessibletext nsiaccessiblehypertext nsiaccessibleeditabletext nsiaccessiblehyperlink nsiaccessibleselectable nsiaccessiblevalue nsiaccessnode mapped to at-spi: atk_role_table_cell atk: atk_role_list_item ua: nsaccessibilitygrouprole msaa/ia2: role_system_cell used by aria: gridcell xul: <listcell/> html: <td> ...
ROLE_COLUMNHEADER
interfaces nsiaccessnode nsiaccessible mapped to at-spi: role_table atk: atk_role_column_header ua: nsaccessibilitygrouprole msaa/ia2: role_system_columnheader used by aria: colheader xul: <listheader/> html: <th> ...
ROLE_GRAPHIC
interfaces nsiaccessible nsiaccessnode nsiaccessibleimage nsiaccessiblehyperlink mapped to at-spi: atk: atk_role_image ua: nsaccessibilityimagerole msaa/ia2: role_system_graphic used by aria: img xul: <image/> html: <img> ...
ROLE_MENUITEM
interfaces nsiaccessnode nsiaccessible children no children.
ROLE_OUTLINEITEM
interfaces nsiaccessibletreecache nsiaccessible nsiaccessibleselectable nsiaccessnode mapped to at-spi: role_list_item atk: atk_role_list_item ua: nsaccessibilityrowrole (use outlinerow as subrole) msaa/ia2: role_system_outlineitem used by aria: treeitem html: ??
ROLE_ROW
interfaces nsiaccessible nsisupports nsiaccessiblehyperlink nsiaccessibleselectable mapped to at-spi: role_list_item atk: atk_role_list_item ua: nsaccessibilityrowrole msaa/ia2: role_system_row used by aria: row html: <tr> xul:<listitem/> ...
XForms Accessibility
instance node states are mapped to accessibility state constants declared in nsiaccessiblestates
interface like it shown below: relevant - state_unavailable readonly - state_readonly required - state_required invalid - state_invalid out of range - state_invalid attributes redefines datatype aria attribute.
XUL Accessibility
me the following rules to generate accessible name are applied: check aria-labelledby attribute, name is generated from elements pointed by aria-labelledby attribute <description id="descr1">label1</description> <description id="descr2">label2</description> <textbox aria-labelledby="descr1 descr2" /> if the element implements nsidomxullabeledcontrolelement or nsidomxulselectcontrolitemelement
interface then it is used label property if the element doesn't implement nsidomxulselectcontrolelement then label attribute is used if neighbour of the element has label element pointing to this element by the control attribute, if the label element is found then use value attribute or its content.
Preferences API
interfaces the preferences api is exposed as a set of xpcom components and
interfaces: nsiprefservice, nsiprefbranch.
extIExtension
this content covers features introduced in thunderbird 3 the extiextension
interface represents an extension.
Toolkit API
the mozilla toolkit is a set of programming
interfaces (apis) built on top of gecko which provide advanced services to xul applications.
Mozilla internal string guide
idl c++
interface nsifoo : nsisupports { attribute astring utf16string; autf8string getvalue(in acstring key); }; class nsifoo : public nsisupports { ns_imethod getutf16string(nsastring& aresult) = 0; ns_imethod setutf16string(const nsastring& avalue) = 0; ns_imethod getvalue(const nsacstring& akey, ...
mozilla::services namespace
for example, to obtain a reference to the ioservice: nscomptr<nsiioservice> ioservice = mozilla::services::getioservice(); provided service getters service accessor service
interface service name getchromeregistryservice nsichromeregistryservice chrome registry service getioservice nsiioservice io service getobserverservice nsiobserverservice observer service getstringbundleservice nsistringbundleservice string bundle service gettoolkitchromeregistryservice nsitoolkitchromeregistry toolkit chrome registry service getxulchromeregistryservice nsixulchromeregistry xu...
How To Pass an XPCOM Object to a New Window
getservice(components.
interfaces.nsiwindowwatcher); var win = ww.openwindow(null, "chrome://myextension/content/debug.xul", "debug history", "chrome,centerscreen,resizable", myobject); note in this example that myobject is passed to the openwindow() method; you can pass any xpcom object (or any other value, for that matter) in this way.
Components.Exception
these exception objects may be thrown when implementing xpcom
interfaces in javascript, and they can provide better diagnostics in the error console if not caught than simply throwing an nsresult's value will.
Components.classesByID
introduction components.classesbyid is a read-only object whose properties implement the nsijscid
interface.
Components.manager
the scriptable methods on the nsicomponentmanager
interface can be called directly on this object.
Components.utils.import
ts.utils.import("resource://gre/modules/json.jsm", scope1); components.utils.import("resource://gre/modules/json.jsm", scope2); assert(scope2.xpcomutils === scope1.xpcomutils); ...returns true, whereas: var someurl = "resource://gre/modules/json.jsm"; var obj1 = {}, obj2 = {}; var loader = components.classes["@mozilla.org/moz/jssubscript-loader;1"] .getservice(components.
interfaces.mozijssubscriptloader); loader.loadsubscript(someurl, obj1); loader.loadsubscript(someurl, obj2); assert(obj2 === obj1); ...returns false.
Components.utils.importGlobalProperties
var domfile = services.appshell.hiddendomwindow.file('/path/to/file'); xpcom components some objects have an xpcom alternative, which typically allows more flexibility then the dom version here is an example of how to use the dom xmlhttprequest through xpcom
interface of nsixmlhttprequest: var oreq = cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createinstance(ci.nsixmlhttprequest); ...
Components.utils.reportError
function mydump(amessage) { var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.
interfaces.nsiconsoleservice); consoleservice.logstringmessage("my component: " + amessage); } firefox 3: the error console will not display chrome errors by default.
JavaXPCOM
javaxpcom allows for communication between java and xpcom, such that a java application can access xpcom objects, and xpcom can access any java class that implements an xpcom
interface.
appShellService
quitting mozilla: var cc = components.classes; var ci = components.
interfaces; shell = cc["@mozilla.org/appshell/appshellservice;1"]; shell = shell.getservice(ci.nsiappshellservice); shell.quit(3); // eforcequit bam!
nsIProfile
this
interface is obsolete; you should use nsitoolkitprofileservice instead; however, reference documentation for nsiprofile is available if you're working with old code.
IAccessibleTableCell
other-licenses/ia2/accessibletablecell.idlnot scriptable this
interface gives access to the cells of a two-dimensional table.
IDispatch
js/src/xpconnect/idl/xpcidispatch.idlscriptable this
interface is not to be used directly, it is to be used internally for xpconnect's idispatch support.
amIWebInstallInfo
toolkit/mozapps/extensions/amiwebinstalllistener.idlscriptable this
interface is used by the default implementation of amiwebinstalllistener to communicate with the running application and allow it to warn the user about blocked installs and start the installs running.
amIWebInstallListener
; void onwebinstalldisabled(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); boolean onwebinstallrequested(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); note: prior to gecko 8.0, all references to nsidomwindow used in this
interface were nsidomwindowinternal.
amIWebInstallPrompt
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview void confirm(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); prior to gecko 8.0, all references to nsidomwindow used in this
interface were nsidomwindow.
imgICache
use the following snippet to obtain a relevant image cache for a given document or channel (where relevantdocument is a document object that contains images you care about, or relevantchannel is an nsichannel that is used for fetching images): var tools = components.classes["@mozilla.org/image/tools;1"].getservice(components.
interfaces.imgitools); var cache = tools.getimgcachefordocument(relevantdocument); // alternatively, tools.getimgcacheforchannel(relevantchannel) if there is no relevant document or channel, null may be passed, but this will cause any image cache requests to use the permanent storage cache (ie.
imgIContainerObserver
image/public/imgicontainerobserver.idlscriptable an
interface to implement to listen to activities on an imgicontainer object.
imgIDecoderObserver
image/public/imgidecoderobserver.idlscriptable this
interface is used both for observing imgidecoder objects and for observing imgirequest objects.
imgIEncoder
remarks for encoding images which may contain multiple frames, the 1-shot initfromdata()
interface is too simplistic.
imgILoader
inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by @mozilla.org/image/loader;1 as a service: var imgiloader = components.classes["@mozilla.org/image/loader;1"] .getservice(components.
interfaces.imgiloader); method overview imgirequest loadimage(in nsiuri auri, in nsiuri ainitialdocumenturl, in nsiuri areferreruri, in nsiprincipal aloadingprincipal, in nsiloadgroup aloadgroup, in imgidecoderobserver aobserver, in nsisupports acx, in nsloadflags aloadflags, in nsisupports cachekey, in imgirequest arequest, in nsichannelpolicy channelpolicy); imgirequest loadimagewithchannel(in nsichannel achannel, in imgidecoderobs...
inIDOMUtils
inherits from: nsisupports last changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamonkey 2.19) implemented by: @mozilla.org/inspector/dom-utils;1 as a service: var inidomutils = components.classes["@mozilla.org/inspector/dom-utils;1"] .getservice(components.
interfaces.inidomutils); method overview void addpseudoclasslock(in nsidomelement aelement, in domstring apseudoclass); void clearpseudoclasslocks(in nsidomelement aelement); [implicit_jscontext] jsval colornametorgb(in domstring acolorname); nsiarray getbindingurls(in nsidomelement aelement); nsidomnodelist getchildrenfornode(in nsidomnode anode, in boolean ashowinganonymouscontent); ...
mozIPlacesAutoComplete
toolkit/components/places/public/moziplacesautocomplete.idlscriptable this
interface provides some constants used by the places autocomplete search provider as well as methods to track opened pages for autocomplete purposes.
mozIStorageBindingParams
the mozistoragebindingparams
interface is used to bind values to parameters prior to calling mozistoragestatement.executeasync().
mozIStorageBindingParamsArray
the mozistoragebindingparamsarray
interface is a container for mozistoragebindingparams objects, and is used to store sets of bound parameters that will be used by the mozistoragestatement.executeasync().
nsIContentPref
nsicontentpref dom/
interfaces/base/nsicontentprefservice2.idlscriptable a content preference 1.0 66 introduced gecko 20.0 inherits from: nsisupports last changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) attributes attribute type description domain astring read only.
nsIContentPrefCallback2
dom/
interfaces/base/nsicontentprefservice2.idlscriptable callback used by nsicontentprefservice2 methods 1.0 66 introduced gecko 20.0 inherits from: nsisupports last changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) method overview void handlecompletion(in unsigned short reason); void handleerror(in nsresult error); void handleresult(in nsicontentpref pref); constants constant value description complete_ok 0 complete_error 1 methods handlecompletion() called when the method finishes.
nsIContentPrefObserver
dom/
interfaces/base/nsicontentprefservice.idlscriptable this
interface allows code to easily watch for changes to the values of content preferences.
nsIContentViewManager
content/base/public/nsiframeloader.idlscriptable manages the content views contained in a browser 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) to obtain a reference to the view manager for a document, you can query
interface() the nsiframeloader object to nsicontentviewmanager.
nsIContentViewer
to create an instance, use: var contentviewer = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.
interfaces.nsicontentviewer); method overview void clearhistoryentry(); void close(in nsishentry historyentry); void destroy(); [noscript,notxpcom,nostdcall] nsiviewptr findcontainerview(); void getbounds(in nsintrectref abounds); native code only!
nsIController
content/xul/document/public/nsicontroller.idlscriptable an
interface that can be implemented to receive and process commands and events.
nsIConverterInputStream
to create an instance, use: var converterinputstream = components.classes["@mozilla.org/intl/converter-input-stream;1"] .createinstance(components.
interfaces.nsiconverterinputstream); method overview void init(in nsiinputstream astream, in string acharset, in long abuffersize, in prunichar areplacementchar); constants constant value description default_replacement_character 0xfffd default replacement character value.
nsICookie
an optional
interface for accessing the http or javascript cookie object.
nsICookie2
the nsicookie2
interface provides information about a cookie, and extends the nsicookie
interface.
nsICookieAcceptDialog
extensions/cookie/nsicookieacceptdialog.idlscriptable this
interface holds some constants for the cookie accept dialog.
nsICookiePromptService
the nsicookiepromptservice
interface is to open a dialog to ask to permission to accept the cookie.
nsICurrentCharsetListener
to create an instance, use: var currentcharsetlistener = components.classes["@mozilla.org/intl/currentcharsetlistener;1"] .createinstance(components.
interfaces.nsicurrentcharsetlistener); method overview void setcurrentcharset(in wstring charset); void setcurrentcomposercharset(in wstring charset); void setcurrentmailcharset(in wstring charset); methods setcurrentcharset() void setcurrentcharset( in wstring charset ); parameters charset setcurrentcomposercharset() void setcurrentcomposercharset( in wstring charset ); parameters cha...
nsICycleCollectorListener
xpcom/base/nsicyclecollectorlistener.idlscriptable
interface to pass to the cycle collector to get information about the cycle collector graph while it is being built.
nsIDNSRecord
netwerk/dns/nsidnsrecord.idlscriptable this
interface represents the result of a dns lookup.
nsIFileStreams
the nsifilestreams
interface is an input stream that allows you to read from a file.
nsIFileURL
the setter clones the nsifile object (allowing the caller to safely modify the nsifile object after setting it on this
interface).
nsIFormHistory2
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) note: this
interface provides no means to access stored values.
nsIFrameLoader
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: this
interface works in tandem with the nsicontentview
interface to manage frames across processes if electrolysis is in use to support per-frame processes.
nsIFrameLoaderOwner
this may only be possible in a very limited set of circumstances, or never, depending on the object implementing this
interface.
nsIFrameMessageManager
1.0 66 introduced gecko 2.0 obsolete gecko 17.0 inherits from: nsisupports last changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) this
interface is obsolete and was removed in firefox 17.
nsIFrameScriptLoader
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisupports this
interface is used to load frame scripts.
nsIGSettingsService
1.0 66 introduced gecko 6.0 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) implemented by: @mozilla.org/gsettings-service;1 as a service: var gsettingsservice = components.classes["@mozilla.org/gsettings-service;1"] .createinstance(components.
interfaces.nsigsettingsservice); method overview nsigsettingscollection getcollectionforschema(in autf8string schema); methods getcollectionforschema() nsigsettingscollection getcollectionforschema( in autf8string schema ); parameters schema return value ...
nsIGeolocationUpdate
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0)
interface provides a way for a geolocation provider to notify the system that a new location is available.
nsIGlobalHistory
docshell/base/nsiglobalhistory.idlscriptable the
interface to global history.
nsIHTTPHeaderListener
modules/plugin/base/public/nsihttpheaderlistener.idlscriptable this
interface allows plugin authors to access http response headers after issuing an nsipluginhost.geturl or nsipluginhost.posturl call.
nsIHapticFeedback
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/widget/hapticfeedback;1 as a service: var hapticfeedback = components.classes["@mozilla.org/widget/hapticfeedback;1"] .getservice(components.
interfaces.nsihapticfeedback); once you have the service, you can initiate haptic feedback (that is, cause the device to vibrate, if it's supported) by calling performsimpleaction(): hapticfeedback.performsimpleaction(components.
interfaces.nsihapticfeedback.longpress); method overview void performsimpleaction(in long islongpress); constants press length constants constant ...
nsIHttpUpgradeListener
netwerk/protocol/http/nsihttpchannelinternal.idlscriptable the callback
interface for nsihttpchannelinternal.httpupgrade; this is called when an http protocol upgrade is finished.
nsIIFrameBoxObject
inherits from: nsicontainerboxobject last changed in gecko 1.9 (firefox 3) the boxobject belonging to a xul iframe element implements this
interface.
nsIINIParser
*/ function getinivalue (inifile, section, prop) { var inifact = components.manager.getclassobjectbycontractid( "@mozilla.org/xpcom/ini-parser-factory;1", components.
interfaces.nsiiniparserfactory ); var iniparser = inifact.createiniparser(inifile); try { return iniparser.getstring(section,prop); } catch(e) { return undefined; } } // usage: var lang = getinivalue(file,"setting","language"); enumerating sections this example gets a list of all the sections in the ini file.
nsIMicrosummaryObserver
toolkit/components/places/public/nsimicrosummaryservice.idlscriptable this
interface provides methods for observing changes to micrummaries.
nsIMicrosummarySet
toolkit/components/places/public/nsimicrosummaryservice.idlscriptable this
interface provides access to sets of microsummaries returned from the nsimicrosummaryservice.
Building an Account Manager Extension
if (server.type == \"imap\") return true; return false; }, query
interface: xpcomutils.generateqi([ components.
interfaces.nsimsgaccountmanagerextension ]) } step 2: building a component we convert the
interface to a xpcom component and register it in the component manager as account manager extension.
nsIMsgFilterCustomAction
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgfiltercustomaction.idl
interface nsimsgfiltercustomaction : nsisupports { /* globally unique string to identify this filter action.
nsIMsgIdentity
the nsimsgidentity
interface contains all the personal outgoing mail information for a given person.
nsIMsgMessageService
uri that gets run example for example, the next piece of code shows the selected message code on a dialog: (taken from mozillazine) var content = ""; var messageuri = getfirstselectedmessage(); var msgservice = messenger.messageservicefromuri(messageuri); var msgstream = components.classes["@mozilla.org/network/sync-stream-listener;1"].createinstance(); var consumer = msgstream.query
interface(components.
interfaces.nsiinputstream); var scriptinput = components.classes["@mozilla.org/scriptableinputstream;1"].createinstance(); var scriptinputstream = scriptinput.query
interface(components.
interfaces.nsiscriptableinputstream); scriptinputstream.init(consumer); try { msgservice.streammessage(messageuri, msgstream, msgwindow, null, false, null); } catch (ex) { alert("error:...
nsIMsgRuleAction
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgfilter.idl [scriptable, uuid(190a2a18-d245-473a-a402-9f0814598c7f)]
interface nsimsgruleaction : nsisupports { attribute nsmsgruleactiontype type; // target priority..
nsIMsgSearchNotify
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgsearchnotify.idl [scriptable, uuid(ca37784d-352b-4c39-8ccb-0abc1a93f681)]
interface nsimsgsearchnotify : nsisupports { void onsearchhit(in nsimsgdbhdr header, in nsimsgfolder folder); // notification that a search has finished.
nsIMsgSearchScopeTerm
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgsearchscopeterm.idl [scriptable, uuid(934672c3-9b8f-488a-935d-87b4023fa0be)]
interface nsimsgsearchscopeterm : nsisupports { nsiinputstream getinputstream(in nsimsgdbhdr ahdr); void closeinputstream(); readonly attribute nsimsgfolder folder; readonly attribute nsimsgsearchsession searchsession; }; ...
nsIMsgSearchValue
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgsearchvalue.idl #include "nsmsgsearchcore.idl"
interface nsimsgfolder; [scriptable, uuid(783758a0-cdb5-11dc-95ff-0800200c9a66)]
interface nsimsgsearchvalue : nsisupports { // type of object attribute nsmsgsearchattribvalue attrib; // accessing these will throw an exception if the above // attribute does not match the type!
nsIMsgThread
the nsimsgfolder
interface is used to interact with threads in thunderbird.
nsIMsgWindowCommands
mailnews/base/public/nsimsgwindow.idlscriptable this
interface defines methods used by the back end to update the user
interface in a mail or news message list.
nsINavHistoryResultTreeViewer
toolkit/components/places/public/nsinavhistoryservice.idlscriptable this
interface provides a predefined view adaptor for interfacing places query results with a tree.
nsINavHistoryResultViewObserver
toolkit/components/places/public/nsinavhistoryservice.idlscriptable this
interface is used by clients of the history results to define domain-specific handling of specific nsitreeview methods that the history result doesn't implement.
nsIOutputStreamCallback
xpcom/io/nsiasyncoutputstream.idlscriptable this is a companion
interface for nsiasyncoutputstream.asyncwait.
nsIParserUtils
implemented by: @mozilla.org/parserutils;1 as a service: var parserutils = components.classes["@mozilla.org/parserutils;1"] .getservice(components.
interfaces.nsiparserutils); method overview astring converttoplaintext(in astring src, in unsigned long flags, in unsigned long wrapcol); nsidomdocumentfragment parsefragment(in astring fragment, in unsigned long flags, in boolean isxml, in nsiuri baseuri, in nsidomelement element); astring sanitize(in astring src, in unsigned long flags); constants constant...
nsIPermission
the nsipermission
interface defines a "permission" object, which is used to allow or block objects (for example cookies, images) from certain sites based on user preferences.
nsIPermissionManager
the nsipermissionmanager
interface is used to persistently store permissions for different object types (cookies, images, and so on) on a site-by-site basis.
nsIPipe
xpcom/io/nsipipe.idlscriptable this
interface represents an in-process buffer that can be read using nsiinputstream and written using nsioutputstream.
nsIPrefLocalizedString
modules/libpref/public/nsipreflocalizedstring.idlscriptable this
interface is simply a wrapper
interface for nsisupportsstring so the preferences service can have a unique identifier to distinguish between requests for normal wide strings nsisupportsstring) and 'localized' wide strings, which get their default values from properites files.
nsIPrefService
modules/libpref/public/nsiprefservice.idlscriptable this
interface is the main entry point into the back end preferences management library.
nsIPrincipal
caps/nsiprincipal.idlscriptable provides the
interface to a principal, which represents a security context.
nsIProcessScriptLoader
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisupports this
interface is used by parent process message managers to load scripts into a child process.
nsIProgrammingLanguage
xpcom/base/nsiprogramminglanguage.idlscriptable this
interface provides an enumeration of programming language identifiers.
nsIPropertyElement
xpcom/ds/nsipersistentproperties2.idlscriptable this
interface provides access to individual entries within a stringbundle.
nsIProtocolProxyCallback
netwerk/base/public/nsiprotocolproxycallback.idlscriptable this
interface serves as a closure for nsiprotocolproxyservice.asyncresolve().
nsIRandomGenerator
netwerk/base/public/nsirandomgenerator.idlscriptable
interface used to generate random data.
nsIRequest
netwerk/base/nsirequest.idlscriptable this
interface is used by the request initiator to control the request.
nsIRequestObserver
netwerk/base/public/nsirequestobserver.idlscriptable this
interface is used by various streams (such as nsichannel ) to indicate the start and end of a request.
nsIResumableChannel
netwerk/base/public/nsiresumablechannel.idlscriptable this
interface is meant to be implemented by the channels that support resuming broken downloads (for example necko's html and ftp channels).
nsIRunnable
*/
interface nsirunnable : nsisupports { /** * the function implementing the task to be run.
nsISOCKSSocketInfo
netwerk/socket/nsisockssocketinfo.idlscriptable this
interface provides information about a socks socket.
nsIScriptError2
1.0 66 introduced gecko 2.0 obsolete gecko 12.0 inherits from: nsiscripterror last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) in gecko 12.0 this
interface was merged into the nsiscripterror
interface.
nsISeekableStream
methods seek() this method moves the stream offset of the stream implementing this
interface.
nsISelection2
1.0 66 introduced gecko 1.8 obsolete gecko 8.0 inherits from: nsiselection last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) in gecko 8.0 this
interface was merged into the nsiselectionprivate
interface.
nsISelection3
1.0 66 introduced gecko 2.0 obsolete gecko 8.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in gecko 8.0 this
interface was merged into the nsiselection
interface.
nsIServerSocketListener
netwerk/base/public/nsiserversocket.idlscriptable this
interface is notified whenever a server socket accepts a new connection.
nsISessionStartup
to use this service, use: var sessionstartup = components.classes["@mozilla.org/browser/sessionstartup;1"] .getservice(components.
interfaces.nsisessionstartup); method overview boolean dorestore(); attributes attribute type description sessiontype unsigned long the type of session being restored; this will be one of the session type constants.
nsISessionStore
it can also be obtained from an nsixulwindow using if (xul_win.docshell instanceof nsi
interfacerequestor) { var win = xul_win.docshell.get
interface(nsidomwindow); ...
nsIStringBundleService
to access this service, use: var stringbundleservice = components.classes["@mozilla.org/intl/stringbundle;1"] .getservice(components.
interfaces.nsistringbundleservice); method overview nsistringbundle createbundle(in string aurlspec); nsistringbundle createextensiblebundle(in string aregistrykey); void flushbundles(); wstring formatstatusmessage(in nsresult astatus, in wstring astatusarg); methods createbundle() nsistringbundle createbundle( in string aurlspec ); parameters aurlspec...
nsIStructuredCloneContainer
dom/
interfaces/base/nsistructuredclonecontainer.idlscriptable this
interface acts as a container for an object serialized using the structured clone algorithm.
nsIStyleSheetService
to create an instance, use: var stylesheetservice = components.classes["@mozilla.org/content/style-sheet-service;1"] .getservice(components.
interfaces.nsistylesheetservice); method overview void loadandregistersheet(in nsiuri sheeturi, in unsigned long type); boolean sheetregistered(in nsiuri sheeturi, in unsigned long type); void unregistersheet(in nsiuri sheeturi, in unsigned long type); constants constant value description agent_sheet 0...
nsITransportSecurityInfo
netwerk/socket/nsitransportsecurityinfo.idlscriptable this
interface provides information about transport security, including the security state and any error message for the connection.
nsITreeColumn
the nsitreecolumn
interface represents a tree column.
nsITreeColumns
the nsitreecolumns
interface represents the tree columns.
nsITreeSelection
layout/xul/base/src/tree/public/nsitreeselection.idlscriptable this
interface is used by the tree widget to get information about what is selected.
nsIURIFixupInfo
docshell/base/nsiurifixup.idlscriptable
interface indicating what we found/corrected when fixing up a uri.
nsIURLFormatter
toolkit/components/urlformatter/public/nsiurlformatter.idlscriptable this
interface exposes methods to substitute variables in url formats.
nsIURLParser
netwerk/base/public/nsiurlparser.idlscriptable specifies the
interface to an url parser that attempts to follow the definitions of rfc 2396.
nsIUTF8StringEnumerator
xpcom/ds/nsistringenumerator.idlscriptable an object can implement this
interface to allow a client to iterate over a set of strings provided by the object.
nsIUpdateCheckListener
toolkit/mozapps/update/nsiupdateservice.idlscriptable an
interface describing an object that listens to the progress of an update check operation.
nsIUpdateItem
1.0 66 introduced gecko 1.8 obsolete gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this
interface is obsolete; instead of using the extension manager, you should use the addon manager.
nsIUpdateManager
toolkit/mozapps/update/nsiupdateservice.idlscriptable this
interface describes a global application service that maintains a list of previously installed updates, as well as the currently in use update.
nsIUpdatePatch
toolkit/mozapps/update/nsiupdateservice.idlscriptable an
interface that describes an object representing a patch file that can be downloaded and applied to a version of this application so that it can be updated.
nsIUploadChannel2
most implementations of this
interface require that the stream: implement threadsafe addref and release implement nsiinputstream.readsegments() implement nsiseekablestream.seek().
nsIUrlListManagerCallback
toolkit/components/url-classifier/public/nsiurllistmanager.idlscriptable
interface for a class that manages updates of the url classifier database.
nsIUserCertPicker
inherits from: nsisupports last changed in gecko 1.7 method overview nsix509cert pickbyusage(in nsi
interfacerequestor ctx, in wstring selectednickname, in long certusage, in boolean allowinvalid, in boolean allowduplicatenicknames, out boolean canceled); methods pickbyusage() nsix509cert pickbyusage( in nsi
interfacerequestor ctx, in wstring selectednickname, in long certusage, in boolean allowinvalid, in boolean allowduplicatenicknames, out boolean canceled ); parameters ctx selectednickname certusage allowinvalid allowduplicatenicknames canceled return value ...
nsIXSLTProcessor
to create an instance, use: var xsltprocessor = components.classes["@mozilla.org/document-transformer;1?type=xslt"] .createinstance(components.
interfaces.nsixsltprocessor); method overview void clearparameters(); nsivariant getparameter(in domstring namespaceuri, in domstring localname); void importstylesheet(in nsidomnode style); void removeparameter(in domstring namespaceuri, in domstring localname); void reset(); void setparameter(in domstring namespaceuri, in domstring localname, in nsivariant value); nsidomdocument transformtodocument(in nsidomnode source); nsid...
nsIXULBuilderListener
example create an object which implements nsixulbuilderlistener: var mylistener = { query
interface: function(aiid) { if (aiid.equals(components.
interfaces.nsixulbuilderlistener) || aiid.equals(components.
interfaces.nsisupports)) return this; throw components.results.ns_no
interface; }, willrebuild : function(builder) {}, didrebuild : function(builder) { } } attach the listener to a element: myelement.addlistener(mylistener); ...
nsIXULWindow
xulbrowserwindow nsixulbrowserwindow provides access to the xulbrowserwindow object offering a way for the browser to update the user
interface of the enclosing xul window.
nsIZipReaderCache
to create an instance, use: var zipreadercache = components.classes["@mozilla.org/libjar/zip-reader-cache;1"] .createinstance(components.
interfaces.nsizipreadercache); method overview nsizipreader getinnerzip(in nsifile zipfile, in autf8string zipentry); nsizipreader getinnerzip(in nsifile zipfile, in string zipentry); obsolete since gecko 10 nsizipreader getzip(in nsifile zipfile); void init(in unsigned long cachesize); methods getinnerzip() returns a (possibly shared) cached nsizipreader for a zip i...
nsMsgFolderFlagType
[scriptable,uuid(fbe7cba8-3141-4c44-9660-99af6b53f27e)]
interface nsmsgfolderflags { /** * @name folder type flags * these flags define the type of folder.
nsMsgPriorityValue
defined in comm-central/ mailnews/ base/ public/ mailnewstypes2.idl typedef long nsmsgpriorityvalue; [scriptable, uuid(94c0d8d8-2045-11d3-8a8f-0060b0fc04d2)]
interface nsmsgpriority { const nsmsgpriorityvalue notset = 0; const nsmsgpriorityvalue none = 1; const nsmsgpriorityvalue lowest = 2; const nsmsgpriorityvalue low = 3; const nsmsgpriorityvalue normal = 4; const nsmsgpriorityvalue high = 5; const nsmsgpriorityvalue highest = 6; // the default for a priority picker const nsmsgpriorityvalue default = 4; }; ...
nsMsgRuleActionType
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgfiltercore.idl typedef long nsmsgruleactiontype; [scriptable, uuid(59af7696-1e28-4642-a400-fa327ae0b8d8)]
interface nsmsgfilteraction { /* if you change these, you need to update filter.properties, look for filteractionx */ /* these longs are all actually of type nsmsgfilteractiontype */ const long custom=-1; /* see nsmsgfilteraction */ const long none=0; /* uninitialized state */ const long movetofolder=1; const long changepriority=2; const long delete=3; const long markread=4; const long killthread=5; const long watchthread=6; const long markflagged=7; const long label=8; const long reply=9; const long forward=10; const long stopexecution=11; ...
nsMsgSearchAttrib
*/ [scriptable, uuid(a83ca7e8-4591-4111-8fb8-fd76ac73c866)]
interface nsmsgsearchattrib { const nsmsgsearchattribvalue custom = -2; /* a custom term, see nsimsgsearchcustomterm */ const nsmsgsearchattribvalue default = -1; const nsmsgsearchattribvalue subject = 0; /* mail and news */ const nsmsgsearchattribvalue sender = 1; const nsmsgsearchattribvalue body = 2; const nsmsgsearchattribvalue date = 3; const nsmsgsearchattribvalue priority = 4; /* mail only */ const ns...
nsMsgSearchOp
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgsearchcore.idl typedef long nsmsgsearchopvalue; [scriptable, uuid(9160b196-6fcb-4eba-aaaf-6c806c4ee420)]
interface nsmsgsearchop { const nsmsgsearchopvalue contains = 0; /* for text attributes */ const nsmsgsearchopvalue doesntcontain = 1; const nsmsgsearchopvalue is = 2; /* is and isn't also apply to some non-text attrs */ const nsmsgsearchopvalue isnt = 3; const nsmsgsearchopvalue isempty = 4; const nsmsgsearchopvalue isbefore = 5; /* for date attributes */ const nsmsgsearchopvalue isafter = 6; const nsmsgsearchopvalue ishigherthan = 7; /* for priority.
nsMsgSearchScope
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgsearchcore.idl [scriptable, uuid(6e893e59-af98-4f62-a326-0f00f32147cd)]
interface nsmsgsearchscope { const nsmsgsearchscopevalue offlinemail = 0; const nsmsgsearchscopevalue offlinemailfilter = 1; const nsmsgsearchscopevalue onlinemail = 2; const nsmsgsearchscopevalue onlinemailfilter = 3; /// offline news, base table, no body or junk const nsmsgsearchscopevalue localnews = 4; const nsmsgsearchscopevalue news = 5; const nsmsgsearchscopevalue newsex = 6; const nsmsgsearchscopevalue ldap = 7; const nsmsgsearchscopevalue localab = 8; const nsmsgsearchscopevalue allsearchablegroups = 9; const nsmsgsearchscopevalue newsfilter = 10; const nsmsgsearchscopevalue localaband = 11; const nsmsgsearchscopevalue l...
nsMsgSearchTypeValue
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgsearchcore.idl used to specify type of search to be performed [scriptable,uuid(964b7f32-304e-11d3-ae13-00a0c900d445)]
interface nsmsgsearchtype { const nsmsgsearchtypevalue none = 0; const nsmsgsearchtypevalue rootdse = 1; const nsmsgsearchtypevalue normal = 2; const nsmsgsearchtypevalue ldapvlv = 3; const nsmsgsearchtypevalue namecompletion = 4; }; ...
nsMsgSearchWidgetValue
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgsearchcore.idl fes use this to help build the search dialog box typedef long nsmsgsearchwidgetvalue; /* fes use this to help build the search dialog box */ [scriptable,uuid(903dd2e8-304e-11d3-92e6-00a0c900d445)]
interface nsmsgsearchwidget { const nsmsgsearchwidgetvalue text = 0; const nsmsgsearchwidgetvalue date = 1; const nsmsgsearchwidgetvalue menu = 2; const nsmsgsearchwidgetvalue int = 3; /* added to account for age in days which requires an integer field */ const nsmsgsearchwidgetvalue none = 4; }; ...
nsIMsgSearchValue
defined in comm-central/ mailnews/ base/ search/ public/ nsimsgsearchvalue.idl #include "nsmsgsearchcore.idl"
interface nsimsgfolder; [scriptable, uuid(783758a0-cdb5-11dc-95ff-0800200c9a66)]
interface nsimsgsearchvalue : nsisupports { // type of object attribute nsmsgsearchattribvalue attrib; // accessing these will throw an exception if the above // attribute does not match the type!
nsMsgMessageFlags
the nsmsgmessageflags
interface describes possible flags for messages.
nsMsgSearchOpValue
nsmsgsearchopvalue defined in comm-central/ mailnews/ base/ search/ public/ nsmsgsearchcore.idl 146 typedef long nsmsgsearchopvalue; 147 148 [scriptable, uuid(9160b196-6fcb-4eba-aaaf-6c806c4ee420)] 149
interface nsmsgsearchop { 150 const nsmsgsearchopvalue contains = 0; /* for text attributes */ 151 const nsmsgsearchopvalue doesntcontain = 1; 152 const nsmsgsearchopvalue is = 2; /* is and isn't also apply to some non-text attrs */ 153 const nsmsgsearchopvalue isnt = 3; 154 const nsmsgsearchopvalue isempty = 4; 155 156 const nsmsgsearchopvalue isbefore = 5; /* for date attributes */ 157 const nsmsgsearchopvalue isafter = 6; 158 159 const nsmsgsearchopvalue ishigherthan = 7; /* for priority.
Using nsISimpleEnumerator
using nsisimpleenumerator <stringbundle>.strings var enumerator = document.getelementbyid('astringbundleid').strings; var s = ""; while (enumerator.hasmoreelements()) { var property = enumerator.getnext().query
interface(components.
interfaces.nsipropertyelement); s += property.key + ' = ' + property.value + ';\n'; } alert(s); example using javascript 1.7 features // creates a generator iterating over enum's values function generatorfromsimpleenumerator(enum,
interface) { while (enum.hasmoreelements()) { yield enum.getnext().query
interface(
interface); } } var b = document.getelementbyid("stringbundleset").firstchild var props = generatorfromenumerator(b.strings, components.
interfaces.nsipropertyelement); var s = ""; for (let property in props) { s += property.key + ' = '...
Working with out parameters
when working with xpcom components, you might come across method declarations like the following one: [scriptable, uuid(8b5314bc-db01-11d2-96ce-0060b0fb9956)]
interface nsitransferable : nsisupports { ...
XPCOM category image-sniffing-services
if mozilla's built-in image code cannot identify an image, then any xpcom components implementing the nsicontentsniffer
interface may register under the "image-sniffing-services" category, and will be queried to determine the mime type of the image being downloaded.
pyxpidl
mp/nsifoo.idl) -e specify an explicit output file name (-e /tmp/nsifoo.idl for example) n/a (this is subsumed by -o now) -d write dependencies (requires -e) -d (unchanged) -m specify output mode n/a (feature removed; use header.py or typelib.py specifically) it's worth noting that the old output mode options for generating documentation and java
interfaces (-m doc and -m java) have no equivalents in pyxpidl.
XUL Overlays
the installation of a media plug-in, for example, may add new icons and menu items to the
interface: in the navigatoroverlay.xul file or in a separate navigatorsspoverlay.xul file (where navigator.xul defines the basic ui for the navigator package), these new plug-in elements would be defined as a collection of elements or subtrees: <menuitem name="super stream player"/> <menupopup name="ss favorites"> <menuitem name="wave" src="mavericks.ssp"/> <menuitem name="soccer" src="brazil_soccer.ss...
Testing Mozilla code
fuzzing
interfacethe fuzzing
interface is glue code living in mozilla-central in order to make it easier for developers and security researchers to test c/c++ code with either libfuzzer or afl-fuzz.measuring code coverage on firefoxcode coverage essentially is about measuring how often certain lines are hit, branches taken or conditions met in a program, given some test that you run on it.
Thunderbird Configuration Files
userchrome.css this file sets the display rules for various elements in the thunderbird user
interface and is located in the sub-folder called chrome in your profile folder.
Use SQLite
const cc = components.classes; const ci = components.
interfaces; var tbirdsqlite = { onload: function() { // initialization code this.initialized = true; this.dbinit(); }, dbconnection: null, dbschema: { tables: { attachments:"id integer primary key, \ name text \ encoded text not null" } }, dbinit: function() { var dirservice = cc["@mozilla.org/fi...
customDBHeaders Preference
function() {return true;}, getcellproperties: function(row, col, props){}, getimagesrc: function(row, col) {return null;}, getsortlongforrow: function(hdr) {return 0;} } function addcustomcolumnhandler() { gdbview.addcolumnhandler("colsuperfluous",columnhandler); dump("column handler being added: " + columnhandler + "\n"); } var createdbobserver = { // components.
interfaces.nsiobserver observe: function(amsgfolder, atopic, adata) { dump("here here!"); addcustomcolumnhandler(); } } function doonceloaded(){ var observerservice = components.classes["@mozilla.org/observer-service;1"].getservice(components.
interfaces.nsiobserverservice); observerservice.addobserver(createdbobserver, "msgcreatedbview", false); window.document.getelementbyid('...
Thunderbird extensions
read the source using a fancy
interface; you can often find tests that demonstrate what you're trying to achieve.
Thunderbird
database views backend information about nsimsgdbview and related
interfaces.
ctypes.open
if the native file is located at chrome://youraddon/content/mysubfolder/mycfunctionsforunix.so then it is converted to a file uri like this: components.utils.import("resource://gre/modules/services.jsm"); var cr = components.classes['@mozilla.org/chrome/chrome-registry;1'].getservice(components.
interfaces.nsichromeregistry); var chromeuri_mylib = services.io.newuri('chrome://youraddon/content/mysubfolder/mycfunctionsforunix.so', 'utf-8', null); var localfile_mylib = cr.convertchromeurl(chromeuri_mylib); var jarpath_mylib = localfile_mylib.spec; // "jar:file:///c:/users/vayeate/appdata/roaming/mozilla/firefox/profiles/aecgxse.unnamed%20profile%201/extensions/youraddon@jetpack.xpi!/mysubfolder/myc...
Drawing and Event Handling - Plugins
event handling for windowed plug-ins all imaging and user
interface events for a windowed plug-in instance are handled according to the windowing system of its native platform.
Initialization and Destruction - Plugins
you can assign more than one mime type to a plug-in, which could potentially allow the plug-in to respond to data streams of different types with different
interfaces and behavior.
Debugger.Frame - Firefox Developer Tools
even though the debuggee and debugger share the same javascript stack, frames pushed for spidermonkey’s calls to handler methods to report events in the debuggee are never considered visible frames.) invocation functions and “debugger” frames aninvocation function is any function in this
interface that allows the debugger to invoke code in the debuggee: debugger.object.prototype.call, debugger.frame.prototype.eval, and so on.
Debugger.Object - Firefox Developer Tools
this method pierces the membrane of debugger.object instances meant to protect debugger code from debuggee code, and allows debugger code to access debuggee objects through the standard cross-compartment wrappers, rather than via debugger.object’s reflection-oriented
interfaces.
Debugger.Script - Firefox Developer Tools
the debugger
interface constructs debugger.script objects as scripts of debuggee code are uncovered by the debugger: via the onnewscript handler method; via debugger.frame’s script properties; via the functionscript method of debugger.object instances; and so on.
Debugger - Firefox Developer Tools
this property gives debugger code a single point of control for disentangling itself from the debuggee, regardless of what sort of events or handlers or “points” we add to the
interface.
Debugger.Object - Firefox Developer Tools
this method pierces the membrane of debugger.object instances meant to protect debugger code from debuggee code, and allows debugger code to access debuggee objects through the standard cross-compartment wrappers, rather than via debugger.object's reflection-oriented
interfaces.
Inspecting web sockets - Firefox Developer Tools
columns in the response pane in the response pane, you can choose to show the following information about each frame: data size time opcode maskbit finbit the data and time columns are visible by default, but you can customize the
interface to see more columns by choosing which ones to show from the context menu that is opened by right-clicking in the table header.
AudioBuffer.duration - Web APIs
the duration property of the audiobuffer
interface returns a double representing the duration, in seconds, of the pcm data stored in the buffer.
AudioBuffer.getChannelData() - Web APIs
the getchanneldata() method of the audiobuffer
interface returns a float32array containing the pcm data associated with the channel, defined by the channel parameter (with 0 representing the first channel).
AudioBuffer.length - Web APIs
the length property of the audiobuffer
interface returns an integer representing the length, in sample-frames, of the pcm data stored in the buffer.
AudioBuffer.numberOfChannels - Web APIs
the numberofchannels property of the audiobuffer
interface returns an integer representing the number of discrete audio channels described by the pcm data stored in the buffer.
AudioBuffer.sampleRate - Web APIs
the samplerate property of the audiobuffer
interface returns a float representing the sample rate, in samples per second, of the pcm data stored in the buffer.
AudioBuffer - Web APIs
the audiobuffer
interface represents a short audio asset residing in memory, created from an audio file using the audiocontext.decodeaudiodata() method, or from raw data using audiocontext.createbuffer().
AudioBufferSourceNode.loop - Web APIs
the loop property of the audiobuffersourcenode
interface is a boolean indicating if the audio asset must be replayed when the end of the audiobuffer is reached.
AudioBufferSourceNode.loopEnd - Web APIs
the loopend property of the audiobuffersourcenode
interface specifies is a floating point number specifying, in seconds, at what offset into playing the audiobuffer playback should loop back to the time indicated by the loopstart property.
AudioBufferSourceNode.loopStart - Web APIs
the loopstart property of the audiobuffersourcenode
interface is a floating-point value indicating, in seconds, where in the audiobuffer the restart of the play must happen.
AudioBufferSourceNode.start() - Web APIs
the start() method of the audiobuffersourcenode
interface is used to schedule playback of the audio data contained in the buffer, or to begin playback immediately.
AudioContext.baseLatency - Web APIs
the baselatency read-only property of the audiocontext
interface returns a double that represents the number of seconds of processing latency incurred by the audiocontext passing an audio buffer from the audiodestinationnode — i.e.
AudioContext.close() - Web APIs
the close() method of the audiocontext
interface closes the audio context, releasing any system audio resources that it uses.
AudioParam.cancelAndHoldAtTime() - Web APIs
the cancelandholdattime() property of the audioparam
interface cancels all scheduled future changes to the audioparam but holds its value at a given time until further changes are made using other methods.
AudioParam.defaultValue - Web APIs
the defaultvalue read-only property of the audioparam
interface represents the initial value of the attributes as defined by the specific audionode creating the audioparam.
AudioParam.maxValue - Web APIs
the maxvalue read-only property of the audioparam
interface represents the maximum possible value for the parameter's nominal (effective) range.
AudioParam.minValue - Web APIs
the minvalue read-only property of the audioparam
interface represents the minimum possible value for the parameter's nominal (effective) range.
AudioParam.value - Web APIs
the web audio api's audioparam
interface property value gets or sets the value of this audioparam at the current time.
AudioParam - Web APIs
the web audio api's audioparam
interface represents an audio-related parameter, usually a parameter of an audionode (such as gainnode.gain).
AudioParamMap - Web APIs
the web audio api
interface audioparammap represents a set of multiple audio parameters, each described as a mapping of a domstring identifying the parameter to the audioparam object representing its value.
AudioTrack.label - Web APIs
example this example returns an array of track kinds and labels for potential use in a user
interface to select audio tracks for a specified media element.
AudioTrack.language - Web APIs
this could then be used to build a user
interface for selecting the language the user would like to listen to while watching a movie, for example.
AudioTrackList: addtrack event - Web APIs
bubbles no cancelable no
interface trackevent event handler property onaddtrack examples using addeventlistener(): const videoelement = document.queryselector('video'); videoelement.audiotracks.addeventlistener('addtrack', (event) => { console.log(`audio track: ${event.track.label} added`); }); using the onaddtrack event handler property: const videoelement = document.queryselector('video'); videoelement.audiotracks.onaddtrack = (event) => { console.log(`audio track: ${event.track.label} added`); }; specifications specification status html living standardthe definition of 'addtrack' in that specification.
AudioTrackList: change event - Web APIs
bubbles no cancelable no
interface event event handler property onchange examples using addeventlistener(): const videoelement = document.queryselector('video'); videoelement.audiotracks.addeventlistener('change', (event) => { console.log(`'${event.type}' event fired`); }); // changing the value of `enabled` will trigger the `change` event const toggletrackbutton = document.queryselector('.toggle-track'); toggletrackbutton.addeventlistener('click', () => { const track = videoelement.audiotracks[0]; track.enabled = !track.enabled; }); using the onchange event handler property: const videoelement = document.q...
AudioTrackList: removetrack event - Web APIs
bubbles no cancelable no
interface trackevent event handler property onremovetrack examples using addeventlistener(): const videoelement = document.queryselector('video'); videoelement.audiotracks.addeventlistener('removetrack', (event) => { console.log(`audio track: ${event.track.label} removed`); }); using the onremovetrack event handler property: const videoelement = document.queryselector('video'); videoelement.audiotracks.onremovetrack = (event) => { console.log(`audio track: ${event.track.label} removed`); }; specifications specification status html living standardthe definition of 'removetrack' in that specification.
AudioWorkletNode.parameters - Web APIs
the read-only parameters property of the audioworkletnode
interface returns the associated audioparammap — that is, a map-like collection of audioparam objects.
AuthenticatorAssertionResponse.authenticatorData - Web APIs
the authenticatordata property of the authenticatorassertionresponse
interface returns an arraybuffer containing information from the authenticator such as the relying party id hash (rpidhash), a signature counter, test of user presence, user verification flags, and any extensions processed by the authenticator.
AuthenticatorAssertionResponse.signature - Web APIs
the signature read-only property of the authenticatorassertionresponse
interface is an arraybuffer object which is the signature of the authenticator for both authenticatorassertionresponse.authenticatordata and a sha-256 hash of the client data (authenticatorassertionresponse.clientdatajson).
AuthenticatorAttestationResponse.attestationObject - Web APIs
the attestationobject property of the authenticatorattestationresponse
interface returns an arraybuffer containing the new public key, as well as signature over the entire attestationobject with a private key that is stored in the authenticator when it is manufactured.
AuthenticatorResponse.clientDataJSON - Web APIs
the clientdatajson property of the authenticatorresponse
interface stores a json string in an arraybuffer, representing the client data that was passed to credentialscontainer.create() or credentialscontainer.get().
BaseAudioContext.audioWorklet - Web APIs
the audioworklet read-only property of the baseaudiocontext
interface returns an instance of audioworklet that can be used for adding audioworkletprocessor-derived classes which implement custom audio processing.
BaseAudioContext.createAnalyser() - Web APIs
the createanalyser() method of the baseaudiocontext
interface creates an analysernode, which can be used to expose audio time and frequency data and create data visualisations.
BaseAudioContext.createBuffer() - Web APIs
the createbuffer() method of the baseaudiocontext
interface is used to create a new, empty audiobuffer object, which can then be populated by data, and played via an audiobuffersourcenode for more details about audio buffers, check out the audiobuffer reference page.
DOMPoint - Web APIs
sition.z)); console.log('xr viewer orientation: {x: ' + roundtotwo(orientation.x) + ', y: ' + roundtotwo(orientation.y) + ', z: ' + roundtotwo(orientation.z) + ', w: ' + roundtotwo(orientation.w)); } } specifications specification status comment geometry
interfaces module level 1the definition of 'dompoint' in that specification.
DOMPointInit.w - Web APIs
specifications specification status comment geometry
interfaces module level 1the definition of 'w' in that specification.
DOMPointInit.x - Web APIs
specifications specification status comment geometry
interfaces module level 1the definition of 'x' in that specification.
DOMPointInit.y - Web APIs
specifications specification status comment geometry
interfaces module level 1the definition of 'y' in that specification.
DOMPointInit.z - Web APIs
specifications specification status comment geometry
interfaces module level 1the definition of 'z' in that specification.
DOMPointReadOnly() - Web APIs
var point2d = new dompointreadonly(50, 25); var point3d = new dompointreadonly(50, 0, 10); var perspectivepoint3d = new dompointreadonly(50, 50, 25, 0.5); specifications specification status comment geometry
interfaces module level 1the definition of 'dompointreadonly' in that specification.
DOMPointReadOnly.fromPoint() - Web APIs
const origpoint = new dompoint(25, 25, 100, 0.5) const newpoint = dompointreadonly.frompoint(origpoint) specifications specification status comment geometry
interfaces module level 1the definition of 'frompoint()' in that specification.
DOMPointReadOnly.toJSON() - Web APIs
var topleft = new dompoint(window.screenx, window.screeny); var pointjson = topleft.tojson(); specifications specification status comment geometry
interfaces module level 1the definition of 'dompointreadonly.tojson()' in that specification.
DOMQuad - Web APIs
specifications specification status comment geometry
interfaces module level 1the definition of 'domquad' in that specification.
DOMRect.DOMRect() - Web APIs
examples to create a new domrect, you could run a line of code like so: mydomrect = new domrect(0,0,100,100); // running 'mydomrect' in the console would then return // domrect { x: 0, y: 0, width: 100, height: 100, top: 0, right: 100, bottom: 100, left: 0 } specifications specification status comment geometry
interfaces module level 1the definition of 'domrect()' in that specification.
DOMRectReadOnly() - Web APIs
examples to create a new dompoint, you could run a line of code like so: const mydomrect = new domrectreadonly(0, 0, 100, 100) // running 'mydomrect' in the console would then return // domrect { x: 0, y: 0, width: 100, height: 100, top: 0, right: 100, bottom: 100, left: 0 } specifications specification status comment geometry
interfaces module level 1the definition of 'domrectreadonly()' in that specification.
Binary strings - Web APIs
the stringview non native constructor is one level above typed arrays and provides a c-like
interface for strings.
DOMStringMap - Web APIs
the domstringmap
interface is used for the htmlelement.dataset attribute, to represent data for custom attributes added to elements.
DOMTokenList.contains() - Web APIs
the contains() method of the domtokenlist
interface returns a boolean — true if the underlying list contains the given token, otherwise false.
Document.images - Web APIs
the images read-only property of the document
interface returns a collection of the images in the current html document.
Document.implementation - Web APIs
for example, the domimplementation
interface includes a createdocumenttype method with which dtds can be created for one or more documents managed by the implementation.
Document: keydown event - Web APIs
bubbles yes cancelable yes
interface keyboardevent event handler property onkeydown the keydown and keyup events provide a code indicating which key is pressed, while keypress indicates which character was entered.
Document: keypress event - Web APIs
interface keyboardevent bubbles yes cancelable yes default action varies: keypress event; launch text composition system; blur and focus events; domactivate event; other event examples addeventlistener keypress example this example logs the keyboardevent.code value whenever you press a key.
Document: keyup event - Web APIs
bubbles yes cancelable yes
interface keyboardevent event handler property onkeyup the keydown and keyup events provide a code indicating which key is pressed, while keypress indicates which character was entered.
Document.lastModified - Web APIs
the lastmodified property of the document
interface returns a string containing the date and time on which the current document was last modified.
Document.links - Web APIs
the links read-only property of the document
interface returns a collection of all <area> elements and <a> elements in a document with a value for the href attribute.
Document: lostpointercapture event - Web APIs
bubbles no cancelable no
interface pointerevent event handler property onlostpointercapture examples this example listens for the lostpointercapture event, and captures the pointer for an element on pointerdown.
Document.onfullscreenchange - Web APIs
the document
interface's onfullscreenchange property is an event handler for the fullscreenchange event that is fired immediately before a document transitions into or out of full-screen mode.
Document.plugins - Web APIs
the plugins read-only property of the document
interface returns an htmlcollection object containing one or more htmlembedelements representing the <embed> elements in the current document.
Document: pointerdown event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerdown examples using addeventlistener(): document.addeventlistener('pointerdown', (event) => { console.log('pointer down event'); }); using the onpointerdown event handler property: document.onpointerdown = (event) => { console.log('pointer down event'); }; specifications specification status pointer events ...
Document: pointerenter event - Web APIs
bubbles no cancelable no
interface pointerevent event handler property onpointerenter examples using addeventlistener(): document.addeventlistener('pointerenter', (event) => { console.log('pointer entered element'); }); using the onpointerenter event handler property: document.onpointerenter = (event) => { console.log('pointer entered element'); }; specifications specification status pointer events obsolete ...
Document: pointerleave event - Web APIs
bubbles no cancelable no
interface pointerevent event handler property onpointerleave examples using addeventlistener(): document.addeventlistener('pointerleave', (event) => { console.log('pointer left element'); }); using the onpointerleave event handler property: document.onpointerleave = (event) => { console.log('pointer left element'); }; specifications specification status pointer events obsolete ...
Document: pointerlockchange event - Web APIs
bubbles yes cancelable no
interface event event handler property onpointerlockchange examples using addeventlistener(): document.addeventlistener('pointerlockchange', (event) => { console.log('pointer lock changed'); }); using the onpointerlockchange event handler property: document.onpointerlockchange = (event) => { console.log('pointer lock changed'); }; specifications specification status pointer lock candidate recommendation ...
Document: pointerlockerror event - Web APIs
bubbles yes cancelable no
interface event event handler property onpointerlockerror examples using addeventlistener(): const para = document.queryselector('p'); document.addeventlistener('pointerlockerror', (event) => { console.log('error locking pointer'); }); using the onpointerlockerror event handler property: document.onpointerlockerror = (event) => { console.log('error locking pointer'); }; specifications specification status pointer lock candidate recommendation ...
Document: pointermove event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointermove examples using addeventlistener(): document.addeventlistener('pointermove', (event) => { console.log('pointer moved'); }); using the onpointermove event handler property: document.onpointermove = (event) => { console.log('pointer moved'); }; specifications specification status pointer events obsolete ...
Document: pointerout event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerout examples using addeventlistener(): document.addeventlistener('pointerout', (event) => { console.log('pointer moved out'); }); using the onpointerout event handler property: document.onpointerout = (event) => { console.log('pointer moved out'); }; specifications specification status pointer ev...
Document: pointerover event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerover examples using addeventlistener(): document.addeventlistener('pointerover', (event) => { console.log('pointer moved in'); }); using the onpointerover event handler property: document.onpointerover = (event) => { console.log('pointer moved in'); }; specifications specification status pointer events obsolete ...
Document: pointerup event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerup examples using addeventlistener(): document.addeventlistener('pointerup', (event) => { console.log('pointer up'); }); using the onpointerup event handler property: document.onpointerup = (event) => { console.log('pointer up'); }; specifications specification status pointer events obsolete ...
Document: readystatechange event - Web APIs
bubbles no cancelable no
interface event event handler property onreadystatechange examples live example html <div class="controls"> <button id="reload" type="button">reload</button> </div> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents" rows="8" cols="30"></textarea> </div> css body { display: grid; grid-template-areas: "control log"; } .controls { grid-area: control; display: flex; align-items: center; justify-content: center; } .event-log { grid-area: log; } .event-log-contents { resize: none; } label, button { display: block; } #reload { height: 2rem; } js ...
Document.requestStorageAccess() - Web APIs
the requeststorageaccess() method of the document
interface returns a promise that resolves if the access to first-party storage was granted, and rejects if access was denied.
Document: scroll event - Web APIs
bubbles yes cancelable no
interface event event handler property onscroll note: in ios uiwebviews, scroll events are not fired while scrolling is taking place; they are only fired after the scrolling has completed.
Document: selectionchange event - Web APIs
bubbles no cancelable no
interface event event handler property onselectionchange examples // addeventlistener version document.addeventlistener('selectionchange', () => { console.log(document.getselection()); }); // onselectionchange version document.onselectionchange = () => { console.log(document.getselection()); }; specifications specification status comment selection apithe definition of 'selectionchange' in that specification.
Document: selectstart event - Web APIs
bubbles yes cancelable yes
interface event event handler property onselectstart examples // addeventlistener version document.addeventlistener('selectstart', () => { console.log('selection started'); }); // onselectstart version document.onselectstart = () => { console.log('selection changed.'); }; specifications specification status comment selection apithe definition of 'selectstart' in that specification.
Document.timeline - Web APIs
the timeline readonly property of the document
interface represents the default timeline of the current document.
Document: touchcancel event - Web APIs
bubbles yes cancelable no
interface touchevent event handler property ontouchcancel examples code samples for those events are available on the dedicated page: touch events.
Document: touchend event - Web APIs
bubbles yes cancelable yes
interface touchevent event handler property ontouchend examples code samples for those events are available on the dedicated page: touch events.
Document: touchmove event - Web APIs
bubbles yes cancelable yes
interface touchevent event handler property ontouchmove examples code samples for those events are available on the dedicated page: touch events.
Element.animate() - Web APIs
the element
interface's animate() method is a shortcut method which creates a new animation, applies it to the element, then plays the animation.
Element: auxclick event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onauxclick preventing default actions for the vast majority of browsers that map middle click to opening a link in a new tab, including firefox, it is possible to cancel this behavior by calling preventdefault() from within an auxclick event handler.
Element: blur event - Web APIs
bubbles no cancelable no
interface focusevent event handler property onblur sync / async sync composed yes examples simple example html <form id="form"> <input type="text" placeholder="text input"> <input type="password" placeholder="password"> </form> javascript const password = document.queryselector('input[type="password"]'); password.addeventlistener('focus', (event) => { event.target.style.background = 'pink'; }); password.addeventlistener('blur', (event) => { event.target.style.background = ''; }); result event del...
Element.className - Web APIs
the classname property of the element
interface gets and sets the value of the class attribute of the specified element.
Element: compositionend event - Web APIs
bubbles yes cancelable yes
interface compositionevent event handler property none examples const inputelement = document.queryselector('input[type="text"]'); inputelement.addeventlistener('compositionend', (event) => { console.log(`generated characters were: ${event.data}`); }); live example html <div class="control"> <label for="name">on macos, click in the textbox below,<br> then type <kbd>option</kbd> + <kbd>`</kbd>, then <kbd>a</kbd>:</label> <input type="text" id="exampl...
Element: compositionstart event - Web APIs
bubbles yes cancelable yes
interface compositionevent event handler property none examples const inputelement = document.queryselector('input[type="text"]'); inputelement.addeventlistener('compositionstart', (event) => { console.log(`generated characters were: ${event.data}`); }); live example html <div class="control"> <label for="name">on macos, click in the textbox below,<br> then type <kbd>option</kbd> + <kbd>`</kbd>, then <kbd>a</kbd>:</label> <input type="text" id="example" name="example">...
Element: compositionupdate event - Web APIs
bubbles yes cancelable yes
interface compositionevent event handler property none examples const inputelement = document.queryselector('input[type="text"]'); inputelement.addeventlistener('compositionupdate', (event) => { console.log(`generated characters were: ${event.data}`); }); live example html <div class="control"> <label for="name">on macos, click in the textbox below,<br> then type <kbd>option</kbd> + <kbd>`</kbd>, then <kbd>a</kbd>:</label> ...
Element: contextmenu event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property oncontextmenu examples in this example, the default action of the contextmenu event is canceled using preventdefault() when the contextmenu event is fired at the first paragraph.
Element: dblclick event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property ondblclick examples this example toggles the size of a card when you double click on it.
Element: error event - Web APIs
bubbles no cancelable no
interface event or uievent event handler property onerror the event object is a uievent instance if it was generated from a user
interface element, or an event instance otherwise.
Element: focus event - Web APIs
bubbles no cancelable no
interface focusevent event handler property onfocus sync / async sync composed yes examples simple example html <form id="form"> <input type="text" placeholder="text input"> <input type="password" placeholder="password"> </form> javascript const password = document.queryselector('input[type="password"]'); password.addeventlistener('focus', (event) => { event.target.style.background = 'pink'; }); password.addeventlistener('blur', (event) => { event.target.style.background = ''; }); result even...
Element: focusin event - Web APIs
bubbles yes cancelable no
interface focusevent event handler property onfocusin sync / async sync composed yes examples live example html <form id="form"> <input type="text" placeholder="text input"> <input type="password" placeholder="password"> </form> javascript const form = document.getelementbyid('form'); form.addeventlistener('focusin', (event) => { event.target.style.background = 'pink'; }); form.addeventlistener('focusout', (event) => { event.target.style.background = ''; }); result specification...
Element: focusout event - Web APIs
bubbles yes cancelable no
interface focusevent event handler property onfocusout sync / async sync composed yes examples live example html <form id="form"> <input type="text" placeholder="text input"> <input type="password" placeholder="password"> </form> javascript const form = document.getelementbyid('form'); form.addeventlistener('focusin', (event) => { event.target.style.background = 'pink'; }); form.addeventlistener('focusout', (event) => { event.target.style.background = ''; }); result specifications ...
Element: fullscreenchange event - Web APIs
bubbles yes cancelable no
interface event event handler property onfullscreenchange this event is sent to the element which is transitioning into or out of full-screen mode.
Element: keydown event - Web APIs
bubbles yes cancelable yes
interface keyboardevent event handler property onkeydown the keydown and keyup events provide a code indicating which key is pressed, while keypress indicates which character was entered.
Element: keypress event - Web APIs
interface keyboardevent bubbles yes cancelable yes default action varies: keypress event; launch text composition system; blur and focus events; domactivate event; other event examples addeventlistener keypress example this example logs the keyboardevent.code value whenever you press a key after focussing the <input> element.
Element: keyup event - Web APIs
bubbles yes cancelable yes
interface keyboardevent event handler property onkeyup the keydown and keyup events provide a code indicating which key is pressed, while keypress indicates which character was entered.
Element: mousedown event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onmousedown examples the following example uses the mousedown, mousemove, and mouseup events to allow the user to draw on an html5 canvas.
Element: mouseenter event - Web APIs
bubbles no cancelable no
interface mouseevent event handler property onmouseenter usage notes though similar to mouseover, mouseenter differs in that it doesn't bubble and it isn't sent to any descendants when the pointer is moved from one of its descendants' physical space to its own physical space.
Element: mouseleave event - Web APIs
bubbles no cancelable no
interface mouseevent event handler property onmouseleave mouseleave and mouseout are similar but differ in that mouseleave does not bubble and mouseout does.
Element: mousemove event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onmousemove examples the following example uses the mousedown, mousemove, and mouseup events to allow the user to draw on an html5 canvas.
Element: mouseout event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onmouseout examples the following examples show the use of the mouseout event.
Element: mouseover event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onmouseover examples the following example illustrates the difference between mouseover and mouseenter events.
Element: mouseup event - Web APIs
bubbles yes cancelable yes
interface mouseevent event handler property onmouseup examples the following example uses the mousedown, mousemove, and mouseup events to allow the user to draw on an html5 canvas.
Element: mousewheel event - Web APIs
bubbles yes cancelable yes
interface mousewheelevent event handler property onmousewheel the detail property the value of the detail property is always zero, except in opera, which uses detail similarly to the firefox-only dommousescroll event's detail value, which indicates the scroll distance in terms of lines, with negative values indicating the scrolling movement is either toward the bottom or toward the...
Element: msContentZoom event - Web APIs
bubbles unknown cancelable unknown
interface unknown event handler property unknown example contentzoom.addeventlistener("mscontentzoom", function(e) { zoomfactor.value = contentzoom.mscontentzoomfactor.tofixed(2); }); specifications not part of any specification.
Element.name - Web APIs
note: the name property doesn't exist for other elements; unlike tagname and nodename, it is not a property of the node, element or htmlelement
interfaces.
Event.type - Web APIs
the type read-only property of the event
interface returns a string containing the event's type.
EventSource.close() - Web APIs
the close() method of the eventsource
interface closes the connection, if one is made, and sets the eventsource.readystate attribute to 2 (closed).
EventSource: error event - Web APIs
bubbles no cancelable no
interface event or errorevent event handler property eventsource.onerror examples var evtsource = new eventsource('sse.php'); // addeventlistener version evtsource.addeventlistener('error', (e) => { console.log("an error occurred while attempting to connect."); }); // onerror version evtsource.onerror = (e) => { console.log("an error occurred while attempting to connect."); }; specifications specification status html living standardthe definition of 'error event' in that specification.
EventSource: message event - Web APIs
bubbles no cancelable no
interface messageevent event handler property eventsource.onmessage examples in this basic example, an eventsource is created to receive events from the server; a page with the name sse.php is responsible for generating the events.
EventSource.onerror - Web APIs
the onerror property of the eventsource
interface is an eventhandler called when an error occurs and the error event is dispatched on an eventsource object.
EventSource.onmessage - Web APIs
the onmessage property of the eventsource
interface is an eventhandler called when a message event is received, that is when a message is coming from the source.
EventSource.onopen - Web APIs
the onopen property of the eventsource
interface is an eventhandler called when an open event is received, that is when the connection was just opened.
EventSource: open event - Web APIs
bubbles no cancelable no
interface event event handler property eventsource.onopen examples var evtsource = new eventsource('sse.php'); // addeventlistener version evtsource.addeventlistener('open', (e) => { console.log("the connection has been established."); }); // onopen version evtsource.onopen = (e) => { console.log("the connection has been established."); }; specifications specification status html living standardthe definition of 'open event' in that specification.
EventSource.url - Web APIs
the url read-only property of the eventsource
interface returns a domstring representing the url of the source.
EventSource.withCredentials - Web APIs
the withcredentials read-only property of the eventsource
interface returns a boolean indicating whether the eventsource object was instantiated with cors credentials set.
ExtendableMessageEvent.ports - Web APIs
the ports read-only property of the extendablemessageevent
interface returns the array containing the messageport objects representing the ports of the associated message channel (the channel the message is being sent through.) syntax var myports = extendablemessageevent.ports; value an array of messageport objects.
FileReader: abort event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onabort examples live example html <div class="example"> <div class="file-select"> <label for="avatar">choose a profile picture:</label> <input type="file" id="avatar" name="avatar" accept="image/png, image/jpeg"> </div> <img src="" class="preview" height="200" alt="image preview..."> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css img.preview { margin: 1rem 0; } .event-log-co...
FileReader: error event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onerror examples const fileinput = document.queryselector('input[type="file"]'); const reader = new filereader(); function handleselected(e) { const selectedfile = fileinput.files[0]; if (selectedfile) { reader.addeventlistener('error', () => { console.error(`error occurred reading file: ${selectedfile.name}`); }); reader.addeventlistener('load', () => { console.error(`file: ${selectedfile.name} read successfully`); }); reader.readasdataurl(selectedfile); } }...
FileReader: load event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onload examples live example html <div class="example"> <div class="file-select"> <label for="avatar">choose a profile picture:</label> <input type="file" id="avatar" name="avatar" accept="image/png, image/jpeg"> </div> <img src="" class="preview" height="200" alt="image preview..."> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css img.preview { margin: 1rem 0; } .event-log-contents { width: 18rem; height: 5rem; border: 1...
FileReader: loadend event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onloadend examples live example html <div class="example"> <div class="file-select"> <label for="avatar">choose a profile picture:</label> <input type="file" id="avatar" name="avatar" accept="image/png, image/jpeg"> </div> <img src="" class="preview" height="200" alt="image preview..."> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css img.preview { margin: 1rem 0; } .event-log-contents { width: 18rem; height...
FileReader: loadstart event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onloadstart examples live example html <div class="example"> <div class="file-select"> <label for="avatar">choose a profile picture:</label> <input type="file" id="avatar" name="avatar" accept="image/png, image/jpeg"> </div> <img src="" class="preview" height="200" alt="image preview..."> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css img.preview { margin: 1rem 0; } .event-log-contents { width: 18rem; height: 5rem; b...
FileReader: progress event - Web APIs
bubbles no cancelable no
interface progressevent event handler property filereader.onprogress examples live example html <div class="example"> <div class="file-select"> <label for="avatar">choose a profile picture:</label> <input type="file" id="avatar" name="avatar" accept="image/png, image/jpeg"> </div> <img src="" class="preview" height="200" alt="image preview..."> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css img.preview { margin: 1rem 0; } .event-log-contents { width: 18rem; height: 5rem; ...
FileReader - Web APIs
events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this
interface.
FileSystem.root - Web APIs
the read-only root property of the filesystem
interface specifies a filesystemdirectoryentry object representing the root directory of the file system, for use with the file and directory entries api.
FileSystemDirectoryEntry.getDirectory() - Web APIs
the filesystemdirectoryentry
interface's method getdirectory() returns a filesystemdirectoryentry object corresponding to a directory contained somewhere within the directory subtree rooted at the directory on which it's called.
FileSystemDirectoryEntry.getFile() - Web APIs
} the filesystemdirectoryentry
interface's method getfile() returns a filesystemfileentry object corresponding to a file contained somewhere within the directory subtree rooted at the directory on which it's called.
Gyroscope.z - Web APIs
the z read-only property of the gyroscope
interface returns a double precision integer containing the angular velocity of the device along the its z axis.
Gyroscope - Web APIs
the gyroscope
interface of the sensor apis provides on each reading the angular velocity of the device along all three axes.
HTMLBaseFontElement - Web APIs
the htmlbasefontelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <basefont> elements.
HTMLCanvasElement: webglcontextcreationerror event - Web APIs
bubbles yes cancelable yes
interface webglcontextevent event handler property none example var canvas = document.getelementbyid('canvas'); canvas.addeventlistener('webglcontextcreationerror', function(e) { console.log(e.statusmessage || 'unknown error'); }, false); var gl = canvas.getcontext('webgl'); // logs statusmessage or "unknown error" if unable to create webgl context specifications specification status comment webgl 1.0the def...
HTMLCanvasElement: webglcontextlost event - Web APIs
bubbles yes cancelable yes
interface webglcontextevent event handler property none example with the help of the webgl_lose_context extension, you can simulate the webglcontextlost event: const canvas = document.getelementbyid('canvas'); const gl = canvas.getcontext('webgl'); canvas.addeventlistener('webglcontextlost', (event) => { console.log(event); }); gl.getextension('webgl_lose_context').losecontext(); // "webglcontextlost" event is logged.
HTMLCanvasElement: webglcontextrestored event - Web APIs
bubbles yes cancelable yes
interface webglcontextevent event handler property none example with the help of the webgl_lose_context extension, you can simulate the webglcontextrestored event: var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); canvas.addeventlistener('webglcontextrestored', function(e) { console.log(e); }, false); gl.getextension('webgl_lose_context').resto...
HTMLDialogElement: cancel event - Web APIs
bubbles no cancelable yes
interface event event handler oncancel examples live example html <dialog class="example-dialog"> <button class="close" type="reset">close</button> </dialog> <button class="open-dialog">open dialog</button> <div class="result"></div> css button, div { margin: .5rem; } js const result = document.queryselector('.result'); const dialog = document.queryselector('.example-dialog'); dialog.addeventlistener('cancel', (event) => { r...
HTMLDialogElement: close event - Web APIs
bubbles no cancelable no
interface event event handler property onclose examples live example html <dialog class="example-dialog"> <button class="close" type="reset">close</button> </dialog> <button class="open-dialog">open dialog</button> <div class="result"></div> css button, div { margin: .5rem; } js const result = document.queryselector('.result'); const dialog = document.queryselector('.example-dialog'); dialog.addeventlistener('close', (event) => { result.textcontent = 'dialog was closed'; }); const opendialog = document.queryselector('.open-dialog'); opendialog.addeventlistener('click', () => { if (typeof d...
HTMLDialogElement.open - Web APIs
the open property of the htmldialogelement
interface is a boolean reflecting the open html attribute, indicating whether the dialog is available for interaction.
HTMLDialogElement.returnValue - Web APIs
the returnvalue property of the htmldialogelement
interface gets or sets the return value for the <dialog>, usually to indicate which button the user pressed to close it.
HTMLElement: animationcancel event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationcancel examples this code gets an element that's currently being animated and adds a listener to the animationcancel event.
HTMLElement: animationend event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationend examples this example gets an element that's being animated and listens for the animationend event: const animated = document.queryselector('.animated'); animated.addeventlistener('animationend', () => { console.log('animation ended'); }); the same, but using the onanimationend event handler property: const animated = document.queryselector('.animated'); animated.onanimationend = () => { console.log(...
HTMLElement: animationiteration event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationiteration examples this code uses animationiteration to keep track of the number of iterations an animation has completed: const animated = document.queryselector('.animated'); let iterationcount = 0; animated.addeventlistener('animationiteration', () => { iterationcount++; console.log(`animation iteration count: ${iterationcount}`); }); the same, but using the onanimationiteration event handle...
HTMLElement: animationstart event - Web APIs
bubbles yes cancelable no
interface animationevent event handler property onanimationstart examples this listens for the animationstart event and logs a message when it is fired: const animated = document.queryselector('.animated'); animated.addeventlistener('animationstart', () => { console.log('animation started'); }); the same, but using onanimationstart: const animated = document.queryselector('.an...
HTMLElement: beforeinput event - Web APIs
bubbles yes cancelable yes
interface inputevent event handler property none sync / async sync composed yes default action update the dom element examples this example logs current value of the element immediately before replacing that value with the new one applied to the <input> element.
HTMLElement: change event - Web APIs
bubbles yes cancelable no
interface event event handler property onchange depending on the kind of element being changed and the way the user interacts with the element, the change event fires at a different moment: when the element is :checked (by clicking or using the keyboard) for <input type="radio"> and <input type="checkbox">; when the user commits the change explicitly (e.g., by selecting a value from a <select>'s dropdown with a mouse click, by selecting a date from a date picker for <...
inert - Web APIs
according to the spec: when a node is inert, then the user agent must act as if the node was absent for the purposes of targeting user interaction events, may ignore the node for the purposes of text search user
interfaces (commonly known as "find in page"), and may prevent the user from selecting text in that node.
HTMLElement: input event - Web APIs
bubbles yes cancelable no
interface inputevent event handler property globaleventhandlers.oninput the event also applies to elements with contenteditable enabled, and to any element when designmode is turned on.
HTMLElement: lostpointercapture event - Web APIs
bubbles yes cancelable no
interface pointerevent event handler property onlostpointercapture examples this example listens for the lostpointercapture event for an element, and captures the pointer for the element on pointerdown.
HTMLElement: pointerdown event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerdown examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerdown', (event) => { console.log('pointer down event'); }); using the onpointerdown event handler property: const para = document.queryselector('p'); para.onpointerdown = (event) => { console.log('pointer down event'); }; ...
HTMLElement: pointerenter event - Web APIs
bubbles no cancelable no
interface pointerevent event handler property onpointerenter examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerenter', (event) => { console.log('pointer entered element'); }); using the onpointerenter event handler property: const para = document.queryselector('p'); para.onpointerenter = (event) => { console.log('pointer entered element'); }; specifications specification status pointer events o...
HTMLElement: pointerleave event - Web APIs
bubbles no cancelable no
interface pointerevent event handler property onpointerleave examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerleave', (event) => { console.log('pointer left element'); }); using the onpointerleave event handler property: const para = document.queryselector('p'); para.onpointerleave = (event) => { console.log('pointer left element'); }; specifications specification status pointer events obsolete ...
HTMLElement: pointermove event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointermove usage notes the event, which is of type pointerevent, provides all the information you need to know about the user's interaction with the pointing device, including the position, movement distance, button states, and much more.
HTMLElement: pointerout event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerout examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerout', (event) => { console.log('pointer moved out'); }); using the onpointerout event handler property: const para = document.queryselector('p'); para.onpointerout = (event) => { console.log('pointer moved out')...
HTMLElement: pointerover event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerover examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerover', (event) => { console.log('pointer moved in'); }); using the onpointerover event handler property: const para = document.queryselector('p'); para.onpointerover = (event) => { console.log('pointer moved in'); }; specifications specification status pointer events obsolete ...
HTMLElement: pointerup event - Web APIs
bubbles yes cancelable yes
interface pointerevent event handler property onpointerup examples using addeventlistener(): const para = document.queryselector('p'); para.addeventlistener('pointerup', (event) => { console.log('pointer up'); }); using the onpointerup event handler property: const para = document.queryselector('p'); para.onpointerup = (event) => { console.log('pointer up'); }; specifications specification status pointer events obsolete ...
HTMLElement: transitioncancel event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property globaleventhandlers.ontransitioncancel examples this code gets an element that has a transition defined and adds a listener to the transitioncancel event: const transition = document.queryselector('.transition'); transition.addeventlistener('transitioncancel', () => { console.log('transition canceled'); }); the same, but using the ontransitioncancel property instead of addeventlistener(): const transition = document.queryselector('.transition'); transition.ontransitioncancel = () => { console.log('transition cancel...
HTMLElement: transitionend event - Web APIs
bubbles yes cancelable yes
interface transitionevent event handler property ontransitionend the transitionend event is fired in both directions - as it finishes transitioning to the transitioned state, and when it fully reverts to the default or non-transitioned state.
HTMLElement: transitionrun event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property ontransitionrun examples this code adds a listener to the transitionrun event: el.addeventlistener('transitionrun', () => { console.log('transition is running but hasn\'t necessarily started transitioning yet'); }); the same, but using the ontransitionrun property instead of addeventlistener(): el.ontransitionrun = () => { console.log('transition started running, and will start transitioning when the transition delay has expired'); }; live example in the following example, we have a simple <div> element, styled with a transition that...
HTMLElement: transitionstart event - Web APIs
bubbles yes cancelable no
interface transitionevent event handler property ontransitionstart examples this code adds a listener to the transitionstart event: element.addeventlistener('transitionstart', () => { console.log('started transitioning'); }); the same, but using the ontransitionstart property instead of addeventlistener(): element.ontransitionrun = () => { console.log('started transitioning'); }; live example in the following example, we have a simple <div> element, styled with a transition that includes a delay: <div class="transition">hover over me</div> <div class="message"></div> .transi...
HTMLFormElement: formdata event - Web APIs
general info bubbles no cancelable no
interface formdataevent event handler property globaleventhandlers.onformdata examples // grab reference to form const formelem = document.queryselector('form'); // submit handler formelem.addeventlistener('submit', (e) => { // on form submission, prevent default e.preventdefault(); // construct a formdata object, which fires the formdata event new formdata(formelem); }); // formdata handler to retrieve data formelem.addeventlistener('formdata', (e) => { console.log('formdata fired'); ...
HTMLFormElement: reset event - Web APIs
bubbles yes (although specified as a simple event that doesn't bubble) cancelable yes
interface event event handler property globaleventhandlers.onreset examples this example uses eventtarget.addeventlistener() to listen for form resets, and logs the current event.timestamp whenever that occurs.
HTMLFormElement: submit event - Web APIs
bubbles yes (although specified as a simple event that doesn't bubble) cancelable yes
interface submitevent event handler property globaleventhandlers.onsubmit note that the submit event fires on the <form> element itself, and not on any <button> or <input type="submit"> inside it.
HTMLFormElement.target - Web APIs
the target property of the htmlformelement
interface represents the target of the form's action (i.e., the frame in which to render its output).
HTMLImageElement.useMap - Web APIs
the usemap property on the htmlimageelement
interface reflects the value of the html usemap attribute, which is a string providing the name of the client-side image map to apply to the image.
HTMLImageElement.vspace - Web APIs
the obsolete vspace property of the htmlimageelement
interface specifies the number of pixels of empty space to leave empty on the top and bottom of the <img> element when laying out the page.
HTMLImageElement.width - Web APIs
the width property of the htmlimageelement
interface indicates the width at which the image is drawn, in css pixels if the image is being drawn or rendered to any visual medium such as the screen or a printer; otherwise, it's the natural, pixel density corrected width of the image.
HTMLInputElement: invalid event - Web APIs
bubbles no cancelable yes
interface event event handler property globaleventhandlers.oninvalid this event can be useful for displaying a summary of the problems with a form on submission.
HTMLInputElement: search event - Web APIs
bubbles yes cancelable no
interface event event handler property onsearch there are several ways a search can be initiated, such as by pressing enter while the <input> is focused, or, if the incremental attribute is present, after a ua-defined timeout elapses since the most recent keystroke (with new keystrokes resetting the timeout so the firing of the event is debounced).
HTMLInputElement.webkitEntries - Web APIs
the read-only webkitentries property of the htmlinputelement
interface contains an array of file system entries (as objects based on filesystementry) representing files and/or directories selected by the user using an <input> element of type file, but only if that selection was made using drag-and-drop: selecting a file in the dialog will leave the property empty (bug 1326031).
HTMLIsIndexElement - Web APIs
the htmlisindexelement
interface provides special properties (beyond the regular htmlelement
interface it also has available to it by inheritance) for manipulating <isindex> elements.
HTMLLinkElement.as - Web APIs
the as property of the htmllinkelement
interface returns a domstring representing the type of content being loaded by the html link, one of "script", "style", "image", "video", "audio", "track", "font", "fetch".
HTMLMediaElement: abort event - Web APIs
bubbles no cancelable no
interface event event handler property onabort examples const video = document.queryselector('video'); const videosrc = 'https://path/to/video.webm'; video.addeventlistener('abort', () => { console.log(`abort loading: ${videosrc}`); }); const source = document.createelement('source'); source.setattribute('src', videosrc); source.setattribute('type', 'video/webm'); video.appendchild(source); specifications specification status html living standard living standard html5 recommendation ...
HTMLMediaElement: canplay event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.oncanplay specification html5 media examples these examples add an event listener for the htmlmediaelement's canplay event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: canplaythrough event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.oncanplaythrough specification html5 media examples these examples add an event listener for the htmlmediaelement's canplaythrough event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement.captureStream() - Web APIs
the capturestream() property of the htmlmediaelement
interface returns a mediastream object which is streaming a real-time capture of the content being rendered in the media element.
HTMLMediaElement.controls - Web APIs
the htmlmediaelement.controls property reflects the controls html attribute, which controls whether user
interface controls for playing the media item will be displayed.
HTMLMediaElement.controlsList - Web APIs
the controlslist property of the htmlmediaelement
interface returns a domtokenlist that helps the user agent select what controls to show on the media element whenever the user agent shows its own set of controls.
HTMLMediaElement: durationchange event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.ondurationchange specification html5 media examples these examples add an event listener for the htmlmediaelement's durationchange event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: emptied event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onemptied specification html5 media examples these examples add an event listener for the htmlmediaelement's emptied event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: ended event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onended specification html5 media this event is also defined in media capture and streams and web audio api examples these examples add an event listener for the htmlmediaelement's ended event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: error event - Web APIs
bubbles no cancelable no
interface event event handler property onerror examples const video = document.queryselector('video'); const videosrc = 'https://path/to/video.webm'; video.addeventlistener('error', () => { console.error(`error loading: ${videosrc}`); }); video.setattribute('src', videosrc); specifications specification status html living standard living standard html5 recommendation ...
HTMLMediaElement: loadeddata event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onloadeddata specification html5 media note that this event will not fire in mobile/tablet devices if data-saver is on in browser settings.
HTMLMediaElement: loadedmetadata event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onloadedmetadata specification html5 media additional properties property type description mozchannels read only int the number of channels.
HTMLMediaElement: loadstart event - Web APIs
bubbles no cancelable no
interface event event handler property onloadstart examples live example html <div class="example"> <button type="button">load video</button> <video controls width="250"></video> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css .event-log-contents { width: 18rem; height: 5rem; border: 1px solid black; margin: .2rem; padding: .2rem; } .example { display: grid; grid-template-areas: "button log" "video log"; } button { grid-area: button; width: 10rem; margin: .5rem 0; } video {...
HTMLMediaElement: pause event - Web APIs
general info bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onpause specification html5 media examples these examples add an event listener for the htmlmediaelement's pause event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement.play() - Web APIs
for example, a site should not present a user
interface that assumes playback has begun automatically, but should instead update their ui based on whether the returned promise is resolved or rejected.
HTMLMediaElement: play event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onplay specification html5 media examples these examples add an event listener for the htmlmediaelement's play event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: playing event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onplaying specification html5 media examples these examples add an event listener for the htmlmediaelement's playing event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: progress event - Web APIs
bubbles no cancelable no
interface event event handler property onprogress examples live example html <div class="example"> <button type="button">load video</button> <video controls width="250"></video> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents"></textarea> </div> </div> css .event-log-contents { width: 18rem; height: 5rem; border: 1px solid black; margin: .2rem; padding: .2rem; } .example { display: grid; grid-template-areas: "button log" "video log"; } button { grid-area: button; width: 10rem; margin: .5rem 0; } video { gr...
HTMLMediaElement: ratechange event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onratechange specification html5 media examples these examples add an event listener for the htmlmediaelement's ratechange event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: seeked event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onseeked specification html5 media examples these examples add an event listener for the htmlmediaelement's seeked event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: seeking event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onseeking specification html5 media examples these examples add an event listener for the htmlmediaelement's seeking event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement.setMediaKeys() - Web APIs
the setmediakeys() property of the htmlmediaelement
interface returns a promise that resolves to the passed mediakeys, which are those used to decrypt media during playback.
HTMLMediaElement.srcObject - Web APIs
the srcobject property of the htmlmediaelement
interface sets or returns the object which serves as the source of the media associated with the htmlmediaelement.
HTMLMediaElement: stalled event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onstalled specification html5 media examples these examples add an event listener for the htmlmediaelement's stalled event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: suspend event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onsuspend specification html5 media examples these examples add an event listener for the htmlmediaelement's suspend event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: timeupdate event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.ontimeupdate specification html5 media examples these examples add an event listener for the htmlmediaelement's timeupdate event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: volumechange event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onvolumechange specification html5 media examples these examples add an event listener for the htmlmediaelement's volumechange event, then post a message when that event handler has reacted to the event firing.
HTMLMediaElement: waiting event - Web APIs
bubbles no cancelable no
interface event target element default action none event handler property globaleventhandlers.onwaiting specification html5 media examples these examples add an event listener for the htmlmediaelement's waiting event, then post a message when that event handler has reacted to the event firing.
HTMLObjectElement.checkValidity - Web APIs
the checkvalidity() method of the htmlobjectelement
interface returns a boolean that always is true, because object objects are never candidates for constraint validation.
HTMLObjectElement.contentDocument - Web APIs
the contentdocument read-only property of the htmlobjectelement
interface returns a document representing the active document of the object element's nested browsing context, if any; otherwise null.
HTMLObjectElement.contentWindow - Web APIs
the contentwindow read-only property of the htmlobjectelement
interface returns a windowproxy representing the window proxy of the object element's nested browsing context, if any; otherwise null.
HTMLObjectElement.data - Web APIs
the data property of the htmlobjectelement
interface returns a domstring that reflects the data html attribute, specifying the address of a resource's data.
HTMLObjectElement.form - Web APIs
the form read-only property of the htmlobjectelement
interface retuns a htmlformelement representing the object element's form owner, or null if there isn't one.
HTMLObjectElement.height - Web APIs
the height property of the htmlobjectelement
interface returns a domstring that reflects the height html attribute, specifying the displayed height of the resource in css pixels.
Headers.set() - Web APIs
the set() method of the headers
interface sets a new value for an existing header inside a headers object, or adds the header if it does not already exist.
History.scrollRestoration - Web APIs
the scrollrestoration property of history
interface allows web applications to explicitly set default scroll restoration behavior on history navigation.
History API - Web APIs
another use for the go() method is to refresh the current page by either passing 0, or by invoking it without an argument: // the following statements // both have the effect of // refreshing the page window.history.go(0) window.history.go() you can determine the number of pages in the history stack by looking at the value of the length property: let numberofentries = window.history.length
interfaces history allows manipulation of the browser session history (that is, the pages visited in the tab or frame that the current page is loaded in).
IDBCursor.continue() - Web APIs
the continue() method of the idbcursor
interface advances the cursor to the next position along its direction, to the item whose key matches the optional key parameter.
IDBCursor.continuePrimaryKey() - Web APIs
the continueprimarykey() method of the idbcursor
interface advances the cursor to the to the item whose key matches the key parameter as well as whose primary key matches the primary key parameter.
IDBCursor.delete() - Web APIs
the delete() method of the idbcursor
interface returns an idbrequest object, and, in a separate thread, deletes the record at the cursor's position, without changing the cursor's position.
IDBCursor.direction - Web APIs
the direction read-only property of the idbcursor
interface is a domstring that returns the direction of traversal of the cursor (set using idbobjectstore.opencursor for example).
IDBCursor.key - Web APIs
the key read-only property of the idbcursor
interface returns the key for the record at the cursor's position.
IDBCursor.source - Web APIs
the source read-only property of the idbcursor
interface returns the idbobjectstore or idbindex that the cursor is iterating over.
IDBCursor.update() - Web APIs
the update() method of the idbcursor
interface returns an idbrequest object, and, in a separate thread, updates the value at the current position of the cursor in the object store.
IDBCursorSync - Web APIs
the idbcursorsync
interface of the indexeddb api represents a cursor for iterating over multiple records in a database.
IDBDatabase: abort event - Web APIs
bubbles yes cancelable no
interface event event handler property onabort examples this example opens a database (creating the database if it does not exist), then opens a transaction, adds a listener to the abort event, then aborts the transaction to trigger the event.
IDBDatabase: close event - Web APIs
bubbles no cancelable no
interface event event handler property onerror examples this example opens a database and listens for the close event: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath...
IDBDatabase.deleteObjectStore() - Web APIs
the deleteobjectstore() method of the idbdatabase
interface destroys the object store with the given name in the connected database, along with any indexes that reference it.
IDBDatabase: error event - Web APIs
bubbles yes cancelable no
interface event event handler property onerror examples this example opens a database and tries to add a record, listening for the error event for the add() operation (this will occur if, for example, a record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain ...
IDBDatabase.name - Web APIs
the name read-only property of the idbdatabase
interface is a domstring that contains the name of the connected database.
IDBDatabase.objectStoreNames - Web APIs
the objectstorenames read-only property of the idbdatabase
interface is a domstringlist containing a list of the names of the object stores currently in the connected database.
IDBDatabase.onabort - Web APIs
the onabort event handler of the idbdatabase
interface handles the abort event, fired when a transaction is aborted and bubbles up to the connection object.
IDBDatabase.onclose - Web APIs
the onclose event handler of the idbdatabase
interface handles the close event, which is fired when the database is unexpectedly closed.
IDBDatabase.onerror - Web APIs
the onerror event handler of the idbdatabase
interface handles the error event, fired when a request returns an error and bubbles up to the connection object.
IDBDatabase.onversionchange - Web APIs
the onversionchange event handler of the idbdatabase
interface handles the versionchange event, fired when a database structure change (idbopendbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested elsewhere (most probably in another window/tab on the same computer).
IDBDatabase.transaction() - Web APIs
the transaction method of the idbdatabase
interface immediately returns a transaction object (idbtransaction) containing the idbtransaction.objectstore method, which you can use to access your object store.
IDBDatabase.version - Web APIs
the version property of the idbdatabase
interface is a 64-bit integer that contains the version of the connected database.
IDBDatabase: versionchange event - Web APIs
bubbles no cancelable no
interface event event handler property onversionchange examples this example opens a database and, on success, adds a listener to versionchange: // open the database const dbopenrequest = window.indexeddb.open('nonexistent', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.crea...
IDBKeyRange.upperOpen - Web APIs
the upperopen read-only property of the idbkeyrange
interface returns a boolean indicating whether the upper-bound value is included in the key range.
IDBKeyRange - Web APIs
the idbkeyrange
interface of the indexeddb api represents a continuous interval over some data type that is used for keys.
IDBObjectStore.add() - Web APIs
the add() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, creates a structured clone of the value, and stores the cloned value in the object store.
IDBObjectStore.clear() - Web APIs
the clear() method of the idbobjectstore
interface creates and immediately returns an idbrequest object, and clears this object store in a separate thread.
IDBObjectStore.count() - Web APIs
the count() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, returns the total number of records that match the provided key or idbkeyrange.
IDBObjectStore.delete() - Web APIs
the delete() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, deletes the specified record or records.
IDBObjectStore.deleteIndex() - Web APIs
the deleteindex() method of the idbobjectstore
interface destroys the index with the specified name in the connected database, used during a version upgrade.
IDBObjectStore.get() - Web APIs
the get() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, returns the object store selected by the specified key.
IDBObjectStore.getAll() - Web APIs
the getall() method of the idbobjectstore
interface returns an idbrequest object containing all objects in the object store matching the specified parameter or all objects in the store if no parameters are given.
IDBObjectStore.getAllKeys() - Web APIs
the getallkeys() method of the idbobjectstore
interface returns an idbrequest object retrieves record keys for all objects in the object store matching the specified parameter or all objects in the store if no parameters are given.
IDBObjectStore.getKey() - Web APIs
the getkey() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, returns the key selected by the specified query.
IDBObjectStore.index() - Web APIs
the index() method of the idbobjectstore
interface opens a named index in the current object store, after which it can be used to, for example, return a series of records sorted by that index using a cursor.
IDBObjectStore.openCursor() - Web APIs
the opencursor() method of the idbobjectstore
interface returns an idbrequest object, and, in a separate thread, returns a new idbcursorwithvalue object.
IDBObjectStore.openKeyCursor() - Web APIs
the openkeycursor() method of the idbobjectstore
interface returns an idbrequest object whose result will be set to an idbcursor that can be used to iterate through matching results.
IDBObjectStore.put() - Web APIs
the put() method of the idbobjectstore
interface updates a given record in a database, or inserts a new record if the given item does not already exist.
IDBObjectStoreSync - Web APIs
the idbobjectstoresync
interface of the indexeddb api provides synchronous access to an object store of a database.
IDBOpenDBRequest: blocked event - Web APIs
bubbles no cancelable no
interface idbversionchangeevent event handler property onblocked examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectsto...
IDBOpenDBRequest.onupgradeneeded - Web APIs
the onupgradeneeded property of the idbopendbrequest
interface is the event handler for the upgradeneeded event, triggered when a database of a bigger version number than the existing stored database is loaded.
IDBOpenDBRequest: upgradeneeded event - Web APIs
bubbles no cancelable no
interface event event handler onupgradeneeded examples this example opens a database and handles the upgradeneeded event by making any necessary updates to the object store.
IDBRequest.error - Web APIs
the error read-only property of the idbrequest
interface returns the error in the event of an unsuccessful request.
IDBRequest: error event - Web APIs
bubbles yes cancelable no
interface event event handler property onerror examples this example opens a database and tries to add a record, listening for the error event for the add() operation (this will occur if, for example, a record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.addeventlistener('upgradeneeded', event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items...
IDBRequest.onerror - Web APIs
the onerror event handler of the idbrequest
interface handles the error event, fired when a request returns an error.
IDBRequest.onsuccess - Web APIs
the onsuccess event handler of the idbrequest
interface handles the success event, fired when the result of a request is successfully returned.
IDBRequest.source - Web APIs
the source read-only property of the idbrequest
interface returns the source of the request, such as an index or an object store.
IDBRequest: success event - Web APIs
bubbles no cancelable no
interface event event handler property onsuccess examples this example tries to open a database and listens for the success event using addeventlistener(): // open the database const openrequest = window.indexeddb.open('todolist', 4); openrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes'...
IDBRequest.transaction - Web APIs
the transaction read-only property of the idbrequest
interface returns the transaction for the request, that is, the transaction the request is being made inside.
IDBTransaction.abort() - Web APIs
the abort() method of the idbtransaction
interface rolls back all the changes to objects in the database associated with this transaction.
IDBTransaction: abort event - Web APIs
bubbles yes cancelable no
interface event event handler property onabort this can happen for any of the following reasons: bad requests, (for example, trying to add the same key twice, or put the same index key when the key has a uniqueness constraint), an explicit abort() call an uncaught exception in the request's success/error handler, an i/o error (an actual failure to write to disk, for example disk detached, or other os/hardware failure) quota exceeded.
IDBTransaction: complete event - Web APIs
bubbles no cancelable no
interface event event handler property oncomplete examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.cr...
IDBTransaction.db - Web APIs
the db read-only property of the idbtransaction
interface returns the database connection with which this transaction is associated.
IDBTransaction.error - Web APIs
the idbtransaction.error property of the idbtransaction
interface returns one of several types of error when there is an unsuccessful transaction.
IDBTransaction: error event - Web APIs
bubbles yes cancelable no
interface event event handler property onerror examples this example opens a database and tries to add a record, listening for the error event for the add() operation (this will occur if, for example, a record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contai...
LayoutShiftAttribution - Web APIs
the layoutshiftattribution
interface of the layout instability api provides debugging information about elements which have shifted.
LinearAccelerationSensor.x - Web APIs
the x read-only property of the linearaccelerationsensor
interface returns a double precision integer containing the linear acceleration of the device along the device's x axis.
LinearAccelerationSensor.y - Web APIs
the y read-only property of the linearaccelerationsensor
interface returns a double precision integer containing the acceleration of the device along the device's y axis.
LinearAccelerationSensor.z - Web APIs
the z read-only property of the linearaccelerationsensor
interface returns a double precision integer containing the acceleration of the device along the device's z axis.
LinearAccelerationSensor - Web APIs
the linearaccelerationsensor
interface of the sensor apis provides on each reading the acceleration applied to the device along all three axes, but without the contribution of gravity.
Location: ancestorOrigins - Web APIs
the ancestororigins read-only property of the location
interface is a static domstringlist containing, in reverse order, the origins of all ancestor browsing contexts of the document associated with the given location object.
Location: hash - Web APIs
the hash property of the location
interface returns a usvstring containing a '#' followed by the fragment identifier of the url.
Location: host - Web APIs
the host property of the location
interface is a usvstring containing the host, that is the hostname, and then, if the port of the url is nonempty, a ':', and the port of the url.
Location: href - Web APIs
the href property of the location
interface is a stringifier that returns a usvstring containing the whole url, and allows the href to be updated.
Location: origin - Web APIs
the origin read-only property of the location
interface is a usvstring containing the unicode serialization of the origin of the represented url; that is: for url using the http or https, the scheme followed by '://', followed by the domain, followed by ':', followed by the port (the default port, 80 and 443 respectively, if explicitely specified); for url using file: scheme, the value is browser dependant; for url using the blob: scheme, the origin of the url following blob:.
Location: password - Web APIs
the password property of the location
interface is a usvstring containing the password specified before the domain name.
Location: pathname - Web APIs
the pathname property of the location
interface is a usvstring containing an initial '/' followed by the path of the url (or the empty string if there is no path).
Location: protocol - Web APIs
the protocol property of the location
interface is a usvstring representing the protocol scheme of the url, including the final ':'.
MIDIInputMap - Web APIs
the midiinputmap read-only
interface of the web midi api provides a map-like
interface to the currently available midi input ports.
MIDIMessageEvent - Web APIs
the midimessageevent
interface of the web midi api represents the event passed to the onmidimessage event handler of the midiinput
interface.
MIDIOutputMap - Web APIs
the midioutputmap read-only
interface of the web midi api provides a map-like
interface to the currently available midi output ports.
MSCandidateWindowHide - Web APIs
syntax event property object.oncandidatewindowhide = handler; addeventlistener method object.addeventlistener("mscandidatewindowhide", handler, usecapture) nbsp; parameters pevtobj [in] type: ihtmleventobj pointer to an ihtmleventobj
interface for the current event.
MSCandidateWindowShow - Web APIs
syntax event property object.oncandidatewindowshow = handler; addeventlistener method object.addeventlistener("mscandidatewindowshow", handler, usecapture) parameters pevtobj [in] type: ihtmleventobj pointer to an ihtmleventobj
interface for the current event.
MSCandidateWindowUpdate - Web APIs
syntax event property object.oncandidatewindowupdate = handler; addeventlistener method object.addeventlistener("mscandidatewindowupdate", handler, usecapture) parameters pevtobj [in] type: ihtmleventobj pointer to an ihtmleventobj
interface for the current event.
MSManipulationEvent.initMSManipulationEvent() - Web APIs
example
interface msmanipulationevent extends uievent { readonly currentstate: number; readonly inertiadestinationx: number; readonly inertiadestinationy: number; readonly laststate: number; initmsmanipulationevent(typearg: string, canbubblearg: boolean, cancelablearg: boolean, viewarg: window, detailarg: number, laststate: number, currentstate: number): void; readonly ms_manipulation_state...
MSManipulationEvent - Web APIs
example
interface msmanipulationevent extends uievent { readonly currentstate: number; readonly inertiadestinationx: number; readonly inertiadestinationy: number; readonly laststate: number; initmsmanipulationevent(typearg: string, canbubblearg: boolean, cancelablearg: boolean, viewarg: window, detailarg: number, laststate: number, currentstate: number): void; readonly ms_manipulation_state...
MSRangeCollection - Web APIs
remarks the msrangecollection object does not inherit from any class or
interface and does not define any members.
MSSiteModeEvent - Web APIs
example
interface mssitemodeevent extends event { buttonid: number; actionurl: string; } declare var mssitemodeevent: { prototype: mssitemodeevent; new(): mssitemodeevent; } see also microsoft api extensions ...
Magnetometer.x - Web APIs
the x read-only property of the magnetometer
interface returns a double precision integer containing the magnetic field around the device's x axis.
Magnetometer.y - Web APIs
the y read-only property of the magnetometer
interface returns a double precision integer containing the magnetic field around the device's y axis.
Magnetometer.z - Web APIs
the z read-only property of the magnetometer
interface returns a double-precision integer containing the magnetic field around the device's z axis.
Magnetometer - Web APIs
the magnetometer
interface of the sensor apis provides information about the magnetic field as detected by the device’s primary magnetometer sensor.
MediaCapabilitiesInfo - Web APIs
the
interface of the promise returned by the the mediacapabilities's encodinginfo() and decodinginfo() methods returning whether the media configuration tested is supported, smooth, and powerefficient.
MediaCapabilities.decodingInfo() - Web APIs
return value a promise fulfilling with a mediacapabilitiesinfo
interface containing three boolean attributes: supported smooth powerefficient exceptions a typeerror is raised if the mediaconfiguration passed to the decodinginfo() method is invalid, either because the type is not video or audio, the contenttype is not a valid codec mime type, the media decoding configuration is not a valid value for the media decoding type, or any other error in the media confi...
MediaDeviceInfo.label - Web APIs
the label readonlyinline property of the mediadeviceinfo
interface returns a domstring, that is a label describing this device (for example "external usb webcam").
MediaDeviceInfo - Web APIs
the mediadeviceinfo
interface contains information that describes a single media input or output device.
MediaDevices: devicechange event - Web APIs
bubbles no cancelable no
interface event event handler ondevicechange example you can use the devicechange event in an addeventlistener method: navigator.mediadevices.addeventlistener('devicechange', function(event) { updatedevicelist(); }); or use the ondevicechange event handler property: navigator.mediadevices.ondevicechange = function(event) { updatedevicelist(); } specifications specification status media capture and streamsthe definition of 'devicechange' in that specification.
MediaDevices.getDisplayMedia() - Web APIs
the mediadevices
interface's getdisplaymedia() method prompts the user to select and grant permission to capture the contents of a display or portion thereof (such as a window) as a mediastream.
MediaDevices.getSupportedConstraints() - Web APIs
the getsupportedconstraints() method of the mediadevices
interface returns an object based on the mediatracksupportedconstraints dictionary, whose member fields each specify one of the constrainable properties the user agent understands.
MediaDevices.getUserMedia() - Web APIs
if (navigator.mediadevices.getusermedia === undefined) { navigator.mediadevices.getusermedia = function(constraints) { // first get ahold of the legacy getusermedia, if present var getusermedia = navigator.webkitgetusermedia || navigator.mozgetusermedia; // some browsers just don't implement it - return a rejected promise with an error // to keep a consistent
interface if (!getusermedia) { return promise.reject(new error('getusermedia is not implemented in this browser')); } // otherwise, wrap the call to the old navigator.getusermedia with a promise return new promise(function(resolve, reject) { getusermedia.call(navigator, constraints, resolve, reject); }); } } navigator.mediadevices.getusermedia({ audio: true, video: true ...
MediaImage - Web APIs
its contents can be displayed by the user agent in appropriate contexts, like player
interface to show the current playing video or audio track.
MediaKeySession - Web APIs
the mediakeysession
interface of the encryptedmediaextensions api represents a context for message exchange with a content decryption module (cdm).
MediaKeyStatusMap.entries() - Web APIs
the entries() read-only property of the mediakeystatusmap
interface returns a new iterator object, containing an array of [key, value] pairs for each element in the status map, in insertion order.
active - Web APIs
the active read-only property of the mediastream
interface returns a boolean value which is true if the stream is currently active; otherwise, it returns false.
MediaStream: addtrack event - Web APIs
bubbles no cancelable no
interface mediastreamtrackevent event handler property onaddtrack examples using addeventlistener(): let stream = new mediastream(); stream.addeventlistener('addtrack', (event) => { console.log(`new ${event.track.kind} track added`); }); using the onaddtrack event handler property: let stream = new mediastream(); stream.onaddtrack = (event) => { console.log(`new ${event.track.kind} track added`); }; specifications specification status media capture and streamsthe definition of 'addtrack' in that specification.
MediaStream.ended - Web APIs
the ended read-only property of the mediastream
interface returns a boolean value which is true if the stream has been completely read, or false if the end of the stream has not been reached.
MediaStream.getTracks() - Web APIs
the gettracks() method of the mediastream
interface returns a sequence that represents all the mediastreamtrack objects in this stream's track set, regardless of mediastreamtrack.kind.
MediaStream.id - Web APIs
— 6.0legend full support full support no support no support see also mediastream, the
interface this property belongs to.
MediaStream: removetrack event - Web APIs
bubbles no cancelable no
interface mediastreamtrackevent event handler property onremovetrack examples using addeventlistener(): let stream = new mediastream(); stream.addeventlistener('removetrack', (event) => { console.log(`${event.track.kind} track removed`); }); using the onremovetrack event handler property: let stream = new mediastream(); stream.onremovetrack = (event) => { console.log(`${event.track.kind} track removed`); }; specifications specification status media capture and streamsthe definition of 'removetrack' in that specification.
MediaStreamAudioDestinationNode - Web APIs
the mediastreamaudiodestinationnode
interface represents an audio destination consisting of a webrtc mediastream with a single audiomediastreamtrack, which can be used in a similar way to a mediastream obtained from navigator.getusermedia.
MediaStreamTrack.applyConstraints() - Web APIs
the applyconstraints() method of the mediastreamtrack
interface applies a set of constraints to the track; these constraints let the web site or app establish ideal values and acceptable ranges of values for the constrainable properties of the track, such as frame rate, dimensions, echo cancelation, and so forth.
MediaStreamTrack.enabled - Web APIs
the enabled property on the mediastreamtrack
interface is a boolean value which is true if the track is allowed to render the source stream or false if it is not.
MediaStreamTrack.getCapabilities() - Web APIs
the getcapabilities() method of the mediastreamtrack
interface returns a mediatrackcapabilities object which specifies the values or range of values which each constrainable property, based upon the platform and user agent.
MessageEvent.origin - Web APIs
the origin read-only property of the messageevent
interface is a usvstring representing the origin of the message emitter.
MessageEvent.ports - Web APIs
the ports read-only property of the messageevent
interface is an array of messageport objects representing the ports associated with the channel the message is being sent through (where appropriate, e.g.
MessageEvent.source - Web APIs
the source read-only property of the messageevent
interface is a messageeventsource (which can be a windowproxy, messageport, or serviceworker object) representing the message emitter.
MessagePort: message event - Web APIs
bubbles no cancelable no
interface messageevent event handler property onmessage examples suppose a script creates a messagechannel and sends one of the ports to a different browsing context, such as another <iframe>, using code like this: const channel = new messagechannel(); const myport = channel.port1; const targetframe = window.top.frames[1]; const targetorigin = 'https://example.org'; const messagecontrol = document.queryselector('#message'); const channelmessagebutton = document.queryselector('#channel-message'); channelmessagebutton.addeventlistener('click', () => { myport.postmessage(messagecontrol.value); }) targetframe.postmessage('i...
MessagePort: messageerror event - Web APIs
bubbles no cancelable no
interface messageevent event handler property onmessageerror examples suppose a script creates a messagechannel and sends one of the ports to a different browsing context, such as another <iframe>, using code like this: const channel = new messagechannel(); const myport = channel.port1; const targetframe = window.top.frames[1]; const targetorigin = 'https://example.org'; const messagecontrol = document.queryselector('#message'); const channelmessagebutton = document.queryselector('#channel-message'); channelmessagebutton.addeventlistener('click', () => { myport.postmessage(messagecontrol.value); }) t...
MessagePort.onmessage - Web APIs
the onmessage event handler of the messageport
interface is an eventlistener, called whenever an messageevent of type message is fired on the port — that is, when the port receives a message.
MessagePort.onmessageerror - Web APIs
the onmessageerror event handler of the messageport
interface is an eventlistener, called whenever an messageevent of type messageerror is fired on the port—that is, when it receives a message that cannot be deserialized.
MessagePort.postMessage() - Web APIs
the postmessage() method of the messageport
interface sends a message from the port, and optionally, transfers ownership of objects to other browsing contexts.
MessagePort - Web APIs
the messageport
interface of the channel messaging api represents one of the two ports of a messagechannel, allowing messages to be sent from one port and listening out for them arriving at the other.
Metadata.modificationTime - Web APIs
the read-only modificationtime property of the metadata
interface is a date object which specifies the date and time the file system entry (or the data referenced by the entry) was last modified.a file system entry is considered to have been modified if the metadata or the contents of the referenced file (or directory, or whatever other kind of file system entry might exist on the platform in use) has changed.
Metadata.size - Web APIs
the read-only size property of the metadata
interface specifies the size, in bytes, of the referenced file or other file system object on disk.
MimeType - Web APIs
the mimetype
interface provides contains information about a mime type associated with a particular plugin.
Navigator.wakeLock - Web APIs
the wakelock read-only property returns a wakelock
interface which allows a document to acquire a screen wake lock.
NavigatorConcurrentHardware - Web APIs
the navigatorconcurrenthardware mixin adds to the navigator
interface features which allow web content to determine how many logical processors the user has available, in order to let content and web apps optimize their operations to best take advantage of the user's cpu.
NavigatorPlugins.plugins - Web APIs
< pluginslength; i++) { let newrow = table.insertrow(); newrow.insertcell().textcontent = navigator.plugins[i].name; newrow.insertcell().textcontent = navigator.plugins[i].filename; newrow.insertcell().textcontent = navigator.plugins[i].description; newrow.insertcell().textcontent = navigator.plugins[i].version?navigator.plugins[i].version:""; } notes the plugin object exposes a small
interface for getting information about the various plugins installed in your browser.
NavigatorStorage - Web APIs
the navigatorstorage mixin adds to the navigator and workernavigator
interfaces the navigator.storage property, which provides access to the storagemanager singleton used for controlling the persistence of data stores as well as obtaining information note: this feature is available in web workers.
NetworkInformation.downlink - Web APIs
the downlink read-only property of the networkinformation
interface returns the effective bandwidth estimate in megabits per second, rounded to the nearest multiple of 25 kilobits per seconds.
NetworkInformation.saveData - Web APIs
the networkinformation.savedata read-only property of the networkinformation
interface returns true if the user has set a reduced data usage option on the user agent.
Node.getRootNode() - Web APIs
the getrootnode() method of the node
interface returns the context object's root, which optionally includes the shadow root if it is available.
Node.isConnected - Web APIs
the isconnected read-only property of the node
interface returns a boolean indicating whether the node is connected (directly or indirectly) to the context object, for example the document object in the case of the normal dom, or the shadowroot in the case of a shadow dom.
Node.nodeName - Web APIs
values for the different types of nodes are:
interface nodename value attr the value of attr.name cdatasection "#cdata-section" comment "#comment" document "#document" documentfragment "#document-fragment" documenttype the value of documenttype.name element the value of element.tagname entity the entity name entityreference the name of entity reference notation the notation name processinginstruction the value of processinginstruction.target text "#text" example given the following markup: <div id="...
Node.setUserData() - Web APIs
handler is a callback which will be called any time the node is being cloned, imported, renamed, as well as if deleted or adopted; a function can be used or an object implementing the handle method (part of the userdatahandler
interface).
Node.textContent - Web APIs
the textcontent property of the node
interface represents the text content of the node and its descendants.
NodeFilter.acceptNode() - Web APIs
it is the user who is expected to write an object implementing the nodefilter
interface, tailoring the acceptnode() method to its needs, and using it with some treewalker or nodeiterator objects.
Notification.actions - Web APIs
the actions read-only property of the notification
interface returns the list of notificationaction objects set using the actions option when creating the notification using the notification() constructor.
Notification.badge - Web APIs
the badge property of the notification
interface returns the url of the image used to represent the notification when there is not enough space to display the notification itself.
Notification.body - Web APIs
the body read-only property of the notification
interface indicates the body string of the notification, as specified in the body option of the notification() constructor.
Notification.data - Web APIs
the data read-only property of the notification
interface returns a structured clone of the notification's data, as specified in the data option of the notification() constructor.
Notification.dir - Web APIs
the dir read-only property of the notification
interface indicates the text direction of the notification, as specified in the dir option of the notification() constructor.
Notification.icon - Web APIs
the icon read-only property of the notification
interface contains the url of an icon to be displayed as part of the notification, as specified in the icon option of the notification() constructor.
Notification.image - Web APIs
the image read-only property of the notification
interface contains the url of an image to be displayed as part of the notification, as specified in the image option of the notification() constructor.
Notification.lang - Web APIs
the lang read-only property of the notification
interface indicates the language used in the notification, as specified in the lang option of the notification() constructor.
Notification.maxActions - Web APIs
the maxactions attribute of the notification
interface returns the maximum number of actions supported by the device and the user agent.
PannerNode.coneOuterAngle - Web APIs
the coneouterangle property of the pannernode
interface is a double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the coneoutergain property.
PannerNode.coneOuterGain - Web APIs
the coneoutergain property of the pannernode
interface is a double value, describing the amount of volume reduction outside the cone, defined by the coneouterangle attribute.
PannerNode.distanceModel - Web APIs
the distancemodel property of the pannernode
interface is an enumerated value determining which algorithm to use to reduce the volume of the audio source as it moves away from the listener.
PannerNode.maxDistance - Web APIs
the maxdistance property of the pannernode
interface is a double value representing the maximum distance between the audio source and the listener, after which the volume is not reduced any further.
PannerNode.orientationX - Web APIs
the orientationx property of the pannernode
interface indicates the x (horizontal) component of the direction in which the audio source is facing, in a 3d cartesian coordinate space.
PannerNode.orientationY - Web APIs
the orientationy property of the pannernode
interface indicates the y (vertical) component of the direction the audio source is facing, in 3d cartesian coordinate space.
PannerNode.orientationZ - Web APIs
the orientationz property of the pannernode
interface indicates the z (depth) component of the direction the audio source is facing, in 3d cartesian coordinate space.
PannerNode.panningModel - Web APIs
the panningmodel property of the pannernode
interface is an enumerated value determining which spatialisation algorithm to use to position the audio in 3d space.
PannerNode.positionX - Web APIs
the positionx property of the pannernode
interface specifies the x coordinate of the audio source's position in 3d cartesian coordinates, corresponding to the horizontal axis (left-right).
PannerNode.positionY - Web APIs
the positiony property of the pannernode
interface specifies the y coordinate of the audio source's position in 3d cartesian coordinates, corresponding to the vertical axis (top-bottom).
PannerNode.positionZ - Web APIs
the positionz property of the pannernode
interface specifies the z coordinate of the audio source's position in 3d cartesian coordinates, corresponding to the depth axis (behind-in front of the listener).
PannerNode.refDistance - Web APIs
the refdistance property of the pannernode
interface is a double value representing the reference distance for reducing volume as the audio source moves further from the listener – i.e.
PannerNode.rolloffFactor - Web APIs
the rollofffactor property of the pannernode
interface is a double value describing how quickly the volume is reduced as the source moves away from the listener.
PannerNode.setPosition() - Web APIs
the setposition() method of the pannernode
interface defines the position of the audio source relative to the listener (represented by an audiolistener object stored in the audiocontext.listener attribute.) the three parameters x, y and z are unitless and describe the source's position in 3d space using the right-hand cartesian coordinate system.
Response.redirected - Web APIs
the read-only redirected property of the response
interface indicates whether or not the response is the result of a request you made which was redirected.
Response.status - Web APIs
the status read-only property of the response
interface contains the status code of the response (e.g., 200 for a success).
Response.statusText - Web APIs
the statustext read-only property of the response
interface contains the status message corresponding to the status code (e.g., ok for 200).
Response.useFinalURL - Web APIs
the usefinalurl property of the response
interface contains a boolean stating whether this is the final url of the response.
cx - Web APIs
the cx read-only property of the svgcircleelement
interface reflects the cx attribute of a <circle> element and by that defines the x-coordinate of the circleʼs center.
cy - Web APIs
the cy read-only property of the svgcircleelement
interface reflects the cy attribute of a <circle> element and by that defines the y-coordinate of the circleʼs center.
r - Web APIs
the r read-only property of the svgcircleelement
interface reflects the r attribute of a <circle> element and by that defines the radius of the circle.
SVGElement: abort event - Web APIs
bubbles no cancelable no
interface svgevent event handler property onabort examples svgelem.addeventlistener('abort', () => { console.log('load aborted.'); }) specifications not really described anywhere specifically, but mentioned in the svg 2 spec.
SVGElement: error event - Web APIs
bubbles yes cancelable no
interface svgevent event handler property onerror examples svgelem.addeventlistener('error', () => { console.log('svg not loaded properly.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'error' in that specification.
SVGElement: load event - Web APIs
bubbles no cancelable no
interface svgevent event handler property onload examples svgelem.addeventlistener('load', () => { console.log('svg loaded.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'load' in that specification.
SVGElement: resize event - Web APIs
bubbles no cancelable no
interface svgevent event handler property onresize examples svgelem.addeventlistener('resize', () => { console.log('svg resized.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'event changes in svg2' in that specification.
SVGElement: scroll event - Web APIs
bubbles no cancelable no
interface svgevent event handler property onscroll examples svgelem.addeventlistener('scroll', () => { console.log('svg scrolled.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'event changes in svg2' in that specification.
SpeechRecognition: audiostart event - Web APIs
bubbles no cancelable no
interface event event handler onaudiostart examples you can use the audiostart event in an onaudiostart method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('audiostart', function() { console.log('audio capturing started'); }); or use the onaudiostart event handler property: recognition.onaudiostart = function() { console.log('audio capturing started'); } specifications specification status comment web speech apithe definition of 'speech recognition events' in that specification.
SpeechRecognition: end event - Web APIs
bubbles no cancelable no
interface event event handler property onend examples you can use the end event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('end', function() { console.log('speech recognition service disconnected'); }); or use the onend event handler property: recognition.onend = function() { console.log('speech recognition service disconnected'); } specifications specification status comment web speech apithe definition of 'speech recognition events' in that specification.
SpeechRecognition: error event - Web APIs
bubbles no cancelable no
interface speechrecognitionerrorevent event handler property onerror examples you can use the error event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('error', function(event) { console.log('speech recognition error detected: ' + event.error'); }); or use the onerror event handler property: recognition.onerror = function(event) { console.log('speech recognition error detected: ' + event.error'); } specifications specification status comment web speech apithe definition of...
SpeechRecognition.grammars - Web APIs
the grammars property of the speechrecognition
interface returns and sets a collection of speechgrammar objects that represent the grammars that will be understood by the current speechrecognition.
SpeechRecognition.interimResults - Web APIs
the interimresults property of the speechrecognition
interface controls whether interim results should be returned (true) or not (false.) interim results are results that are not yet final (e.g.
SpeechRecognition: nomatch event - Web APIs
bubbles no cancelable no
interface speechrecognitionevent event handler property onnomatch examples you can use the nomatch event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('nomatch', function() { console.log('speech not recognized'); }); or use the onnomatch event handler property: recognition.onnomatch = function() { console.log('speech not recognized'); } specifications specificati...
SpeechRecognition.onaudioend - Web APIs
the onaudioend property of the speechrecognition
interface represents an event handler that will run when the user agent has finished capturing audio (when the audioend event fires.) syntax myspeechrecognition.onaudioend = function() { ...
SpeechRecognition.onaudiostart - Web APIs
the onaudiostart property of the speechrecognition
interface represents an event handler that will run when the user agent has started to capture audio (when the audiostart event fires.) syntax myspeechrecognition.onaudiostart = function() { ...
SpeechRecognition.onend - Web APIs
the onend property of the speechrecognition
interface represents an event handler that will run when the speech recognition service has disconnected (when the end event fires.) syntax myspeechrecognition.onend = function() { ...
SpeechRecognition.onerror - Web APIs
the onerror property of the speechrecognition
interface represents an event handler that will run when a speech recognition error occurs (when the error event fires.) syntax myspeechrecognition.onerror = function() { ...
SpeechRecognition.onnomatch - Web APIs
the onnomatch property of the speechrecognition
interface represents an event handler that will run when the speech recognition service returns a final result with no significant recognition (when the nomatch event fires.) this may involve some degree of recognition, which doesn't meet or exceed the confidence threshold.
SpeechRecognition.onresult - Web APIs
the onresult property of the speechrecognition
interface represents an event handler that will run when the speech recognition service returns a result — a word or phrase has been positively recognized and this has been communicated back to the app (when the result event fires.) syntax myspeechrecognition.onresult = function() { ...
SpeechRecognition.onsoundend - Web APIs
the onsoundend property of the speechrecognition
interface represents an event handler that will run when any sound — recognisable speech or not — has stopped being detected (when the soundend event fires.) syntax myspeechrecognition.onsoundend = function() { ...
SpeechRecognition.onsoundstart - Web APIs
the onsoundstart property of the speechrecognition
interface represents an event handler that will run when any sound — recognisable speech or not — has been detected (when the soundstart event fires.) syntax myspeechrecognition.onsoundstart = function() { ...
SpeechRecognition.onspeechend - Web APIs
the onspeechend property of the speechrecognition
interface represents an event handler that will run when speech recognised by the speech recognition service has stopped being detected (when the speechend event fires.) syntax myspeechrecognition.onspeechend = function() { ...
SpeechRecognition.onspeechstart - Web APIs
the onspeechstart property of the speechrecognition
interface represents an event handler that will run when sound recognised by the speech recognition service as speech has been detected (when the speechstart event fires.) syntax myspeechrecognition.onspeechstart = function() { ...
SpeechRecognition.onstart - Web APIs
the onstart property of the speechrecognition
interface represents an event handler that will run when the speech recognition service has begun listening to incoming audio with intent to recognize grammars associated with the current speechrecognition (when the start event fires.) syntax myspeechrecognition.onstart = function() { ...
SpeechRecognition: result event - Web APIs
the result event of the web speech api is fired when the speech recognition service returns a result — a word or phrase has been positively recognized and this has been communicated back to the app bubbles no cancelable no
interface speechrecognitionevent event handler property onresult examples this code is excerpted from our speech color changer example.
SpeechRecognition.serviceURI - Web APIs
the serviceuri property of the speechrecognition
interface specifies the location of the speech recognition service used by the current speechrecognition to handle the actual recognition.
SpeechRecognition: soundend event - Web APIs
bubbles no cancelable no
interface event event handler property onsoundend examples you can use the soundend event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('soundend', function(event) { console.log('sound has stopped being received'); }); or use the onsoundend event handler property: recognition.onsoundend = function(event) { console.log('sound has stopped being received'); } specifications specification status comment web speech apithe definition of 'speech recognition events...
SpeechRecognition: soundstart event - Web APIs
bubbles no cancelable no
interface event event handler property onsoundstart examples you can use the soundstart event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('soundstart', function() { console.log('some sound is being received'); }); or use the onsoundstart event handler property: recognition.onsoundstart = function() { console.log('some sound is being received'); } specifications specification status comment web speech apithe definition of 'speech recognition events' in that specifi...
SpeechRecognition: speechend event - Web APIs
bubbles no cancelable no
interface event event handler property onspeechend examples you can use the speechend event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('speechend', function() { console.log('speech has stopped being detected'); }); or use the onspeechend event handler property: recognition.onspeechend = function() { console.log('speech has stopped being detected'); } specifications specification status comment web speech apithe definition of 'speech recognition eve...
SpeechRecognition: speechstart event - Web APIs
bubbles no cancelable no
interface event event handler property onspeechstart examples you can use the speechstart event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('speechstart', function() { console.log('speech has been detected'); }); or use the onspeechstart event handler property: recognition.onspeechstart = function() { console.log('speech has been detected'); } specifications specification status comment web speech apithe definition of 'speech recognition events'...
SpeechRecognition: start event - Web APIs
bubbles no cancelable no
interface event event handler property onstart examples you can use the start event in an addeventlistener method: var recognition = new webkitspeechrecognition() || new speechrecognition(); recognition.addeventlistener('start', function() { console.log('speech recognition service has started'); }); or use the onstart event handler property: recognition.onstart = function() { console.log('speech recognition service has started'); } specifications specification s...
SpeechSynthesis.onvoiceschanged - Web APIs
the onvoiceschanged property of the speechsynthesis
interface represents an event handler that will run when the list of speechsynthesisvoice objects that would be returned by the speechsynthesis.getvoices() method has changed (when the voiceschanged event fires.) this may occur when speech synthesis is being done on the server-side and the voices list is being determined asynchronously, or when client-side voices are installed/uninstalled while a speech synthesis application is running.
SpeechSynthesis.paused - Web APIs
the paused read-only property of the speechsynthesis
interface is a boolean that returns true if the speechsynthesis object is in a paused state, or false if not.
SpeechSynthesis.pending - Web APIs
the pending read-only property of the speechsynthesis
interface is a boolean that returns true if the utterance queue contains as-yet-unspoken utterances.
SpeechSynthesis.resume() - Web APIs
the resume() method of the speechsynthesis
interface puts the speechsynthesis object into a non-paused state: resumes it if it was already paused.
SpeechSynthesis.speak() - Web APIs
the speak() method of the speechsynthesis
interface adds an utterance to the utterance queue; it will be spoken when any other utterances queued before it have been spoken.
SpeechSynthesis.speaking - Web APIs
the speaking read-only property of the speechsynthesis
interface is a boolean that returns true if an utterance is currently in the process of being spoken — even if speechsynthesis is in a paused state.
SpeechSynthesis: voiceschanged event - Web APIs
the voiceschanged event of the web speech api is fired when the list of speechsynthesisvoice objects that would be returned by the speechsynthesis.getvoices() method has changed (when the voiceschanged event fires.) bubbles no cancelable no
interface event event handler property onvoiceschanged examples this could be used to repopulate a list of voices that the user can choose between when the event fires.
SpeechSynthesisEvent.charIndex - Web APIs
the charindex read-only property of the speechsynthesisutterance
interface returns the index position of the character in the speechsynthesisutterance.text that was being spoken when the event was triggered.
SpeechSynthesisEvent.elapsedTime - Web APIs
the elapsedtime read-only property of the speechsynthesisutterance
interface returns the elapsed time in seconds after the speechsynthesisutterance.text started being spoken that the event was triggered at.
SpeechSynthesisEvent.name - Web APIs
the name read-only property of the speechsynthesisutterance
interface returns the name associated with certain types of events occuring as the speechsynthesisutterance.text is being spoken: the name of the ssml marker reached in the case of a mark event, or the type of boundary reached in the case of a boundary event.
SpeechSynthesisUtterance: boundary event - Web APIs
bubbles no cancelable no
interface speechsynthesisevent event handler onboundary examples you can use the boundary event in an addeventlistener method: utterthis.addeventlistener('boundary', function(event) { console.log(event.name + ' boundary reached after ' + event.elapsedtime + ' milliseconds.'); }); or use the onboundary event handler property: utterthis.onboundary = function(event) { console.log(event.name + ' boundary reached after ' + event.elapsedtime + ' milliseconds.'); } specifications specification status comment web speech apithe definition of 'speech synthesis utterance e...
SpeechSynthesisUtterance: end event - Web APIs
bubbles no cancelable no
interface speechsynthesisevent event handler property onend examples you can use the end event in an addeventlistener method: utterthis.addeventlistener('end', function(event) { console.log('utterance has finished being spoken after ' + event.elapsedtime + ' milliseconds.'); }); or use the onend event handler property: utterthis.onend = function(event) { console.log('utterance has finished being spoken after ' + event.elapsedtime + ' milliseconds.'); } specifications specification status comment web speech apithe definition of 'speech synthesis utteran...
SpeechSynthesisUtterance: error event - Web APIs
bubbles no cancelable no
interface speechsynthesiserrorevent event handler property onerror examples you can use the error event in an addeventlistener method: utterthis.addeventlistener('error', function(event) { console.log('an error has occurred with the speech synthesis: ' + event.error'); }); or use the onerror event handler property: utterthis.onerror = function(event) { console.log('an error has occurred with the speech synthesis: ' + event.error'); } specifications specification status comment web speech apithe definition of 'speech ...
SpeechSynthesisUtterance: mark event - Web APIs
bubbles no cancelable no
interface speechsynthesisevent event handler property onmark examples you can use the mark event in an addeventlistener method: utterthis.addeventlistener('mark', function(event) { console.log('a mark was reached: ' + event.name); }); or use the onmark event handler property: utterthis.onmark = function(event) { console.log('a mark was reached: ' + event.name); } specifications specification status comment web speech apithe definition of 'speech synthesis utterance events' in that specification.
SpeechSynthesisUtterance.onboundary - Web APIs
the onboundary property of the speechsynthesisutterance
interface represents an event handler that will run when the spoken utterance reaches a word or sentence boundary (when the boundary event fires.) syntax speechsynthesisutteranceinstance.onboundary = function() { ...
SpeechSynthesisUtterance.onend - Web APIs
the onend property of the speechsynthesisutterance
interface represents an event handler that will run when the utterance has finished being spoken (when the end event fires.) syntax speechsynthesisutteranceinstance.onend = function() { ...
SpeechSynthesisUtterance.onerror - Web APIs
the onerror property of the speechsynthesisutterance
interface represents an event handler that will run when an error occurs that prevents the utterance from being succesfully spoken (when the error event fires.) syntax speechsynthesisutteranceinstance.onerror = function() { ...
SpeechSynthesisUtterance.onmark - Web APIs
the onmark property of the speechsynthesisutterance
interface represents an event handler that will run when the spoken utterance reaches a named ssml mark tag (when the mark event fires.) syntax speechsynthesisutteranceinstance.onmark = function() { ...
SpeechSynthesisUtterance.onpause - Web APIs
the onpause property of the speechsynthesisutterance
interface represents an event handler that will run when the utterance is paused part way through (when the pause event fires.) this occurs when the speechsynthesis.pause() method is invoked.
SpeechSynthesisUtterance.onresume - Web APIs
the onresume property of the speechsynthesisutterance
interface represents an event handler that will run when a paused utterance is resumed (when the resume event fires.) this occurs when the speechsynthesis.resume() method is invoked on a paused speech synthesis instance.
SpeechSynthesisUtterance.onstart - Web APIs
the onstart property of the speechsynthesisutterance
interface represents an event handler that will run when the utterance has begun to be spoken (when the start event fires.) this occurs when the speechsynthesis.speak() method is invoked.
SpeechSynthesisUtterance: pause event - Web APIs
bubbles no cancelable no
interface speechsynthesisevent event handler property onpause examples you can use the pause event in an addeventlistener method: utterthis.addeventlistener('pause', function(event) { console.log('speech paused after ' + event.elapsedtime + ' milliseconds.'); }); or use the onpause event handler property: utterthis.onpause = function(event) { console.log('speech paused after ' + event.elapsedtime + ' milliseconds.'); } specifications specification status comment web speech apithe definition of 'speech synthesis utterance events' in that specificatio...
SpeechSynthesisUtterance: resume event - Web APIs
bubbles no cancelable no
interface speechsynthesisevent event handler property onresume examples you can use the resume event in an addeventlistener method: utterthis.addeventlistener('resume', function(event) { console.log('speech resumed after ' + event.elapsedtime + ' milliseconds.'); }); or use the onresume event handler property: utterthis.onresume = function(event) { console.log('speech resumed after ' + event.elapsedtime + ' milliseconds.'); } specifications specification status comment web speech apithe definition of 'speech synthesis utterance events' in that specification.
TextMetrics.actualBoundingBoxLeft - Web APIs
the read-only actualboundingboxleft property of the textmetrics
interface is a double giving the distance parallel to the baseline from the alignment point given by the canvasrenderingcontext2d.textalign property to the left side of the bounding rectangle of the given text, in css pixels.
TextMetrics.actualBoundingBoxRight - Web APIs
the read-only actualboundingboxright property of the textmetrics
interface is a double giving the distance parallel to the baseline from the alignment point given by the canvasrenderingcontext2d.textalign property to the right side of the bounding rectangle of the given text, in css pixels.
TextMetrics.alphabeticBaseline - Web APIs
the read-only alphabeticbaseline property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline property to the alphabetic baseline of the line box, in css pixels.
TextMetrics.emHeightAscent - Web APIs
the read-only emheightascent property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline property to the top of the em square in the line box, in css pixels.
TextMetrics.emHeightDescent - Web APIs
the read-only emheightdescent property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline property to the bottom of the em square in the line box, in css pixels.
TextMetrics.fontBoundingBoxAscent - Web APIs
the read-only fontboundingboxascent property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline attribute to the top of the highest bounding rectangle of all the fonts used to render the text, in css pixels.
TextMetrics.fontBoundingBoxDescent - Web APIs
the read-only fontboundingboxdescent property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline attribute to the bottom of the bounding rectangle of all the fonts used to render the text, in css pixels.
TextMetrics.hangingBaseline - Web APIs
the read-only hangingbaseline property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline property to the hanging baseline of the line box, in css pixels.
TextMetrics.ideographicBaseline - Web APIs
the read-only ideographicbaseline property of the textmetrics
interface is a double giving the distance from the horizontal line indicated by the canvasrenderingcontext2d.textbaseline property to the ideographic baseline of the line box, in css pixels.
TextMetrics.width - Web APIs
the read-only width property of the textmetrics
interface contains the text's advance width (the width of that inline box) in css pixels.
TextMetrics - Web APIs
the textmetrics
interface represents the dimensions of a piece of text in the canvas; a textmetrics() instance can be retrieved using the canvasrenderingcontext2d.measuretext() method.
TextTrack: cuechange event - Web APIs
bubbles no cancelable no
interface event event handler property globaleventhandlers.oncuechange examples on the texttrack you can set up a listener for the cuechange event on a texttrack using the addeventlistener() method: track.addeventlistener('cuechange', function () { let cues = track.activecues; // array of current cues }); or you can just set the oncuechange event handler property: track.oncuechange = function () { let cues = track.activecues; // array of current cues } on the track element the underlying texttrack, indicated by the...
TextTrackList: addtrack event - Web APIs
bubbles no cancelable no
interface trackevent event handler property onaddtrack examples using addeventlistener(): const mediaelement = document.queryselector('video, audio'); mediaelement.texttracks.addeventlistener('addtrack', (event) => { console.log(`text track: ${event.track.label} added`); }); using the onaddtrack event handler property: const mediaelement = document.queryselector('video, audio'); mediaelement.texttracks.onaddtrack = (event) => { console.log(`text track: ${event.track.label} added`); }; specifications specification status html living standardthe definition of 'addtrack' in that specification.
TextTrackList: change event - Web APIs
bubbles no cancelable no
interface event event handler property onchange examples using addeventlistener(): const mediaelement = document.queryselectorall('video, audio')[0]; mediaelement.texttracks.addeventlistener('change', (event) => { console.log(`'${event.type}' event fired`); }); using the onchange event handler property: const mediaelement = document.queryselector('video, audio'); mediaelement.texttracks.onchange = (event) => { console.log(`'${event.type}' event fired`); }; specifications specification status html living standardthe definition of 'change' in that specification.
URL.origin - Web APIs
the origin read-only property of the url
interface returns a usvstring containing the unicode serialization of the origin of the represented url.
URL.password - Web APIs
the password property of the url
interface is a usvstring containing the password specified before the domain name.
URL.pathname - Web APIs
the pathname property of the url
interface is a usvstring containing an initial '/' followed by the path of the url (or the empty string if there is no path).
URL.pathname - Web APIs
the pathname property of the url
interface is a usvstring containing an initial '/' followed by the path of the url (or the empty string if there is no path).
URL.port - Web APIs
the port property of the url
interface is a usvstring containing the port number of the url.
URL.protocol - Web APIs
the protocol property of the url
interface is a usvstring representing the protocol scheme of the url, including the final ':'.
URL.revokeObjectURL() - Web APIs
note: this method is not available from service workers, due to issues with the blob
interface's life cycle and the potential for leaks.
URL.search - Web APIs
the search property of the url
interface is a search string, also called a query string, that is a usvstring containing a '?' followed by the parameters of the url.
URL.search - Web APIs
the search property of the url
interface is a search string, also called a query string, that is a usvstring containing a '?' followed by the parameters of the url.
URL.searchParams - Web APIs
the searchparams readonly property of the url
interface returns a urlsearchparams object allowing access to the get decoded query arguments contained in the url.
URL.toJSON() - Web APIs
the tojson() method of the url
interface returns a usvstring containing a serialized version of the url, although in practice it seems to have the same effect as url.tostring().
URL.username - Web APIs
the username property of the url
interface is a usvstring containing the username specified before the domain name.
URLSearchParams.delete() - Web APIs
the delete() method of the urlsearchparams
interface deletes the given search parameter and all its associated values, from the list of all search parameters.
URLSearchParams.entries() - Web APIs
the entries() method of the urlsearchparams
interface returns an iterator allowing iteration through all key/value pairs contained in this object.
Web Budget API - Web APIs
concepts and usage tbd
interfaces budgetservice provides a programmatic
interface to the user agent’s budget service.
Web Locks API - Web APIs
interfaces lock provides the name and mode of a previously requested lock, which is received in the callback to lockmanager.request().
Window: afterprint event - Web APIs
bubbles no cancelable no
interface event event handler property onafterprint examples using addeventlistener(): window.addeventlistener('afterprint', (event) => { console.log('after print'); }); using the onafterprint event handler property: window.onafterprint = (event) => { console.log('after print'); }; specifications specification status html living standard living standard ...
Window.alert() - Web APIs
the following text is shared between this article, dom:window.prompt and dom:window.confirm dialog boxes are modal windows - they prevent the user from accessing the rest of the program's
interface until the dialog box is closed.
Window: appinstalled event - Web APIs
bubbles no cancelable no
interface event event handler onappinstalled examples you can use the appinstalled event in an addeventlistener method: window.addeventlistener('appinstalled', function() { console.log('thank you for installing our app!'); }); or use the onappinstalled event handler property: window.onappinstalled = function() { console.log('thank you for installing our app!'); }; ...
Window.back() - Web APIs
the obsolete and non-standard method back() on the window
interface returns the window to the previous item in the history.
Window: beforeprint event - Web APIs
bubbles no cancelable no
interface event event handler property onbeforeprint examples using addeventlistener(): window.addeventlistener('beforeprint', (event) => { console.log('before print'); }); using the onbeforeprint event handler property: window.onbeforeprint = (event) => { console.log('before print'); }; specifications specification status html living standard living standard ...
Window: beforeunload event - Web APIs
bubbles no cancelable yes
interface event event handler property onbeforeunload this event enables a web page to trigger a confirmation dialog asking the user if they really want to leave the page.
Window: blur event - Web APIs
bubbles no cancelable no
interface focusevent event handler property onblur sync / async sync composed yes examples live example this example changes the appearance of a document when it loses focus.
Window: clipboardchange event - Web APIs
bubbles no cancelable no
interface clipboardevent event handler property none examples javascript window.addeventlistener('clipboardchange', () => { console.log('clipboard contents changed'); }); specifications specification status clipboard api and eventsthe definition of 'clipboardchange event' in that specification.
Window.confirm() - Web APIs
example if (window.confirm("do you really want to leave?")) { window.open("exit.html", "thanks for visiting!"); } produces: notes the following text is shared between this article, dom:window.prompt and dom:window.alert dialog boxes are modal windows — they prevent the user from accessing the rest of the program's
interface until the dialog box is closed.
Window.crypto - Web APIs
syntax var cryptoobj = window.crypto || window.mscrypto; // for ie 11 value an instance of the crypto
interface, providing access to general-purpose cryptography and a strong random-number generator.
Window.customElements - Web APIs
the customelements read-only property of the window
interface returns a reference to the customelementregistry object, which can be used to register new custom elements and get information about previously registered custom elements.
Window.devicePixelRatio - Web APIs
the devicepixelratio of window
interface returns the ratio of the resolution in physical pixels to the resolution in css pixels for the current display device.
Window: devicemotion event - Web APIs
bubbles no cancelable no
interface devicemotionevent event handler property window.ondevicemotion examples function handlemotionevent(event) { var x = event.accelerationincludinggravity.x; var y = event.accelerationincludinggravity.y; var z = event.accelerationincludinggravity.z; // do something awesome.
Window: deviceorientation event - Web APIs
bubbles no cancelable no
interface deviceorientationevent event handler property window.ondeviceorientation examples if (window.deviceorientationevent) { window.addeventlistener("deviceorientation", function(event) { // alpha: rotation around z-axis var rotatedegrees = event.alpha; // gamma: left to right var lefttoright = event.gamma; // beta: front back motion var fronttoback = event.beta; ...
Window: error event - Web APIs
bubbles no cancelable no
interface event or uievent event handler property onerror the event object is a uievent instance if it was generated from a user
interface element, or an event instance otherwise.
Window.external - Web APIs
the external property of the window api returns an instance of the external
interface, which was intended to contain functions related to adding external search providers to the browser.
Window: focus event - Web APIs
bubbles no cancelable no
interface focusevent event handler property onfocus sync / async sync composed yes examples live example this example changes the appearance of a document when it loses focus.
Window.fullScreen - Web APIs
the fullscreen property of the window
interface indicates whether the window is displayed in full screen mode or not.
Window: gamepadconnected event - Web APIs
bubbles no cancelable no
interface gamepadevent event handler property ongamepadconnected examples window.addeventlistener('gamepadconnected', event => { // all buttons and axes values can be accessed through event.gamepad; }); specifications specification status gamepad working draft ...
Window: gamepaddisconnected event - Web APIs
bubbles no cancelable no
interface gamepadevent event handler property ongamepaddisconnected examples window.addeventlistener('gamepaddisconnected', event => { console.log('lost connection with the gamepad.'); }); specifications specification status gamepad working draft ...
Window: hashchange event - Web APIs
bubbles yes cancelable no
interface hashchangeevent event handler onhashchange examples you can use the hashchange event in an addeventlistener method: window.addeventlistener('hashchange', function() { console.log('the hash has changed!') }, false); or use the onhashchange event handler property: function locationhashchanged() { if (location.hash === '#cool-feature') { console.log("you're visiting a cool feature!"); } } window.onhashchange = locationhashchanged; specifications specification status comment html living standardthe definition of 'hashchang...
Window.innerHeight - Web APIs
the read-only innerheight property of the window
interface returns the interior height of the window in pixels, including the height of the horizontal scroll bar, if present.
Window: languagechange event - Web APIs
bubbles no cancelable no
interface event event handler onlanguagechange examples you can use the languagechange event in an addeventlistener method: window.addeventlistener('languagechange', function() { console.log('languagechange event detected!'); }); or use the onlanguagechange event handler property: window.onlanguagechange = function(event) { console.log('languagechange event detected!'); }; specification specification status html living standardthe definition of 'languagechange' in that specification.
Window: load event - Web APIs
bubbles no cancelable no
interface event event handler property onload examples log a message when the page is fully loaded: window.addeventlistener('load', (event) => { console.log('page is fully loaded'); }); the same, but using the onload event handler property: window.onload = (event) => { console.log('page is fully loaded'); }; live example html <div class="controls"> <button id="reload" type="button">reload</button> </div> <div class="event-log"> <label>eve...
Window.matchMedia() - Web APIs
the window
interface's matchmedia() method returns a new mediaquerylist object that can then be used to determine if the document matches the media query string, as well as to monitor the document to detect when it matches (or stops matching) that media query.
Window: message event - Web APIs
bubbles no cancelable no
interface messageevent event handler property onmessage examples suppose a script sends a message to a different browsing context, such as another <iframe>, using code like this: const targetframe = window.top.frames[1]; const targetorigin = 'https://example.org'; const windowmessagebutton = document.queryselector('#window-message'); windowmessagebutton.addeventlistener('click', () => { targetframe.postmessage('hello there', targetorigin); }); the receiver can listen for the message using addeventlistener() with code like this: window.addeventlistener...
Worker: message event - Web APIs
bubbles no cancelable no
interface messageevent event handler property onmessage examples this code creates a new worker and listens to messages from it using addeventlistener(): const worker = new worker("static/scripts/worker.js"); worker.addeventlistener('message', (event) => { console.log(`received message from worker: ${event.data}`) }); alternatively, it could listen using the onmessage event handler property: const worker = new worker("static/scripts/worker.js"); worker.onmessage = (event) => { console.log(`received message from wor...
Worker: messageerror event - Web APIs
bubbles no cancelable no
interface messageevent event handler property onmessageerror examples create a worker, and listen for message and messageerror events using addeventlistener(): // inside main.js const worker = new worker("static/scripts/worker.js"); worker.addeventlistener("message", (event) => { console.error(`received message from worker: ${event}`); }); worker.addeventlistener("messageerror", (event) => { console.error(`error receiving message from worker: ${event}`); }); the same, but using the onmessageerror event handler property: // inside main.js const worker = new worker("static/scripts/worker.js"); worke...
Worker.onmessage - Web APIs
the onmessage property of the worker
interface represents an eventhandler, that is a function to be called when the message event occurs.
Worker.onmessageerror - Web APIs
the onmessageerror event handler of the worker
interface is an eventlistener, called whenever an messageevent of type messageerror is fired on the worker instance — that is, when it receives a message that cannot be deserialized.
WorkerGlobalScope.close() - Web APIs
the close() method of the workerglobalscope
interface discards any tasks queued in the workerglobalscope's event loop, effectively closing this particular scope.
WorkerGlobalScope.console - Web APIs
the console read-only property of the workerglobalscope
interface returns a console object providing access to the browser console for the worker.
XPathResult.resultType - Web APIs
the read-only resulttype property of the xpathresult
interface represents the type of the result, as defined by the type constants.
XPathResult.singleNodeValue - Web APIs
the read-only singlenodevalue property of the xpathresult
interface returns a node value or null in case no node was matched of a result with xpathresult.resulttype being any_unordered_node_type or first_ordered_node_type.
XPathResult.snapshotItem() - Web APIs
the snapshotitem() method of the xpathresult
interface returns an item of the snapshot collection or null in case the index is not within the range of nodes.
XPathResult.stringValue - Web APIs
the read-only stringvalue property of the xpathresult
interface returns the string value of a result with xpathresult.resulttype being string_type.
XRFrame.getViewerPose() - Web APIs
the getviewerpose() method, a member of the xrframe
interface, returns a xrviewerpose object which describes the viewer's pose (position and orientation) relative to the specified reference space.
XRInputSourceArray.forEach() - Web APIs
specifications specification status comment webxr device apithe definition of 'xrinputsourcearray' in that specification.1 working draft xrinputsourcearray
interface [1] see iterator-like methods in information contained in a webidl file for information on how an iterable declaration in an
interface definition causes entries(), foreach(), keys(), and values() methods to be exposed from objects that implement the
interface.
XRInputSourceArray.values() - Web APIs
specifications specification status comment webxr device apithe definition of 'xrinputsourcearray' in that specification.1 working draft xrinputsourcearray
interface [1] see iterator-like methods in information contained in a webidl file for information on how an iterable declaration in an
interface definition causes entries(), foreach(), keys(), and values() methods to be exposed from objects that implement the
interface.
XRInputSourceArray - Web APIs
the
interface xrinputsourcearray represents a live list of webxr input sources, and is used as the return value of the xrsession property inputsources.
XRPermissionDescriptor - Web APIs
properties in addition to inheriting the properties of the parent
interface, permissiondescriptor, xrpermissiondescriptor provides the following properties.
XRPose.emulatedPosition - Web APIs
the emulatedposition read-only attribute of the xrpose
interface is a boolean value indicating whether or not both the the position component of the pose's transform is directly taken from the xr device, or it's simulated or computed based on other sources.
XRPose.transform - Web APIs
the transform read-only attribute of the xrpose
interface is a xrrigidtransform object providing the position and orientation of the pose relative to the base xrspace as specified when the pose was obtained by calling xrframe.getpose().
XRPose - Web APIs
xrpose is a webxr api
interface representing a position and orientation in the 3d space, relative to the xrspace within which it resides.
XRSession.inputSources - Web APIs
the read-only inputsources property of the xrsession
interface returns an xrinputsourcearray object which lists all controllers and input devices which are expressly associated with the xr device and are currently available.
XRSession: inputsourceschange event - Web APIs
bubbles yes cancelable no
interface xrinputsourceschangeevent event handler property oninputsourceschange the event object contains lists of the newly-added and/or removed input devices in its added and removed properties.
XRSession.onsqueeze - Web APIs
the xrsession
interface's onsqueeze event handler property can be set to a function which is then invoked to handle the squeeze event that's sent when the user successfully completes a primary squeeze action on a webxr input device.
XRSession.onsqueezeend - Web APIs
the xrsession
interface's onsqueezeend event handler property is a function to be invokedn when the squeezeend event sent to an xrsession when a primary squeeze action ends.
XRSession.onsqueezestart - Web APIs
the xrsession
interface's onsqueezestart event handler property can be set to a function which is then invoked to handle the squeezestart event that's sent when the user successfully begins a primary squeeze action on a webxr input device.
XRSession.requestAnimationFrame() - Web APIs
note: despite the obvious similarities between these methods and the global requestanimationframe() function provided by the window
interface, you must not treat these as interchangeable.
XRSession: select event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onselect for details on how the selectstart, select, and selectend events work, and how you should react to them, see primary actions in inputs and input sources.
XRSession: selectend event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onselectend for details on how the selectstart, select, and selectend events work, and how you should react to them, see primary actions in inputs and input sources.
XRSession: selectstart event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onselectstart for details on how the selectstart, select, and selectend events work, and how you should react to them, see primary actions in inputs and input sources.
XRSession: squeeze event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onsqueeze for details on how the squeezestart, squeeze, and squeezeend events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
XRSession: squeezeend event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onsqueezeend for details on how the squeezestart, squeeze, and squeezeend events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
XRSession: squeezestart event - Web APIs
bubbles yes cancelable no
interface xrinputsourceevent event handler property onsqueezestart for details on how the squeezestart, squeeze, and squeezeend events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
XRSession.updateRenderState() - Web APIs
the updaterenderstate() method of the xrsession
interface of webxr api schedules changes to be applied to the active render state prior to rendering of the next frame.
XRSession.visibilityState - Web APIs
the read-only visibilitystate property of the xrsession
interface is a string indicating whether the webxr content is currently visible to the user, and if it is, whether it's the primary focus.
XRSession: visibilitychange event - Web APIs
bubbles yes cancelable no
interface xrsessionevent event handler property onvisibilitychange when the xrsession receives this event, the visibility state has already been changed.
XRSessionEvent() - Web APIs
event types the following events are represented using the xrsessionevent
interface, and are permitted values for its type property.
XRSystem: devicechange event - Web APIs
bubbles no cancelable no
interface event event handler xrsystem.ondevicechange usage notes devicechange events are not delivered if the document which owns the xrsystem object has been granted permission to do so through the xr-spatial-tracking feature policy.
XRSystem: requestSession() - Web APIs
the xrsystem
interface's requestsession() method returns a promise which resolves to an xrsession object through which you can manage the requested type of webxr session.
XRView.eye - Web APIs
the xrview
interface's read-only eye property is a string taken from the xreye enumerated type, indicating which eye's viewpoint the xrview represents: left or right.
XRView.transform - Web APIs
the read-only transform property of the xrview
interface is an xrrigidtransform object which provides the position and orientation of the viewpoint relative to the xrreferencespace specified when the xrframe.getviewerpose() method was called to obtain the view object.
XRView - Web APIs
the webxr device api's xrview
interface provides information describing a single view into the xr scene for a specific frame, providing orientation and position information for the viewpoint.
XRViewport.x - Web APIs
the read-only xrviewport
interface's x property indicates the offset from the left edge of the destination surface (typically a xrwebgllayer to the left edge of the viewport within the surface into which webxr content is to be rendered.
XRViewport.y - Web APIs
the read-only xrviewport
interface's y property indicates the offset from the bottom edge of the destination surface (typically a xrwebgllayer to the bottom edge of the viewport within the surface into which webxr content is to be rendered.
XRViewport - Web APIs
the webxr device api's xrviewport
interface provides properties used to describe the size and position of the current viewport within the xrwebgllayer being used to render the 3d scene.
XRVisibilityState - Web APIs
the xrvisibilitystate enumerated type defines the string values which are valid for the xrsession
interface's visibilitystate property, which indicates whether or not an xr session is currently visible to the user, and if it is, whether or not it's currently the primary focus.
XRWebGLLayer.framebuffer - Web APIs
the default configuration of a new framebuffer upon creating a new xrwebgllayer, its new framebuffer is initialized just like the default framebuffer for any webgl
interface: the color buffer is configured with its clear value set to the color (0, 0, 0, 0) (meaning transparent black).
XRWebGLLayer - Web APIs
the xrwebgllayer
interface of the webxr device api provides a linkage between the webxr device (or simulated xr device, in the case of an inline session) and a webgl context used to render the scene for display on the device.
XRWebGLLayerInit.antialias - Web APIs
example in this example, before creating a new xrwebgllayer to use for rendering, the value of a user preference from a configuration
interface is obtained using a function called getpreferencevalue() to determine whether the user has enabled or disabled anti-aliasing support; this is passed into the constructor.
Resources - Web APIs
at ibm developerworks xslt tutorial at zvon.org xpath tutorial at zvon.org using the mozilla javascript
interface to do xsl transformations at mozilla.org mozilla.org's xslt project page, which includes a frequently encountered issues section.
Using the group role - Accessibility
the group role is used to identify a set of user
interface objects which, in contrast with a region, are not intended to be included in a table of contents or a page summary (such as the structures that are dynamically created by a script or assistive technologies); a group should not be considered a major perceivable section on a page.
How to file ARIA-related bugs - Accessibility
ile ie bugs microsoft edge file ms edge bugs view existing ms edge aria bugs mozilla firefox file firefox bugs use component: disability access apis opera file opera bugs use [aria] in the summary field js libraries dojo toolkit file dojo bug put accessibility in the component field yahoo user
interface file yui bugs file against specific component in category combobox and include aria in summary field ...
ARIA: feed role - Accessibility
keyboard interaction supporting the following, or a similar,
interface is recommended when focus is inside the feed: page down: move focus to next article.
ARIA: List role - Accessibility
note: if you are marking up a list of items that will function as a tabbed
interface, you should instead use the tab, tabpanel, and tablist roles.
ARIA: Listitem role - Accessibility
note: if you are marking up a list of items that will function as a tabbed
interface, you should instead use the tab, tabpanel, and tablist roles.
ARIA: row role - Accessibility
if the interaction provides for the selection state of individual cells, if left to right and top to botton navigation is provided, or if the user
interface allows the rearranging of cell order or otherwise changing individual cell order such as through drag and drop, use grid or treegrid instead.
ARIA: table role - Accessibility
if the interaction provides for the selection state of individual cells, if left to right and top to bottom navigation is provided, or if the user
interface allows the rearranging of cell order or otherwise changing individual cell order such as through drag and drop, use grid or treegrid instead.
Variable fonts guide - CSS: Cascading Style Sheets
resources w3c css fonts module 4 specification (editor’s draft) w3c github issue queue microsoft open type variations introduction microsoft opentype design-variation axis tag registry wakamai fondue (a site that will tell you what your font can do via a simple drag-and-drop inspection
interface) axis praxis (the original variable fonts playground site) v-fonts.com (a catalog of variable fonts and where to get them) font playground (another playground for variable fonts with some very unique approaches to user
interface) ...
Auto-placement in CSS Grid Layout - CSS: Cascading Style Sheets
om/samples/62/643f590dbc.png" alt="placeholder"></li> <li><img src="https://udn.realityripple.com/samples/72/ab41das78e.png" alt="placeholder"></li> <li><img src="https://udn.realityripple.com/samples/72/ab41das78e.png" alt="placeholder"></li> <li><img src="https://udn.realityripple.com/samples/72/ab41das78e.png" alt="placeholder"></li> </ul> auto-placement can also help you lay out
interface items which do have logical order.
Pseudo-classes - CSS: Cascading Style Sheets
css basic user
interface module level 3 recommendation defined :default, :valid, :invalid, :in-range, :out-of-range, :required, :optional, :read-only and :read-write, but without the associated semantic meaning.
box-sizing - CSS: Cascading Style Sheets
* 8px) = 136px content box width: 160px content box height: 80px */ } .border-box { box-sizing: border-box; /* total width: 160px total height: 80px content box width: 160px - (2 * 20px) - (2 * 8px) = 104px content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */ } result specifications specification status comment css basic user
interface module level 3the definition of 'box-sizing' in that specification.
caret-color - CSS: Cascading Style Sheets
a custom caret color!" size="64"/> <p contenteditable class="custom">this paragraph can be edited, and its caret has a custom color as well!</p> css input { caret-color: auto; display: block; margin-bottom: .5em; } input.custom { caret-color: red; } p.custom { caret-color: green; } result specifications specification status comment css basic user
interface module level 3the definition of 'caret-color' in that specification.
outline-color - CSS: Cascading Style Sheets
ha-value> = <number> | <percentage><hue> = <number> | <angle> examples setting a solid blue outline html <p>my outline is blue, as you can see.</p> css p { outline: 2px solid; /* set the outline width and style */ outline-color: #0000ff; /* make the outline blue */ margin: 5px; } result specifications specification status comment css basic user
interface module level 3the definition of 'outline-color' in that specification.
outline-offset - CSS: Cascading Style Sheets
erted into absolute lengthsanimation typea length formal syntax <length> examples setting outline offset in pixels html <p>gallia est omnis divisa in partes tres.</p> css p { outline: 1px dashed red; outline-offset: 10px; background: yellow; border: 1px solid blue; margin: 15px; } result specifications specification status comment css basic user
interface module level 3the definition of 'outline-offset' in that specification.
outline-width - CSS: Cascading Style Sheets
pan> css span { outline-style: solid; display: inline-block; margin: 20px; } #thin { outline-width: thin; } #medium { outline-width: medium; } #thick { outline-width: thick; } #twopixels { outline-width: 2px; } #oneex { outline-width: 1ex; } #em { outline-width: 1.2em; } result specifications specification status comment css basic user
interface module level 3the definition of 'outline-width' in that specification.
outline - CSS: Cascading Style Sheets
amples using outline to set a focus style html <a href="#">this link has a special focus style.</a> css a { border: 1px solid; border-radius: 3px; display: inline-block; margin: 10px; padding: 5px; } a:focus { outline: 4px dotted #e73; outline-offset: 4px; background: #ffa; } result specifications specification status comment css basic user
interface module level 3the definition of 'outline' in that specification.
rotate - CSS: Cascading Style Sheets
this maps better to typical user
interface usage, and saves having to remember the exact order of transform functions to specify in the transform property.
scale - CSS: Cascading Style Sheets
this maps better to typical user
interface usage, and saves having to remember the exact order of transform functions to specify in the transform value.
transition-timing-function - CSS: Cascading Style Sheets
step-start equal to steps(1, jump-start) step-end equal to steps(1, jump-end) accessibility concerns some animations can be helpful such as to guide users to understand what actions are expected, to show relationships within the user
interface, and to inform users as to what actions have occurred.
user-select - CSS: Cascading Style Sheets
/p> <p class="all">clicking once will select all of this text.</p> css .unselectable { -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; user-select: none; } .all { -moz-user-select: all; -webkit-user-select: all; -ms-user-select: all; user-select: all; } result specifications specification status comment css basic user
interface module level 4the definition of 'user-select' in that specification.
Index - Event reference
each event is represented by an object which is based on the event
interface, and may have additional custom fields and/or functions used to get additional information about what happened.
touchstart - Event reference
element: touchstart document: touchstart bubbles yes cancelable yes
interface touchevent event handler property ontouchstart specifications specification status touch events recommendation ...
WAI ARIA Live Regions/API Support - Developer guides
emoved) event_object_hide* (fired on the actual accessible object about to go away) object shown or inserted children_changed::add (fired on the parent, with event data pointing to the child index of the inserted accessible object) event_object_show* (fired on the actual new accessible object) object replaced with different object (this happens especially if an object's
interfaces or role changes) children_changed::remove followed immediately by children_change::add event_object_hide followed immediately by event_object_show text removed text_changed::delete ia2_event_text_removed (use iaccessibletext::get_oldtext to retrieve the offsets and removed text) text inserted text_changed::insert ia2_event_text_inserted (use iaccessibletext::g...
Adding captions and subtitles to HTML5 video - Developer guides
abel="español" kind="subtitles" srclang="es" src="captions/vtt/sintel-es.vtt"> </video> as you can see, each <track> element has the following attributes set: kind is given a value of subtitles, indicating the type of content the files contain label is given a value indicating which language that subtitle set is for — for example english or deutsch — these labels will appear in the user
interface to allow the user to easily select which subtitle language they want to see.
Printing - Developer guides
you can use this to adjust the user
interface presented during printing (such as by displaying or hiding user
interface elements during the print process).
Developer guides
ajax ajax is a term that defines a group of technologies allowing web applications to make quick, incremental updates to the user
interface without reloading the entire browser page.
<a>: The Anchor element - HTML: Hypertext Markup Language
implicit aria role link when href attribute is present, otherwise no corresponding role permitted aria roles when href attribute is present: button checkbox menuitem menuitemcheckbox menuitemradio option radio switch tab treeitem when href attribute is not present: any dom
interface htmlanchorelement examples linking to an absolute url html <a href="https://www.mozilla.com"> mozilla </a> result linking to relative urls html <a href="//example.com">scheme-relative url</a> <a href="/docs/web/html">origin-relative url</a> <a href="./p">directory-relative url</a> css a { display: block; margin-bottom: 0.5em } result linking to an element on the same...
<area> - HTML: Hypertext Markup Language
implicit aria role link when href attribute is present, otherwise no corresponding role permitted aria roles no role permitted dom
interface htmlareaelement attributes this element's attributes include the global attributes.
<footer> - HTML: Hypertext Markup Language
implicit aria role contentinfo, or no corresponding role if a descendant of an article, aside, main, nav or section element, or an element with role=article, complementary, main, navigation or region permitted aria roles group, presentation or none dom
interface htmlelement attributes this element only includes the global attributes.
<form> - HTML: Hypertext Markup Language
permitted parents any element that accepts flow content implicit aria role form if the form has an accessible name, otherwise no corresponding role permitted aria roles search, none or presentation dom
interface htmlformelement attributes this element includes the global attributes.
<header> - HTML: Hypertext Markup Language
implicit aria role banner, or no corresponding role if a descendant of an article, aside, main, nav or section element, or an element with role=article, complementary, main, navigation or region permitted aria roles group, presentation or none dom
interface htmlelement usage notes the <header> element is not sectioning content and therefore does not introduce a new section in the outline.
manifest - HTML: Hypertext Markup Language
the manifest attribute has only effect during early stages of page load, thus changing it via regular dom
interfaces has no effect, window.applicationcache
interface instead.
<img>: The Image Embed element - HTML: Hypertext Markup Language
permitted aria roles with non-empty alt attribute: button checkbox link menuitem menuitemcheckbox menuitemradio option progressbar scrollbar separator slider switch tab treeitem with empty alt attribute, none or presentation with no alt attribute, no role permitted dom
interface htmlimageelement specifications specification status comment referrer policythe definition of 'referrer attribute' in that specification.
<input type="month"> - HTML: Hypertext Markup Language
as an example, the month picker on chrome for android looks like this: non-supporting browsers gracefully degrade to a text input, but this creates problems both in terms of consistency of user
interface (the presented control will be different), and data handling.
<input type="range"> - HTML: Hypertext Markup Language
l attributes in addition to the attributes shared by all <input> elements, range inputs offer the following attributes: attribute description list the id of the <datalist> element that contains optional pre-defined options max the maximum permitted value min the minimum permitted value step the stepping interval, used both for user
interface and validation purposes list the values of the list attribute is the id of a <datalist> element located in the same document.
<input type="tel"> - HTML: Hypertext Markup Language
examples in this example, we present a simple
interface with a <select> element that lets the user choose which country they're in, and a set of <input type="tel"> elements to let them enter each part of their phone number; there is no reason why you can't have multiple tel inputs.
<legend> - HTML: Hypertext Markup Language
permitted parents a <fieldset> whose first child is this <legend> element implicit aria role no corresponding role permitted aria roles no role permitted dom
interface htmllegendelement attributes this element only includes the global attributes.
<li> - HTML: Hypertext Markup Language
implicit aria role listitem when child of an ol, ul or menu permitted aria roles menuitem, menuitemcheckbox, menuitemradio, option, none, presentation, radio, separator, tab, treeitem dom
interface htmllielement attributes this element includes the global attributes.
<map> - HTML: Hypertext Markup Language
implicit aria role no corresponding role permitted aria roles no role permitted dom
interface htmlmapelement attributes this element includes the global attributes.
<menu> - HTML: Hypertext Markup Language
implicit aria role list permitted aria roles directory, group, listbox, menu, menubar, none, presentation, radiogroup, tablist, toolbar or tree dom
interface htmlmenuelement attributes this element includes the global attributes.
<menuitem> - HTML: Hypertext Markup Language
(if specified, the type attribute of the <menu> element must be popup; if missing, the parent element of the <menu> must itself be a <menu> in the popup menu state.) permitted aria roles none dom
interface htmlmenuitemelement attributes this element includes the global attributes; in particular title can be used to describe the command, or provide usage hints.
theme-color - HTML: Hypertext Markup Language
the theme-color value for the name attribute of the <meta> element indicates a suggested color that user agents should use to customize the display of the page or of the surrounding user
interface.
<object> - HTML: Hypertext Markup Language
implicit aria role no corresponding role permitted aria roles application, document, image dom
interface htmlobjectelement attributes this element includes the global attributes.
<ol>: The Ordered List element - HTML: Hypertext Markup Language
implicit aria role list permitted aria roles directory, group, listbox, menu, menubar, none, presentation, radiogroup, tablist, toolbar, tree dom
interface htmlolistelement attributes this element also accepts the global attributes.
<section>: The Generic Section element - HTML: Hypertext Markup Language
implicit aria role region if the element has an accessible name, otherwise no corresponding role permitted aria roles alert, alertdialog, application, banner, complementary, contentinfo, dialog, document, feed, log, main, marquee, navigation, none, note, presentation, search, status, tabpanel dom
interface htmlelement attributes this element only includes the global attributes.
<select>: The HTML Select element - HTML: Hypertext Markup Language
implicit aria role combobox with no multiple attribute and no size attribute greater than 1, otherwise listbox permitted aria roles menu with no multiple attribute and no size attribute greater than 1, otherwise no role permitted dom
interface htmlselectelement specifications specification status comments html living standardthe definition of '<select>' in that specification.
<slot> - HTML: Hypertext Markup Language
permitted parents any element that accepts phrasing content implicit aria role no corresponding role permitted aria roles no role permitted dom
interface htmlslotelement attributes this element includes the global attributes.
DataView - JavaScript
the dataview view provides a low-level
interface for reading and writing multiple number types in a binary arraybuffer, without having to care about the platform's endianness.
Date.prototype.toLocaleDateString() - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: var date = new date(date.utc(2012, 11, 20, 3, 0, 0)); // formats below assume the local time zone of the locale; // america/los_angeles for the us // us english uses month-day-year order console.log(date.tolocaledatestring('en-us')); // → "12/19/2012" // british english...
Date.prototype.toLocaleString() - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: let date = new date(date.utc(2012, 11, 20, 3, 0, 0)); // formats below assume the local time zone of the locale; // america/los_angeles for the us // us english uses month-day-year order and 12-hour time with am/pm console.log(date.tolocalestring('en-us')); // → "12/19/2...
Date.prototype.toLocaleTimeString() - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: var date = new date(date.utc(2012, 11, 20, 3, 0, 0)); // formats below assume the local time zone of the locale; // america/los_angeles for the us // us english uses 12-hour time with am/pm console.log(date.tolocaletimestring('en-us')); // → "7:00:00 pm" // british engl...
Intl.Collator - JavaScript
in order to get the sort order of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: // in german, ä sorts with a console.log(new intl.collator('de').compare('ä', 'z')); // → a negative value // in swedish, ä sorts after z console.log(new intl.collator('sv').compare('ä', 'z')); // → a positive value using options the results provided by collator.
Intl.DateTimeFormat.prototype.formatToParts() - JavaScript
irectly: var date = date.utc(2012, 11, 17, 3, 0, 42); var formatter = new intl.datetimeformat('en-us', { weekday: 'long', year: 'numeric', month: 'numeric', day: 'numeric', hour: 'numeric', minute: 'numeric', second: 'numeric', fractionalseconddigits: 3, hour12: true, timezone: 'utc' }); formatter.format(date); // "monday, 12/17/2012, 3:00:42.000 am" however, in many user
interfaces there is a desire to customize the formatting of this string.
Intl.DateTimeFormat - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: var date = new date(date.utc(2012, 11, 20, 3, 0, 0)); // results below use the time zone of america/los_angeles (utc-0800, pacific standard time) // us english uses month-day-year order console.log(new intl.datetimeformat('en-us').format(date)); // → "12/19/2012" // bri...
Intl.NumberFormat.prototype.formatToParts() - JavaScript
examples comparing format and formattoparts numberformat outputs localized, opaque strings that cannot be manipulated directly: var number = 3500; var formatter = new intl.numberformat('de-de', { style: 'currency', currency: 'eur' }); formatter.format(number); // "3.500,00 €" however, in many user
interfaces there is a desire to customize the formatting of this string.
Intl.NumberFormat - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: var number = 123456.789; // german uses comma as decimal separator and period for thousands console.log(new intl.numberformat('de-de').format(number)); // → 123.456,789 // arabic in most arabic speaking countries uses real arabic digits console.log(new intl.numberformat(...
Intl.PluralRules - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: // arabic has different plural rules new intl.pluralrules('ar-eg').select(0); // → 'zero' new intl.pluralrules('ar-eg').select(1); // → 'one' new intl.pluralrules('ar-eg').select(2); // → 'two' new intl.pluralrules('ar-eg').select(6); // → 'few' new intl.pluralrules...
Number.prototype.toLocaleString() - JavaScript
in order to get the format of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: var number = 123456.789; // german uses comma as decimal separator and period for thousands console.log(number.tolocalestring('de-de')); // → 123.456,789 // arabic in most arabic speaking countries uses eastern arabic digits console.log(number.tolocalestring('ar-eg')); /...
Promise - JavaScript
n}) here.`); }); // end log.insertadjacenthtml('beforeend', thispromisecount + ') promise made (sync code terminated)'); } if ("promise" in window) { let btn = document.getelementbyid("btn"); btn.addeventlistener("click",testpromise); } else { log = document.getelementbyid('log'); log.innerhtml = "live example not available as your browser doesn't support the <code>promise<code>
interface."; } this example is started by clicking the button.
String.prototype.localeCompare() - JavaScript
in order to get the sort order of the language used in the user
interface of your application, make sure to specify that language (and possibly some fallback languages) using the locales argument: console.log('ä'.localecompare('z', 'de')); // a negative value: in german, ä sorts before z console.log('ä'.localecompare('z', 'sv')); // a positive value: in swedish, ä sorts after z using options the results provided by localecompare() can be customized using the op...
WebAssembly.CompileError() constructor - JavaScript
// "hello" console.log(e.name); // "compileerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'webassembly constructors' in that specification.
WebAssembly.CompileError - JavaScript
// "hello" console.log(e.name); // "compileerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'webassembly constructors' in that specification.
WebAssembly.Global - JavaScript
specifications specification webassembly javascript
interfacethe definition of 'webassembly.global()' in that specification.
WebAssembly.Instance() constructor - JavaScript
through the asynchronous webassembly.instantiatestreaming() function, for example like this: const importobject = { imports: { imported_func: function(arg) { console.log(arg); } } }; webassembly.instantiatestreaming(fetch('simple.wasm'), importobject) .then(obj => obj.instance.exports.exported_func()); specifications specification webassembly javascript
interfacethe definition of 'instance' in that specification.
WebAssembly.LinkError() constructor - JavaScript
// "hello" console.log(e.name); // "linkerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'linkerror' in that specification.
WebAssembly.LinkError - JavaScript
// "hello" console.log(e.name); // "linkerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'linkerror' in that specification.
WebAssembly.Memory.prototype.buffer - JavaScript
webassembly.instantiatestreaming(fetch('memory.wasm'), { js: { mem: memory } }) .then(obj => { var i32 = new uint32array(memory.buffer); for (var i = 0; i < 10; i++) { i32[i] = i; } var sum = obj.instance.exports.accumulate(0, 10); console.log(sum); }); specifications specification webassembly javascript
interfacethe definition of 'buffer' in that specification.
WebAssembly.Module() constructor - JavaScript
(arg); } } }; function createwasmmodule(bytes) { return new webassembly.module(bytes); } fetch('simple.wasm').then(response => response.arraybuffer() ).then(bytes => { let mod = createwasmmodule(bytes); webassembly.instantiate(mod, importobject) .then(result => result.exports.exported_func() ); }) specifications specification webassembly javascript
interfacethe definition of 'webassembly.module()' in that specification.
WebAssembly.Module.customSections() - JavaScript
webassembly.compilestreaming(fetch('simple-name-section.wasm')) .then(function(mod) { var namesections = webassembly.module.customsections(mod, "name"); if (namesections.length != 0) { console.log("module contains a name section"); console.log(namesections[0]); }; }); specifications specification webassembly javascript
interfacethe definition of 'customsections()' in that specification.
WebAssembly.Module.exports() - JavaScript
ed from main thread'); var mod = e.data; webassembly.instantiate(mod, importobject).then(function(instance) { instance.exports.exported_func(); }); var exports = webassembly.module.exports(mod); console.log(exports[0]); }; the exports[0] output looks like this: { name: "exported_func", kind: "function" } specifications specification webassembly javascript
interfacethe definition of 'exports()' in that specification.
WebAssembly.Module.imports() - JavaScript
webassembly.compilestreaming(fetch('simple.wasm')) .then(function(mod) { var imports = webassembly.module.imports(mod); console.log(imports[0]); }); the output looks like this: { module: "imports", name: "imported_func", kind: "function" } specifications specification webassembly javascript
interfacethe definition of 'imports()' in that specification.
WebAssembly.Module - JavaScript
var importobject = { imports: { imported_func: function(arg) { console.log(arg); } } }; onmessage = function(e) { console.log('module received from main thread'); var mod = e.data; webassembly.instantiate(mod, importobject).then(function(instance) { instance.exports.exported_func(); }); }; specifications specification webassembly javascript
interfacethe definition of 'webassembly.module()' in that specification.
WebAssembly.RuntimeError() constructor - JavaScript
// "hello" console.log(e.name); // "runtimeerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'webassembly.runtimeerror constructor' in that specification.
WebAssembly.RuntimeError - JavaScript
// "hello" console.log(e.name); // "runtimeerror" console.log(e.filename); // "somefile" console.log(e.linenumber); // 10 console.log(e.columnnumber); // 0 console.log(e.stack); // returns the location where the code was run } specifications specification webassembly javascript
interfacethe definition of 'webassembly constructors' in that specification.
WebAssembly.Table.prototype.grow() - JavaScript
var table = new webassembly.table({ element: "anyfunc", initial: 2, maximum: 10 }); you can then grow the table by 1 with the following: console.log(table.length); // "2" console.log(table.grow(1)); // "2" console.log(table.length); // "3" specifications specification webassembly javascript
interfacethe definition of 'grow()' in that specification.
WebAssembly.Table.prototype.length - JavaScript
var table = new webassembly.table({ element: "anyfunc", initial: 2, maximum: 10 }); you can then grow the table by 1 with the following: console.log(table.length); // "2" console.log(table.grow(1)); // "2" console.log(table.length); // "3" specifications specification webassembly javascript
interfacethe definition of 'length' in that specification.
WebAssembly.instantiate() - JavaScript
var importobject = { imports: { imported_func: function(arg) { console.log(arg); } } }; onmessage = function(e) { console.log('module received from main thread'); var mod = e.data; webassembly.instantiate(mod, importobject).then(function(instance) { instance.exports.exported_func(); }); }; specifications specification webassembly javascript
interfacethe definition of 'instantiate()' in that specification.
WebAssembly.validate() - JavaScript
"" : "not ") + "a valid wasm module"); }); specifications specification webassembly javascript
interfacethe definition of 'validate()' in that specification.
WebAssembly - JavaScript
specifications specification webassembly javascript
interfacethe definition of 'webassembly' in that specification.
Lexical grammar - JavaScript
these are always reserved: enum the following are only reserved when they are found in strict mode code: implements
interface let package private protected public static the following are only reserved when they are found in module code: await future reserved keywords in older standards the following are reserved as future keywords by older ecmascript specifications (ecmascript 1 till 3).
Transitioning to strict mode - JavaScript
ces from non-strict to strict syntax errors when adding 'use strict';, the following cases will throw a syntaxerror before the script is executing: octal syntax var n = 023; with statement using delete on a variable name delete myvariable; using eval or arguments as variable or function argument name using one of the newly reserved keywords (in prevision for ecmascript 2015): implements,
interface, let, package, private, protected, public, static, and yield declaring function in blocks if (a < b) { function f() {} } obvious errors declaring twice the same name for a property name in an object literal {a: 1, b: 3, a: 7} this is no longer the case in ecmascript 2015 (bug 1041128).
JavaScript typed arrays - JavaScript
8 64-bit ieee floating point number (16 significant digits e.g., 1.123...15) unrestricted double double bigint64array -263 to 263-1 8 64-bit two's complement signed integer bigint int64_t (signed long long) biguint64array 0 to 264-1 8 64-bit unsigned integer bigint uint64_t (unsigned long long) dataview the dataview is a low-level
interface that provides a getter/setter api to read and write arbitrary data to the buffer.
Media container formats (file types) - Web media technologies
defines the mpeg-4 (mp4) version 2 container format iso/iec 14496-1 (mpeg-4 part 1 systems) defines the original mpeg-4 (mp4) container format rfc 3533 defines the ogg container format rfc 5334 defines the ogg media types and file extensions quicktime file format specification defines the quicktime movie (mov) format multimedia programming
interface and data specifications 1.0 the closest thing to an official wave specification resource interchange file format (used by wav) defines the riff format; wave files are a form of riff webm container guidelines guide for adapting matroska for webm matroska specifications the specification for the matroska container format upon which webm is based webm ...
The "codecs" parameter in common media types - Web media technologies
nd replication) he-aac, he-aac v2 6 aac scalable main, scalable, hq 7 twinvq (coding for ultra-low bit rates) main, scalable 8 celp (code-excited linear prediction) main, scalable, speech, hq, ld 9 hvxc (harmonic vector excitation coding) main, scalable, speech, ld 10 – 11 reserved 12 ttsi (text to speech
interface) main, scalable, speech, synthetic, ld 13 main synthetic main, synthetic 14 wavetable synthesis 15 general midi 16 algorithmic synthesis and audio effects 17 er aac lc (error resilient aac low-complexity) hq, mobile internetworking 18 reserved 19 er aac ltp (error resilient aac long term p...
Web media technologies
today, there are a large number of apis available, as well as html elements, dom
interfaces, and other features that make it possible to not only perform these tasks, but use media in tandem with other technologies to do truly remarkable things.
Add to Home screen - Progressive web apps (PWAs)
deferredprompt = e; // update ui to notify the user they can add to home screen addbtn.style.display = 'block'; addbtn.addeventlistener('click', (e) => { // hide our user
interface that shows our a2hs button addbtn.style.display = 'none'; // show the prompt deferredprompt.prompt(); // wait for the user to respond to the prompt deferredprompt.userchoice.then((choiceresult) => { if (choiceresult.outcome === 'accepted') { console.log('user accepted the a2hs prompt'); } else { console.log('user dismissed the a2hs prompt');...
Mobile first - Progressive web apps (PWAs)
therefore, as well as splitting content into different views, and simplifying the
interface and content on each view of your application for mobile as much as possible, it is also a good idea to not include visual effects such as shadows, animations, and gradients.
class - SVG: Scalable Vector Graphics
the following is a template for an ebnf grammar describing the <list-of-ts> syntax: list-of-ts ::= t | t, list-of-ts within the svg dom, values of a <list-of-ts> type are represented by an
interface specific for the particular type t.
textLength - SVG: Scalable Vector Graphics
when an "input" event occurs, we call svglength.newvaluespecifiedunits() to set the value of textlength to the slider's new value, using the svglength
interface's svg_lengthtype_px unit type to indicate that the value represents pixels.
<altGlyph> - SVG: Scalable Vector Graphics
, dominant-baseline, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-rendering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, text-anchor, transform, vector-effect, visibility xlink attributes xlink:href, xlink:type, xlink:role, xlink:arcrole, xlink:title, xlink:show, xlink:actuate dom
interface this element implements the svgaltglyphelement
interface.
<altGlyphDef> - SVG: Scalable Vector Graphics
usage context categoriestext content elementpermitted contenteither: one or more <glyphref> elements, or one or more <altglyphitem> elements attributes global attributes core attributes specific attributes none dom
interface this element implements the svgaltglyphdefelement
interface.
<altGlyphItem> - SVG: Scalable Vector Graphics
usage context categoriestext content elementpermitted contentone or more <glyphref> elements example attributes global attributes core attributes specific attributes none dom
interface this element implements the svgaltglyphitemelement
interface.
<animate> - SVG: Scalable Vector Graphics
ysplines, from, to, by other animation attributes most notably: attributename, additive, accumulate animation event attributes most notably: onbegin, onend, onrepeat global attributes core attributes most notably: id styling attributes class, style event attributes global event attributes, document element event attributes usage notes this element implements the svganimateelement
interface.
<animateColor> - SVG: Scalable Vector Graphics
ny number of the following elements, in any order:descriptive elements attributes global attributes conditional processing attributes core attributes animation event attributes xlink attributes animation attribute target attributes animation timing attributes animation value attributes animation addition attributes externalresourcesrequired specific attributes by from to dom
interface this element implements the svganimatecolorelement
interface.
<animateMotion> - SVG: Scalable Vector Graphics
es, from, to, by other animation attributes most notably: attributename, additive, accumulate animation event attributes most notably: onbegin, onend, onrepeat global attributes core attributes most notably: id styling attributes class, style event attributes global event attributes, document element event attributes usage notes this element implements the svganimatemotionelement
interface.
<animateTransform> - SVG: Scalable Vector Graphics
"/> </polygon> </svg> live sample attributes global attributes conditional processing attributes » core attributes » animation event attributes » xlink attributes » animation attribute target attributes » animation timing attributes » animation value attributes » animation addition attributes » externalresourcesrequired specific attributes by from to type dom
interface this element implements the svganimatetransformelement
interface.
<color-profile> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:descriptive elements attributes global attributes core attributes » xlink attributes » specific attributes local name rendering-intent xlink:href dom
interface this element implements the svgcolorprofileelement
interface.
<cursor> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:descriptive elements attributes global attributes conditional processing attributes core attributes xlink attributes externalresourcesrequired specific attributes x y xlink:href dom
interface this element implements the svgcursorelement
interface.
<feBlend> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in in2 mode dom
interface this element implements the svgfeblendelement
interface.
<feColorMatrix> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in type values dom
interface this element implements the svgfecolormatrixelement
interface.
<feComponentTransfer> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<fefunca>, <fefuncr>, <fefuncb>, <fefuncg> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in dom
interface this element implements the svgfecomponenttransferelement
interface.
<feComposite> - SVG: Scalable Vector Graphics
k2, k3 and k4 indicate the values of the attributes with the same name usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes » presentation attributes » filter primitive attributes » class style specific attributes in in2 operator k1 k2 k3 k4 dom
interface this element implements the svgfecompositeelement
interface.
<feConvolveMatrix> - SVG: Scalable Vector Graphics
+7+6+5+4+3+2+1) usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in order kernelmatrix divisor bias targetx targety edgemode kernelunitlength preservealpha dom
interface this element implements the svgfeconvolvematrixelement
interface.
<feDiffuseLighting> - SVG: Scalable Vector Graphics
attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in surfacescale diffuseconstant kernelunitlength dom
interface this element implements the svgfediffuselightingelement
interface.
<feDisplacementMap> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in in2 scale xchannelselector ychannelselector dom
interface this element implements the svgfedisplacementmapelement
interface.
<feDistantLight> - SVG: Scalable Vector Graphics
usage context categorieslight source elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes specific attributes azimuth elevation dom
interface this element implements the svgfedistantlightelement
interface.
<feFlood> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <animatecolor>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes flood-color flood-opacity dom
interface this element implements the svgfefloodelement
interface.
<feFuncA> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes transfer function attributes specific attributes none dom
interface this element implements the svgfefuncaelement
interface.
<feFuncB> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes transfer function attributes specific attributes none dom
interface this element implements the svgfefuncbelement
interface.
<feFuncG> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes transfer function attributes specific attributes none dom
interface this element implements the svgfefuncgelement
interface.
<feFuncR> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes transfer function attributes specific attributes none dom
interface this element implements the svgfefuncrelement
interface.
<feGaussianBlur> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in stddeviation edgemode dom
interface this element implements the svgfegaussianblurelement
interface.
<feImage> - SVG: Scalable Vector Graphics
it is rasterized.) usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <animatetransform>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes xlink attributes class style externalresourcesrequired specific attributes preserveaspectratio xlink:href dom
interface this element implements the svgfeimageelement
interface.
<feMerge> - SVG: Scalable Vector Graphics
<femerge> <femergenode in="blur2" /> <femergenode in="sourcegraphic" /> </femerge> </filter> <rect x="40" y="40" width="100" height="100" style="stroke: #000000; fill: green; filter: url(#feoffset);" /> </svg> result attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes none dom
interface this element implements the svgfemergeelement
interface.
<feMergeNode> - SVG: Scalable Vector Graphics
<femergenode in="sourcegraphic" /> </femerge> </filter> <rect x="40" y="40" width="100" height="100" style="stroke: #000000; fill: green; filter: url(#feoffset);" /> <rect x="40" y="40" width="100" height="100" style="stroke: #000000; fill: green;" /> </svg> result attributes global attributes core attributes » specific attributes in dom
interface this element implements the svgfemergenodeelement
interface.
<feMorphology> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in operator radius dom
interface this element implements the svgfemorphologyelement
interface.
<feOffset> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in dx dy dom
interface this element implements the svgfeoffsetelement
interface.
<fePointLight> - SVG: Scalable Vector Graphics
usage context categorieslight source elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes specific attributes x y z dom
interface this element implements the svgfepointlightelement
interface.
<feSpecularLighting> - SVG: Scalable Vector Graphics
attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in surfacescale specularconstant specularexponent kernelunitlength dom
interface this element implements the svgfespecularlightingelement
interface.
<feSpotLight> - SVG: Scalable Vector Graphics
usage context categorieslight source elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes specific attributes x y z pointsatx pointsaty pointsatz specularexponent limitingconeangle dom
interface this element implements the svgfespotlightelement
interface.
<feTile> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes in dom
interface this element implements the svgfetileelement
interface.
<feTurbulence> - SVG: Scalable Vector Graphics
usage context categoriesfilter primitive elementpermitted contentany number of the following elements, in any order:<animate>, <set> attributes global attributes core attributes presentation attributes filter primitive attributes class style specific attributes basefrequency numoctaves seed stitchtiles type dom
interface this element implements the svgfeturbulenceelement
interface.
<filter> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:descriptive elementsfilter primitive elements<animate>, <set> attributes global attributes core attributes presentation attributes xlink attributes class style externalresourcesrequired specific attributes x y width height filterres filterunits primitiveunits xlink:href dom
interface this element implements the svgfilterelement
interface.
<font-face-format> - SVG: Scalable Vector Graphics
usage context categoriesfont elementpermitted contentempty attributes global attributes core attributes specific attributes string dom
interface this element implements the svgfontfaceformatelement
interface.
<font-face-name> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentempty attributes global attributes core attributes » specific attributes name dom
interface this element implements the svgfontfacenameelement
interface.
<font-face-src> - SVG: Scalable Vector Graphics
usage context categoriesfont elementpermitted contentone or more of the following elements, in any order:<font-face-name>, <font-face-uri> attributes global attributes core attributes specific attributes none dom
interface this element implements the svgfontfacesrcelement
interface.
<font-face-uri> - SVG: Scalable Vector Graphics
usage context categoriesfont elementpermitted contentany number of the following elements, in any order:<font-face-format> attributes global attributes core attributes xlink attributes specific attributes xlink:href dom
interface this element implements the svgfontfaceurielement
interface.
<font-face> - SVG: Scalable Vector Graphics
-weight font-stretch font-size unicode-range units-per-em panose-1 stemv stemh slope cap-height x-height accent-height ascent descent widths bbox ideographic alphabetic mathematical hanging v-ideographic v-alphabetic v-mathematical v-hanging underline-position underline-thickness strikethrough-position strikethrough-thickness overline-position overline-thickness dom
interface this element implements the svgfontfaceelement
interface.
<font> - SVG: Scalable Vector Graphics
categoriesfont elementpermitted contentany number of the following elements, in any order:descriptive elements<font-face>, <glyph>, <hkern>, <missing-glyph>, <vkern> attributes global attributes core attributes presentation attributes class style externalresourcesrequired specific attributes horiz-origin-x horiz-origin-y horiz-adv-x vert-origin-x vert-origin-y vert-adv-y dom
interface this element implements the svgfontelement
interface.
<glyph> - SVG: Scalable Vector Graphics
<clippath>, <color-profile>, <cursor>, <filter>, <font>, <font-face>, <foreignobject>, <image>, <marker>, <mask>, <pattern>, <script>, <style>, <switch>, <text>, <view> attributes global attributes core attributes presentation attributes class style specific attributes d horiz-adv-x vert-origin-x vert-origin-y vert-adv-y unicode glyph-name orientation arabic-form lang dom
interface this element implements the svgglyphelement
interface.
<glyphRef> - SVG: Scalable Vector Graphics
usage context categoriestext content elementpermitted contentempty attributes global attributes core attributes » presentation attributes » xlink attributes » class style specific attributes x y dx dy glyphref format xlink:href dom
interface this element implements the svgglyphrefelement
interface.
<hatch> - SVG: Scalable Vector Graphics
esnever-rendered element, paint server elementpermitted contentany number of the following elements, in any order:animation elementsdescriptive elements<hatchpath>, <script>, <style> attributes global attributes core attributes global event attributes presentation attributes style attributes specific attributes x y pitch rotate hatchunits hatchcontentunits transform href dom
interface this element implements the svghatchelement
interface.
<hatchpath> - SVG: Scalable Vector Graphics
usage context categoriesnonepermitted contentany number of the following elements, in any order:animation elementsdescriptive elements<script>, <style> attributes global attributes core attributes global event attributes presentation attributes style attributes specific attributes d offset dom
interface this element implements the svghatchpathelement
interface.
<hkern> - SVG: Scalable Vector Graphics
usage context categoriesfont elementpermitted contentempty attributes global attributes core attributes specific attributes u1 g1 u2 g2 k dom
interface this element implements the svghkernelement
interface.
<metadata> - SVG: Scalable Vector Graphics
usage context categoriesdescriptive elementpermitted contentany elements or character data attributes global attributes core attributes global event attributes specific attributes none dom
interface this element implements the svgmetadataelement
interface.
<missing-glyph> - SVG: Scalable Vector Graphics
ructural elementsgradient elements<a>, <altglyphdef>, <clippath>, <color-profile>, <cursor>, <filter>, <font>, <font-face>, <foreignobject>, <image>, <marker>, <mask>, <pattern>, <script>, <style>, <switch>, <text>, <view> attributes global attributes core attributes presentation attributes class style specific attributes d horiz-adv-x vert-origin-x vert-origin-y vert-adv-y dom
interface this element implements the svgmissingglyphelement
interface.
<mpath> - SVG: Scalable Vector Graphics
usage context categoriesanimation elementpermitted contentany number of the following elements, in any order:descriptive elements attributes global attributes core attributes » xlink attributes » externalresourcesrequired specific attributes xlink:href dom
interface this element implements the svgmpathelement
interface.
<switch> - SVG: Scalable Vector Graphics
container elementpermitted contentany number of the following elements, in any order:animation elementsdescriptive elementsshape elements<a>, <foreignobject>, <g>, <image>, <svg>, <switch>, <text>, <use> attributes global attributes conditional processing attributes core attributes graphical event attributes presentation attributes class style externalresourcesrequired transform dom
interface this element implements the svgswitchelement
interface.
<tref> - SVG: Scalable Vector Graphics
tent element, text content child elementpermitted contentany number of the following elements, in any order:descriptive elements<animate>, <animatecolor>, <set> attributes global attributes conditional processing attributes core attributes graphical event attributes presentation attributes xlink attributes class style externalresourcesrequired specific attributes xlink:href dom
interface this element implements the svgtrefelement
interface.
<view> - SVG: Scalable Vector Graphics
zeview" viewbox="0 0 600 200"/> <view id="doublesizeview" viewbox="0 0 300 100"/> <a xlink:href="#halfsizeview"> <text x="5" y="20" font-size="20">half size</text> </a> <a xlink:href="#normalsizeview"> <text x="5" y="40" font-size="20">normal size</text> </a> <a xlink:href="#doublesizeview"> <text x="5" y="60" font-size="20">double size</text> </a> </svg> result dom
interface this element implements the svgviewelement
interface.
<vkern> - SVG: Scalable Vector Graphics
usage context categoriesfont elementpermitted contentempty attributes global attributes core attributes specific attributes u1 g1 u2 g2 k dom
interface this element implements the svgvkernelement
interface.
Types of attacks - Web security
(click-jacking is sometimes called "user
interface redressing", though this is a misuse of the term "redress".) cross-site request forgery (csrf) cross-site scripting (xss) cross-site scripting (xss) is a security exploit which allows an attacker to inject into a website malicious client-side code.
Tutorials
client-side web apis when writing client-side javascript for websites or applications, you won't go very far before you start to use apis —
interfaces for manipulating different aspects of the browser and operating system the site is running on, or even data from other websites or services.