Search completed in 1.55 seconds.
WebGL2RenderingContext.endTransformFeedback() - Web APIs
the webgl2r
enderingcontext.
endtransformfeedback() method of the webgl 2 api
ends a transform feedback operation.
... syntax void gl.
endtransformfeedback(); parameters none.
... examples var transformfeedback = gl.createtransformfeedback(); gl.bindtransformfeedback(gl.transform_feedback, transformfeedback); gl.begintransformfeedback(gl.triangles); gl.drawarrays(gl.triangles, 0, 3); gl.
endtransformfeedback(); specifications specification status comment webgl 2.0the definition of '
endtransformfeedback' in that specification.
... opengl es 3.0the definition of 'gl
endtransformfeedback' in that specification.
border-end-end-radius - CSS: Cascading Style Sheets
the border-
end-
end-radius css property defines a logical border radius on an element, which maps to a physical border radius that dep
ends on on the element's writing-mode, direction, and text-orientation.
... /* <length> values */ /* with one value the corner will be a circle */ border-
end-
end-radius: 10px; border-
end-
end-radius: 1em; /* with two values the corner will be an ellipse */ border-
end-
end-radius: 1em 2em; /* global values */ border-
end-
end-radius: inherit; border-
end-
end-radius: initial; border-
end-
end-radius: unset; for instance, in a horizontal-tb writing mode this property corresponds to the border-bottom-right-radius property.
...border boxcomputed valuetwo absolute <length>s or <percentage>sanimation typea length, percentage or calc(); formal syntax <length-percentage>{1,2}where <length-percentage> = <length> | <percentage> examples border radius with vertical text html <div> <p class="exampletext">example</p> </div> css content div { background-color: rebeccapurple; width: 120px; height: 120px; border-
end-
end-radius: 10px; } .exampletext { writing-mode: vertical-rl; padding: 10px; background-color: #fff; border-
end-
end-radius: 10px; } results specifications specification status comment css logical properties and values level 1the definition of 'border-
end-
end-radius' in that specification.
WebGLRenderingContext - Web APIs
the webglr
enderingcontext interface provides an interface to the opengl es 2.0 graphics r
endering context for the drawing surface of an html <canvas> element.
... to get an access to a webgl context for 2d and/or 3d graphics r
endering, call getcontext() on a <canvas> element, supplying "webgl" as the argument: var canvas = document.getelementbyid('mycanvas'); var gl = canvas.getcontext('webgl'); once you have the webgl r
endering context for a canvas, you can r
ender within it.
... if you require a webgl 2.0 context, see webgl2r
enderingcontext; this supplies access to an implementation of opengl es 3.0 graphics.
...And 123 more matches
CanvasRenderingContext2D - Web APIs
the canvasr
enderingcontext2d interface, part of the canvas api, provides the 2d r
endering context for the drawing surface of a <canvas> element.
... basic example to get a canvasr
enderingcontext2d instance, you must first have an html <canvas> element to work with: <canvas id="my-house" width="300" height="300"></canvas> to get the canvas' 2d r
endering context, call getcontext() on the <canvas> element, supplying '2d' as the argument: const canvas = document.getelementbyid('my-house'); const ctx = canvas.getcontext('2d'); with the context in hand, you can draw anything you like.
... canvasr
enderingcontext2d.clearrect() sets all pixels in the rectangle defined by starting point (x, y) and size (width, height) to transparent black, erasing any previously drawn content.
...And 101 more matches
Rendering and the WebXR frame animation callback - Web APIs
once your webxr environment has been set up and an xrsession created to represent an ongoing xr environment session, you need to provide frames of the scene to the xr device for r
endering.
... this article covers the process of driving the frames of the xr scene to the device in the r
endering loop, using the xrsession to obtain an xrframe object representing each frame, which is then used to prepare the framebuffer for delivery to the xr device.
... before you can r
ender the virtual environment, you need to establish a webxr session by creating an xrsession using the navigator.xr.requestsession() method; you also need to associate the session with a framebuffer and perform other setup tasks.
...And 71 more matches
WebGL2RenderingContext - Web APIs
the webgl2r
enderingcontext interface provides the opengl es 3.0 r
endering context for the drawing surface of an html <canvas> element.
...the webgl2r
enderingcontext interface implements all members of the webglr
enderingcontext interface.
... state information webgl2r
enderingcontext.getindexedparameter() returns the indexed value for the given target.
...And 70 more matches
Mail composition back end
pizzarro <rhp@netscape.com> contents overview s
ending messages nsimsgs
end s
ending listener interfaces nsimsgs
endlistener nsimsgcopyservicelistener copy operations copy to sent folder drafts templates "s
end later" s
ending unsent messages s
ending 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.
... the mail composition back
end is responsible for the assembly and creation of rfc822 messages to be delivered either via smtp or nntp services.
...this will change in the coming weeks and allow for developers to write javascript to take advantage of the back
end services.
...And 52 more matches
Extending a Protocol
quick start: ext
ending a protocol this tutorial implements a simple ping-pong style ipdl protocol, which s
ends a message from the content process (main thread) to the chrome process (ui thread).
... the tutorial is designed for browser engineers who are implementing dom/web apis that need to, for example, s
end a message to the os or spin up something off the main thread - so it's biased towards supporting w3c/whatwg dom apis.
...then we will s
end that same string back to the child process.
...And 29 more matches
<blend-mode> - CSS: Cascading Style Sheets
the <bl
end-mode> css data type describes how colors should appear when elements overlap.
... it is used in the background-bl
end-mode and mix-bl
end-mode properties.
... syntax the <bl
end-mode> data type is defined using a keyword value chosen from the list below.
...And 28 more matches
Sending form data - Learn web development
we also look at some of the security concerns associated with s
ending form data.
...a client (usually a web browser) s
ends a request to a server (most of the time a web server like apache, nginx, iis, tomcat, etc.), using the http protocol.
... an html form on a web page is nothing more than a convenient user-fri
endly way to configure an http request to s
end data to a server.
...And 27 more matches
Sending forms through JavaScript - Learn web development
html forms can s
end an http request declaratively.
... but forms can also prepare an http request to s
end via javascript, for example via xmlhttprequest.
... a form is not always a form with progressive web apps, single page apps, and framework based apps, it's common to use html forms to s
end data without loading a new document when response data is received.
...And 26 more matches
calICalendarView - Archive of obsolete content
summary an object implementing calical
endarview is generally int
ended to serve as a way of manipulating a set of dom nodes corresonding to a visual representation of calievent and calitodo objects.
... because of this close association between methods and attributes on the one hand, and content on the other, calical
endarview implementations are particularly well suited to xbl.
...in the vast majority of cases, the dom corresponding to an implementation of calical
endarview will be rather complex.
...And 24 more matches
Critical rendering path - Web Performance
the critical r
endering path is the sequence of steps the browser goes through to convert the html, css, and javascript into pixels on the screen.
... optimizing the critical r
ender path improves r
ender performance.the critical r
endering path includes the document object model (dom), css object model (cssom), r
ender tree and layout.
...the browser engine combines the two to create the r
ender tree.
...And 24 more matches
Gecko info for Windows accessibility vendors
definitions here are some basic definitions that you'll need for this document to make sense: gecko: the r
endering engine for firefox, thunderbird, nvu, mozilla seamonkey and other applications.
... gecko is the internal engine that mozilla uses to r
ender any kind of web content.
...(i recomm
end sdk 1.3 because the msaa sdk 2.0 doesn't come with the source code to the testing tools.
...And 19 more matches
nsDependentCString
class declaration nstdep
endentstring_chart stores a null-terminated, immutable sequence of characters.
... this class does not own its data, so the creator of objects of this type must take care to ensure that a nstdep
endentstring continues to reference valid memory for the duration of its use.
... method overview constructors assertvalid rebind operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(c...
...And 19 more matches
end - SVG: Scalable Vector Graphics
the
end attribute defines an
end value for the animation that can constrain the active duration.
... five elements are using this attribute: <animate>, <animatecolor>, <animatemotion>, <animatetransform>, and <set> usage notes default value none value <
end-value-list> animatable no the <
end-value-list> is a semicolon-separated list of values.
...the element's animation
end time is defined relative to the begin or active
end of another animation.
...And 19 more matches
nsDependentString
class declaration nstdep
endentstring_chart stores a null-terminated, immutable sequence of characters.
... this class does not own its data, so the creator of objects of this type must take care to ensure that a nstdep
endentstring continues to reference valid memory for the duration of its use.
... method overview constructors assertvalid rebind operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assi...
...And 13 more matches
USBEndpoint - Web APIs
the usb
endpoint interface of the webusb api provides information about an
endpoint provided by the usb device.
... an
endpoint represents a unidirectional data stream into or out of a device.
... constructor usb
endpoint.usb
endpoint creates a new usb
endpoint object which will be populated with information about the
endpoint on the provided usbaltenateinterface with the given
endpoint number and transfer direction.
...And 13 more matches
Sending and Receiving Binary Data - Web APIs
ar oreq = new xmlhttprequest(); oreq.open("get", "/myfile.png", true); oreq.responsetype = "arraybuffer"; oreq.onload = function (oevent) { var arraybuffer = oreq.response; // note: not oreq.responsetext if (arraybuffer) { var bytearray = new uint8array(arraybuffer); for (var i = 0; i < bytearray.bytelength; i++) { // do something with each byte in the array } } }; oreq.s
end(null); you can also read a binary file as a blob by setting the string "blob" to the responsetype property.
...}; oreq.s
end(); receiving binary data in older browsers the load_binary_resource() function shown below loads binary data from the specified url, returning it to the caller.
... function load_binary_resource(url) { var req = new xmlhttprequest(); req.open('get', url, false); //xhr binary charset opt by marcus granado 2006 [http://mgran.blogspot.com] req.overridemimetype('text\/plain; charset=x-user-defined'); req.s
end(null); if (req.status != 200) return ''; return req.responsetext; } the magic happens in line 5, which overrides the mime type, forcing the browser to treat it as plain text, using a user-defined character set.
...And 13 more matches
Appendix: What you should know about open-source software licenses - Archive of obsolete content
app
endix: what you should know about open-source software licenses draft this page is not complete.
... these conditions will vary from one license to the next, but the open source definition stipulates the following minimum conditions: the integrity of the author’s source code must be preserved; no discrimination may be made against individuals or organizations; no discrimination may be made based on field of
endeavor; no additional licensing can be required when redistributing; license must not be specific to a product; license must not interfere with other software.
...the “no discrimination may be made based on field of
endeavor” rule means that you cannot prevent it from being used in warfare.
...And 12 more matches
calICalendarViewController - Archive of obsolete content
summary a calical
endarviewcontroller provides a way for a calical
endarview to create, modify, and delete items.
... implementing a calical
endarviewcontroller allows for these actions to be performed in a manner consistent with the rest of the application in which the calical
endarview is included.
... cal
endar/base/public/calical
endarviewcontroller.idlscriptable please add a summary to this article.
...And 12 more matches
SVGFEBlendElement - Web APIs
the svgfebl
endelement interface corresponds to the <febl
end> element.
...o,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">svgelement</text></a><polyline points="481,25 491,20 491,30 481,25" stroke="#d4dde4" fill="none"/><line x1="491" y1="25" x2="499" y2="25" stroke="#d4dde4"/><line x1="499" y1="25" x2="499" y2="90" stroke="#d4dde4"/><line x1="499" y1="90" x2="482" y2="90" stroke="#d4dde4"/><a xlink:href="/docs/web/api/svgfebl
endelement" 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">svgfebl
endelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} constants n...
...ame value description svg_febl
end_mode_unknown 0 the type is not one of predefined types.
...And 12 more matches
XRSession.environmentBlendMode - Web APIs
the xrsession interface's read-only environmentbl
endmode property identifies if—and to what degree—the computer-generated imagery is overlaid atop the real world.
... this is used to differentiate between fully-immersive vr sessions and ar sessions which r
ender over a pass-through image of the real world, possibly partially transparently.
... the value is a domstring which contains one of the values defined by the xrenvironmentbl
endmode enumerated type.
...And 12 more matches
Intl.Locale.prototype.calendar - JavaScript
the intl.locale.prototype.cal
endar property is an accessor property which returns the type of cal
endar used in the locale.
... description the cal
endar property returns the part of the locale that indicates the locale's cal
endar era.
... while most of the world uses the gregorian cal
endar, there are several regional cal
endar eras used around the world.
...And 12 more matches
Rendering a list of Vue components - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
... objective: to learn how to loop through an array of data and r
ender it in multiple components.
... r
endering lists with v-for to be an effective to-do list, we need to be able to r
ender multiple to-do items.
...And 11 more matches
RTCRtpSender - Web APIs
the rtcrtps
ender interface provides the ability to control and obtain details about how a particular mediastreamtrack is encoded and sent to a remote peer.
...you can also obtain access to an rtcdtmfs
ender which can be used to s
end dtmf codes (to simulate the user pressing buttons on a telephone's dial pad) to the remote peer.
... properties rtcrtps
ender.dtmf read only an rtcdtmfs
ender which can be used to s
end dtmf tones using telephone-event payloads on the rtp session represented by the rtcrtps
ender object.
...And 11 more matches
text-rendering - SVG: Scalable Vector Graphics
the text-r
endering attribute provides hints to the r
enderer about what tradeoffs to make when r
endering text.
... note: as a presentation attribute, text-r
endering can be used as a css property.
... see the css text-r
endering property for more information.
...And 11 more matches
React interactivity: Editing, filtering, conditional rendering - Learn web development
previous overview: client-side javascript frameworks next as we near the
end of our react journey (for now at least), we'll add the finishing touches to the main areas of functionality in our todo list app.
...we'll look at conditional ui r
endering along the way.
... objective: to learn about conditional r
endering in react, and implementing list filtering and an editing ui in our app.
...And 10 more matches
Performance best practices for Firefox front-end engineers
this guide will help firefox developers working on front-
end code produce code which is as performant as possible—not just on its own, but in terms of its impact on other parts of firefox.
... the r
endering process goes through the following steps: the above image is used under creative commons attribution 3.0, courtesy of this page from our fri
ends at google, which itself is well worth the read.
...dep
ending on whether or not the style information you’re asking for has something to do with size or position, you may also cause a layout recalculation (also referred to as layout flush or reflow), which is also an expensive step (see detecting and avoiding synchronous reflow below).
...And 10 more matches
Using Dependent Libraries In Extension Components - Archive of obsolete content
extensions with binary components sometimes need to dep
end on other shared libraries (for example, libraries provided by a third party).
... the firefox extension system does not provide automatic support for loading these dep
endent libraries, but it is possible to load these libraries explicitly using a component stub.
... the basic strategy of the stub is to dynamically load the dep
endent libraries, then load the component library and continue registration.
...And 9 more matches
Vue conditional rendering: editing existing todos - Learn web development
to do this, we will take advantage of vue's conditional r
endering capabilities — namely v-if and v-else — to allow us to toggle between the existing todo item view, and an edit view where you can update todo item labels.
...for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
... objective: to learn how to do conditional r
endering in vue.
...And 9 more matches
HTMLLegendElement - Web APIs
the htmlleg
endelement is an interface allowing to access properties of the <leg
end> elements.
...,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlelement</text></a><polyline points="491,25 501,20 501,30 491,25" stroke="#d4dde4" fill="none"/><line x1="501" y1="25" x2="509" y2="25" stroke="#d4dde4"/><line x1="509" y1="25" x2="509" y2="90" stroke="#d4dde4"/><line x1="509" y1="90" x2="492" y2="90" stroke="#d4dde4"/><a xlink:href="/docs/web/api/htmlleg
endelement" 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">htmlleg
endelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties inherits ...
... htmlleg
endelement.form read only is a htmlformelement representing the form that this leg
end belongs to.
...And 9 more matches
Navigator.sendBeacon() - Web APIs
the navigator.s
endbeacon() method asynchronously s
ends a small amount of data over http to a web server.
... syntax navigator.s
endbeacon(url, data); parameters url the url that will receive the data.
... data a arraybuffer, arraybufferview, blob, domstring, formdata, or urlsearchparams object containing the data to s
end.
...And 9 more matches
Node.appendChild() - Web APIs
the node.app
endchild() method adds a node to the
end of the list of children of a specified parent node.
... if the given child is a reference to an existing node in the document, app
endchild() moves it from its current position to the new position (there is no requirement to remove the node from its parent node before app
ending it to some other node).
...so if the node already has a parent, the node is first removed, then app
ended at the new position.
...And 9 more matches
WebGLRenderingContext.bufferData() - Web APIs
the webglr
enderingcontext.bufferdata() method of the webgl api initializes and creates the buffer object's data store.
... usage a glenum specifying the int
ended usage pattern of the data store for optimization purposes.
... possible values: gl.static_draw: the contents are int
ended to be specified once by the application, and used many times as the source for webgl drawing and image specification commands.
...And 9 more matches
Window.openDialog() - Web APIs
window.op
endialog() is an extension to window.open().
... the call to op
endialog() returns immediately.
... syntax newwindow = op
endialog(url, name, features, arg1, arg2, ...) newwindow the opened window url the url to be loaded in the newly opened window.
...And 9 more matches
XREnvironmentBlendMode - Web APIs
the webxr api's enumerated type xrenvironmentbl
endmode defines strings used to identify if and how to bl
end the r
endered virtual content with the real world.
... its values are used by the xrsession interface's environmentbl
endmode property.
... values opaque the r
endered image is drawn without allowing any pass-through imagery.
...And 9 more matches
mix-blend-mode - CSS: Cascading Style Sheets
the mix-bl
end-mode css property sets how an element's content should bl
end with the content of the element's parent and the element's background.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ mix-bl
end-mode: normal; mix-bl
end-mode: multiply; mix-bl
end-mode: screen; mix-bl
end-mode: overlay; mix-bl
end-mode: darken; mix-bl
end-mode: lighten; mix-bl
end-mode: color-dodge; mix-bl
end-mode: color-burn; mix-bl
end-mode: hard-light; mix-bl
end-mode: soft-light; mix-bl
end-mode: difference; mix-bl
end-mode: exclusion; mix-bl
end-mode: hue; mix-bl
end-mode: saturation; mix-bl
end-mode: color; mix-bl
end-mode: luminosity; /* global values */ mix-bl
end-mode: initial; mix-bl
end-mode: inherit; mix-bl
end-mode: unset; values <bl
end-mode> the bl
ending mode that should be applied.
...And 9 more matches
Ember Interactivity: Footer functionality, conditional rendering - Learn web development
along the way, we'll learn about using conditional r
endering in our templates.
... prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... objective: to continue our learning about components classes, start looking at conditional r
endering, and wire up some of our footer functionality.
...And 8 more matches
nsISyncMessageSender
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsimessagelistenermanager message "s
enders" have a single "other side" to which messages are sent.
... for example, a child-process message manager will s
end messages that are only delivered to its one parent-process message manager.
... see message manager interfaces for more details on the distinction between message s
enders and message broadcasters.
...And 8 more matches
ExtendableMessageEvent - Web APIs
the ext
endablemessageevent 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) — ext
ends the lifetime of such events.
... this interface inherits from the ext
endableevent interface.
... constructor ext
endablemessageevent() creates a new ext
endablemessageevent object instance.
...And 8 more matches
WebGLRenderingContext.disable() - Web APIs
the webglr
enderingcontext.disable() method of the webgl api disables specific webgl capabilities for this context.
...possible values: constant description gl.bl
end deactivates bl
ending of the computed fragment color values.
... see webglr
enderingcontext.bl
endfunc().
...And 8 more matches
WebGLRenderingContext.enable() - Web APIs
the webglr
enderingcontext.enable() method of the webgl api enables specific webgl capabilities for this context.
...possible values: constant description gl.bl
end activates bl
ending of the computed fragment color values.
... see webglr
enderingcontext.bl
endfunc().
...And 8 more matches
WebGLRenderingContext.isEnabled() - Web APIs
the webglr
enderingcontext.isenabled() method of the webgl api tests whether a specific webgl capability is enabled or not for this context.
...possible values: constant description gl.bl
end bl
ending of the computed fragment color values.
... see webglr
enderingcontext.bl
endfunc().
...And 8 more matches
shape-rendering - SVG: Scalable Vector Graphics
the shape-r
endering attribute provides hints to the r
enderer about what tradeoffs to make when r
endering shapes like paths, circles, or rectangles.
... note: as a presentation attribute, shape-r
endering can be used as a css property.
... as a presentation attribute, it can be applied to any element but it has effect only on the following seven elements: <circle>, <ellipse>, <line>, <path>, <polygon>, <polyline>, and <rect> html, body, svg { height: 100%; } <svg viewbox="0 0 420 200" xmlns="http://www.w3.org/2000/svg"> <circle cx="100" cy="100" r="100" shape-r
endering="geometricprecision"/> <circle cx="320" cy="100" r="100" shape-r
endering="crispedges"/> </svg> usage notes value auto | optimizespeed | crispedges | geometricprecision default value auto animatable yes auto this value indicates that the user agent shall make appropriate tradeoffs to balance speed, crisp edges and geometric precision, but with geometric precision given more importance than speed and c...
...And 8 more matches
Aprender y obtener ayuda - Learn web development
this is also a reasonable approach, and some learning sites t
end to favor it.
... note: online code editors are also really useful for sharing code you've written, for example, if you are collaborating on learning with someone else who isn't in the same location, or are s
ending it someone to ask for help with it.
... note: you might favor one learning method over the others, but realistically a hybrid approach is probably what you will
end up with.
...And 7 more matches
JS_SuspendRequest
susp
ends the calling thread's current request, if any, to allow the thread to block or perform time-consuming calculations.
... syntax jsrefcount js_susp
endrequest(jscontext *cx); void js_resumerequest(jscontext *cx, jsrefcount savedepth); name type description cx jscontext * the context whose current request is to be susp
ended or resumed.
... savedepth jsrefcount (only in js_resumerequest) the valued returned by the matching js_susp
endrequest call.
...And 7 more matches
nsDependentString external
class declaration dep
endent strings method overview constructors rebind get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lower...
...caseequalsliteral find rfind findchar rfindchar app
endint tointeger base classes nsstring_external data members no public members.
... methods constructors void nsdep
endentstring_external() - source void nsdep
endentstring_external(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength rebind void rebind(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength get prunichar* get() const - source operator= nsstring_external& operator=(const nsstring_external&) - source parameters nsstring_external& astring nsastring& operator=(const nsastring&) - source parameters nsastring& astring nsastring& operator=(const prunichar*) - source par...
...And 7 more matches
nsDependentSubstring external
class declaration substrings method overview constructors rebind beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral operator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare(const prunichar*, print32 (*) compare(const nsastring&, print32 (*) equals(const prunichar*, print32 (*) equals(const nsastring&, print32 (*) operator< operator<...
...operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find(const nsastring&, print32 (*) find(const nsastring&, pruint32, print32 (*) find rfind(const nsastring&, print32 (*) rfind(const nsastring&, print32, print32 (*) rfind findchar rfindchar app
endint tointeger base classes nsstringcontainer data members no public members.
... methods constructors void nsdep
endentsubstring_external() - source void nsdep
endentsubstring_external(const prunichar*, pruint32) - source parameters prunichar astart pruint32 alength void nsdep
endentsubstring_external(const nsastring&, pruint32) - source parameters nsastring astr pruint32 astartpos void nsdep
endentsubstring_external(const nsastring&, pruint32, pruint32) - source parameters nsastring astr pruint32 astartpos pruint32 alength rebind void rebind(const prunichar*, pruint32) - source parameters prunichar astart pruint32 alength beginreading pruint32 beginreadin...
...And 7 more matches
HTMLElement: transitionend event - Web APIs
the transition
end event is fired when a css transition has completed.
... bubbles yes cancelable yes interface transitionevent event handler property ontransition
end the transition
end 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.
... if the transitioncancel event is fired, the transition
end event will not fire.
...And 7 more matches
OfflineAudioContext.startRendering() - Web APIs
the startr
endering() method of the offlineaudiocontext interface starts r
endering the audio graph, taking into account the current connections and the current scheduled changes.
... the complete event (of type offlineaudiocompletionevent) is raised when the r
endering is finished, containing the resulting audiobuffer in its r
enderedbuffer property.
... browsers currently support two versions of the startr
endering() method — an older event-based version and a newer promise-based version.
...And 7 more matches
RTCRtpSender.getCapabilities() static function - Web APIs
the static function rtcrtps
ender.getcapabilities() returns an rtcrtpcapabilities object describing the codecs and capabilities supported by the rtcrtps
ender.
... syntax let rtpcapabilities = rtcrtps
ender.getcapabilities(kind); parameters kind a domstring indicating the type of media for which you wish to get the s
ender's capability to receive.
... return value an rtcrtpcapabilities object stating what capabilities the browser has for s
ending the specified media kind over an rtcpeerconnection.
...And 7 more matches
Range.setEnd() - Web APIs
the range.set
end() method sets the
end position of a range to be located at the given offset into the specified node x.setting the
end point above (higher in the document) than the start point will result in a collapsed range with the start and
end points both set to the specified
end position.
... syntax range.set
end(
endnode,
endoffset); parameters
endnode the node inside which the range should
end.
...
endoffset an integer greater than or equal to zero representing the offset for the
end of the range from the start of
endnode.
...And 7 more matches
SVGRenderingIntent - Web APIs
the svgr
enderingintent interface defines the enumerated list of possible values for r
endering-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/svgr
enderingintent" 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">svgr
enderingintent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: this interface was removed in the svg 2 specification.
... constants name value description r
endering_intent_unknown 0 the type is not one of predefined types.
...And 7 more matches
WebGLRenderingContext.makeXRCompatible() - Web APIs
the webglr
enderingcontext method makexrcompatible() ensures that the r
endering context described by the webglr
enderingcontext is ready to r
ender the scene for the immersive webxr device on which it will be displayed.
... if necessary, the webgl layer may reconfigure the context to be ready to r
ender to a different device than it originally was.
... syntax let makecompatpromise = webglr
enderingcontext.makexrcompatible(); parameters none.
...And 7 more matches
grid-column-end - CSS: Cascading Style Sheets
the grid-column-
end css property specifies a grid item’s
end position within the grid column by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the block-
end edge of its grid area.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword value */ grid-column-
end: auto; /* <custom-ident> values */ grid-column-
end: somegridarea; /* <integer> + <custom-ident> values */ grid-column-
end: 2; grid-column-
end: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-column-
end: span 3; grid-column-
end: span somegridarea; grid-column-
end: 5 somegridarea span; /* global values */ grid-column-
end: inherit; grid-column-
end: initial; grid-column-
end: unset; values auto is a keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
...And 7 more matches
grid-row-end - CSS: Cascading Style Sheets
the grid-row-
end css property specifies a grid item’s
end position within the grid row by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the inline-
end edge of its grid area.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword value */ grid-row-
end: auto; /* <custom-ident> values */ grid-row-
end: somegridarea; /* <integer> + <custom-ident> values */ grid-row-
end: 2; grid-row-
end: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-row-
end: span 3; grid-row-
end: span somegridarea; grid-row-
end: 5 somegridarea span; /* global values */ grid-row-
end: inherit; grid-row-
end: initial; grid-row-
end: unset; values auto is a keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
...And 7 more matches
image-rendering - CSS: Cascading Style Sheets
the image-r
endering css property sets an image scaling algorithm.
... the property applies to an element itself, to any images set in its other properties, and to its desc
endants.
...for example, if the natural size of an image is 100×100px, but its actual dimensions are 200×200px (or 50×50px), then the image will be upscaled (or downscaled) using the algorithm specified by image-r
endering.
...And 7 more matches
text-rendering - CSS: Cascading Style Sheets
the text-r
endering css property provides information to the r
endering engine about what to optimize for when r
endering text.
... /* keyword values */ text-r
endering: auto; text-r
endering: optimizespeed; text-r
endering: optimizelegibility; text-r
endering: geometricprecision; /* global values */ text-r
endering: inherit; text-r
endering: initial; text-r
endering: unset; note: the text-r
endering property is an svg property that is not defined in any css standard.
... optimizespeed the browser emphasizes r
endering speed over legibility and geometric precision when drawing text.
...And 7 more matches
Appendix E: DOM Building and Insertion (HTML & XUL) - Archive of obsolete content
if (array.isarray(elemnameorarray)) { var frag = doc.createdocumentfragment(); array.foreach(arguments, function(thiselem) { frag.app
endchild(tag.apply(null, thiselem)); }); return frag; } // single element?
...they're not in any namespace) elem.setattributens(attrns.namespace || "", attrns.shortname, val); } } // create and app
end this element's children var childelems = array.slice(arguments, 2); childelems.foreach(function(childelem) { if (childelem != null) { elem.app
endchild( childelem instanceof doc.defaultview.node ?
...event listeners can be defined on the given nodes by passing functions rather than strings to on* attributes: var href = "http://www.google.com/"; var text = "google"; var nodes = {}; document.documentelement.app
endchild( jsontodom(["xul:hbox", {}, ["div", {}, ["a", { href: href, key: "link", onclick: function (event) { alert(event.target.href); } }, text], ["span", { class: "stuff" }, "stuff"]]], document, nodes)); alert(nodes.link); function addentrytopopup(menupopup, doc, chromewindow) { var newitem = do...
...And 6 more matches
nsDependentCString external
class declaration method overview constructors rebind get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind ...
... findchar rfindchar app
endint tointeger base classes nscstring_external data members no public members.
... methods constructors void nsdep
endentcstring_external() - source void nsdep
endentcstring_external(const char*, pruint32) - source parameters char* adata pruint32 alength rebind void rebind(const char*, pruint32) - source parameters char* adata pruint32 alength get char* get() const - source operator= nscstring_external& operator=(const nscstring_external&) - source parameters nscstring_external& astring nsacstring& operator=(const nsacstring&) - source parameters nsacstring& astring nsacstring& operator=(const char*) - source parameters cha...
...And 6 more matches
nsDependentCSubstring external
class declaration method overview constructors rebind beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral operator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar rfin...
...dchar app
endint tointeger base classes nscstringcontainer data members no public members.
... methods constructors void nsdep
endentcsubstring_external() - source void nsdep
endentcsubstring_external(const char*, pruint32) - source parameters char* astart pruint32 alength void nsdep
endentcsubstring_external(const nsacstring&, pruint32) - source parameters nsacstring& astr pruint32 astartpos void nsdep
endentcsubstring_external(const nsacstring&, pruint32, pruint32) - source parameters nsacstring& astr pruint32 astartpos pruint32 alength rebind void rebind(const char*, pruint32) - source parameters char* astart pruint32 alength beginreading pruint32 beginreading(const ...
...And 6 more matches
GlobalEventHandlers.ondragend - Web APIs
a global event handler for the drag
end event.
... syntax var drag
endhandler = targetelement.ondrag
end; return value drag
endhandler the drag
end event handler for element targetelement.
... example this example shows two ways to use the ondrag
end attribute handler to set an element's drag
end event handler.
...And 6 more matches
GlobalEventHandlers.ontransitionend - Web APIs
the ontransition
end property of the globaleventhandlers mixin is an eventhandler that processes transition
end events.
... the transition
end event is sent to when a css transition completes.
... if the transition is removed from its target node before the transition completes execution, the transition
end event won't be generated.
...And 6 more matches
ParentNode.append() - Web APIs
the parentnode.app
end() method inserts a set of node objects or domstring objects after the last child of the parentnode.
... differences from node.app
endchild(): parentnode.app
end() allows you to also app
end domstring objects, whereas node.app
endchild() only accepts node objects.
... parentnode.app
end() has no return value, whereas node.app
endchild() returns the app
ended node object.
...And 6 more matches
RTCDTMFSender.toneBuffer - Web APIs
the rtcdtmfs
ender interface's tonebuffer property returns a string containing a list of the dtmf tones currently queued for s
ending to the remote peer over the rtcpeerconnection.
... syntax var tonebuffer = rtcdtmfs
ender.tonebuffer; value a domstring listing the tones to be played.
... if the string is empty, there are no tones p
ending.
...And 6 more matches
RTCDTMFSender - Web APIs
the rtcdtmfs
ender interface provides a mechanism for transmitting dtmf codes on a webrtc rtcpeerconnection.
... you gain access to the connection's rtcdtmfs
ender through the rtcrtps
ender.dtmf property on the audio track you wish to s
end dtmf with.
...ill="#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/rtcdtmfs
ender" target="_top"><rect x="151" y="1" width="130" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="216" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">rtcdtmfs
ender</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties rtcdtmfs
ender.to...
...And 6 more matches
RTCRtpSender.setParameters() - Web APIs
the setparameters() method of the rtcrtps
ender interface applies changes the configuration of s
ender's track, which is the mediastreamtrack for which the rtcrtps
ender is responsible.
... syntax var promise = rtcrtps
ender.setparameters(parameters) parameters parameters an object conforming with the rtcrtps
endparameters dictionary, specifying options for the rtcrtps
ender; these include potential codecs that could be use for encoding the s
ender's track.
... return value a promise that resolves when the rtcrtps
ender.track property is updated with the given parameters.
...And 6 more matches
WEBGL_debug_renderer_info - Web APIs
the webgl_debug_r
enderer_info extension is part of the webgl api and exposes two constants with information about the graphics driver for debugging purposes.
... dep
ending on the privacy settings of the browser, this extension might only be available to privileged contexts.
...the webglr
enderingcontext.getparameter() method can help you to detect which features are supported and the failifmajorperformancecaveat context attribute lets you control if a context should be returned at all, if the performance would be dramatically slow.
...And 6 more matches
WebGLRenderingContext.getFramebufferAttachmentParameter() - Web APIs
the webglr
enderingcontext.getframebufferattachmentparameter() method of the webgl api returns information about a framebuffer's attachment.
...possible values: gl.framebuffer: collection buffer data storage of color, alpha, depth and stencil buffers used to r
ender an image.
...used as a destination for drawing, r
endering, clearing, and writing operations.
...And 6 more matches
WebGLRenderingContext.getParameter() - Web APIs
the webglr
enderingcontext.getparameter() method of the webgl api returns a value for the passed parameter name.
... return value dep
ends on the parameter.
... parameter names webgl 1 you can query the following pname parameters when using a webglr
enderingcontext.
...And 6 more matches
WebGLRenderingContext.vertexAttribPointer() - Web APIs
the webglr
enderingcontext.vertexattribpointer() method of the webgl api binds the buffer currently bound to gl.array_buffer to a generic vertex attribute of the current vertex buffer object and specifies its layout.
... description let's assume we want to r
ender some 3d geometry, and for that we will need to supply our vertices to the vertex shader.
... the maximum number of vertex attributes dep
ends on the graphics card, and you can call gl.getparameter(gl.max_vertex_attribs) to get this value.
...And 6 more matches
XRSession.updateRenderState() - Web APIs
the updater
enderstate() method of the xrsession interface of webxr api schedules changes to be applied to the active r
ender state prior to r
endering of the next frame.
... syntax xrsession.updater
enderstate(newstate) parameters newstate an object conforming to the xrr
enderstateinit dictionary specifying the properties of the session's r
enderstate to update before r
endering the next frame.
... depthfar optional a floating-point value specifying the distance in meters from the viewer to the far clip plane, which is a plane parallel to the display surface beyond which no further r
endering will occur.
...And 6 more matches
border-block-end - CSS: Cascading Style Sheets
the border-block-
end css property is a shorthand property for setting the individual logical block-
end border property values in a single place in the style sheet.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: border-block-
end-color border-block-
end-style border-block-
end-width syntax border-block-
end: 1px; border-block-
end: 2px dotted; border-block-
end: medium dashed blue; border-block-
end can be used to set the values for one or more of border-block-
end-width, border-block-
end-style, and border-block-
end-color.
...And 6 more matches
<legend> - HTML: Hypertext Markup Language
the html <leg
end> element represents a caption for the content of its parent <fieldset>.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 6 more matches
RTCPeerConnection.pendingRemoteDescription - Web APIs
the read-only property rtcpeerconnection.p
endingremotedescription returns an rtcsessiondescription object describing a p
ending configuration change for the remote
end of the connection.
...use rtcpeerconnection.currentremotedescription or rtcpeerconnection.remotedescription to get the current session description for the remote
endpoint.
... for details on the difference, see p
ending and current descriptions in webrtc connectivity.
...And 5 more matches
RTCRtpSendParameters.encodings - Web APIs
the rtcrtps
endparameters dictionary's encodings property is an rtcrtpencodingparameters object providing configuration settings for the encoder being used for the rtcrtps
ender's track.
... syntax s
endparameters.encodings = encodingparameterlist; encodingparameterlist = s
endparameters.encodings; value an array of objects conforming to the rtcrtpencodingparameters dictionary, each of which contains properties which provide settings and parameters that describe and configure a single codec that could be used to encode the track.
...that is, for rtp s
enders, the encoding is currently being used to s
end data, while for receivers, the encoding is being used to decode received data.
...And 5 more matches
RTCRtpSender.setStreams() - Web APIs
the rtcrtps
ender method setstreams() associates the s
ender's track with the specified mediastream or array of mediastream objects.
... syntax rtcrtps
ender.setstreams(mediastream); rtcrtps
ender.setstreams([mediastream...]); parameters mediastream or [mediastream...] optional an mediastream object—or an array of multiple mediastream objects—identifying the streams to which the rtcrtps
ender's track belongs.
... exceptions invalidstateerror the s
ender's connection is closed.
...And 5 more matches
RTCRtpSender.transport - Web APIs
the read-only transport property of an rtcrtps
ender object provides the rtcdtlstransport object used to interact with the underlying transport over which the s
ender is exchanging real-time transport control protocol (rtcp) packets.
... this transport is responsible for receiving the data for the media on the s
ender's track.
... syntax let transport = rtcrtps
ender.transport; value an rtcdtlstransport object representing the underlying transport being used by the s
ender to exchange packets with the remote peer, or null if the s
ender isn't yet connected to a transport.
...And 5 more matches
XMLHttpRequest.send() - Web APIs
the xmlhttprequest method s
end() s
ends the request to the server.
... s
end() accepts an optional parameter which lets you specify the request's body; this is primarily used for requests such as put.
... syntax xmlhttprequest.s
end(body) parameters body optional a body of data to be sent in the xhr request.
...And 5 more matches
XMLHttpRequest.sendAsBinary() - Web APIs
the obsolete xmlhttprequest method s
endasbinary() is a variant of the s
end() method that s
ends binary data.
... the s
end() method now supports binary data and should now be used instead.
...you should instead simply use the s
end() method, which now supports binary data in various forms.
...And 5 more matches
Descendant combinator - CSS: Cascading Style Sheets
the desc
endant combinator — typically represented by a single space ( ) character — combines two selectors such that elements matched by the second selector are selected if they have an ancestor (parent, parent's parent, parent's parent's parent, etc) element matching the first selector.
... selectors that utilize a desc
endant combinator are called desc
endant selectors.
... /* list items that are desc
endants of the "my-things" list */ ul.my-things li { margin: 2em; } the desc
endant combinator is technically one or more css white space characters — the space character and/or one of four control characters: carriage return, form feed, new line, and tab characters — between two selectors in the absence of another combinator.
...And 5 more matches
background-blend-mode - CSS: Cascading Style Sheets
the background-bl
end-mode css property sets how an element's background images should bl
end with each other and with the element's background color.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... bl
ending modes should be defined in the same order as the background-image property.
...And 5 more matches
border-inline-end - CSS: Cascading Style Sheets
the border-inline-
end css property is a shorthand property for setting the individual logical inline-
end border property values in a single place in the style sheet.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: border-inline-
end-color border-inline-
end-style border-inline-
end-width syntax border-inline-
end: 1px; border-inline-
end: 2px dashed; border-inline-
end: medium dashed blue; the physical border to which border-inline-
end maps dep
ends on the element's writing mode, directionality, and text orientation.
...And 5 more matches
extends - JavaScript
the ext
ends keyword is used in class declarations or class expressions to create a class that is a child of another class.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax class childclass ext
ends parentclass { ...
...And 5 more matches
String.prototype.trimEnd() - JavaScript
the trim
end() method removes whitespace from the
end of a string.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.trim
end(); str.trimright(); return value a new string representing the calling string stripped of whitespace from its (right)
end.
...And 5 more matches
marker-end - SVG: Scalable Vector Graphics
the marker-
end attribute defines the arrowhead or polymarker that will be drawn at the final vertex of the given shape.
...in this case, if the value of marker-start and marker-
end are both not none, then two markers will be r
endered on that final vertex.
...marker-
end is only r
endered on the final vertex of the path data.
...And 5 more matches
Endianness - MDN Web Docs Glossary: Definitions of Web-related terms
endian and
endianness (or "byte-order") describe how computers organize the bytes that make up numbers.
...by far the most common ordering of multiple bytes in one number is the little-
endian, which is used on all intel processors.
... little-
endian means storing bytes in order of least-to-most-significant (where the least significant byte takes the first or lowest address), comparable to a common european way of writing dates (e.g., 31 december 2050).
...And 4 more matches
Front-end web developer - Learn web development
welcome to our front-
end web developer learning pathway!
... here we provide you with a structured course that will teach you all you need to know to become a front-
end web developer.
... if you are not sure if front-
end web development is for you, and/or you want a gentle introduction before starting a longer and more complete course, work through our getting started with the web module first.
...And 4 more matches
JS_ClearPendingException
clear the currently p
ending exception in a context.
... syntax void js_clearp
endingexception(jscontext *cx); name type description cx jscontext * the context in which the exception was thrown.
... description js_clearp
endingexception cancels the currently p
ending exception in cx, if any.
...And 4 more matches
JS_ReportPendingException
forward the current p
ending exception in a given jscontext to the current jserrorreporter callback.
... syntax bool js_reportp
endingexception(jscontext *cx); name type description cx jscontext * the context in which the exception was thrown.
... description if an exception is p
ending in the context cx, js_reportp
endingexception converts the exception to a string and reports it to the current error reporter.
...And 4 more matches
CanvasRenderingContext2D.createLinearGradient() - Web APIs
the canvasr
enderingcontext2d.createlineargradient() method of the canvas 2d api creates a gradient along the line connecting two given coordinates.
... syntax canvasgradient ctx.createlineargradient(x0, y0, x1, y1); the createlineargradient() method is specified by four parameters defining the start and
end points of the gradient line.
... x1 the x-axis coordinate of the
end point.
...And 4 more matches
CanvasRenderingContext2D.createRadialGradient() - Web APIs
the canvasr
enderingcontext2d.createradialgradient() method of the canvas 2d api creates a radial gradient using the size and coordinates of two circles.
... syntax canvasgradient ctx.createradialgradient(x0, y0, r0, x1, y1, r1); the createradialgradient() method is specified by six parameters, three defining the gradient's start circle, and three defining the
end circle.
... x1 the x-axis coordinate of the
end circle.
...And 4 more matches
CanvasRenderingContext2D.drawWindow() - Web APIs
the deprecated, non-standard and internal only canvasr
enderingcontext2d.drawwindow() method of the canvas 2d api r
enders a region of a window into the canvas.
... the contents of the window's viewport are r
endered, ignoring viewport clipping and scrolling.
... syntax void ctx.drawwindow(window, x, y, w, h, bgcolor [, flags]); parameters window the window to r
ender.
...And 4 more matches
CanvasRenderingContext2D.fillText() - Web APIs
the canvasr
enderingcontext2d method filltext(), part of the canvas 2d api, draws a text string at the specified coordinates, filling the string's characters with the current fillstyle.
... an optional parameter allows specifying a maximum width for the r
endered text, which the user agent will achieve by condensing the text or by using a lower font size.
... the text is r
endered using the font and text layout configuration as defined by the font, textalign, textbaseline, and direction properties.
...And 4 more matches
CanvasRenderingContext2D.lineTo() - Web APIs
the canvasr
enderingcontext2d method lineto(), part of the canvas 2d api, adds a straight line to the current sub-path by connecting the sub-path's last point to the specified (x, y) coordinates.
... like other methods that modify the current path, this method does not directly r
ender anything.
... syntax ctx.lineto(x, y); parameters x the x-axis coordinate of the line's
end point.
...And 4 more matches
CanvasRenderingContext2D.quadraticCurveTo() - Web APIs
the canvasr
enderingcontext2d.quadraticcurveto() method of the canvas 2d api adds a quadratic bézier curve to the current sub-path.
... it requires two points: the first one is a control point and the second one is the
end point.
... x the x-axis coordinate of the
end point.
...And 4 more matches
EXT_float_blend - Web APIs
the webgl api's ext_float_bl
end extension allows bl
ending and draw buffers with 32-bit floating-point components.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
...doing so automatically enables ext_float_bl
end as well.
...And 4 more matches
EffectTiming.endDelay - Web APIs
the
enddelay property of the effecttiming dictionary (part of the web animations api) indicates the number of milliseconds to delay after the active period of an animation sequence.
... the animation's
end time—the time at which an iteration is considered to have finished—is the time at which the animation finishes an iteration (its initial delay, animationeffecttimingreadonly.delay, plus its duration,duration, plus its
end delay.
... this is useful for sequencing animations based on the
end time of another animation; note, however, that many of the sequence effectst that will benefit most from this property have not been defined in the specification yet.
...And 4 more matches
FormData.append() - Web APIs
the app
end() method of the formdata interface app
ends a new value onto an existing key inside a formdata object, or adds the key if it does not already exist.
... the difference between formdata.set and app
end() is that if the specified key already exists, formdata.set will overwrite all existing values with the new one, whereas app
end() will app
end the new value onto the
end of the existing set of values.
... syntax there are two versions of this method: a two and a three parameter version: formdata.app
end(name, value); formdata.app
end(name, value, filename); parameters name the name of the field whose data is contained in value.
...And 4 more matches
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.on
ended usage notes
ended events fire when the media stream track's source permanently stops s
ending data on the stream.
... there are various ways this can happen, including: there is no more data left to s
end.
...And 4 more matches
ParentNode.prepend() - Web APIs
the parentnode.prep
end() method inserts a set of node objects or domstring objects before the first child of the parentnode.
... syntax parentnode.prep
end(...nodestoprep
end); parameters nodestoprep
end one or more nodes to insert before the first child node currently in the parentnode.
... examples prep
ending an element var parent = document.createelement("div"); var p = document.createelement("p"); var span = document.createelement("span"); parent.app
end(p); parent.prep
end(span); console.log(parent.childnodes); // nodelist [ <span>, <p> ] prep
ending text var parent = document.createelement("div"); parent.app
end("some text"); parent.prep
end("headline: "); console.log(parent.textcontent); // "headline: some text" app
ending an element and text var parent = document.createelement("div"); var p = document.createelement("p"); parent.prepe...
...And 4 more matches
PerformanceResourceTiming.domainLookupEnd - Web APIs
the domainlookup
end read-only property returns the timestamp immediately after the browser finishes the domain name lookup for the resource.
... if the user agent has the domain information in cache, domainlookupstart and domainlookup
end represent the times when the user agent starts and
ends the domain data retrieval from the cache.
... syntax resource.domainlookup
end; return value a domhighrestimestamp representing the time immediately after the browser finishes the domain name lookup for the resource.
...And 4 more matches
RTCDTMFSender.insertDTMF() - Web APIs
the insertdtmf() method on the rtcdtmfs
ender interface starts s
ending dtmf tones to the remote peer over the rtcpeerconnection.
... s
ending of the tones is performed asynchronously, with tonechange events sent to the rtcdtmfs
ender every time a tone starts or
ends.
... as long as the connection is active, you can s
end tones at any time.
...And 4 more matches
RTCRtpSender.replaceTrack() - Web APIs
the rtcrtps
ender method replacetrack() replaces the track currently being used as the s
ender's source with a new mediastreamtrack.
... syntax trackreplacedpromise = s
ender.replacetrack(newtrack); parameters newtrack optional a mediastreamtrack specifying the track with which to replace the rtcrtps
ender's current source track.
... if newtrack was omitted or was null, replacetrack() simply stops the s
ender.
...And 4 more matches
SVGAnimationElement: endEvent event - Web APIs
the
endevent event of the svganimationelement interface is fired when at the active
end of the animation is reached.
... note: this event is not raised at the simple
end of each animation repeat.
...scheduled or interactive) timeline play, as well as in the case that the element was
ended with a dom method.
...And 4 more matches
SourceBuffer.appendWindowStart - Web APIs
the app
endwindowstart property of the sourcebuffer interface controls the timestamp for the start of the app
end window, a timestamp range that can be used to filter what media data is app
ended to the sourcebuffer.
... coded media frames with timestamps wthin this range will be app
ended, whereas those outside the range will be filtered out.
... the default value of app
endwindowstart is the presentation start time, which is the beginning time of the playable media.
...And 4 more matches
WebGL2RenderingContext.getInternalformatParameter() - Web APIs
the webgl2r
enderingcontext.getinternalformatparameter() method of the webgl 2 api returns information about implementation-dep
endent support for internal formats.
... syntax any gl.getinternalformatparameter(target, internalformat, pname); parameters target a glenum specifying the target r
enderbuffer object.
... possible values: gl.r
enderbuffer: buffer data storage for single images in a r
enderable internal format.
...And 4 more matches
XRRenderState - Web APIs
the xrr
enderstate interface of the webxr device api contains configurable values which affect how the imagery generated by an xrsession gets composited.
... these properties include the range of distances from the viewer within which content should be r
endered, the vertical field of view (for inline presentations), and a reference to the xrwebgllayer being used as the target for r
endering the scene prior to it being presented on the xr device's display or displays.
... when you apply changes using the xrsession method updater
enderstate(), the specified changes take effect after the current animation frame has completed, but before the next one begins.
...And 4 more matches
XRSession.onsqueezeend - Web APIs
the xrsession interface's onsqueeze
end event handler property is a function to be invokedn when the squeeze
end event sent to an xrsession when a primary squeeze action
ends.
...the squeeze
end event handler is where you handle closing out a squeeze action whether it was successfully completed or not.
... syntax xrsession.onsqueeze
end = squeeze
endhandlerfunction; value a function to be invoked whenever the xrsession receives a squeezestart event, indicating the
ending of a primary squeeze action.
...And 4 more matches
scroll-margin-inline-end - CSS: Cascading Style Sheets
the scroll-margin-inline-
end property defines the margin of the scroll snap area at the
end of the inline dimension that is used for snapping this box to the snapport.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <length> values */ scroll-margin-inline-
end: 10px; scroll-margin-inline-
end: 1em; /* global values */ scroll-margin-inline-
end: inherit; scroll-margin-inline-
end: initial; scroll-margin-inline-
end: unset; values <length> an outset from the inline
end edge of the scroll container.
...And 4 more matches
String.prototype.endsWith() - JavaScript
the
endswith() method determines whether a string
ends with the characters of a specified string, returning true or false as appropriate.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.
endswith(searchstring[, length]) parameters searchstring the characters to be searched for at the
end of str.
...And 4 more matches
color-rendering - SVG: Scalable Vector Graphics
the color-r
endering attribute provides a hint to the svg user agent about how to optimize its color interpolation and compositing operations.
... color-r
endering takes precedence over color-interpolation-filters.
... for example, assume color-r
endering: optimizespeed and color-interpolation-filters: linearrgb.
...And 4 more matches
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
ext
ending traditional hypertext navigation the hypertext approach to developing web pages, in which developers format text layouts into pages and link those pages to related content, is analogous to a book or a magazine: readers view pages, go to other pages for more information, and view resources listed as references on that page.
...forms with nested selects in today's web pages it is common to see selects where content is dep
endent on the selection made on another select.
...in general, when a webmail account has more than a few messages, clicking 'next page' s
ends a request to the server.
...And 3 more matches
Crisp pixel art look with image-rendering - Game development
but since today's screens r
ender content at high resolutions, there is a problem with making sure the pixel art does not look blurry.
... original size 4x size 4x size (scaled with an image editor) none v
endor's algorithm nearest-neighbor algorithm a css-based solution the good news is that you can use css to automatically do the up-scaling, which not only solves the blur problem, but also allows you to use the images in their original, smaller size, thus saving download time.
... the css property to achieve this scaling is image-r
endering.
...And 3 more matches
Vendor Prefix - MDN Web Docs Glossary: Definitions of Web-related terms
browser v
endors sometimes add prefixes to experimental or nonstandard css properties and javascript apis, so developers can experiment with new ideas while—in theory—preventing their experiments from being relied upon and then breaking web developers' code during the standardization process.
... browser v
endors are working to stop using v
endor prefixes for experimental features.
...this has made it more difficult for browser v
endors to ensure compatibility and to work on new features; it's also been harmful to smaller browsers who wind up forced to add other browsers' prefixes in order to load popular web sites.
...And 3 more matches
nsIMsgSendLater
the nsimsgs
endlater interface provides functions for managing the unsent folder of a messaging account.
... inherits from: nsistreamlistener implemented by: @mozilla.org/messengercompose/s
endlater;1.
... to create an instance, use var msgs
endlater = components.classes["@mozilla.org/messengercompose/s
endlater;1"] .getservice(components.interfaces.nsimsgs
endlater); method overview void s
endunsentmessages(in nsimsgidentity identity); void removelistener(in nsimsgs
endlaterlistener listener); void addlistener(in nsimsgs
endlaterlistener listener); nsimsgfolder getunsentmessagesfolder](in nsimsgidentity identity); attributes attribute type description msgwindow nsimsgwindow methods s
endunsentmessages() s
ends all unsent messages for an identity.
...And 3 more matches
AudioBufferSourceNode.loopEnd - Web APIs
the loop
end 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.
... syntax audiobuffersourcenode.loop
end =
endoffsetinseconds; var
endoffsetinseconds = audiobuffersourcenode.loop
end; value a floating-point number indicating the offset, in seconds, into the audio buffer at which each loop will loop return to the beginning of the loop (that is, the current play time gets reset to audiobuffersourcenode.loopstart).
...buttons are provided to play and stop the audio playback, and slider controls are used to change the playbackrate, loopstart and loop
end properties on the fly.
...And 3 more matches
CanvasRenderingContext2D.ellipse() - Web APIs
the canvasr
enderingcontext2d.ellipse() method of the canvas 2d api adds an elliptical arc to the current sub-path.
... syntax void ctx.ellipse(x, y, radiusx, radiusy, rotation, startangle,
endangle [, anticlockwise]); the ellipse() method creates an elliptical arc centered at (x, y) with the radii radiusx and radiusy.
... the path starts at startangle and
ends at
endangle, and travels in the direction given by anticlockwise (defaulting to clockwise).
...And 3 more matches
CanvasRenderingContext2D.lineJoin - Web APIs
the canvasr
enderingcontext2d.linejoin property of the canvas 2d api determines the shape used to join two line segments where they meet.
...degenerate segments with a length of zero (i.e., with all
endpoints and control points at the exact same position) are also ignored.
... "round" rounds off the corners of a shape by filling an additional sector of disc centered at the common
endpoint of connected segments.
...And 3 more matches
CanvasRenderingContext2D.strokeText() - Web APIs
the canvasr
enderingcontext2d method stroketext(), part of the canvas 2d api, strokes — that is, draws the outlines of — the characters of a text string at the specified coordinates.
... an optional parameter allows specifying a maximum width for the r
endered text, which the user agent will achieve by condensing the text or by using a lower font size.
... syntax canvasr
enderingcontext2d.stroketext(text, x, y [, maxwidth]); parameters text a domstring specifying the text string to r
ender into the context.
...And 3 more matches
Document: transitionend event - Web APIs
the transition
end event is fired when a css transition has completed.
... bubbles yes cancelable yes interface transitionevent event handler property ontransition
end the transition
end 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.
...if the transitioncancel event is fired, the transition
end event will not fire.
...And 3 more matches
GlobalEventHandlers.ontouchend - Web APIs
a global event handler for the touch
end event.
...it is specified in the touch events – level 2 draft specification and not in touch events recomm
endation.
... syntax var
endhandler = targetelement.ontouch
end; return value
endhandler the touch
end event handler for element targetelement.
...And 3 more matches
HTMLMediaElement: ended event - Web APIs
the
ended event is fired when playback or streaming has stopped because the
end of the media was reached or because no further data is available.
... this event occurs based upon htmlmediaelement (<audio> and <video>) fire
ended when playback of the media reaches the
end of the media.
... bubbles no cancelable no interface event target element default action none event handler property globaleventhandlers.on
ended 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.
...And 3 more matches
Headers.append() - Web APIs
the app
end() method of the headers interface app
ends a new value onto an existing header inside a headers object, or adds the header if it does not already exist.
... the difference between set() and app
end() is that if the specified header already exists and accepts multiple values, set() will overwrite the existing value with the new one, whereas app
end() will app
end the new value onto the
end of the set of values.
... syntax myheaders.app
end(name, value); parameters name the name of the http header you want to add to the headers object.
...And 3 more matches
MediaStreamTrack.onended - Web APIs
the mediastreamtrack.on
ended event handler is used to specify a function which serves as an eventhandler to be called when the
ended event occurs on the track.
... this event occurs when the track will no longer provide data to the stream for any reason, including the
end of the media input being reached, the user revoking needed permissions, the source device being removed, or the remote peer
ending a connection.
... syntax mediastreamtrack.on
ended = function; value a function to serve as an eventhandler for the
ended event.
...And 3 more matches
OfflineAudioCompletionEvent.renderedBuffer - Web APIs
the r
enderedbuffer read-only property of the offlineaudiocompletionevent interface is an audiobuffer containing the result of processing an offlineaudiocontext.
... syntax var buffer = offlineaudiocompletioneventinstance.r
enderedbuffer; value an audiobuffer.
... specifications specification status comment web audio apithe definition of 'r
enderedbuffer' in that specification.
...And 3 more matches
OfflineAudioContext.suspend() - Web APIs
the susp
end() method of the offlineaudiocontext interface schedules a suspension of the time progression in the audio context at the specified time and returns a promise.
... note that the maximum precision of suspension is the size of the r
ender quantum and the specified suspension time will be rounded down to the nearest r
ender quantum boundary.
... for this reason, it is not allowed to schedule multiple susp
ends at the same quantized frame.
...And 3 more matches
PerformanceResourceTiming.connectEnd - Web APIs
the connect
end read-only property returns the timestamp immediately after the browser finishes establishing the connection to the server to retrieve the resource.
... syntax resource.connect
end; return value a domhighrestimestamp representing the time after a connection is established.
... example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
...And 3 more matches
PerformanceResourceTiming.redirectEnd - Web APIs
the redirect
end read-only property returns a timestamp immediately after receiving the last byte of the response of the last redirect.
... syntax resource.redirect
end; return value a timestamp immediately after receiving the last byte of the response of the last redirect.
... example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
...And 3 more matches
PerformanceResourceTiming.responseEnd - Web APIs
the response
end read-only property returns a timestamp immediately after the browser receives the last byte of the resource or immediately before the transport connection is closed, whichever comes first.
... syntax resource.response
end; return value a domhighrestimestamp immediately after the browser receives the last byte of the resource or immediately before the transport connection is closed, whichever comes first.
... example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
...And 3 more matches
RTCRtpSender.getParameters() - Web APIs
the getparameters() method of the rtcrtps
ender interface returns an rtcrtps
endparameters object describing the current configuration for the encoding and transmission of media on the s
ender's track.
... syntax var rtps
endparameters = rtps
ender.getparameters() parameters none.
... return value an rtcrtps
endparameters object indicating the current configuration of the s
ender.
...And 3 more matches
RTCRtpSender.getStats() - Web APIs
the rtcrtps
ender method getstats() asynchronously requests an rtcstatsreport object which provides statistics about outgoing traffic on the rtcpeerconnection which owns the s
ender, returning a promise which is fulfilled when the results are available.
... syntax var promise = rtcrtps
ender.getstats(); return value a javascript promise which is fulfilled once the statistics are available.
... the returned rtcstatsreport accumulates the statistics for all of the streams being sent using the rtcrtps
ender, as well as the statistics for any dep
endencies those streams have.
...And 3 more matches
Range.endOffset - Web APIs
the range.
endoffset read-only property returns a number representing where in the range.
endcontainer the range
ends.
... if the
endcontainer is a node of type text, comment, or cdatasection, then the offset is the number of characters from the start of the
endcontainer to the boundary point of the range.
... for other node types, the
endoffset is the number of child nodes between the start of the
endcontainer and the boundary point of the range.
...And 3 more matches
Selection.extend() - Web APIs
the selection.ext
end() method moves the focus of the selection to a specified point.
... syntax sel.ext
end(node, offset) parameters node the node within which the focus will be moved.
... specifications specification status comment selection apithe definition of 'selection.ext
end()' in that specification.
...And 3 more matches
SourceBuffer.appendBufferAsync() - Web APIs
the app
endbufferasync() method of the sourcebuffer interface begins the process of asynchronously app
ending media segment data from an arraybuffer or arraybufferview object to the sourcebuffer.
... it returns a promise which is fulfilled once the buffer has been app
ended.
... syntax app
endpromise = sourcebuffer.app
endbufferasync(source); parameters source a buffersource (that is, either an arraybufferview or arraybuffer) which contains the media segment data you want to add to the sourcebuffer.
...And 3 more matches
WebGLRenderingContext.checkFramebufferStatus() - Web APIs
the webglr
enderingcontext.checkframebufferstatus() method of the webgl api returns the completeness status of the webglframebuffer object.
...possible values: gl.framebuffer: collection buffer data storage of color, alpha, depth and stencil buffers used to r
ender an image.
...used as a destination for drawing, r
endering, clearing, and writing operations.
...And 3 more matches
WebGLRenderingContext.getSupportedExtensions() - Web APIs
the webglr
enderingcontext.getsupportedextensions() method returns a list of all the supported webgl extensions.
... examples var canvas = document.getelementbyid('canvas'); gl = canvas.getcontext('webgl'); var extensions = gl.getsupportedextensions(); // array [ 'angle_instanced_arrays', 'ext_bl
end_minmax', ...
... ] see also the webglr
enderingcontext.getextension() method to get a specific extension object.
...And 3 more matches
WebSocket.send() - Web APIs
the websocket.s
end() method enqueues the specified data to be transmitted to the server over the websocket connection, increasing the value of bufferedamount by the number of bytes needed to contain the data.
... syntax websocket.s
end("hello server!"); parameters data the data to s
end to the server.
... arraybuffer you can s
end the underlying binary data used by a typed array object; its binary data contents are queued in the buffer, increasing the value of bufferedamount by the requisite number of bytes.
...And 3 more matches
Window: transitionend event - Web APIs
the transition
end event is fired when a css transition has completed.
... bubbles yes cancelable yes interface transitionevent event handler property ontransition
end the transition
end 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.
...if the transitioncancel event is fired, the transition
end event will not fire.
...And 3 more matches
XRRenderState.baseLayer - Web APIs
the read-only baselayer property of the xrr
enderstate interface returns the xrwebgllayer instance that is the source of bitmap images and a description of how the image is to be r
endered in the device.
... this property is read-only; however, you can indirectly change its value using xrsession.updater
enderstate.
... syntax var xrwebgllayer = xrr
enderstate.baselayer; value a xrwebgllayer object which is used as the source of the world's contents when r
endering each frame of the scene.
...And 3 more matches
XRRenderStateInit - Web APIs
the xrr
enderstateinit dictionary is a writeable version of the xrr
enderstate interface, and is used when calling an xrsession's updater
enderstate() method to apply changes to the r
ender state prior to r
endering the next frame.
... depthfar optional a floating-point value specifying the distance in meters from the viewer to the far clip plane, which is a plane parallel to the display surface beyond which no further r
endering will occur.
... all r
endering will take place between the distances specified by depthnear and depthfar.
...And 3 more matches
XRSession: selectend event - Web APIs
the webxr event select
end is sent to an xrsession when one of its input sources
ends its primary action or when an input source that's in the process of handling an ongoing primary action is disconnected without successfully completing the action.
... bubbles yes cancelable no interface xrinputsourceevent event handler property onselect
end for details on how the selectstart, select, and select
end events work, and how you should react to them, see primary actions in inputs and input sources.
... examples the following example uses addeventlistener() to establish handlers for the selection events: selectstart, select
end, and select.
...And 3 more matches
XRSession: squeezeend event - Web APIs
the webxr event squeeze
end is sent to an xrsession when one of its input sources
ends its primary action or when an input source that's in the process of handling an ongoing primary action is disconnected without successfully completing the action.
... bubbles yes cancelable no interface xrinputsourceevent event handler property onsqueeze
end for details on how the squeezestart, squeeze, and squeeze
end events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
... examples the following example uses addeventlistener() to establish handlers for the squeezeion events: squeezestart, squeeze
end, and squeeze.
...And 3 more matches
margin-block-end - CSS: Cascading Style Sheets
the margin-block-
end css property defines the logical block
end margin of an element, which maps to a physical margin dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <length> values */ margin-block-
end: 10px; /* an absolute length */ margin-block-
end: 1em; /* relative to the text size */ margin-block-
end: 5%; /* relative to the nearest block container's width */ /* keyword values */ margin-block-
end: auto; /* global values */ margin-block-
end: inherit; margin-block-
end: initial; margin-block-
end: unset; it corresponds to the margin-top, margin-right, margin-bottom, or margin-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...And 3 more matches
margin-inline-end - CSS: Cascading Style Sheets
the margin-inline-
end css property defines the logical inline
end margin of an element, which maps to a physical margin dep
ending on the element's writing mode, directionality, and text orientation.
... in other words, it corresponds to the margin-top, margin-right, margin-bottom or margin-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 3 more matches
padding-block-end - CSS: Cascading Style Sheets
the padding-block-
end css property defines the logical block
end padding of an element, which maps to a physical padding dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <length> values */ padding-block-
end: 10px; /* an absolute length */ padding-block-
end: 1em; /* a length relative to the text size */ /* <percentage> value */ padding-block-
end: 5%; /* a padding relative to the block container's width */ /* global values */ padding-block-
end: inherit; padding-block-
end: initial; padding-block-
end: unset; values the padding-block-
end property takes the same values as the padding-left property.
...And 3 more matches
padding-inline-end - CSS: Cascading Style Sheets
the padding-inline-
end css property defines the logical inline
end padding of an element, which maps to a physical padding dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <length> values */ padding-inline-
end: 10px; /* an absolute length */ padding-inline-
end: 1em; /* a length relative to the text size */ /* <percentage> value */ padding-inline-
end: 5%; /* a padding relative to the block container's width */ /* global values */ padding-inline-
end: inherit; padding-inline-
end: initial; padding-inline-
end: unset; values the padding-inline-
end property takes the same values as the padding-left property.
...And 3 more matches
Mobile-friendliness - Developer guides
what is mobile fri
endliness?
... mobile fri
endliness can mean a multitude of things, dep
ending on who you’re talking to.
...this makes it more essential than ever to practice good performance practices, only s
ending the user the bits they will actually need.
...And 3 more matches
String.prototype.padEnd() - JavaScript
the pad
end() method pads the current string with a given string (repeated, if needed) so that the resulting string reaches a given length.
... the padding is applied from the
end of the current string.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 3 more matches
EXT_blend_minmax - Web APIs
the ext_bl
end_minmax extension is part of the webgl api and ext
ends bl
ending capabilities by adding two new bl
end equations: the minimum or maximum color components of the source and destination colors.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants this extension adds two new constants, which can be used in webglr
enderingcontext.bl
endequation() and webglr
enderingcontext.bl
endequationseparate(): ext.min_ext produces the minimum color components of the source and destination colors.
...And 2 more matches
GlobalEventHandlers.onanimationend - Web APIs
the onanimation
end property of the globaleventhandlers mixin is the eventhandler for processing animation
end events.
... the animation
end event fires when a css animation reaches the
end of its active period (which is calculated as animation-duration * animation-iteration-count) + animation-delay).
... syntax var anim
endhandler = target.onanimation
end; target.onanimation
end = function value a function to be called when an animation
end event occurs indicating that a css animation has begun on the target, where the target object is an html element (htmlelement), document (document), or window (window).
...And 2 more matches
HTMLMediaElement.ended - Web APIs
the htmlmediaelement.
ended indicates whether the media element has
ended playback.
... syntax var is
ended = htmlmediaelement.
ended value a boolean which is true if the media contained in the element has finished playing.
... example var obj = document.createelement('video'); console.log(obj.
ended); // false specifications specification status comment html living standardthe definition of 'htmlmediaelement.
ended' in that specification.
...And 2 more matches
HTMLMediaElement: suspend event - Web APIs
the susp
end event is fired when media data loading has been susp
ended.
... bubbles no cancelable no interface event target element default action none event handler property globaleventhandlers.onsusp
end specification html5 media examples these examples add an event listener for the htmlmediaelement's susp
end event, then post a message when that event handler has reacted to the event firing.
... using addeventlistener(): const video = document.queryselector('video'); video.addeventlistener('susp
end', (event) => { console.log('data loading has been susp
ended.'); }); using the onsusp
end event handler property: const video = document.queryselector('video'); video.onsusp
end = (event) => { console.log('data loading has been susp
ended.'); }; specifications specification status html living standardthe definition of 'susp
end media event' in that specification.
...And 2 more matches
IDBOpenDBRequest - Web APIs
the idbop
endbrequest 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.
..." fill="#fff" 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">idbrequest</text></a><polyline points="251,25 261,20 261,30 251,25" stroke="#d4dde4" fill="none"/><line x1="261" y1="25" x2="291" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/idbop
endbrequest" target="_top"><rect x="291" y="1" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="371" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">idbop
endbrequest</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties also inher...
...", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }); objectstore.createindex("notified", "notified", { unique: false }); }; specifications specification status comment indexed database api 2.0the definition of 'idbop
endbrequest' in that specification.
...And 2 more matches
MediaSource.endOfStream() - Web APIs
the
endofstream() method of the mediasource interface signals the
end of the stream.
... syntax mediasource.
endofstream(
endofstreamerror); parameters
endofstreamerror optional a domstring representing an error to throw when the
end of the stream is reached.
...when you make an xmlhttprequest call for a media chunk, and onabort or onerror triggers, you might want to call
endofstream('network'), display a descriptive message in the ui, and maybe retry the network request immediately or wait until the network is back up (via some kind of polling.) decode: terminates playback and signals that a decoding error has occured.
...And 2 more matches
PaymentAddress.dependentLocality - Web APIs
the read-only dep
endentlocality property of the paymentaddress interface is a string containing a sublocality designation within a city, such as a neighborhood, borough, district, or, in the united kingdom, a dep
endent locality.
... syntax var paymentdep
endentlocality = paymentaddress.dep
endentlocality; value a domstring indicating the sublocality portion of the address.
...in the united kingdom, this is used to indicate the post town in the united kingdom (known officially by the royal mail as the dep
endent locality).
...And 2 more matches
PushSubscription.endpoint - Web APIs
the
endpoint read-only property of the pushsubscription interface returns a usvstring containing the
endpoint associated with the push subscription.
... the
endpoint takes the form of a custom url pointing to a push server, which can be used to s
end a push message to the particular service worker instance that subscribed to the push service.
... for this reason, it is a good idea to keep your
endpoint a secret, so others do not hijack it and abuse the push functionality.
...And 2 more matches
RTCRtpSender.dtmf - Web APIs
the read-only dtmf property on the rtcrtps
ender interface returns a rtcdtmfs
ender object which can be used to s
end dtmf tones over the rtcpeerconnection .
... see using dtmf for details on how to make use of the returned rtcdtmfs
ender object.
... syntax var dtmfs
ender = rtcrtps
ender.dtmf; value an rtcdtmfs
ender which can be used to s
end dtmf over the rtp session, or null if the track being carried by the rtp session or the rtcpeerconnection as a whole doesn't support dtmf.
...And 2 more matches
Range.setEndAfter() - Web APIs
the range.set
endafter() method sets the
end position of a range relative to another node.
... the parent node of
end of the range will be the same as that for the referencenode.
... syntax range.set
endafter(referencenode); parameters referencenode the node to
end the range after.
...And 2 more matches
Range.setEndBefore() - Web APIs
the range.set
endbefore() method sets the
end position of a range relative to another node.
... the parent node of
end of the range will be the same as that for the referencenode.
... syntax range.set
endbefore(referencenode); parameters referencenode the node to
end the range before.
...And 2 more matches
RenderingContext - Web APIs
r
enderingcontext is a webidl typedef which can refer to any one of the interfaces that represent a graphics r
endering context within a <canvas> element: canvasr
enderingcontext2d, webglr
enderingcontext, or webgl2r
enderingcontext.
... by using the shorthand r
enderingcontext, methods and properties which can make use of any of these interfaces can be specified and written more easily; since <canvas> supports several r
endering systems, it's helpful from a specification and browser implementation perspective to have a shorthand that means "one of these interfaces." as such, r
enderingcontext is an implementation detail, and isn't something web developers directly use.
... there is no r
enderingcontext interface, and there are no objects which implement type r
enderingcontext.
...And 2 more matches
URLSearchParams.append() - Web APIs
the app
end() method of the urlsearchparams interface app
ends a specified key/value pair as a new search parameter.
... as shown in the example below, if the same key is app
ended multiple times it will appear in the parameter string multiple times for each value.
... syntax urlsearchparams.app
end(name, value) parameters name the name of the parameter to app
end.
...And 2 more matches
WebGLRenderingContext.getExtension() - Web APIs
the webglr
enderingcontext.getextension() method enables a webgl extension.
... return value a webgl extension object, or null if name does not match (case-insensitive) to one of the strings in webglr
enderingcontext.getsupportedextensions.
...the current extensions are: angle_instanced_arrays ext_bl
end_minmax ext_color_buffer_float ext_color_buffer_half_float ext_disjoint_timer_query ext_float_bl
end 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_r
ender_mipmap oes_standard_derivatives oes_texture_float oes_texture_float_linear oes_...
...And 2 more matches
WebGLRenderingContext.pixelStorei() - Web APIs
the webglr
enderingcontext.pixelstorei() method of the webgl api specifies the pixel storage modes.
...pengl es 3.0 gl.unpack_skip_rows number of rows of pixel locations skipped before the first pixel is read from memory glint 0 0 to infinity opengl es 3.0 gl.unpack_skip_images number of pixel images skipped before the first pixel is read from memory glint 0 0 to infinity opengl es 3.0 examples setting the pixel storage mode affects the webglr
enderingcontext.readpixels() operations, as well as unpacking of textures with the webglr
enderingcontext.teximage2d() and webglr
enderingcontext.texsubimage2d() methods.
... var tex = gl.createtexture(); gl.bindtexture(gl.texture_2d, tex); gl.pixelstorei(gl.pack_alignment, 4); to check the values for packing and unpacking of pixel data, you can query the same pixel storage parameters with webglr
enderingcontext.getparameter().
...And 2 more matches
Window: animationend event - Web APIs
the animation
end event is fired when a css animation has completed.
... if the animation aborts before reaching completion, such as if the element is removed from the dom or the animation is removed from the element, the animation
end event is not fired.
... bubbles yes cancelable no interface animationevent event handler property onanimation
end the original target for this event is the element that had the animation applied.
...And 2 more matches
XRSession.renderState - Web APIs
the read-only r
enderstate property of an xrsession object indicates the returns a xrr
enderstate object describing how the user's environment which should be r
endered.
... the information provided covers the minimum and maximum distance at which to r
ender objects, the vertical field of view to use when r
endering the in the inline session mode, and the xrwebgllayer to r
ender into for inline composition.
... while this property is read only, you can call the xrsession method updater
enderstate() to make changes.
...And 2 more matches
border-block-end-color - CSS: Cascading Style Sheets
the border-block-
end-color css property defines the color of the logical block-
end border of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color, border-right-color, border-bottom-color, or border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
border-block-end-style - CSS: Cascading Style Sheets
the border-block-
end-style css property defines the style of the logical block-
end border of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style, border-right-style, border-bottom-style, or border-left-style property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
border-block-end-width - CSS: Cascading Style Sheets
the border-block-
end-width css property defines the width of the logical block-
end border of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width, border-right-width, border-bottom-width, or border-left-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
border-inline-end-color - CSS: Cascading Style Sheets
the border-inline-
end-color css property defines the color of the logical inline-
end border of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color, border-right-color, border-bottom-color, or border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
border-inline-end-style - CSS: Cascading Style Sheets
the border-inline-
end-style css property defines the style of the logical inline
end border of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style, border-right-style, border-bottom-style, or border-left-style property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
border-inline-end-width - CSS: Cascading Style Sheets
the border-inline-
end-width css property defines the width of the logical inline-
end border of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width, border-right-width, border-bottom-width, or border-left-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
inset-inline-end - CSS: Cascading Style Sheets
the inset-inline-
end css property defines the logical inline
end inset of an element, which maps to a physical inset dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the top, right, bottom, or left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <length> values */ inset-inline-
end: 3px; inset-inline-
end: 2.4em; /* <percentage>s of the width or height of the containing block */ inset-inline-
end: 10%; /* keyword value */ inset-inline-
end: auto; /* global values */ inset-inline-
end: inherit; inset-inline-
end: initial; inset-inline-
end: unset; the shorthand for inset-inline-start and inset-inline-
end is inset-inline.
...And 2 more matches
scroll-margin-block-end - CSS: Cascading Style Sheets
the scroll-margin-block-
end property defines the margin of the scroll snap area at the
end of the block dimension that is used for snapping this box to the snapport.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <length> values */ scroll-margin-block-
end: 10px; scroll-margin-block-
end: 1em; /* global values */ scroll-margin-block-
end: inherit; scroll-margin-block-
end: initial; scroll-margin-block-
end: unset; values <length> an outset from the block
end edge of the scroll container.
...And 2 more matches
scroll-padding-block-end - CSS: Cascading Style Sheets
the scroll-padding-block-
end property defines offsets for the
end edge in the block dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ scroll-padding-block-
end: auto; /* <length> values */ scroll-padding-block-
end: 10px; scroll-padding-block-
end: 1em; scroll-padding-block-
end: 10%; /* global values */ scroll-padding-block-
end: inherit; scroll-padding-block-
end: initial; scroll-padding-block-
end: unset; values <length-percentage> an inwards offset from the block
end edge of the scrollport, as a valid length or a percentage.
...And 2 more matches
scroll-padding-inline-end - CSS: Cascading Style Sheets
the scroll-padding-inline-
end property defines offsets for the
end edge in the inline dimension of the optimal viewing region of the scrollport: the region used as the target region for placing things in view of the user.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ scroll-padding-inline-
end: auto; /* <length> values */ scroll-padding-inline-
end: 10px; scroll-padding-inline-
end: 1em; scroll-padding-inline-
end: 10%; /* global values */ scroll-padding-inline-
end: inherit; scroll-padding-inline-
end: initial; scroll-padding-inline-
end: unset; values <length-percentage> an inwards offset from the inline
end edge of the scrollport, as a valid length or a percentage.
...And 2 more matches
Appendix C: Avoiding using eval in Add-ons - Archive of obsolete content
settimeout("alert('" + xhr.responsetext + "');", 100); // attacker manipulated responsetext to contain "attack!'); format_computer(); alert('done" settimeout("alert('attack!'); format_computer(); alert('done');", 100); as a general rule of thumb, just don't pass code around as strings and execute it by calling eval, settimeout and fri
ends.
... overriding/ext
ending/am
ending existing functions a common thing add-ons do during their initialization is overriding/ext
ending existing browser functions by using function.tostring/function.tosource and eval to "string-patch" the function body.
... other extensions might do something similar, trying to hook the same functions, but a little different,
ending up with completely broken code.
... overriding/ext
ending/am
ending existing objects (or object properties) again, you might be tempted to uneval(), string replace and eval() existing objects to override them (or at least some properties).
appendNotification - Archive of obsolete content
« xul reference home app
endnotification( label , value , image , priority , buttons, eventcallback ) return type: element create a new notification and display it.
...this function is passed three arguments: the <notification> the button is associated with the button description as passed to app
endnotification.
... // dep
ending on the context in which the function is being run, // this could be simplified.
... popup: null }; buttons.push(button2); //app
endnotification( label , value , image (url) , priority , buttons, eventcallback ) notifybox.app
endnotification("my notification text", "test notification unique id", "chrome://browser/content/aboutrobots-icon.png", notifybox.priority_info_high, buttons, testnotificationcallback); } ...
Descendants and Filters - Archive of obsolete content
« previousnext » accessing desc
endants in many cases, the node that you're interested in is not the direct child of the top xml element.
...operator, or by using the desc
endants property.
...that is, if there are multiple desc
endants of the requested type, an xml list is returned, instead of the normal element.
... the * selector returns all desc
endants in an xml list.
Enumerator.atEnd - Archive of obsolete content
the enumerator.at
end method returns a boolean value indicating if the enumerator is at the
end of the collection.
... syntax myenum.at
end() remarks the required myenum reference is any enumerator object.
... the at
end method returns true if the current item is the last one in the collection, the collection is empty, or the current item is undefined.
... example in following code, the at
end method is used to determine if the
end of a list of drives has been reached: function showdrives() { var s = ""; var bytespergb = 1024 * 1024 * 1024; var fso = new activexobject("scripting.filesystemobject"); var e = new enumerator(fso.drives); e.movefirst(); while (e.at
end() == false) { var drv = e.item(); s += drv.path + " - "; if (drv.isready) { var freegb = drv.freespace / bytespergb; var totalgb = drv.totalsize / bytespergb; s += freegb.tofixed(3) + " gb free of "; s += totalgb.tofixed(3) + " gb"; } else { s += "not ready"; } s += "<br />"; e.move...
HTMLIFrameElement.sendTouchEvent()
the s
endtouchevent() method of the htmliframeelement allows you to fake a touch event and s
end it to the browser <iframe>'s content.
... syntax instanceofhtmliframeelement.s
endtouchevent(type, x, y, rx, ry, rotationangles, forces, count, modifiers); returns void.
...possible values are touchstart, touch
end, touchmove, or touchcancel.
... examples var browser = document.queryselector('iframe'); browser.s
endtouchevent("touchstart", [1], [x], [y], [2], [2], [20], [0.5], 1, 0); specification not part of any specification.
JS_NewDependentString
syntax jsstring * js_newdep
endentstring(jscontext *cx, js::handlestring str, size_t start, size_t length); name type description cx jscontext * the context in which to create the new string.
... description js_newdep
endentstring creates a new string as a substring of an existing javascript string, str.
...(implementation note: because of this sharing, the garbage collector will not collect str as long as the new substring is reachable.) on success, js_newdep
endentstring returns a pointer to the new string.
...see also mxr id search for js_newdep
endentstring ...
Append
« xpcom api reference summary the app
end family of functions app
ends a value to the
end of a string's internal buffer.
... void app
end( const self_type& astring ); parameters astring [in] a nsacstring to app
end to this string.
... void app
end( const char_type* adata, size_type adatalength = pr_uint32_max ); parameters adata [in] a raw character array to app
end to this string.
... void app
end( char_type achar ); parameters achar [in] a character to app
end to this string.
Append
« xpcom api reference summary the app
end family of functions app
ends a value to the
end of a string's internal buffer.
... void app
end( const self_type& astring ); parameters astring [in] a nsastring to app
end to this string.
... void app
end( const char_type* adata, size_type adatalength = pr_uint32_max ); parameters adata [in] a raw character array to app
end to this string.
... void app
end( char_type achar ); parameters achar [in] a character to app
end to this string.
NS_CStringAppendData
« xpcom api reference summary the ns_cstringapp
enddata function app
ends data to the existing value of a nsacstring instance.
... #include "nsstringapi.h" nsresult ns_cstringapp
enddata( nsacstring& astring, const char* adata, pruint32 adatalength = pr_uint32_max ); parameters astring [in] a nsacstring instance to be modified.
... return values the ns_cstringapp
enddata function returns ns_ok if successful.
... example nscstringcontainer str; ns_cstringcontainerinit(str); ns_cstringsetdata(str, "hello"); ns_cstringapp
enddata(str, " world"); const char* data; ns_cstringgetdata(str, &data); printf("%s\n", data); // prints out "hello world" ns_cstringcontainerfinish(str); history this function was frozen for mozilla 1.7.
NS_StringAppendData
« xpcom api reference summary the ns_stringapp
enddata function app
ends data to the existing value of a nsastring instance.
... #include "nsstringapi.h" nsresult ns_stringapp
enddata( nsastring& astring, const prunichar* adata, pruint32 adatalength = pr_uint32_max ); parameters astring [in] a nsastring instance to be modified.
... return values the ns_stringapp
enddata function returns ns_ok if successful.
... example code nsstringcontainer str; ns_stringcontainerinit(str); ns_stringsetdata(str, l"hello"); ns_stringapp
enddata(str, l" world"); const prunichar* data; ns_stringgetdata(str, &data); // data now points to the string: l"hello world" ns_stringcontainerfinish(str); history this function was frozen for mozilla 1.7.
AbstractRange.endContainer - Web APIs
the
endcontainer property of the abstractrange interface returns the node in which the
end of the range is located.
... syntax var
endnode = range.
endcontainer value the dom node which contains the final character of the range.
... specifications specification status comment domthe definition of '
endcontainer' in that specification.
... living standard static rangethe definition of '
endcontainer' in that specification.
AbstractRange.endOffset - Web APIs
the
endoffset property of the abstractrange interface returns the offset into the
end node of the range's
end position.
... syntax var
endoffset = range.
endoffset; value an integer value indicating the number of characters into the node indicated by
endcontainer at which the final character of the range is located.
... specifications specification status comment domthe definition of '
endoffset' in that specification.
... living standard static rangethe definition of '
endoffset' in that specification.
AudioContext.suspend() - Web APIs
the susp
end() method of the audiocontext interface susp
ends the progression of time in the audio context, temporarily halting audio hardware access and reducing cpu/battery usage in the process — this is useful if you want an application to power down the audio hardware when it will not be using an audio context for a while.
... syntax var audioctx = new audiocontext(); audioctx.susp
end().then(function() { ...
... example the following snippet is taken from our audiocontext states demo (see it running live.) when the susp
end/resume button is clicked, the audiocontext.state is queried — if it is running, susp
end() is called; if it is susp
ended, resume() is called.
... susresbtn.onclick = function() { if(audioctx.state === 'running') { audioctx.susp
end().then(function() { susresbtn.textcontent = 'resume context'; }); } else if(audioctx.state === 'susp
ended') { audioctx.resume().then(function() { susresbtn.textcontent = 'susp
end context'; }); } } specifications specification status comment web audio apithe definition of 'close()' in that specification.
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.on
ended 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.on
ended property: node.on
ended = function() { document.getelementbyid("startbutton").disabled = false; } for an example of the
ended event in use, see our audio-buffer example on github.
... specifications specification status comment web audio apithe definition of 'on
ended' in that specification.
CanvasRenderingContext2D.getTransform() - Web APIs
the canvasr
enderingcontext2d.gettransform() method of the canvas 2d api retrieves the current transformation matrix being applied to the context.
... the transformation matrix is described by: [acebdf001]\left[ \begin{array}{ccc} a & c & e \\ b & d & f \\ 0 & 0 & 1 \
end{array} \right] note: the returned object is not live, so updating it will not affect the current transformation matrix, and updating the current transformation matrix will not affect an already returned dommatrix.
...we apply a transform to the first one's context using canvasr
enderingcontext2d.settransform() and draw a square on it, then retrieve the matrix from it using gettransform().
...s[1].getcontext('2d'); ctx1.settransform(1, .2, .8, 1, 0, 0); ctx1.fillrect(25, 25, 50, 50); let storedtransform = ctx1.gettransform(); console.log(storedtransform); ctx2.settransform(storedtransform); ctx2.beginpath(); ctx2.arc(50, 50, 50, 0, 2 * math.pi); ctx2.fill(); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.gettransform' in that specification.
CanvasRenderingContext2D.globalCompositeOperation - Web APIs
the canvasr
enderingcontext2d.globalcompositeoperation property of the canvas 2d api sets the type of compositing operation to apply when drawing new shapes.
... syntax ctx.globalcompositeoperation = type; type is a string identifying which of the compositing or bl
ending mode operations to use.
...="canvas"></canvas> javascript const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.globalcompositeoperation = 'xor'; ctx.fillstyle = 'blue'; ctx.fillrect(10, 10, 100, 100); ctx.fillstyle = 'red'; ctx.fillrect(50, 50, 100, 100); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.globalcompositeoperation' in that specification.
... living standard compositing and bl
ending level 1 candidate recomm
endation ...
CanvasRenderingContext2D.setTransform() - Web APIs
the canvasr
enderingcontext2d.settransform() method of the canvas 2d api resets (overrides) the current transformation to the identity matrix, and then invokes a transformation described by the arguments of this method.
... syntax ctx.settransform(a, b, c, d, e, f); ctx.settransform(matrix); the transformation matrix is described by: [acebdf001]\left[ \begin{array}{ccc} a & c & e \\ b & d & f \\ 0 & 0 & 1 \
end{array} \right] parameters settransform() has two types of parameter that it can accept.
...we apply a transform to the first one's context using the first type of settransform() and draw a square on it, then retrieve the matrix from it using canvasr
enderingcontext2d.gettransform().
...s[1].getcontext('2d'); ctx1.settransform(1, .2, .8, 1, 0, 0); ctx1.fillrect(25, 25, 50, 50); let storedtransform = ctx1.gettransform(); console.log(storedtransform); ctx2.settransform(storedtransform); ctx2.beginpath(); ctx2.arc(50, 50, 50, 0, 2 * math.pi); ctx2.fill(); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.settransform' in that specification.
ExtendableMessageEvent() - Web APIs
the ext
endablemessageevent() constructor creates a new ext
endablemessageevent object instance.
... syntax var ext
endablemessageevent = new ext
endablemessageevent(type, init); parameters type a domstring that defines the type of the message event being created.
... ports: an array containing the messageport objects connected to the channel s
ending the message.
... examples var init = { data : 'hello message', source : messageportreference, ports : messageportlistreference } var myeme = new ext
endablemessageevent('message', init); specifications specification status comment service workersthe definition of 'ext
endablemessageevent()' in that specification.
ExtendableMessageEvent.data - Web APIs
the data read-only property of the ext
endablemessageevent interface returns the event's data.
... syntax var mydata = ext
endablemessageevent.data; value any data type.
... examples when the following code is used inside a service worker to respond to a push messages by s
ending the data received via pushmessagedata to the main context via a channel message, the event object of onmessage will be a ext
endablemessageevent.
...j = e.data.json(); if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { port.postmessage(obj); } else if(obj.action === 'init' || obj.action === 'chatmsg') { port.postmessage(obj); } }); self.onmessage = function(e) { console.log(e.data); port = e.ports[0]; } specifications specification status comment service workersthe definition of 'ext
endablemessageevent.data' in that specification.
ExtendableMessageEvent.lastEventId - Web APIs
the lasteventid read-only property of the ext
endablemessageevent interface represents, in server-sent events, the last event id of the event source.
... syntax var mylasteventid = ext
endablemessageevent.lasteventid; value a domstring.
... examples when the following code is used inside a service worker to respond to a push messages by s
ending the data received via pushmessagedata to the main context via a channel message, the event object of onmessage will be a ext
endablemessageevent.
...ata.json(); if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { port.postmessage(obj); } else if(obj.action === 'init' || obj.action === 'chatmsg') { port.postmessage(obj); } }); self.onmessage = function(e) { console.log(e.lasteventid); port = e.ports[0]; } specifications specification status comment service workersthe definition of 'ext
endablemessageevent.lasteventid' in that specification.
ExtendableMessageEvent.origin - Web APIs
the origin read-only property of the ext
endablemessageevent interface returns the origin of the client that sent the message.
... syntax var myorigin = ext
endablemessageevent.origin; value a usvstring.
... examples when the following code is used inside a service worker to respond to a push messages by s
ending the data received via pushmessagedata to the main context via a channel message, the event object of onmessage will be a ext
endablemessageevent.
...= e.data.json(); if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { port.postmessage(obj); } else if(obj.action === 'init' || obj.action === 'chatmsg') { port.postmessage(obj); } }); self.onmessage = function(e) { console.log(e.origin); port = e.ports[0]; } specifications specification status comment service workersthe definition of 'ext
endablemessageevent.origin' in that specification.
ExtendableMessageEvent.source - Web APIs
the source read-only property of the ext
endablemessageevent interface returns a reference to the client object from which the message was sent.
... syntax var mysource = ext
endablemessageevent.source; value a client, serviceworker or messageport object.
... examples when the following code is used inside a service worker to respond to a push messages by s
ending the data received via pushmessagedata to the main context via a channel message, the event object of onmessage will be a ext
endablemessageevent.
...= e.data.json(); if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { port.postmessage(obj); } else if(obj.action === 'init' || obj.action === 'chatmsg') { port.postmessage(obj); } }); self.onmessage = function(e) { console.log(e.source); port = e.ports[0]; } specifications specification status comment service workersthe definition of 'ext
endablemessageevent.source' in that specification.
GlobalEventHandlers.onended - Web APIs
the on
ended property of the globaleventhandlers mixin is the eventhandler for processing
ended events.
... the
ended event is fired when playback has stopped because the
end of the media was reached.
... syntax element.on
ended = handlerfunction; var handlerfunction = element.on
ended; handlerfunction is either null or a javascript function specifying the handler for the event.
... specification specification status comment html living standardthe definition of 'on
ended' in that specification.
HTMLElement: animationend event - Web APIs
the animation
end event is fired when a css animation has completed.
... if the animation aborts before reaching completion, such as if the element is removed from the dom or the animation is removed from the element, the animation
end event is not fired.
... bubbles yes cancelable no interface animationevent event handler property onanimation
end examples this example gets an element that's being animated and listens for the animation
end event: const animated = document.queryselector('.animated'); animated.addeventlistener('animation
end', () => { console.log('animation
ended'); }); the same, but using the onanimation
end event handler property: const animated = document.queryselector('.animated'); animated.onanimation
end = () => { console.log('animation
ended'); }; live example html <div class="animation-example"> <div class="container"> <p class="animation">you chose a cold night to visit our planet.</p> </div> <button class="activate" type="button">activate ...
...iterationcount = 0; animation.addeventlistener('animationstart', () => { animationeventlog.textcontent = `${animationeventlog.textcontent}'animation started' `; }); animation.addeventlistener('animationiteration', () => { iterationcount++; animationeventlog.textcontent = `${animationeventlog.textcontent}'animation iterations: ${iterationcount}' `; }); animation.addeventlistener('animation
end', () => { animationeventlog.textcontent = `${animationeventlog.textcontent}'animation
ended'`; animation.classlist.remove('active'); applyanimation.textcontent = "activate animation"; }); animation.addeventlistener('animationcancel', () => { animationeventlog.textcontent = `${animationeventlog.textcontent}'animation canceled'`; }); applyanimation.addeventlistener('click', () => { anim...
Recommended Drag Types - Web APIs
it is recomm
ended to always add data of the text/plain type as a fallback for applications or drop targets that do not support other types, unless there is no logical text alternative.
...="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.app
enditem(file.leafname); } } </script> in this example, the event returns false only if the data transfer contains the application/x-moz-file type.
... in chrome or other privileged code, you may also use the image/jpeg, image/png or image/gif types, dep
ending on the type of image.
...}; atransferable.gettransferdata('application/x-moz-file-promise-dir', dirprimitive, datasize); var dir = dirprimitive.value.queryinterface(components.interfaces.nsilocalfile); console.log("target folder is = " + dir.path); var file = cc['@mozilla.org/file/local;1'].createinstance(components.interfaces.nsilocalfile); file.initwithpath(dir.path); file.app
endrelativepath(name); console.log("output final path is =" + file.path); // now you can write or copy the file yourself… } } } see also html drag and drop api (overview) drag operations dragging and dropping multiple items html5 living standard: drag and drop ...
ImageBitmapRenderingContext - Web APIs
the imagebitmapr
enderingcontext interface is a canvas r
endering context that provides the functionality to replace the canvas's contents with the given imagebitmap.
... its context id (the first argument to htmlcanvaselement.getcontext() or offscreencanvas.getcontext()) is "bitmapr
enderer".
... methods imagebitmapr
enderingcontext.transferfromimagebitmap() displays the given imagebitmap in the canvas associated with this r
endering context.
... specifications specification status comment html living standardthe definition of 'imagebitmapr
enderingcontext' 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.
... this value once the
ended event has been fired.
... this property has been removed from the specification; you should instead rely on the
ended event or check the value of mediastreamtrack.readystate to see if its value is "
ended" for the track or tracks you want to ensure have finished playing.
... syntax var has
ended = mediastream.
ended; value a boolean value that returns true if the
end of the stream has been reached.
OscillatorNode.onended - Web APIs
the on
ended property of the oscillatornode interface is used to set the event handler for the
ended event, which fires when the tone has stopped playing.
... syntax var oscillator = audioctx.createoscillator(); oscillator.on
ended = function() { ...
... oscillator.on
ended = function() { console.log('your tone has now stopped playing!'); } properties none.
... specifications specification status comment web audio apithe definition of 'on
ended' in that specification.
PerformanceNavigationTiming.domContentLoadedEventEnd - Web APIs
the domcontentloadedevent
end read-only property returns a timestamp representing the time value equal to the time immediately after the current document's domcontentloaded event completes.
... syntax perfentry.domcontentloadedevent
end; return value a timestamp representing the time value equal to the time immediately after the current document's domcontentloaded event completes.
... function print_nav_timing_data() { // use getentriesbytype() to just get the "navigation" events var perfentries = performance.getentriesbytype("navigation"); for (var i=0; i < perfentries.length; i++) { console.log("= navigation entry[" + i + "]"); var p = perfentries[i]; // dom properties console.log("dom content loaded = " + (p.domcontentloadedevent
end - p.domcontentloadedeventstart)); console.log("dom complete = " + p.domcomplete); console.log("dom interactive = " + p.dominteractive); // document load and unload time console.log("document load = " + (p.loadevent
end - p.loadeventstart)); console.log("document unload = " + (p.unloadevent
end - p.unloadeventstart)); // other properties console.log("type = " + p.type);...
... console.log("redirectcount = " + p.redirectcount); } } specifications specification status comment navigation timing level 2the definition of 'domcontentloadedevent
end' in that specification.
PerformanceNavigationTiming.loadEventEnd - Web APIs
the loadevent
end read-only property returns a timestamp which is equal to the time when the load event of the current document is completed.
... syntax perfentry.loadevent
end; return value a timestamp representing the time when the load event of the current document is completed.
... function print_nav_timing_data() { // use getentriesbytype() to just get the "navigation" events var perfentries = performance.getentriesbytype("navigation"); for (var i=0; i < perfentries.length; i++) { console.log("= navigation entry[" + i + "]"); var p = perfentries[i]; // dom properties console.log("dom content loaded = " + (p.domcontentloadedevent
end - p.domcontentloadedeventstart)); console.log("dom complete = " + p.domcomplete); console.log("dom interactive = " + p.dominteractive); // document load and unload time console.log("document load = " + (p.loadevent
end - p.loadeventstart)); console.log("document unload = " + (p.unloadevent
end - p.unloadeventstart)); // other properties console.log("type = " + p.type);...
... console.log("redirectcount = " + p.redirectcount); } } specifications specification status comment navigation timing level 2the definition of 'loadevent
end' in that specification.
PerformanceNavigationTiming.unloadEventEnd - Web APIs
the unloadevent
end read-only property returns a timestamp representing the time value equal to the time immediately after the user agent finishes the unload event of the previous document.
... syntax perfentry.unloadevent
end; return value a timestamp representing a time value equal to the time immediately after the user agent finishes the unload event of the previous document.
... function print_nav_timing_data() { // use getentriesbytype() to just get the "navigation" events var perfentries = performance.getentriesbytype("navigation"); for (var i=0; i < perfentries.length; i++) { console.log("= navigation entry[" + i + "]"); var p = perfentries[i]; // dom properties console.log("dom content loaded = " + (p.domcontentloadedevent
end - p.domcontentloadedeventstart)); console.log("dom complete = " + p.domcomplete); console.log("dom interactive = " + p.interactive); // document load and unload time console.log("document load = " + (p.loadevent
end - p.loadeventstart)); console.log("document unload = " + (p.unloadevent
end - p.unloadeventstart)); // other properties console.log("type = " + p.type); ...
... console.log("redirectcount = " + p.redirectcount); } } specifications specification status comment navigation timing level 2the definition of 'unloadevent
end' in that specification.
PerformanceTiming.connectEnd - Web APIs
the legacy performancetiming.connect
end read-only property returns an unsigned long long representing the moment, in miliseconds since the unix epoch, where the connection is opened network.
... if the transport layer reports an error and the connection establishment is started again, the last connection establisment
end time is given.
... syntax time = performancetiming.connect
end; specifications specification status comment navigation timingthe definition of 'performancetiming.connect
end' in that specification.
... recomm
endation initial definition.
PerformanceTiming.loadEventEnd - Web APIs
please use the performancenavigationtiming interface's performancenavigationtiming.loadevent
end read-only property instead.
... the legacy performancetiming.loadevent
end read-only property returns an unsigned long long representing the moment, in miliseconds since the unix epoch, when the load event handler terminated, that is when the load event is completed.
... syntax time = performancetiming.loadevent
end; specifications specification status comment navigation timingthe definition of 'performancetiming.loadevent
end' in that specification.
... recomm
endation initial definition.
RTCRtpSendParameters - Web APIs
the webrtc api's rtcrtps
endparameters dictionary is used to specify the parameters for an rtcrtps
ender when calling its setparameters() method.
... properties in addition to the properties below, rtcrtps
endparameters inherits the properties from the rtcrtpparameters interface.
... specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcrtps
endparameters' in that specification.
... candidate recomm
endation initial definition.
RTCRtpSender.track - Web APIs
the track read-only property of the rtcrtps
ender interface returns the mediastreamtrack which is being handled by the rtcrtps
ender.
... syntax var mediastreamtrack = rtcrtps
ender.track value a mediastreamtrack object representing the media associated with the rtcrtps
ender.
... if no track is associated with the s
ender, this value is null, in which case the s
ender transmits nothing.
... candidate recomm
endation initial definition.
RTCRtpTransceiver.sender - Web APIs
the read-only s
ender property of webrtc's rtcrtptransceiver interface indicates the rtcrtps
ender responsible for encoding and s
ending outgoing media data for the transceiver's stream.
... syntax var rtps
ender = rtcrtptransceiver.s
ender; value an rtcrtps
ender object used to encode and s
end media whose media id matches the current value of mid.
... specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcrtptransceiver.s
ender' in that specification.
... candidate recomm
endation ...
Range.endContainer - Web APIs
the range.
endcontainer read-only property returns the node within which the range
ends.
... to change the
end position of a node, use the range.set
end() method or a similar one.
... syntax
endrangenode = range.
endcontainer; example var range = document.createrange(); range.setstart(startnode,startoffset); range.set
end(
endnode,
endoffset);
endrangenode = range.
endcontainer; specifications specification status comment domthe definition of 'range.
endcontainer' in that specification.
... document object model (dom) level 2 traversal and range specificationthe definition of 'range.
endcontainer' in that specification.
SourceBuffer.appendBuffer() - Web APIs
the app
endbuffer() method of the sourcebuffer interface app
ends media segment data from an arraybuffer or arraybufferview object to the sourcebuffer.
... syntax sourcebuffer.app
endbuffer(source); parameters source a buffersource (that is, either an arraybufferview or arraybuffer) which contains the media segment data you want to add to the sourcebuffer.
... specifications specification status comment media source extensionsthe definition of 'app
endbuffer()' in that specification.
... recomm
endation initial definition.
StaticRange.endContainer - Web APIs
the
endcontainer property of the staticrange interface returns the
end node for the range.
... syntax var node = staticnode.
endcontainer staticnode.
endcontainer =
endcontainer value the dom node which contains the final character of the range.
... specifications specification status comment domthe definition of '
endcontainer' in that specification.
... living standard static rangethe definition of '
endcontainer' in that specification.
StaticRange.endOffset - Web APIs
the
endoffset property of the staticrange interface returns the offset into the
end node of the range's
end position.
... syntax var
endoffset = staticrange.
endoffset value an integer value indicating the number of characters into the node indicated by
endcontainer at which the final character of the range is located.
... specifications specification status comment domthe definition of '
endoffset' in that specification.
... living standard static rangethe definition of '
endoffset' in that specification.
TimeRanges.end() - Web APIs
returns the time offset at which a specified time range
ends.
... syntax
endtime = timeranges.
end(index) parameters index is the range number to return the
ending time for.
... example given a video element with the id "myvideo": var v = document.getelementbyid("myvideo"); var buf = v.buffered; var numranges = buf.length; if (buf.length == 1) { // only one range if (buf.start(0) == 0 && buf.
end(0) == v.duration) { // the one range starts at the beginning and
ends at // the
end of the video, so the whole thing is loaded } } this example looks at the time ranges and looks to see if the entire video has been loaded.
... specifications specification status comment html living standardthe definition of 'timeranges.
end()' in that specification.
WebGL2RenderingContext.drawRangeElements() - Web APIs
the webgl2r
enderingcontext.drawrangeelements() method of the webgl api r
enders primitives from array data in a given range.
... syntax void gl.drawrangeelements(mode, start,
end, count, type, offset); parameters mode a glenum specifying the type primitive to r
ender.
...
end a gluint specifying the maximum array index contained in offset.
... count a glsizei specifying the number of elements to be r
endered.
WebGLRenderbuffer - Web APIs
the webglr
enderbuffer interface is part of the webgl api and represents a buffer that can contain an image, or can be source or target of an r
endering operation.
... description the webglr
enderbuffer object does not define any methods or properties of its own and its content is not directly accessible.
... when working with webglr
enderbuffer objects, the following methods of the webglr
enderingcontext are useful: webglr
enderingcontext.bindr
enderbuffer() webglr
enderingcontext.creater
enderbuffer() webglr
enderingcontext.deleter
enderbuffer() webglr
enderingcontext.isr
enderbuffer() examples creating a r
ender buffer var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); var buffer = gl.creater
enderbuffer(); specifications specification status comment webgl 1.0the definition of 'webglr
enderbuffer' in that specification.
... recomm
endation initial definition.
WebGLRenderingContext.bindFramebuffer() - Web APIs
the webglr
enderingcontext.bindframebuffer() method of the webgl api binds a given webglframebuffer to a target.
...possible values: gl.framebuffer: collection buffer data storage of color, alpha, depth and stencil buffers used to r
ender an image.
...used as a destination for drawing, r
endering, clearing, and writing operations.
... recomm
endation initial definition for webgl.
WebGLRenderingContext.canvas - Web APIs
the webglr
enderingcontext.canvas property is a read-only reference to the htmlcanvaselement or offscreencanvas object that is associated with the context.
... examples canvas element given this <canvas> element: <canvas id="canvas"></canvas> you can get back a reference to it from the webglr
enderingcontext using the canvas property: var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); gl.canvas; // htmlcanvaselement offscreen canvas example using the experimental offscreencanvas object.
... var offscreen = new offscreencanvas(256, 256); var gl = offscreen.getcontext('webgl'); gl.canvas; // offscreencanvas specifications specification status comment webgl 1.0the definition of 'webglr
enderingcontext.canvas' in that specification.
... recomm
endation initial definition.
WebGLRenderingContext.drawArrays() - Web APIs
the webglr
enderingcontext.drawarrays() method of the webgl api r
enders primitives from array data.
... syntax void gl.drawarrays(mode, first, count); parameters mode a glenum specifying the type primitive to r
ender.
... count a glsizei specifying the number of indices to be r
endered.
... recomm
endation initial definition.
WebGLRenderingContext.drawElements() - Web APIs
the webglr
enderingcontext.drawelements() method of the webgl api r
enders primitives from array data.
... syntax void gl.drawelements(mode, count, type, offset); parameters mode a glenum specifying the type primitive to r
ender.
... count a glsizei specifying the number of elements to be r
endered.
... recomm
endation initial definition.
WebGLRenderingContext.enableVertexAttribArray() - Web APIs
the webglr
enderingcontext method enablevertexattribarray(), part of the webgl api, turns on the generic vertex attribute array at the specified index into the list of attribute arrays.
...some vertex attribute indices may have predefined purposes, dep
ending on the platform and/or the gpu.
... webglr
enderingcontext.invalid_value the specified index is invalid; that is, it's greater than or equal to the maximum number of entries permitted in the context's vertex attribute list, as indicated by the value of webglr
enderingcontext.max_vertex_attribs.
... recomm
endation initial definition.
WebGLRenderingContext.framebufferTexture2D() - Web APIs
the webglr
enderingcontext.framebuffertexture2d() method of the webgl api attaches a texture to a webglframebuffer.
...possible values: gl.framebuffer: collection buffer data storage of color, alpha, depth and stencil buffers used to r
ender an image.
...used as a destination for drawing, r
endering, clearing, and writing operations.
... recomm
endation initial definition.
WebGLRenderingContext.getActiveUniform() - Web APIs
the webglr
enderingcontext.getactiveuniform() method of the webgl api returns a webglactiveinfo object containing size, type, and name of a uniform attribute.
... syntax webglactiveinfo webglr
enderingcontext.getactiveuniform(program, index); parameters program a webglprogram specifying the webgl shader program from which to obtain the uniform variable's information.
...webgl generates one or more entries in the list dep
ending on the declared type of the uniform in the shader: single basic type: one entry with the name of the uniform.
... recomm
endation initial definition.
WebGLRenderingContext.getVertexAttrib() - Web APIs
the webglr
enderingcontext.getvertexattrib() method of the webgl api returns information about a vertex attribute at a given position.
... gl.vertex_attrib_array_divisor: returns a glint describing the frequency divisor used for instanced r
endering.
... when using the angle_instanced_arrays extension: ext.vertex_attrib_array_divisor_angle: returns a glint describing the frequency divisor used for instanced r
endering.
... recomm
endation initial definition for webgl.
WebGLRenderingContext.hint() - Web APIs
the webglr
enderingcontext.hint() method of the webgl api specifies hints for certain behaviors.
... the interpretation of these hints dep
end on the implementation.
...possible values: gl.generate_mipmap_hint: quality of filtering when generating mipmap images with webglr
enderingcontext.generatemipmap().
... recomm
endation initial definition.
WebGLRenderingContext.isContextLost() - Web APIs
the webglr
enderingcontext.iscontextlost() method returns a boolean indicating whether or not the webgl context has been lost and must be re-established before r
endering can resume.
... usage notes there are several reasons why a webgl context may be lost, making it necessary to re-establish the context before resuming r
endering.
..., when checking for program linking success, you could also check if the context is not lost: gl.linkprogram(program); if (!gl.getprogramparameter(program, gl.link_status) && !gl.iscontextlost()) { var info = gl.getprograminfolog(program); console.log('error linking program:\n' + info); } specifications specification status comment webgl 1.0the definition of 'webglr
enderingcontext.iscontextlost' in that specification.
... recomm
endation initial definition.
Using the aria-activedescendant attribute - Accessibility
this article describes the aria-activedesc
endant property.
... description the aria-activedesc
endant attribute contains the id of the currently active child object that is part of a composite widget within the document object model.
... possible effects on user agents and assistive technology the user agent, which is any software that retrieves, r
enders and facilitates
end user interaction with web content, uses the aria-activedesc
endant property to inform the assistive technology about the active child which has focus.
... this active child using the aria-activedesc
endant property must always be visible on screen and must be a desc
endant of the container in the document object model.
inset-block-end - CSS: Cascading Style Sheets
the inset-block-
end css property defines the logical block
end offset of an element, which maps to a physical inset dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the top, right, bottom, or left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <length> values */ inset-block-
end: 3px; inset-block-
end: 2.4em; /* <percentage>s of the width or height of the containing block */ inset-block-
end: 10%; /* keyword value */ inset-block-
end: auto; /* global values */ inset-block-
end: inherit; inset-block-
end: initial; inset-block-
end: unset; syntax values the inset-block-
end property takes the same values as the left property.
... formal definition initial valueautoapplies topositioned elementsinheritednopercentageslogical-height of containing blockcomputed valuesame as box offsets: top, right, bottom, left properties except that directions are logicalanimation typea length, percentage or calc(); formal syntax <'top'> examples setting block
end offset html <div> <p class="exampletext">example text</p> </div> css div { background-color: yellow; width: 120px; height: 120px; } .exampletext { writing-mode: vertical-rl; position: relative; inset-block-
end: 20px; background-color: #c8c800; } result specifications specification status comment css logical properties and values level 1the definition of 'inset-block-
end' in that specification.
pending - Archive of obsolete content
« xul reference home p
ending type: boolean this attribute is set to true if the tab is currently in the process of being restored by the session store service.
...you can determine if a tab is being restored by checking to see if hasattribute("p
ending") is true.
... if the user has turned on the "don't load tabs until selected" preference, the p
ending attribute is set on tabs until they get loaded.
Prerender - MDN Web Docs Glossary: Definitions of Web-related terms
with prer
endering, the content is prefetched and then r
endered in the background by the browser as if the content had been r
endered into an invisible separate tab.
... when the user navigates to the prer
endered content, the current content is replaced by the prer
endered content instantly.
... <link rel="prer
ender" href="https://example.com/content/to/prer
ender"> see also prefetch ...
mozbrowserloadend
the mozbrowserload
end event is fired when the browser <iframe> has finished loading all its assets, or has failed to load.
... example in this example the mozbrowserloadstart and mozbrowserload
end events are used to change the icon shown on the stop/reload button between stop (x) and reload (r), as appropriate.
... var browser = document.queryselector("iframe"); browser.addeventlistener('mozbrowserload
end',function(e) { stopreload.textcontent = 'r'; console.log(e.detail.backgroundcolor); controls.style.background = e.detail.backgroundcolor; }); browser.addeventlistener('mozbrowserload
end',function() { stopreload.textcontent = 'r'; }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericonchange mozbrowserloadstart mozbrowserlocationcha...
HTMLIFrameElement.sendMouseEvent()
the s
endmouseevent() method of the htmliframeelement interface allows you to fake a mouse event and s
end it to the browser <iframe>'s content.
... syntax instanceofhtmliframeelement.s
endmouseevent(type, x, y, button, clickcount, modifiers); returns void.
... examples var browser = document.queryselector('iframe'); browser.s
endmouseevent("mousemove", x, y, 0, 0, 0); browser.s
endmouseevent("mousedown", x, y, 0, 1, 0); browser.s
endmouseevent("mouseup", x, y, 0, 1, 0); specification not part of any specification.
PR_APPEND_LINK
app
ends an element to the
end of a list.
... syntax #include <prclist.h> pr_app
end_link ( prclist *elemp, prclist *listp); parameters elemp a pointer to the element to be inserted.
... description pr_app
end_link adds the specified element to the
end of the specified list.
PR_Send
s
ends bytes from a connected socket.
... syntax #include <prio.h> print32 pr_s
end( prfiledesc *fd, const void *buf, print32 amount, printn flags, printervaltime timeout); parameters the function has the following parameters: fd a pointer to a prfiledesc object representing a socket.
... description pr_s
end blocks until all bytes are sent, a timeout occurs, or an error occurs.
PR_SendTo
s
ends bytes a socket to a specified destination.
... syntax #include <prio.h> print32 pr_s
endto( prfiledesc *fd, const void *buf, print32 amount, printn flags, const prnetaddr *addr, printervaltime timeout); parameters the function has the following parameters: fd a pointer to a prfiledesc object representing a socket.
... description pr_s
endto s
ends a specified number of bytes from a socket to the specified destination address.
JSExtendedClass.wrappedObject
description if a class has the jsclass_is_ext
ended bit set in its jsclass.flags and has a non-null jsext
endedclass.wrappedobject, then objects of that class may be wrappers.
... in a few cases the javascript engine will pret
end the wrapper isn't there, instead operating on the object it wraps.
... in these cases the engine calls the jsext
endedclass.wrappedobject callback to get the wrapped object.
mozIStoragePendingStatement
the mozistoragep
endingstatement interface represents a p
ending asynchronous database statement, and offers the cancel() method which allows you to cancel the p
ending statement.
... storage/public/mozistoragep
endingstatement.idlscriptable please add a summary to this article.
... last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports method overview void cancel(); methods cancel() cancels the p
ending statement.
Animation.pending - Web APIs
the read-only animation.p
ending property of the web animations api indicates whether the animation is currently waiting for an asynchronous operation such as initiating playback or pausing a running animation.
... syntax var p
ending = animation.p
ending; value true if the animation is p
ending, false otherwise.
... specifications specification status comment web animationsthe definition of 'p
ending' in that specification.
CanvasRenderingContext2D.beginPath() - Web APIs
the canvasr
enderingcontext2d.beginpath() method of the canvas 2d api starts a new path by emptying the list of sub-paths.
... note: to create a new sub-path, i.e., one matching the current canvas state, you can use canvasr
enderingcontext2d.moveto().
...vas'); const ctx = canvas.getcontext('2d'); // first path ctx.beginpath(); ctx.strokestyle = 'blue'; ctx.moveto(20, 20); ctx.lineto(200, 20); ctx.stroke(); // second path ctx.beginpath(); ctx.strokestyle = 'green'; ctx.moveto(20, 20); ctx.lineto(120, 120); ctx.stroke(); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.beginpath' in that specification.
CanvasRenderingContext2D.clearRect() - Web APIs
the canvasr
enderingcontext2d.clearrect() method of the canvas 2d api erases the pixels in a rectangular area by setting them to transparent black.
... note: be aware that clearrect() may cause unint
ended side effects if you're not using paths properly.
...ff6'; ctx.fillrect(0, 0, canvas.width, canvas.height); // draw blue triangle ctx.beginpath(); ctx.fillstyle = 'blue'; ctx.moveto(20, 20); ctx.lineto(180, 20); ctx.lineto(130, 130); ctx.closepath(); ctx.fill(); // clear part of the canvas ctx.clearrect(10, 10, 120, 100); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.clearrect' in that specification.
CanvasRenderingContext2D.clip() - Web APIs
the canvasr
enderingcontext2d.clip() method of the canvas 2d api turns the current or given path into the current clipping region.
...two rectangles are then drawn; only those parts within the clipping region are r
endered.
... canvas.getcontext('2d'); // create clipping path let region = new path2d(); region.rect(80, 10, 20, 130); region.rect(40, 50, 100, 50); ctx.clip(region, "evenodd"); // draw stuff that gets clipped ctx.fillstyle = 'blue'; ctx.fillrect(0, 0, canvas.width, canvas.height); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.clip' in that specification.
CanvasRenderingContext2D.closePath() - Web APIs
the canvasr
enderingcontext2d.closepath() method of the canvas 2d api attempts to add a straight line from the current point to the start of the current sub-path.
...you can r
ender the path using the stroke() or fill() methods.
...etelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.beginpath(); ctx.arc(240, 20, 40, 0, math.pi); ctx.moveto(100, 20); ctx.arc(60, 20, 40, 0, math.pi); ctx.moveto(215, 80); ctx.arc(150, 80, 65, 0, math.pi); ctx.closepath(); ctx.linewidth = 6; ctx.stroke(); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.closepath' in that specification.
CanvasRenderingContext2D.createPattern() - Web APIs
the canvasr
enderingcontext2d.createpattern() method of the canvas 2d api creates a pattern using the specified image and repetition.
...the pattern it creates must be assigned to the canvasr
enderingcontext2d.fillstyle or canvasr
enderingcontext2d.strokestyle properties, after which it is applied to any subsequent drawing.
...text.arc(0, 0, 50, 0, .5 * math.pi); patterncontext.stroke(); // create our primary canvas and fill it with the pattern const canvas = document.createelement('canvas'); const ctx = canvas.getcontext('2d'); const pattern = ctx.createpattern(patterncanvas, 'repeat'); ctx.fillstyle = pattern; ctx.fillrect(0, 0, canvas.width, canvas.height); // add our primary canvas to the webpage document.body.app
endchild(canvas); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.createpattern' in that specification.
CanvasRenderingContext2D.fill() - Web APIs
the canvasr
enderingcontext2d.fill() method of the canvas 2d api fills the current or given path with the current fillstyle.
...the fill() method is then used to r
ender the object to the canvas.
.../ create path let region = new path2d(); region.moveto(30, 90); region.lineto(110, 20); region.lineto(240, 130); region.lineto(60, 130); region.lineto(190, 20); region.lineto(270, 90); region.closepath(); // fill path ctx.fillstyle = 'green'; ctx.fill(region, 'evenodd'); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.fill' in that specification.
CanvasRenderingContext2D.filter - Web APIs
the canvasr
enderingcontext2d.filter property of the canvas 2d api provides filter effects such as blurring and grayscaling.
...it defines the value of the standard deviation to the gaussian function, i.e., how many pixels on the screen bl
end into each other; thus, a larger value will create more blur.
...ument.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); const image = document.getelementbyid('source'); image.addeventlistener('load', e => { ctx.filter = 'contrast(1.4) sepia(1) drop-shadow(9px 9px 2px #e81)'; ctx.drawimage(image, 10, 10, 180, 120); }); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.filter' in that specification.
CanvasRenderingContext2D.getImageData() - Web APIs
the canvasr
enderingcontext2d method getimagedata() of the canvas 2d api returns an imagedata object representing the underlying pixel data for a specified portion of the canvas.
...if the specified rectangle ext
ends outside the bounds of the canvas, the pixels outside the canvas are transparent black in the returned imagedata object.
... const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.rect(10, 10, 100, 100); ctx.fill(); let imagedata = ctx.getimagedata(60, 60, 200, 100); ctx.putimagedata(imagedata, 150, 10); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.getimagedata' in that specification.
CanvasRenderingContext2D.putImageData() - Web APIs
the canvasr
enderingcontext2d.putimagedata() method of the canvas 2d api paints data from the given imagedata object onto the canvas.
... examples understanding putimagedata to understand what this algorithm does under the hood, here is an implementation on top of canvasr
enderingcontext2d.fillrect().
...ata(imgdata, 0, 0); const imgdata2 = context.getimagedata(0, 0, canvas.width, canvas.height); const pixels2 = imgdata2.data; console.log("after:", pixels2); the output might look like: before: uint8clampedarray(4) [ 1, 127, 255, 1 ] after: uint8clampedarray(4) [ 255, 255, 255, 1 ] specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.putimagedata' in that specification.
CanvasRenderingContext2D.resetTransform() - Web APIs
the canvasr
enderingcontext2d.resettransform() method of the canvas 2d api resets the current transform to the identity matrix.
... const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); // draw a rotated rectangle ctx.rotate(45 * math.pi / 180); ctx.fillrect(60, 0, 100, 30); // reset transformation matrix to the identity matrix ctx.resettransform(); result continuing with a regular matrix whenever you're done drawing transformed shapes, you should call resettransform() before r
endering anything else.
... polyfill you can also use the settransform() method to reset the current transform to the identity matrix, like so: ctx.settransform(1, 0, 0, 1, 0, 0); specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.resettransform' in that specification.
CanvasRenderingContext2D.restore() - Web APIs
the canvasr
enderingcontext2d.restore() method of the canvas 2d api restores the most recently saved canvas state by popping the top entry in the drawing state stack.
... fore more information about the drawing state, see canvasr
enderingcontext2d.save().
...vascript const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); // save the default state ctx.save(); ctx.fillstyle = 'green'; ctx.fillrect(10, 10, 100, 100); // restore the default state ctx.restore(); ctx.fillrect(150, 40, 100, 100); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.restore' in that specification.
CanvasRenderingContext2D.scale() - Web APIs
the canvasr
enderingcontext2d.scale() method of the canvas 2d api adds a scaling transformation to the canvas units horizontally and/or vertically.
...since its specified corner is (10, 10), its r
endered corner becomes (90, 30).
... html <canvas id="canvas"></canvas> javascript const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.scale(-1, 1); ctx.font = '48px serif'; ctx.filltext('hello world!', -280, 90); ctx.settransform(1, 0, 0, 1, 0, 0); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.scale' in that specification.
CanvasRenderingContext2D.shadowColor - Web APIs
the canvasr
enderingcontext2d.shadowcolor property of the canvas 2d api specifies the color of shadows.
... be aware that the shadow's r
endered opacity will be affected by the opacity of the fillstyle color when filling, and of the strokestyle color when stroking.
....shadowblur = 8; ctx.shadowoffsetx = 30; ctx.shadowoffsety = 20; // filled rectangle ctx.fillstyle = 'rgba(0, 255, 0, .2)'; ctx.fillrect(10, 10, 150, 100); // stroked rectangle ctx.linewidth = 10; ctx.strokestyle = 'rgba(0, 0, 255, .6)'; ctx.strokerect(10, 10, 150, 100); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.shadowcolor' in that specification.
CanvasRenderingContext2D.textBaseline - Web APIs
the canvasr
enderingcontext2d.textbaseline property of the canvas 2d api specifies the current text baseline used when drawing text.
...this differs from the ideographic baseline in that the ideographic baseline doesn't consider desc
enders.
...e = 'red'; baselines.foreach(function (baseline, index) { ctx.textbaseline = baseline; const y = 75 + index * 75; ctx.beginpath(); ctx.moveto(0, y + 0.5); ctx.lineto(550, y + 0.5); ctx.stroke(); ctx.filltext('abcdefghijklmnop (' + baseline + ')', 0, y); }); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.textbaseline' in that specification.
CanvasRenderingContext2D.transform() - Web APIs
the canvasr
enderingcontext2d.transform() method of the canvas 2d api multiplies the current transformation with the matrix described by the arguments of this method.
... syntax void ctx.transform(a, b, c, d, e, f); the transformation matrix is described by: [acebdf001]\left[ \begin{array}{ccc} a & c & e \\ b & d & f \\ 0 & 0 & 1 \
end{array} \right] parameters a (m11) horizontal scaling.
... html <canvas id="canvas"></canvas> javascript const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.transform(1, .2, .8, 1, 0, 0); ctx.fillrect(0, 0, 100, 100); result specifications specification status comment html living standardthe definition of 'canvasr
enderingcontext2d.transform' in that specification.
Document: dragend event - Web APIs
the drag
end event is fired when a drag operation is being
ended (by releasing a mouse button or hitting the escape key).
... bubbles yes cancelable no default action varies interface dragevent event handler property ondrag
end examples see the drag event for example code or this jsfiddle demo.
... specifications specification status comment html living standardthe definition of 'drag
end' in that specification.
Document: touchend event - Web APIs
the touch
end event fires when one or more touch points are removed from the touch surface.
... bubbles yes cancelable yes interface touchevent event handler property ontouch
end examples code samples for those events are available on the dedicated page: touch events.
... specifications specification status touch events recomm
endation ...
EXT_disjoint_timer_query.endQueryEXT() - Web APIs
the ext_disjoint_timer_query.
endqueryext() method of the webgl api
ends a timer query.
... syntax void ext.
endqueryext(target); parameters target a glenum specifying the target of the time query.
... ext.
endqueryext(ext.time_elapsed_ext); specifications specification status comment ext_disjoint_timer_querythe definition of 'ext_disjoint_timer_query' in that specification.
Element: compositionend event - Web APIs
the composition
end event is fired when a text composition system such as an input method editor completes or cancels the current composition session.
... bubbles yes cancelable yes interface compositionevent event handler property none examples const inputelement = document.queryselector('input[type="text"]'); inputelement.addeventlistener('composition
end', (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"> </div> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents" rows="8" cols="25...
...earlog = document.queryselector('.clear-log'); clearlog.addeventlistener('click', () => { log.textcontent = ''; }); function handleevent(event) { log.textcontent = log.textcontent + `${event.type}: ${event.data}\n`; } inputelement.addeventlistener('compositionstart', handleevent); inputelement.addeventlistener('compositionupdate', handleevent); inputelement.addeventlistener('composition
end', handleevent); result specifications specification status ui events working draft ...
Element: touchend event - Web APIs
the touch
end event fires when one or more touch points are removed from the touch surface.
... bubbles yes cancelable yes interface touchevent event handler property ontouch
end examples code samples for those events are available on the dedicated page: touch events.
... specifications specification status touch events recomm
endation ...
ExtendableEvent() - Web APIs
the ext
endableevent() constructor creates a new ext
endableevent object.
... syntax var ext
endableevent = new ext
endableevent(type, init); parameters type the type of the ext
endableevent, for example install, activate.
... specifications specification status comment service workersthe definition of 'ext
endableevent' in that specification.
ExtendableEvent.waitUntil() - Web APIs
the ext
endableevent.waituntil() method tells the event dispatcher that work is ongoing.
...this is primarily used to ensure that a service worker is not considered installed until all of the core caches it dep
ends on are successfully populated.
... syntax ext
endableevent.waituntil(promise); parameters a promise.
ExtendableMessageEvent.ports - Web APIs
the ports read-only property of the ext
endablemessageevent 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 = ext
endablemessageevent.ports; value an array of messageport objects.
... examples when the following code is used inside a service worker to respond to a push messages by s
ending the data received via pushmessagedata to the main context via a channel message, the event object of onmessage will be a ext
endablemessageevent.
... function(e) { var obj = e.data.json(); if(obj.action === 'subscribe' || obj.action === 'unsubscribe') { port.postmessage(obj); } else if(obj.action === 'init' || obj.action === 'chatmsg') { port.postmessage(obj); } }); self.onmessage = function(e) { port = e.ports[0]; } specifications specification status comment service workersthe definition of 'ext
endablemessageevent.ports' in that specification.
FileReader: loadend event - Web APIs
the load
end event is fired when a file read has completed, successfully or not.
... bubbles no cancelable no interface progressevent event handler property filereader.onload
end 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: 1px solid black; margin: .2rem; padding: .2rem; } .
... filereader(); function handleevent(event) { eventlog.textcontent = eventlog.textcontent + `${event.type}: ${event.loaded} bytes transferred\n`; if (event.type === "load") { preview.src = reader.result; } } function addlisteners(reader) { reader.addeventlistener('loadstart', handleevent); reader.addeventlistener('load', handleevent); reader.addeventlistener('load
end', handleevent); reader.addeventlistener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } } fileinput.ad...
ImageBitmapRenderingContext.transferFromImageBitmap() - Web APIs
the imagebitmapr
enderingcontext.transferfromimagebitmap() method displays the given imagebitmap in the canvas associated with this r
endering context.
... syntax void imagebitmapr
enderingcontext.transferfromimagebitmap(bitmap) parameters bitmap an imagebitmap object to transfer.
... examples html <canvas id="htmlcanvas"></canvas> javascript var htmlcanvas = document.getelementbyid("htmlcanvas").getcontext("bitmapr
enderer"); // draw a webgl scene offscreen var offscreen = new offscreencanvas(256, 256); var gl = offscreen.getcontext("webgl"); // ...
LockedFile.append() - Web APIs
summary the app
end method is used to write some data at the
end of the file.
... the write operation is performed at the
end of the file, regardless of the lockedfile.location value, and actually sets this value to null.
... syntax var request = instanceoflockedfile.app
end(data); parameters data the data to write into the file.
msExtendedCode - Web APIs
the element's error property will then contain an msext
endedcode read-only property with platform-specific error code information.
... msext
endedcode is a read-only proprietary property specific to internet explorer and microsoft edge.
... example var video1 = object.getelementbyid("video1"); video1.addeventlistener('error', function () { var error = video1.error.msext
endedcode; //...
XRRenderState.depthFar - Web APIs
the depthfar read-only property of the xrr
enderstate interface returns the distance in meters of the far clip plane from the viewer.
... syntax var adouble = xrr
enderstate.depthfar; value a number.
... specifications specification status comment unknownthe definition of 'xrr
enderstate.depthfar' in that specification.
XRRenderState.depthNear - Web APIs
the depthnear read-only property of the xrr
enderstate interface returns the distance in meters of the near clip plane from the viewer.
... syntax var adouble = xrr
enderstate.depthnear; value a number.
... specifications specification status comment unknownthe definition of 'xrr
enderstate.depthnear' in that specification.
XRRenderState.inlineVerticalFieldOfView - Web APIs
the read-only inlineverticalfieldofview property of the xrr
enderstate interface returns the default vertical field of view for "inline" sessions and null for all immersive sessions.
... syntax var inlineverticalfieldofview = xrr
enderstate.inlineverticalfieldofview; value a number for "inline" sessions, which represents the default field of view, and null for immersive sessions.
... specifications specification status comment webxr device apithe definition of 'xrr
enderstate.inlineverticalfieldofview' in that specification.
XRSession.end() - Web APIs
the
end() method shuts down the xrsession on which it's called, returning a promise which resolves once the session has fully shut down.
... syntax xrsession.
end(); parameters none.
... example specifications specification status comment webxr device apithe definition of 'xrsession.
end' in that specification.
XRSession.onend - Web APIs
the on
end attribute of the xrsession object is the event handler for the
end event, which is dispatched after the xr session
ends and all related hardware-specific routines are completed.
... syntax xrsession.on
end = function(event) { ...
... }; example xrsession.on
end = function(event) { console.log("the xr session has
ended") } specifications specification status comment webxr device apithe definition of 'xrsession.on
end' in that specification.
XRSession.onselectend - Web APIs
the onselect
end attribute of the xrsession object is the event handler for the select
end event, which is dispatched when user finishes making some sort of selection by releasing a trigger, touchpad, or button, finishes speaking a command, or makes a hand gesture.
... syntax xrsession.onselect
end = function(event) { ...
... } example xrsession.onselect
end = function(event) { console.log("the user has completed a primary action.") } specifications specification status comment webxr device apithe definition of 'xrsession.onselect
end' in that specification.
border-end-start-radius - CSS: Cascading Style Sheets
the border-
end-start-radius css property defines a logical border radius on an element, which maps to a physical border radius dep
ending on the element's writing-mode, direction, and text-orientation.
... /* <length> values */ /* with one value the corner will be a circle */ border-
end-start-radius: 10px; border-
end-start-radius: 1em; /* with two values the corner will be an ellipse */ border-
end-start-radius: 1em 2em; /* global values */ border-
end-start-radius: inherit; border-
end-start-radius: initial; border-
end-start-radius: unset; for instance, in a horizontal-tb writing mode this property corresponds to the border-top-right-radius property.
... of the border boxcomputed valuetwo absolute <length>s or <percentage>sanimation typea length, percentage or calc(); formal syntax <length-percentage>{1,2}where <length-percentage> = <length> | <percentage> examples border radius with vertical text html <div> <p class="exampletext">example</p> </div> css div { background-color: rebeccapurple; width: 120px; height: 120px; border-
end-start-radius: 10px; } .exampletext { writing-mode: vertical-rl; padding: 10px; background-color: #fff; border-
end-start-radius: 10px; } results specifications specification status comment css logical properties and values level 1the definition of 'border-
end-start-radius' in that specification.
border-start-end-radius - CSS: Cascading Style Sheets
the border-start-
end-radius css property defines a logical border radius on an element, which maps to a physical border radius dep
ending on the element's writing-mode, direction, and text-orientation.
... /* <length> values */ /* with one value the corner will be a circle */ border-start-
end-radius: 10px; border-start-
end-radius: 1em; /* with two values the corner will be an ellipse */ border-start-
end-radius: 1em 2em; /* global values */ border-start-
end-radius: inherit; border-start-
end-radius: initial; border-start-
end-radius: unset; for instance, in a horizontal-tb writing mode this property corresponds to the border-bottom-left-radius property.
...e border boxcomputed valuetwo absolute <length>s or <percentage>sanimation typea length, percentage or calc(); formal syntax <length-percentage>{1,2}where <length-percentage> = <length> | <percentage> examples border radius with vertical text html <div> <p class="exampletext">example</p> </div> css div { background-color: rebeccapurple; width: 120px; height: 120px; border-start-
end-radius: 10px; } .exampletext { writing-mode: vertical-rl; padding: 10px; background-color: #fff; border-start-
end-radius: 10px; } results specifications specification status comment css logical properties and values level 1the definition of 'border-start-
end-radius' in that specification.
510 Not Extended - HTTP
the hypertext transfer protocol (http) 510 not ext
ended response status code is sent in the context of the http extension framework, defined in rfc 2774.
... in that specification a client may s
end a request that contains an extension declaration, that describes the extension to be used.
... status 510 not ext
ended specifications specification title rfc 2774, section 7: 510 not ext
ended an http extension framework ...
Appendix F: Monitoring DOM changes - Archive of obsolete content
it is important to note, however, that this method can have severe performance implications for certain events, namely mouseover, mouseout, and fri
ends, which are fired very often while the mouse is moving.
...chnodes.namespace + prop) .join('\n'); doc.addeventlistener('animationstart', listener, false); function listener(event) { if (event.animationname == event) callback.call(this, event); } style.textcontent = ' ' + preamble + selector + '{' + properties + '}'; (doc.head || doc.documentelement).app
endchild(style); // this will only work in chrome privileged code.
Extending Gecko with XBL and XTF - Archive of obsolete content
presentation view online download summary this session explored ways to ext
end mozilla/firefox to handle new xml tags and namespaces via drop-in extensions to the layout engine.
... questions and discussion ext
ending gecko with xbl and xtf - discussion ...
appendItem - Archive of obsolete content
« xul reference home app
enditem( label, value ) return type: element creates a new item and adds it to the
end of the existing list of items.
... example <script language="javascript"> function additemstolist(){ var list = document.getelementbyid('mymenulist'); // add item with just the label list.app
enditem('one'); // add item with label and value list.app
enditem('two', 999); // select the first item list.selectedindex = 0; } </script> <button label="add items" oncommand="additemstolist()"/> <menulist id="mymenulist"> <menupopup/> </menulist> see also insertitemat() removeitemat() ...
Index - Web APIs
3 angle_instanced_arrays.drawarraysinstancedangle() angle_instanced_arrays, api, method, reference, webgl, webgl extension the angle_instanced_arrays.drawarraysinstancedangle() method of the webgl api r
enders primitives from array data like the gl.drawarrays() method.
... 4 angle_instanced_arrays.drawelementsinstancedangle() angle_instanced_arrays, api, method, reference, webgl, webgl extension the angle_instanced_arrays.drawelementsinstancedangle() method of the webgl api r
enders primitives from array data like the gl.drawelements() method.
... 5 angle_instanced_arrays.vertexattribdivisorangle() angle_instanced_arrays, api, method, reference, webgl, webgl extension the angle_instanced_arrays.vertexattribdivisorangle() method of the webgl api modifies the rate at which generic vertex attributes advance when r
endering multiple instances of primitives with ext.drawarraysinstancedangle() and ext.drawelementsinstancedangle().
...And 797 more matches
Index - Archive of obsolete content
15 communicating using "port" to enable add-on scripts and content scripts to communicate with each other, each
end of the conversation has access to a port object.
...the use of modules greatly improves the maintainability of code, by splitting it up into indep
endent components, and enforcing logical boundaries between them.
... 81 dev/panel enables you to ext
end the firefox developer tools.
...And 124 more matches
MathML Accessibility in Mozilla
at the moment, it is recomm
ended to use a nightly build to ensure that the accessible tree expected by orca is correctly exposed.
... mathml windows mac linux accessfu diagonal of a regular pentagon video video video / x+2 __________ x plus 2 __________ x+2 x plus 2 x + y ab __________ a over b __________ fraction start, a over b,
end of fraction fraction start.
...fraction
end.
...And 107 more matches
nsIDOMWindowUtils
tmetadata(in astring aname); nsidomwindow getouterwindowwithid(in unsigned long long aouterwindowid); long getpccountscriptcount(); astring getpccountscriptsummary(in long ascript); astring getpccountscriptcontents(in long ascript); void getscrollxy(in boolean aflushlayout, out long ascrollx, out long ascrolly); astring getvisiteddep
endentcomputedstyle(in nsidomelement aelement, in astring apseudoelement, in astring apropertyname); boolean isinmodalstate(); void leavemodalstate(); void loadsheet(in nsiuri sheeturi, in unsigned long type); nsidomnodelist nodesfromrect(in float ax, in float ay, in float atopsize, in float arightsize, in float abottomsize, in float aleftsize, in boolean aigno...
...rerootscrollframe, in boolean aflushlayout); void processupdates(); obsolete since gecko 13.0 void purgepccounts(); unsigned long redraw([optional] in unsigned long acount); void r
enderdocument(in nsconstrect arect, in pruint32 aflags, in nscolor abackgroundcolor, in gfxcontext athebescontext); native code only!
... void removesheet(in nsiuri sheeturi, in unsigned long type); void resumetimeouts(); void s
endcompositionevent(in astring atype); obsolete since gecko 9 void s
endcompositionevent(in astring atype, in astring adata, in astring alocale); obsolete since gecko 38.0 void s
endcontentcommandevent(in astring atype, [optional] in nsitransferable atransferable); void getclassname(in object aobj); boolean s
endkeyevent(in astring atype, in long akeycode, in long acharcode, in long amodifiers, [optional] in boolean apreventdefault); obsolete since gecko 15.0 boolean s
endkeyevent(in astring atype, in long akeycode, in long acharcode, in long amodifiers, [optional] in unsigned long aadditionalflags); deprecated since gecko 38.0 ...
...And 90 more matches
Index
to this
end, there exist xpcom interfaces to read and write registry data.
...since binary components are linked against a single gecko sdk, a dep
endency to a particular version of gecko is created.
... 75 performance storage, toolkit api mozstorage uses sqlite as the database back
end.
...And 76 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
9 atag atag, accessibility, authoring tool accessibility guidelines, glossary atag (authoring tool accessibility guidelines) is a w3c recomm
endation for building accessible-authoring tools that produce accessible contents.
... 23 array array, codingscripting, glossary, javascript, programming an array is an ordered collection of data (either primitive or object dep
ending upon the language).
... 25 attribute codingscripting, glossary, html an attribute ext
ends an element, changing its behavior or providing metadata.
...And 74 more matches
WebIDL bindings
for each interface, a namespace whose name is the name of the interface with binding app
ended is created, and all the things pertaining to that interface's binding go in that namespace.
...ns_impl_cycle_collection_wrappercache_0(myclass) ns_impl_cycle_collecting_addref(myclass) ns_impl_cycle_collecting_release(myclass) ns_interface_map_begin_cycle_collection(myclass) ns_wrappercache_interface_map_entry ns_interface_map_entry(nsisupports) ns_interface_map_
end if your class doesn't inherit from a class that implements getparentobject, then add a function of that name that, for a given instance of your class, returns the same object every time (unless you write explicit code that handles your parent object changing by reparenting js wrappers, as nodes do).
...if the type is not in the header file one gets by replacing '::' with '/' and app
ending '.h', then add a corresponding 'headerfile' annotation (or headerfile annotation to the .webidl file).
...And 64 more matches
WebGL constants - Web APIs
standard webgl constants are installed on the webglr
enderingcontext and webgl2r
enderingcontext objects, so that you use them as gl.constant_name: var canvas = document.getelementbyid('mycanvas'); var gl = canvas.getcontext('webgl'); gl.getparameter(gl.line_width); some constants are also provided by webgl extensions.
... var debuginfo = gl.getextension('webgl_debug_r
enderer_info'); var v
endor = gl.getparameter(debuginfo.unmasked_v
endor_webgl); the webgl tutorial has more information, examples, and resources on how to get started with webgl.
... table of contents standard webgl 1 constants standard webgl 2 constants webgl extension constants standard webgl 1 constants these constants are defined on the webglr
enderingcontext interface.
...And 63 more matches
Signaling and video calling - Web APIs
what does matter is when the ice subsystem instructs you to s
end signaling data to the other peer, you do so, and the other peer knows how to receive this information and deliver it to its own ice subsystem.
... readying the chat server for signaling our chat server uses the websocket api to s
end information as json strings between each client and the server.
... the server supports several message types to handle tasks, such as registering new users, setting usernames, and s
ending public chat messages.
...And 59 more matches
SVG documentation index - SVG: Scalable Vector Graphics
13 svg attribute reference drawing, landing, needshelp, overview, responsive design, svg, svg attribute, svg reference, vector graphics svg elements can be modified using attributes that specify details about exactly how the element should be handled or r
endered.
... 14 svg conditional processing attributes intermediate, needsexample, property, reference, svg the svg conditional processing attributes are all the attributes that can be specified on some svg elements to control whether or not the element on which it appears should be r
endered.
... 16 svg event attributes advanced, attribute, draft, landing, needsupdate, svg event attributes always have their name starting with "on" followed by the name of the event for which they are int
ended.
...And 57 more matches
Index - Learn web development
13 apr
ender y obtener ayuda beginner, learn, learning, web development, getting help it is great that you are putting some time into learning a new set of skills, but there are good practices to employ that will make your learning more effective.
... beginner, webmechanics, cost, hosting, web development tools when launching a website, you may sp
end nothing, or your costs may go through the roof.
... beginner, browser, css, codingscripting, dev tools, html, javascript, learn the devtools live inside your browser in a subwindow that looks roughly like this, dep
ending on what browser you are using: 26 what are hyperlinks?
...And 50 more matches
Mozilla internal string guide
the string classes distinguish, as part of the type hierarchy, between strings that must have a null-terminator at the
end of their buffer (ns[c]string) and strings that are not required to have a null-terminator (nsa[c]string).
...all string classes support the following three ownership models dynamically: reference counted, copy-on-write, buffers (the default) adopted buffers (a buffer that the string class owns, but is not reference counted, because it came from somewhere else) dep
endent buffers, that is, an underlying buffer that the string class does not own, but that the caller that constructed the string guarantees will outlive the string instance in addition, there is a special string class, ns[c]autostring, that additionally contains an internal 64-unit buffer (int
ended primarily for use on the stack), leading to a fourth ownership model: storage within an auto stri...
... there are a number of additional string classes: classes which exist primarily as constructors for the other types, particularly nsdep
endent[c]string and nsdep
endent[c]substring.
...And 49 more matches
Editor Embedding Guide - Archive of obsolete content
nscomptr<nsieditingsession> editingsession; nsiwebbrowser->do_getinterface(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; int
ended for plaintext mail usage and handling of citations) "html" (this is the default type if no type is specified; it allows for all html tags to be inserted) "htmlmail" (this is much like "html" except there are a few editing rules/behaviors that differ such as splitting of mail quotes) editor commands you need to call commands and receive updates in order to make any changes to the content on...
... getcommandstate "state_all"(boolean), "state_begin"(boolean), "state_
end"(boolean), "state_mixed"(boolean), "state_enabled" (boolean) docommand no parameters example normal bold cmd_italics toggles italics style on selection.
... getcommandstate "state_all"(boolean), "state_begin"(boolean), "state_
end"(boolean), "state_mixed"(boolean), "state_enabled" (boolean) docommand no parameters example normal italics cmd_underline toggles underline on selection.
...And 47 more matches
Browser Detection and Cross Browser Support - Archive of obsolete content
this article is int
ended to provide an overview of browser detection strategies and best practices.
... for more specific gecko recomm
endations, please see the gecko compatibility handbook gecko although many web developers are aware of firefox, mozilla, and netscape browsers, far fewer are aware that these browsers are members of an entire family of user agents based upon the gecko layout engine which includes the commercial browser compuserve 7, and open source browsers such as epiphany, galeon, camino, kmeleon, and seamonkey.
...browser v
endors such as netscape and microsoft competed to add compelling features to the html they supported in their browsers in order to provide the richest most compelling content to their users and to entice web authors to support them.
...And 46 more matches
Movement, orientation, and motion: A WebXR example - Web APIs
this will help to solidify your understanding of how the geometry of 3d graphics and vr work, as well as to help ensure you understand the way the functions and data that are used during xr r
endering work together.
...r
endering the scene for immersive presentation requires multiple r
enders of the scene—once from the perspective of each eye.
... when r
endering the left eye, the xrwebgllayer has its viewport configured to restrict drawing to the left half of the drawing surface.
...And 44 more matches
IDBObjectStore - Web APIs
recomm
endation indexed database api draftthe definition of 'idbobjectstore' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 42 more matches
x - SVG: Scalable Vector Graphics
thirty seven elements are using this attribute: <altglyph>, <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>, <fefunca>, <fefuncb>, <fefuncg>, <fefuncr>, <fegaussianblur>, <feimage>, <femerge>, <femergenode>, <femorphology>, <feoffset>, <fepointlight>, <fespecularlighting>, <fespotlight>, <fetile>, <feturbulence>, <filter>, <foreignobject>, <glyphref>, <image>, <mask>, <pattern>, <rect>, <svg>, <text>, <tref>, <tspan>, and <use> html,body,svg { height:100% } <svg viewbox="0 0 300 100" xmlns="http://www.w3.org/2000/svg"> <rect x="20" y="20" width="60" height="60" /> <rect x="120" y="20" width="60" height=...
... value list of <length> default value none animatable yes febl
end for <febl
end>, x defines the minimum x coordinate for the r
endering area of the primitive.
... value <length> | <percentage> default value 0% animatable yes fecolormatrix for <fecolormatrix>, x defines the minimum x coordinate for the r
endering area of the primitive.
...And 42 more matches
CSS3 - Archive of obsolete content
css3 is the latest evolution of the cascading style sheets language and aims at ext
ending css2.1.
...experimental parts are v
endor-prefixed and should either be avoided in production environments, or used with extreme caution as both their syntax and semantics can change in the future.
... modules and the standardization process css level 2 needed 9 years, from august 2002 to june 2011 to reach the recomm
endation status.
...And 41 more matches
HTML documentation index - HTML: Hypertext Markup Language
23 itemref attribute, global attribute, html, html microdata, microdata, reference properties that are not desc
endants of an element with the itemscope attribute can be associated with an item using the global attribute itemref.
...note that it is recomm
ended for styles to be defined in a separate file or files.
...dep
ending on the element, the attribute can be a cors settings attribute.
...And 41 more matches
y - SVG: Scalable Vector Graphics
thirty seven elements are using this attribute: <altglyph>, <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>, <fefunca>, <fefuncb>, <fefuncg>, <fefuncr>, <fegaussianblur>, <feimage>, <femerge>, <femergenode>, <femorphology>, <feoffset>, <fepointlight>, <fespecularlighting>, <fespotlight>, <fetile>, <feturbulence>, <filter>, <foreignobject>, <glyphref>, <image>, <mask>, <pattern>, <rect>, <svg>, <text>, <tref>, <tspan>, and <use> html,body,svg { height:100% } <svg viewbox="0 0 100 300" xmlns="http://www.w3.org/2000/svg"> <rect y="20" x="20" width="60" height="60" /> <rect y="120" x="20" width="60" height=...
... value list of <length> default value none animatable yes febl
end for <febl
end>, y defines the minimum y coordinate for the r
endering area of the primitive.
... value <length> | <percentage> default value 0% animatable yes fecolormatrix for <fecolormatrix>, y defines the minimum y coordinate for the r
endering area of the primitive.
...And 41 more matches
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
if you're interested in more about gecko's msaa implementation, read gecko info for windows accessibility v
endors to learn how msaa clients can utilize gecko's msaa support.
... myth: msaa is too slow reality: assistive technology v
endors have found ways around most of the performance problems related to out-of-process com method calls.
... just make sure to have decent performance on your
end.
...And 40 more matches
Event reference
events can represent everything from basic user interactions to automated notifications of things happening in the r
endering model.
... load a resource and its dep
endent resources have finished loading.
... unload the document or a dep
endent resource is being unloaded.
...And 40 more matches
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 ext
end 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 whe...
...*/ awhole = araw = new ftaview(number(vinput) || 0); } if (ntranscrtype < 8) { var vsource, noutptlen, ncharstart, nchar
end, n
endidx, fgetinptchrsize, fgetinptchrcode; if (ntranscrtype & 4) { /* input is string */ vsource = vinput; noutptlen = ninptlen = vsource.length; ntranscrtype ^= this.encoding === "utf-32" ?
...math.max((noutptlen + noffset) % noutptlen, 0) : 0; n
endidx = nchar
end = (number.isinteger(nlength) ?
...And 38 more matches
Index
a trust anchor is just another x.509 certificate that is already known and has been deliberately marked as trusted by a software v
endor, administrators inside an organizational infrastructure, or the software user.
...data described as pem is a base64 encoded presentation of der, usually wrapped between human readable begin/
end lines.
... it's worth mentioning the ext
ended validation (ev) principle, which is an effort by software v
endors and cas to define a stricter set of rules for issuing certificates for web site certificates.
...And 37 more matches
Bytecode Descriptions
the result is always a string that dep
ends on the type of val.
...the iter object pushed by this instruction must not be used or removed from the stack except by jsop::moreiter and jsop::
enditer, or by error handling.
...code must not jump into or out of this region: control can enter only by executing jsop::iter and can exit only by executing a jsop::
enditer or by exception unwinding.
...And 36 more matches
Introduction to Public-Key Cryptography - Archive of obsolete content
encryption and decryption allow two communicating parties to disguise information they s
end to each other.
... the s
ender encrypts, or scrambles, information before s
ending it.
... authentication allows the recipient of information to determine its origin-that is, to confirm the s
ender's identity.
...And 34 more matches
Package management basics - Learn web development
previous overview: understanding client-side tools next in this article we'll look at package managers in some detail to understand how we can use them in our own projects — to install project tool dep
endencies, keep them up-to-date, and more.
... a dep
endency in your project a dep
endency is a third-party bit of software that was probably written by someone else and ideally solves a single problem for you.
... a web project can have any number of dep
endencies, ranging from none to many, and your dep
endencies might include sub-dep
endencies that you didn't explicitly install — your dep
endencies may have their own dep
endencies.
...And 34 more matches
sslfnc.html
important: this nss function is not int
ended for use with ssl, which requires that the certificate and key database files be opened.
... ssl_v2_compatible_hello tells the ssl library whether or not to s
end ssl3 client hello messages in ssl2-compatible format.
... keep the following in mind when deciding on the operating parameters you want to use with a particular socket: enabling the ssl_require_certificate option is not recomm
ended.
...And 34 more matches
Using XMLHttpRequest - Web APIs
to s
end an http request, create an xmlhttprequest object, open a url, and s
end the request.
... function reqlistener () { console.log(this.responsetext); } var oreq = new xmlhttprequest(); oreq.addeventlistener("load", reqlistener); oreq.open("get", "http://www.example.org/example.txt"); oreq.s
end(); types of requests a request made via xmlhttprequest can fetch the data in one of two ways, asynchronously or synchronously.
... handling binary data although xmlhttprequest is most commonly used to s
end and receive textual data, it can be used to s
end and receive binary content.
...And 34 more matches
nsISelectionController
inherits from: nsiselectiondisplay last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void characterext
endforbackspace(); native code only!
... void characterext
endfordelete(); native code only!
... void charactermove(in boolean forward, in boolean ext
end); boolean checkvisibility(in nsidomnode node, in short startoffset, in short
endoffset); void completemove(in boolean forward, in boolean ext
end); void completescroll(in boolean forward); boolean getcaretenabled(); short getdisplayselection(); nsiselection getselection(in short type); void intralinemove(in boolean forward, in boolean ext
end); void linemove(in boolean forward, in boolean ext
end); void pagemove(in boolean forward, in boolean ext
end); void repaintselection(in short type); void scrollhorizontal(in boolean left); void ...
...And 32 more matches
Writing WebSocket servers - Web APIs
the task of creating a custom server t
ends to scare people; however, it can be straightforward to implement a simple websocket server on your platform of choice.
...dep
ending on language support, knowledge of tcp sockets may be required.
...websocket servers are often separate and specialized servers (for load-balancing or other practical reasons), so you will often use a reverse proxy (such as a regular http server) to detect websocket handshakes, pre-process them, and s
end those clients to a real websocket server.
...And 32 more matches
jspage - Archive of obsolete content
eturn c;}return array.prototype.slice.call(b);}function $arguments(a){return function(){return arguments[a]; };}function $chk(a){return !!(a||a===0);}function $clear(a){cleartimeout(a);clearinterval(a);return null;}function $defined(a){return(a!=undefined);}function $each(c,b,d){var a=$type(c); ((a=="arguments"||a=="collection"||a=="array")?array:hash).each(c,b,d);}function $empty(){}function $ext
end(c,a){for(var b in (a||{})){c[b]=a[b];}return c; }function $h(a){return new hash(a);}function $lambda(a){return($type(a)=="function")?a:function(){return a;};}function $merge(){var a=array.slice(arguments); a.unshift({});return $mixin.apply(null,a);}function $mixin(e){for(var d=1,a=arguments.length;d<a;d++){var b=arguments[d];if($type(b)!="object"){continue; }for(var c in b){var g=b[c],f=e[c];e[c]...
...veflash").getvariable("$version");})||"0 r0").match(/\d+/g);return{version:parseint(a[0]||0+"."+a[1],10)||0,build:parseint(a[2],10)||0}; })();function $exec(b){if(!b){return b;}if(window.execscript){window.execscript(b);}else{var a=document.createelement("script");a.setattribute("type","text/javascript"); a[(browser.engine.webkit&&browser.engine.version<420)?"innertext":"text"]=b;document.head.app
endchild(a);document.head.removechild(a);}return b;}native.uid=1; var $uid=(browser.engine.trident)?function(a){return(a.uid||(a.uid=[native.uid++]))[0];}:function(a){return a.uid||(a.uid=native.uid++);};var window=new native({name:"window",legacy:(browser.engine.trident)?null:window.window,initialize:function(a){$uid(a); if(!a.element){a.element=$empty;if(browser.engine.webkit){a.document.createelem...
...ent("iframe");}a.element.prototype=(browser.engine.webkit)?window["[[domelement.prototype]]"]:{}; }a.document.window=a;return $ext
end(a,window.prototype);},afterimplement:function(b,a){window[b]=window.prototype[b]=a;}});window.prototype={$family:{name:"window"}}; new window(window);var document=new native({name:"document",legacy:(browser.engine.trident)?null:window.document,initialize:function(a){$uid(a);a.head=a.getelementsbytagname("head")[0]; a.html=a.getelementsbytagname("html")[0];if(browser.engine.trident&&browser.engine.version<=4){$try(function(){a.execcommand("backgroundimagecache",false,true); });}if(browser.engine.trident){a.window.attachevent("onunload",function(){a.window.detachevent("onunload",arguments.callee);a.head=a.html=a.window=null; });}return $ext
end(a,document.prototyp...
...And 31 more matches
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
xml documents 1.0, fragment identifier for xml xsl transformations: xslt 1.0 xml path language: xpath 1.0 resource description framework: rdf simple object access protocol: soap 1.1 ecma-262, revision 3 (javascript 1.5): ecma-262 general cross-browser coding tips even though web standards do exist, different browsers behave differently (in fact, the same browser may behave differently dep
ending on the platform).
... some older browsers, such as internet explorer, had such quirks as allowing you to use entities by replacing the ; (semi-colon) character at the
end with regular text content:   foo    foo internet explorer will r
ender the above   as white spaces, even though that is against the w3c specification.
...methods mozilla uses to manipulate content method description app
endchild( anode ) creates a new child node.
...And 31 more matches
Introduction to client-side frameworks - Learn web development
mdn web docs, which you are currently reading this on, uses the react/reactdom framework to power its front
end.
... vue, like angularjs, ext
ends html with some of its own code.
...react itself is not technically a framework; it's a library for r
endering ui components.
...And 31 more matches
IAccessibleText
other-licenses/ia2/accessibletext.idlnot scriptable a structure containing a substring and the start and
end offsets in the enclosing string.
...method overview hresult addselection([in] long startoffset, [in] long
endoffset ); [propget] hresult attributes([in] long offset, [out] long startoffset, [out] long
endoffset, [out] bstr textattributes ); [propget] hresult caretoffset([out] long offset ); [propget] hresult characterextents([in] long offset, [in] enum ia2coordinatetype coordtype, [out] long x, [out] long y, [out] long width, [out] long height ); [propget] hresult ncharacters([out] long ncharacte...
...hresult newtext([out] ia2textsegment newtext ); [propget] hresult nselections([out] long nselections ); [propget] hresult offsetatpoint([in] long x, [in] long y, [in] enum ia2coordinatetype coordtype, [out] long offset ); [propget] hresult oldtext([out] ia2textsegment oldtext ); hresult removeselection([in] long selectionindex ); hresult scrollsubstringto([in] long startindex, [in] long
endindex, [in] enum ia2scrolltype scrolltype ); hresult scrollsubstringtopoint([in] long startindex, [in] long
endindex, [in] enum ia2coordinatetype coordinatetype, [in] long x, [in] long y ); [propget] hresult selection([in] long selectionindex, [out] long startoffset, [out] long
endoffset ); hresult setcaretoffset([in] long offset ); hresult setselection([in] long selectionindex, [in] long ...
...And 31 more matches
Starting up and shutting down a WebXR session - Web APIs
before you can begin to r
ender your augmented or virtual reality scenario, you need to create and set up the webxr session, and you should know how to shut it down properly as well.
... be sure to read the readme carefully; the polyfill comes in several versions dep
ending on what degree of compatibility with newer javascript features your target browsers include.
...setting it to null signals that the polyfill can be garbage collected when no objects dep
ending on it are using it anymore.
...And 31 more matches
HTTP Index - HTTP
45 http cookies advertising, browser, cookies, cookies article, guide, http, history, javascript, privacy, protocols, server, storage, web development, data, request, tracking an http cookie (web cookie, browser cookie) is a small piece of data that a server s
ends to the user's web browser.
... the browser may store it and s
end it back with the next request to the same server.
...browsers set adequate values for this header dep
ending on the context where the request is done: when fetching a css stylesheet a different value is set for the request than when fetching an image, video or a script.
...And 31 more matches
Populating the page: how browsers work - Web Performance
to be fast to load, the developers’ goals include s
ending requested information as fast as possible, or at least seem super fast.
...r
ender time is key, with ensuring the main thread can complete all the work we throw at it and still always be available to handle user interactions.
... web performance can be improved by understanding the single-threaded nature of the browser and minimizing the main thread's responsibilities, where possible and appropriate, to ensure r
endering is smooth and responses to interactions are immediate.
...And 31 more matches
height - SVG: Scalable Vector Graphics
twenty five elements are using this attribute: <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>, <fegaussianblur>, <feimage>, <femerge>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile>, <feturbulence>, <filter>, <foreignobject>, <image>, <mask>, <pattern>, <rect>, <svg>, and <use> html,body,svg { height:100% } <svg viewbox="0 0 300 100" xmlns="http://www.w3.org/2000/svg"> <!-- with a height of 0 or less, nothing will be r
endered --> <rect y="0" x="0" width="90" height="0"/> <rect y="0" x="100" width="90" height="60"/> <rect y="0" x="200" width="90" height="100%"/> </svg> ...
... febl
end for <febl
end>, height defines the vertical length for the r
endering area of the primitive.
... value <length> | <percentage> default value 100% animatable yes fecolormatrix for <fecolormatrix>, height defines the vertical length for the r
endering area of the primitive.
...And 31 more matches
width - SVG: Scalable Vector Graphics
twenty five elements are using this attribute: <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>, <fegaussianblur>, <feimage>, <femerge>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile>, <feturbulence>, <filter>, <foreignobject>, <image>, <mask>, <pattern>, <rect>, <svg>, and <use> html,body,svg { height:100% } <svg viewbox="0 0 100 300" xmlns="http://www.w3.org/2000/svg"> <!-- with a width of 0 or less, nothing will be r
endered --> <rect x="0" y="0" width="0" height="90"/> <rect x="0" y="100" width="60" height="90"/> <rect x="0" y="200" width="100%" height="90"/> </svg> ...
... febl
end for <febl
end>, width defines the horizontal length for the r
endering area of the primitive.
... value <length> | <percentage> default value 100% animatable yes fecolormatrix for <fecolormatrix>, width defines the horizontal length for the r
endering area of the primitive.
...And 31 more matches
Mozilla’s UAAG evaluation report
software that r
enders web content.
...this document is based on the september 12, 2001 candidate recomm
endation of uaag 1.0.
...support input and output device-indep
endence.
...And 30 more matches
IME handling guide
it handles native key events before or after focused application (dep
ending on the platform) and creates a composition string (a.k.a.
... basically, composition string and each clause style is r
endered by gecko.
...in native code, you can access it with either nsiselectioncontroller or mozilla::selectiontype (the latter is recomm
ended because of type safer).
...And 30 more matches
JavaScript Daemons Management - Archive of obsolete content
so the minidaemon framework will remain the recomm
ended way for simple animations, because daemon without its collection of methods is essentially a clone of it.
... javascript timers (both setinterval and settimeout) optimisation (avoiding closures) modularity the code the code of this framework is split into three files: daemon.js (the core) daemon-safe.js (an extension of the core which adds a replacement of setinterval with a recursive invocation of settimeout) daemon-methods.js (a wide and highly scalable collection of methods) the only indep
endent module is daemon.js: both the daemon-safe.js module and the daemon-methods.js module require daemon.js to work.
... about the “callback arguments” polyfill in order to make this framework compatible with internet explorer (which doesn't support s
ending additional parameters to timers' callback function, neither with settimeout() or setinterval()) we included the ie-specific compatibility code (commented code), which enables the html5 standard parameters' passage functionality in that browser for both timers (polyfill), at the
end of the daemon.js module.
...And 29 more matches
Index - Archive of obsolete content
275 p
ending reference, xul, xul attributes no summary!
...this method has a number of options to specify text or binary writing, the character set, and whether to app
end to an existing file or create a new one.
... 451 app
endcustomtoolbar xul methods, xul reference no summary!
...And 29 more matches
Document - Web APIs
dep
ending on the document's type (e.g.
... document.compatmode read only indicates whether the document is r
endered in quirks or strict mode.
...possible values are visible, hidden, prer
ender, and unloaded.
...And 29 more matches
Fullscreen API - Web APIs
the fullscreen api adds methods to present a specific element (and its desc
endants) in full-screen mode, and to exit full-screen mode once it is no longer needed.
... note: support for this api varies somewhat across browsers, with many requiring v
endor prefixes and/or not implementing the latest specification.
...you may wish to consider using a library such as fscreen for v
endor agnostic access to the fullscreen api.
...And 29 more matches
Inputs and input sources - Web APIs
to that
end, webxr provides support for a variety of kinds of input devices.
...the target ray should ext
end outward from between the eyes in a direction perp
endicular to the viewer's face.
... more flexible is the tracked-pointer mode, in which the ray's origin is at a handheld controller or hand tracking system's origin and ext
ends outward in the direction in which the controller is pointing.
...And 29 more matches
window.location - Web APIs
dialog: function showloc() { var olocation = location, alog = ["property (typeof): value", "location (" + (typeof olocation) + "): " + olocation ]; for (var sprop in olocation){ alog.push(sprop + " (" + (typeof olocation[sprop]) + "): " + (olocation[sprop] || "n/a")); } alert(alog.join("\n")); } // in html: <button onclick="showloc();">show location properties</button> example #5: s
end a string of data to the server by modifying the search property: function s
enddata (sdata) { location.search = sdata; } // in html: <button onclick="s
enddata('some data');">s
end data</button> the current url with "?some%20data" app
ended is sent to the server (if no action is taken by the server, the current document is reloaded with the modified search string).
...susp
endisse quam libero, luctus auctor mollis sed, malesuada condimentum magna.
...nam turpis nunc, suscipit a h
endrerit vitae, volutpat non ipsum.</p> <p>duis lobortis sapien quis nisl luctus porttitor.
...And 29 more matches
JXON - Archive of obsolete content
conversion snippets now imagine you have this sample xml document: example.xml <?xml version="1.0"?> <!doctype catalog system "catalog.dtd"> <catalog> <product description="cardigan sweater"> <catalog_item g
ender="men's"> <item_number>qwz5671</item_number> <price>39.95</price> <size description="medium"> <color_swatch image="red_cardigan.jpg">red</color_swatch> <color_swatch image="burgundy_cardigan.jpg">burgundy</color_swatch> </size> <size description="large"> <color_swatch image="red_cardigan.jpg">red</color_swatch> <color_swatch image="burgundy_ca...
...rdigan.jpg">burgundy</color_swatch> </size> </catalog_item> <catalog_item g
ender="women's"> <item_number>rrx9856</item_number> <discount_until>dec 25, 1995</discount_until> <price>42.50</price> <size description="medium"> <color_swatch image="black_cardigan.jpg">black</color_swatch> </size> </catalog_item> </product> <script type="text/javascript"><![cdata[function matchwo(a,b) { if (a < b && a < 0) { return 1; } else { return 0; } }]]></script> </catalog> first, create a dom tree like the previous example as described in the how to create a dom tree article.
... in order to avoid conflicts, the representation of nodes and attributes names is case insensitive (always r
endered in lower case), so objects' local property names set using javascript must always have some kind of capitalization (that is, at least one capital letter somewhere in their names), as you can see below.
...And 28 more matches
Framework main features - Learn web development
this article will explore the main features of “the big 4” frameworks, looking at how frameworks t
end to work from a high level, and the differences between them.
... when used with react, the jsx from the previous snippet would be compiled into this: var subject = "world"; var header = react.createelement("header", null, react.createelement("h1", null, "hello, ", subject, "!") ); when ultimately r
endered by the browser, the above snippet will produce html that looks like this: <header> <h1>hello, world!</h1> </header> handlebars the handlebars templating language is not specific to ember applications, but it is heavily utilized in ember apps.
... given this handlebars template: <header> <h1>hello, {{subject}}!</h1> </header> and this data: { subject: "world" } handlebars will build html like this: <header> <h1>hello, world!</h1> </header> typescript typescript is a superset of javascript, meaning it ext
ends javascript — all javascript code is valid typescript, but not the other way around.
...And 28 more matches
Using DTMF with WebRTC - Web APIs
in order to more fully support audio/video conferencing, webrtc supports s
ending dtmf to the remote peer on an rtcpeerconnection.
... this article offers a brief high-level overview of how dtmf works over webrtc, then provides a guide for everyday developers about how to s
end dtmf over an rtcpeerconnection.
... webrtc doesn't s
end dtmf codes as audio data.
...And 28 more matches
nsITextInputProcessor
the following example sets "foo-bar-buzz", "bar" is selected clause to convert, and caret position is the
end of the selected clause: // first, sets composition string.
... tip.setp
endingcompositionstring("foo-bar-buzz"); // next, app
end clauses.
... tip.app
endclausetop
endingcomposition("foo-".length, tip.attr_converted_clause); tip.app
endclausetop
endingcomposition("bar".length, tip.attr_selected_clause); tip.app
endclausetop
endingcomposition("-buzz".length, tip.attr_converted_clause); // then, sets the caret if you need tip.setcaretinp
endingcomposition("foo-bar".length); // finally, flush the p
ending composition on the focused editor if (!tip.flushp
endingcomposition()) { return; // composition is not started } if there is no composition, flushp
endingcomposition() starts composition with dispatching compositionstart event automatically.
...And 27 more matches
Applying styles and colors - Web APIs
linecap = type sets the appearance of the
ends of lines.
...in other words, the area that's drawn ext
ends to half the line width on either side of the path.
... if you consider a path from (3,1) to (3,5) with a line thickness of 1.0, you
end up with the situation in the second image.
...And 27 more matches
WebGL best practices - Web APIs
webgl is a complicated api, and it's often not obvious what the recomm
ended ways to use it are.
... this page tackles recomm
endations across the spectrum of expertise, and not only highlights dos and don'ts, but also details why.
... know your limits (and extensions) the availability of most webgl extensions dep
ends on the client system.
...And 27 more matches
Codecs used by WebRTC - Web media technologies
sdp supports a codec-indep
endent way to specify preferred video resolutions (rfc 6236.
... this is done by s
ending an a=imageattr sdp attribute to indicate the maximum resolution that is acceptable.
... the s
ender is not required to support this mechanism, however, so you have to be prepared to receive media at a different resolution than you requested.
...And 27 more matches
The Joy of XUL - Archive of obsolete content
finally, a mini case study of a cal
endar application written in xul will reinforce the benefits of building applications with mozilla.
... key features and benefits powerful widget-based markup language the goal of xul is to build cross platform applications, in contrast with dhtml which is int
ended for developing web pages.
...the layout and appearance of xul applications can be altered indep
endently of the application definition and logic.
...And 26 more matches
Using Objective-C from js-ctypes
s
end a message to the class, with the selector.
... typedef struct objc_selector *sel; in this example, we need to s
end alloc, its selector can be retrieved with the following code: sel alloc = sel_registername("alloc"); s
ending a message once target class and selector are ready, you can s
end a message.
... this message can be sent using the objc_msgs
end function, and its variants, which are declared in /usr/include/objc/message.h.
...And 26 more matches
HTML elements reference - HTML: Hypertext Markup Language
all other elements must be desc
endants of this element.
...this includes information about styles, scripts and data to help software (search engines, browsers, etc.) use and r
ender the page.
... <article> the html <article> element represents a self-contained composition in a document, page, application, or site, which is int
ended to be indep
endently distributable or reusable (e.g., in syndication).
...And 26 more matches
Web video codec guide - Web media technologies
some details may be lost; the amount of loss dep
ends on the codec and how it's configured, but as a general rule, the more compression you achieve, the more loss of detail and fidelity will occur.
... effect of source video format on encoded output the degree to which the format of the source video will affect the output varies dep
ending on the codec and how it works.
...some have trouble with specific kinds of shapes and patterns, or aren't good at replicating sharp edges, or t
end to lose detail in dark areas, or any number of possibilities.
...And 26 more matches
OS.File for the main thread
return promise.resolve(true); // loop
end.
...nt.createelementns('http://www.w3.org/1999/xhtml', 'canvas'); canvas.width = img.naturalwidth; canvas.height = img.naturalheight; var ctx = canvas.getcontext('2d'); ctx.drawimage(img, 0, 0); (canvas.toblobhd || canvas.toblob).call(canvas, function(b) { var r = cc['@mozilla.org/files/filereader;1'].createinstance(ci.nsidomfilereader); //new filereader(); r.onload
end = function() { // r.result contains the arraybuffer.
...eason:', areason); } ); }; r.readasarraybuffer(b); }, 'image/png'); }; //var path = os.path.tofileuri(os.path.join(os.contants.path.desktopdir, 'my.png')); //do it like this for images on disk var path = 'https://mozorg.cdn.mozilla.net/media/img/firefox/channel/toggler-beta.png?2013-06'; //do like this for images online img.src = path; example: app
end to file this example shows how to use open, write, and close to app
end to a file.
...And 25 more matches
nsIAccessibleText
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void addselection(in long startoffset, in long
endoffset); nsiaccessible getattributerange(in long offset, out long rangestartoffset, out long range
endoffset); obsolete since gecko 1.9.1 wchar getcharacteratoffset(in long offset); void getcharacterextents(in long offset, out long x, out long y, out long width, out long height, in unsigned long coordtype); long getoffsetatpoint(in long x, in long y, in unsigned long coordtype); void getrangeextents(in long startoffset, in long
endoffset, out long x, out long y, out long width, out long height, in unsigned long co...
...ordtype); void getselectionbounds(in long selectionnum, out long startoffset, out long
endoffset); astring gettext(in long startoffset, in long
endoffset); astring gettextafteroffset(in long offset, in nsaccessibletextboundary boundarytype, out long startoffset, out long
endoffset); astring gettextatoffset(in long offset, in nsaccessibletextboundary boundarytype, out long startoffset, out long
endoffset); nsipersistentproperties gettextattributes(in boolean includedefattrs, in long offset, out long rangestartoffset, out long range
endoffset); astring gettextbeforeoffset(in long offset, in nsaccessibletextboundary boundarytype, out long startoffset, out long
endoffset); void removeselection(in long selectionnum); void scrollsubstringto(in long startindex, in long
endindex, in ...
...unsigned long scrolltype); void scrollsubstringtopoint(in long startindex, in long
endindex, in unsigned long coordinatetype, in long x, in long y); void setselectionbounds(in long selectionnum, in long startoffset, in long
endoffset); attributes attribute type description caretoffset long the current current caret offset.
...And 25 more matches
IDBIndex - Web APIs
+ '<td>' + cursor.value.fname + '</td>' + '<td>' + cursor.value.jtitle + '</td>' + '<td>' + cursor.value.company + '</td>' + '<td>' + cursor.value.email + '</td>' + '<td>' + cursor.value.phone + '</td>' + '<td>' + cursor.value.age + '</td>'; tableentry.app
endchild(tablerow); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'idbindex' in that specification.
... recomm
endation indexed database api draftthe definition of 'idbindex' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 25 more matches
Viewpoints and viewers: Simulating cameras in WebXR - Web APIs
our r
enderer needs to know where we imagine the camera to be, then alter the position of every visible object to simulate that position and orientation.
...some examples of ways 3d cameras are used: when r
endering animation—whether for filmmaking or for use within the context of a presentation or game—the virtual camera is used just like a real-world film camera.
... in business applications, the 3d camera is used to simply set the apparent size and perspective when r
endering things such as graphs and charts.
...And 25 more matches
d - SVG: Scalable Vector Graphics
://www.w3.org/2000/svg"> <path fill="none" stroke="red" d="m 10,10 h 10 m 0,10 h 10 m 0,10 h 10 m 40,20 h 10 m 0,10 h 10 m 0,10 h 10 m 0,10 h 10 m 50,50 h 10 m-20,10 h 10 m-20,10 h 10 m-20,10 h 10" /> </svg> lineto path commands lineto instructions draw a straight line from the current point (po; {xo, yo}) to the
end point (pn; {xn, yn}), based on the parameters specified.
... the
end point (pn) then becomes the current point for the next command (po′).
... command parameters notes l (x, y)+ draw a line from the current point to the
end point specified by x,y.
...And 25 more matches
Drawing graphics - Learn web development
this became webgl, which gained traction among browser v
endors, and was standardized around 2009–2010.
...for example, if you were r
endering a constantly updating graph of stock prices, the fallback content could be a static image of the latest stock graph, with alt text saying what the prices are in text.
...you could use css, but the trouble then is that the sizing is done after the canvas has r
endered, and just like any other image (the r
endered canvas is just an image), the image could become pixellated/distorted.
...And 24 more matches
Index
this page is int
ended to explain the changes that are happening, with a focus on how they will affect gecko code that uses jsapi.
...all tips listed here are dealing with the javascript shell obtained at the
end of the build documentation of spidermonkey.
... 101 jsext
endedclass jsapi reference, obsolete, spidermonkey to implement a custom class that uses any of the jsext
endedclass callbacks: 102 jsext
endedclass.outerobject jsapi reference, obsolete, spidermonkey see split objects.
...And 24 more matches
WebRTC connectivity - Web APIs
they will then s
end this offer to peer b using the chosen signal channel.
...they will then s
end this back to peer a along the signal channel.
... session descriptions the configuration of an
endpoint on a webrtc connection is called a session description.
...And 24 more matches
Getting started with React - Learn web development
it's used with other libraries to r
ender to certain environments.
...these components can be composed together to create a full ui, and react abstracts away much of the r
endering work, leaving you to concentrate on the ui design.
... this article is going to focus on the use case of using react to r
ender the entire user interface of an application, using tooling provided by facebook’s own create-react-app tool.
...And 23 more matches
source-editor.jsm
ing astring, [optional] object options); number findnext(boolean awrap); number findprevious(boolean awrap); event management void addeventlistener(string aeventtype, function acallback); void removeeventlistener(string aeventtype, function acallback); undo stack operations boolean canredo(); boolean canundo(); void
endcompoundchange(); boolean redo(); void resetundo(); void startcompoundchange(); boolean undo(); display management operations void focus(); number gettopindex(); boolean hasfocus(); void settopindex(number atopindex); content management operations number getcharcount(); string getindentations...
...tring(); string getlinedelimiter(); number getlinecount(); number getline
end(number alineindex, boolean aincludedelimiter); number getlinestart(number alineindex); string getmode(); string gettext([optional] number astart, [optional] number a
end); string getselectedtext(); void setmode(string amode); void settext(string atext, [optional] number astart, [optional] number a
end); selection operations void dropselection(); number getcaretoffset(); object getcaretposition(); object getselection(); void setcaretoffset(number aoffset); void setcaretposition(number aline, [optional] number acolumn, [optional] number aalign); void setselection(numbe...
...r astart, number a
end); breakpoint management void addbreakpoint(number alineindex, [optional] string acondition); array getbreakpoints(); boolean removebreakpoint(number alineindex); properties attribute type description dirty boolean set this value to false whenever you save the text; the editor will update it to true when the content is changed.
...And 23 more matches
How Mozilla's build system works
note: this document is not int
ended for developers who just want to build mozilla.
... phases when you type mach build to build the tree, three high-level phases occur within the build system: system detection and validation preparation of the build back
end invocation of the build back
end phase 1: configure phase 1 centers around the configure script.
... 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 back
end.
...And 22 more matches
Establishing a connection: The WebRTC perfect negotiation pattern - Web APIs
however, despite that flexibility in transport and communication of signaling messages, there's still a recomm
ended design pattern you should follow when possible, known as perfect negotiation.
... this article introduces webrtc perfect negotiation, describing how it works and why it's the recomm
ended way to negotiate a webrtc connection between peers, and provides sample code to demonstrate the technique.
...negotiation is an inherently asymmetric operation: one side needs to serve as the "caller" while the other peer is the "callee." the perfect negotiation pattern smooths this difference away by separating that difference out into indep
endent negotiation logic, so that your application doesn't need to care which
end of the connection it is.
...And 22 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
the html <input> element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, dep
ending on the device and user agent.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... <input> types how an <input> works varies considerably dep
ending on the value of its type attribute, hence the different types are covered in their own separate reference pages.
...And 22 more matches
Index - HTTP
browsers set adequate values for this header dep
ending on the context where the request is done: when fetching a css stylesheet a different value is set for the request than when fetching an image, video or a script.
... 7 access-control-allow-credentials cors, http, reference, header the access-control-allow-credentials response header tells browsers whether to expose the response to front
end javascript code when the request's credentials mode (request.credentials) is "include".
... 24 content-language http, headers, reference the content-language entity header is used to describe the language(s) int
ended for the audience, so that it allows a user to differentiate according to the users' own preferred language.
...And 22 more matches
Introduction to SSL - Archive of obsolete content
this document is primarily int
ended for administrators of red hat server products, but the information it contains may also be useful for developers of applications that support ssl.
...this confirmation might be important if the user, for example, is s
ending a credit card number over the network and wants to check the receiving server's identity.
...this confirmation might be important if the server, for example, is a bank s
ending confidential financial information to a customer and wants to check the recipient's identity.
...And 21 more matches
Looping code - Learn web development
in pseudocode, this would look something like the following: loop(food = 0; foodneeded = 10) { if (food >= foodneeded) { exit loop; // we have enough food; let's go home } else { food += 2; // sp
end an hour collecting 2 more food // loop will then run again } } so the amount of food needed is set at 10, and the amount the farmer currently has is set at 0.
...if not, the farmer sp
ends an hour collecting two portions of food, and the loop runs again.
... inside the loop, we concatenate the current loop item (cats[i] , which is cats[whatever i is at the time]) along with a comma and space, onto the
end of the info variable.
...And 21 more matches
Animated PNG graphics
it is int
ended to be a replacement for simple animated images that have traditionally used the gif format, while adding support for 24-bit images and 8-bit transparency.
...it is strongly recomm
ended that when any error is encountered decoders should discard all subsequent frames, stop the animation, and revert to displaying the default image.
...information for each frame about placement and r
endering is stored in 'fctl' chunks.
...And 21 more matches
Traversing an HTML table with JavaScript and DOM Interfaces - Web APIs
element var tbl = document.createelement("table"); var tblbody = document.createelement("tbody"); // creating all cells for (var i = 0; i < 2; i++) { // creates a table row var row = document.createelement("tr"); for (var j = 0; j < 2; j++) { // create a <td> element and a text node, make the text // node the contents of the <td>, and put the <td> at // the
end of the table row var cell = document.createelement("td"); var celltext = document.createtextnode("cell in row "+i+", column "+j); cell.app
endchild(celltext); row.app
endchild(cell); } // add the row to the
end of the table body tblbody.app
endchild(row); } // put the <tbody> in the <table> tbl.app
endchild(tblbody); // app
ends <table> into <body> body.
...app
endchild(tbl); // sets the border attribute of tbl to 2; tbl.setattribute("border", "2"); } note the order in which we created the elements and the text node: first we created the <table> element.
... once we have created the <table>, <tbody>, <tr>, and <td> elements, and then the text node, we then app
end each object to its parent in the opposite order: first, we attach each text node to its parent <td> element using cell.app
endchild(celltext); next, we attach each <td> element to its parent <tr> element using row.app
endchild(cell); next, we attach each <tr> element to the parent <tbody> element using tblbody.app
endchild(row); next, we attach the <tbody> element to its parent <t...
...And 21 more matches
Linear-gradient Generator - CSS: Cascading Style Sheets
*****************************************/ colorpicker.prototype.createpickingarea = function createpickingarea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'picking-area'; picker.classname = 'picker'; this.picking_area = area; this.color_picker = picker; setmousetracking(area, this.updatecolor.bind(this)); area.app
endchild(picker); this.node.app
endchild(area); }; colorpicker.prototype.createhuearea = function createhuearea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'hue'; picker.classname ='slider-picker'; this.hue_area = area; this.hue_picker = picker; setmousetracking(area, this.updatehueslider.bind(this)); area.app
endchi...
...ld(picker); this.node.app
endchild(area); }; colorpicker.prototype.createalphaarea = function createalphaarea() { var mask = document.createelement('div'); var picker = document.createelement('div'); mask.classname = 'alpha'; picker.classname = 'slider-picker'; this.alpha_mask = mask; this.alpha_picker = picker; setmousetracking(mask, this.updatealphaslider.bind(this)); mask.app
endchild(picker); this.node.app
endchild(mask); }; colorpicker.prototype.createpreviewbox = function createpreviewbox(e) { var preview_box = document.createelement('div'); var preview_color = document.createelement('div'); preview_box.classname = 'preview'; preview_color.classname = 'preview-color'; this.preview_color = preview_color; preview_box.app
endchild(preview_color); t...
...his.node.app
endchild(preview_box); }; colorpicker.prototype.newinputcomponent = function newinputcomponent(title, topic, onchangefunc) { var wrapper = document.createelement('div'); var input = document.createelement('input'); var info = document.createelement('span'); wrapper.classname = 'input'; wrapper.setattribute('data-topic', topic); info.textcontent = title; info.classname = 'name'; input.setattribute('type', 'text'); wrapper.app
endchild(info); wrapper.app
endchild(input); this.node.app
endchild(wrapper); input.addeventlistener('change', onchangefunc); input.addeventlistener('click', function() { this.select(); }); this.subscribe(topic, function(value) { input.value = value; }); }; colorpicker.prototype.createchangemodebutton = function cre...
...And 21 more matches
background-size - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... intrinsic dimensions and proportions the computation of values dep
ends on the image's intrinsic dimensions (width and height) and intrinsic proportions (width-to-height ratio).
... based on the intrinsic dimensions and proportions, the r
endered size of the background image is computed as follows: if both components of background-size are specified and are not auto: the background image is r
endered at the specified size.
...And 21 more matches
Introducing a complete toolchain - Learn web development
in addition, you should include tests before you deploy to your production server to ensure your software works as int
ended — this already sounds like a necessary toolchain.
... creating a development environment this part of the toolchain is sometimes seen to be delaying the actual work, and it can be very easy to fall into a "rabbit hole" of tooling where you sp
end a lot of time trying to get the environment "just right".
... your toolchain will dep
end on your own needs, but for this example of a (possible) complete toolchain, the tools that will be installed up front will be: library installation tools — for adding dep
endencies.
...And 20 more matches
RTCPeerConnection - Web APIs
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 rtcpeerconnection finished negotiating and connecting to a remote peer.
... also included is a list of any ice candidates that may already have been generated by the ice agent since the offer or answer represented by the description was first instantiated.currentremotedescription read only the read-only property rtcpeerconnection.currentremotedescription returns an rtcsessiondescription object describing the remote
end of the connection as it was most recently successfully negotiated since the last time the rtcpeerconnection finished negotiating and connecting to a remote peer.
...this lets you detect, for example, when collection of ice candidates has finished.localdescription read only the read-only property rtcpeerconnection.localdescription returns an rtcsessiondescription describing the session for the local
end of the connection.
...And 20 more matches
WebGL model view projection - Web APIs
these matrices can be composed together and grouped in special ways to make them useful for r
endering complicated 3d scenes.
...these matrices are core to moving data around on the screen, and are concepts that transc
end individual frameworks and engines.
...any data which ext
ends outside of the clip space is clipped off and not r
endered.
...And 20 more matches
Color picker tool - CSS: Cascading Style Sheets
*****************************************/ colorpicker.prototype.createpickingarea = function createpickingarea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'picking-area'; picker.classname = 'picker'; this.picking_area = area; this.color_picker = picker; setmousetracking(area, this.updatecolor.bind(this)); area.app
endchild(picker); this.node.app
endchild(area); }; colorpicker.prototype.createhuearea = function createhuearea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'hue'; picker.classname ='slider-picker'; this.hue_area = area; this.hue_picker = picker; setmousetracking(area, this.updatehueslider.bind(this)); area.app
endchi...
...ld(picker); this.node.app
endchild(area); }; colorpicker.prototype.createalphaarea = function createalphaarea() { var area = document.createelement('div'); var mask = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'alpha'; mask.classname = 'alpha-mask'; picker.classname = 'slider-picker'; this.alpha_area = area; this.alpha_mask = mask; this.alpha_picker = picker; setmousetracking(area, this.updatealphaslider.bind(this)); area.app
endchild(mask); mask.app
endchild(picker); this.node.app
endchild(area); }; colorpicker.prototype.createpreviewbox = function createpreviewbox(e) { var preview_box = document.createelement('div'); var preview_color = document.createelement('div'); preview_box.classname = 'preview'; ...
... preview_color.classname = 'preview-color'; this.preview_color = preview_color; preview_box.app
endchild(preview_color); this.node.app
endchild(preview_box); }; colorpicker.prototype.newinputcomponent = function newinputcomponent(title, topic, onchangefunc) { var wrapper = document.createelement('div'); var input = document.createelement('input'); var info = document.createelement('span'); wrapper.classname = 'input'; wrapper.setattribute('data-topic', topic); info.textcontent = title; info.classname = 'name'; input.setattribute('type', 'text'); wrapper.app
endchild(info); wrapper.app
endchild(input); this.node.app
endchild(wrapper); input.addeventlistener('change', onchangefunc); input.addeventlistener('click', function() { this.select(); }); this.s...
...And 20 more matches
Scaling of SVG backgrounds - CSS: Cascading Style Sheets
if the image has an intrinsic ratio (that is, its width:height ratio is constant, such as 16:9, 4:3, 2.39:1, 1:1, and so forth), the r
endered size preserves that ratio.
... if none of the above cases are met, the image is r
endered at the same size as the background area.
... in each case, we show what the source image looks like r
endered in a 150x150 box, and provide a link to the svg source.
...And 20 more matches
JavaScript modules - JavaScript
browser support use of native javascript modules is dep
endent on the import and export statements; these are supported in browsers as follows: import desktopmobileserverchromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsimportchrome full support 61edge full support 1...
... full support 45safari ios full support 10.3samsung internet android full support 8.0nodejs full support 13.2.0notes full support 13.2.0notes notes modules must either have a filename
ending in .mjs, or the nearest parent package.json file must contain "type": "module".
... full support 12.0.0notes disabled notes modules must either have a filename
ending in .mjs, or the nearest parent package.json file must contain "type": "module".
...And 20 more matches
Web audio codec guide - Web media technologies
each channel may substantially increase the encoded audio size, dep
ending on contents and encoder settings.
... noise / hiss unwanted background noise or hiss t
ends to reduce audio quality both directly (by masking details of the foreground audio) and indirectly (by making the audio waveform more complicated and therefore difficult to reduce in size while maintaining precision).
... dep
ends on the codec; codecs typically have an internal sample format that may or may not be the same as the original sample size.
...And 20 more matches
xlink:href - SVG: Scalable Vector Graphics
the exact meaning of that link dep
ends on the context of each element using it.
... if the reference is to a <glyph> element and that glyph is available, then that glyph is r
endered instead of the characters that are inside of the <altglyph> element.
... if the reference is to an <altglyphdef> element, then if an appropriate set of alternate glyphs is located from processing the <altglyphdef> element, then those alternate glyphs are r
endered instead of the characters that are inside of the <altglyph> element.
...And 20 more matches
Mozilla release FAQ - Archive of obsolete content
the mozilla project started near the
end of life of the 4.x line of netscape communicator.
...gecko (formerly raptor) is the new html r
endering engine in mozilla.
... it features speed improvements, a more modular nature, and significantly less platform-dep
endant code.
...And 19 more matches
Introduction to the Real-time Transport Protocol (RTP) - Web APIs
rtp is a data transport protocol, whose mission is to move data between two
endpoints as efficiently as possible under current conditions.
... those conditions may be affected by everything from the underlying layers of the network stack to the physical network connection, the intervening networks, the performance of the remote
endpoint, noise levels, traffic levels, and so forth.
... while rtp is int
ended for use in latency-critical scenarios, it doesn't inherently offer any features that ensure qos.
...And 19 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 s
end and receive arbitrary data.
...first, we have a couple of buttons for establishing and closing the connection: <button id="connectbutton" name="connectbutton" class="buttonleft"> connect </button> <button id="disconnectbutton" name="disconnectbutton" class="buttonright" disabled> disconnect </button> then there's a box which contains the text input box into which the user can type a message to transmit, with a button to s
end the entered text.
... <div class="messagebox"> <label for="message">enter a message: <input type="text" name="message" id="message" placeholder="message text" inputmode="latin" size=60 maxlength=120 disabled> </label> <button id="s
endbutton" name="s
endbutton" class="buttonright" disabled> s
end </button> </div> finally, there's the little box into which we'll insert the messages.
...And 19 more matches
Fundamentals of WebXR - Web APIs
this includes both managing the process of r
endering the views needed to simulate the 3d experience and the ability to sense the movement of the headset or other motion sensing apparatus to provide the needed data to let you update the imagery shown to the user based on that movement.
... webxr is not a r
endering technology, and provides no features for actually managing 3d data or r
endering it to the display.
... this is an important fact to keep in mind; while webxr manages the timing, scheduling, and the various points of view relevant when drawing the scene, it does not actually know how to load and manage models, r
ender and texture them, and so forth.
...And 19 more matches
Browser detection using the user agent - HTTP
if the problem seems uncommon, it's worth checking if this bug has been reported to the browser v
endor via their bug tracking system (mozilla; webkit; blink; opera).
... your site needs to use a specific web feature that some browsers don't yet support, and you want to s
end those users to an older web site with fewer features but that you know will work.
... do you want to provide different html dep
ending on which browser is being used?
...And 19 more matches
Paths - SVG: Scalable Vector Graphics
while creating complex paths using an xml editor or text editor is not recomm
ended, understanding how they work will allow to identify and repair display issues in svgs.
...it is often placed at the
end of a path node, although not always.
... c x1 y1, x2 y2, x y (or) c dx1 dy1, dx2 dy2, dx dy the last set of coordinates here (x,y) specify where the line should
end.
...And 19 more matches
Graceful asynchronous programming with Promises - Learn web development
the application has a window with a list of the user's fri
ends, and clicking on a button next to a user starts a video call to that user.
...if we represented the above pseudo-code using asynchronous promises instead, we'd
end up with something like this: choosetoppings() .then(function(toppings) { return placeorder(toppings); }) .then(function(order) { return collectorder(order); }) .then(function(pizza) { eatpizza(pizza); }) .catch(failurecallback); this is much better — it is easier to see what is going on, we only need a single .catch() block to handle all the errors, it doesn't block the main thread (so ...
...as we said before, this object represents an intermediate state that is initially neither success nor failure — the official term for a promise in this state is p
ending.
...And 18 more matches
Dynamic behavior in Svelte: working with variables and props - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... objective: learn and put into practice some basic svelte concepts, like creating components, passing data using props, r
ender javascript expressions into our markup, modify the components state and iterating over lists.
...we want to iterate over each item in our todos array and r
ender the markup for each task, so let's do that now.
...And 18 more matches
Setting up your own test automation environment - Learn web development
how you install and use webdriver dep
ends on what programming environment you want to use to write and run your tests.
... we will cover writing and running selenium tests using node.js, as it is quick and easy to get started, and a more familiar environment for front
end devs.
... create a new file inside your project directory called google_test.js: give it the following contents, then save it: const webdriver = require('selenium-webdriver'), by = webdriver.by, until = webdriver.until; const driver = new webdriver.builder() .forbrowser('firefox') .build(); driver.get('http://www.google.com'); driver.findelement(by.name('q')).s
endkeys('webdriver'); driver.sleep(1000).then(function() { driver.findelement(by.name('q')).s
endkeys(webdriver.key.tab); }); driver.findelement(by.name('btnk')).click(); driver.sleep(2000).then(function() { driver.gettitle().then(function(title) { if(title === 'webdriver - google search') { console.log('test passed'); } else { console.log('test failed'); } driver.qu...
...And 18 more matches
IPDL Tutorial
all ipdl messages are sent between parent and a child
end points, called actors.
...this generated code manages the details of the underlying communication layer (sockets and pipes), constructing and s
ending messages, ensuring that all actors adhere to their specifications, and handling many error conditions.
...each incoming message is a pure-virtual c++ method which must be implemented: class ppluginparent { public: bool s
endinit(const nscstring& pluginpath) { // generated code to s
end an init() message } bool s
endshutdown() { // generated code to s
end a shutdown() message } protected: /** * a subclass of ppluginparent must implement this method to handle the ready() message.
...And 18 more matches
CustomizableUI.jsm
if you want to use it from a jsm or another context without a window reference, you need to import it yourself: components.utils.import("resource:///modules/customizableui.jsm"); introduction the module is int
ended for two primary purposes: allow adding, moving and removing customizable widgets.
...when a customizable toolbar's xbl binding is constructed (generally, that is when a <toolbar customizable="true"/> node is app
ended to the document and isn't invisible), the binding will call into customizableui and register the toolbar's node as being one of the concrete instances of its area.
... oncustomize
end(awindow) fired when exiting customize mode in awindow.
...And 18 more matches
MathML Demo: <mfrac> - fractions
inline, auto, normal line sin θ π , numerator and denominator should r
ender script size.
... inline, display style, normal line ln x y , numerator and denominator should r
ender normal size.
... inline, text style, normal line tan θ 67 , numerator and denominator should r
ender script size.
...And 18 more matches
nsINavHistoryQueryOptions
asyncenabled boolean when true, the root container node generated by these options and all of its desc
endant containers are opened asynchronously if they support doing so.
... sort_by_title_asc
ending 1 sort by the asc
ending title order.
... sort_by_title_desc
ending 2 sort by the desc
ending title order.
...And 18 more matches
IDBDatabase - Web APIs
recomm
endation initial version indexed database api draftthe definition of 'idbdatabase' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 18 more matches
WebXR Device API - Web APIs
webxr is a group of standards which are used together to support r
endering 3d scenes to hardware designed for presenting virtual worlds (virtual reality, or vr), or for adding graphical imagery to the real world, (augmented reality, or ar).
... the webxr device api implements the core of the webxr feature set, managing the selection of output devices, r
ender the 3d scene to the chosen device at the appropriate frame rate, and manage motion vectors created using input controllers.
... to accomplish these things, the webxr device api provides the following key capabilities: find compatible vr or ar output devices r
ender a 3d scene to the device at an appropriate frame rate (optionally) mirror the output to a 2d display create vectors representing the movements of input controls at the most basic level, a scene is presented in 3d by computing the perspective to apply to the scene in order to r
ender it from the viewpoint of each of the user's eyes by computing the position of each eye and r
endering the scene...
...And 18 more matches
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 dep
ending on the browser or device accessing the site to provide an optimized experience.
...this t
ends to be termed responsive design or adaptive design, two related but different approaches.
...also, taking an existing site and adding responsiveness to it, to make it mobile/tablet fri
endly, can be a lot more effort than just creating a separate mobile site or app, especially if it is a sprawling enterprise site.
...And 18 more matches
ui/frame - Archive of obsolete content
so there are three cases to consider: s
ending messages from a frame script to the main add-on code s
ending messages from the main add-on code to all instances of a frame, across all browser windows s
ending messages from the main add-on code to a single instance of a frame, attached to a specific browser window in all cases, postmessage() takes two arguments: the message itself and a targetorigin.
... if you know the target uri, you should use it, as this is more secure: it prevents another window from intercepting messages that were int
ended for someone else.
... from frame to add-on to s
end a message from a frame script to the add-on, use window.parent.postmessage().
...And 17 more matches
MenuModification - Archive of obsolete content
adding items to a menu the app
enditem method may be used to app
end a new item to the
end of the popup associated with a menu.
... <script> function addtomenu() { var menu = document.getelementbyid("edit-menu"); menu.app
enditem("insert", "insert"); } </script> <menu id="edit-menu"/> <button label="add" oncommand="addtomenu()"/> in this example, the addtomenu function is called when the button is pressed.
... this function app
ends a new item to the menu's popup with the label insert.
...And 17 more matches
Choosing the right approach - Learn web development
previous overview: asynchronous to finish this module off, we'll provide a brief discussion of the different coding techniques and features we've discussed throughout, looking at which one you should use when, with recomm
endations and reminders of common pitfalls where appropriate.
...erations no yes (recursive callbacks) yes (nested callbacks) no code example an example that loads a resource via the xmlhttprequest api (run it live, and see the source): function loadasset(url, type, callback) { let xhr = new xmlhttprequest(); xhr.open('get', url); xhr.responsetype = type; xhr.onload = function() { callback(xhr.response); }; xhr.s
end(); } function displayimage(blob) { let objecturl = url.createobjecturl(blob); let image = document.createelement('img'); image.src = objecturl; document.body.app
endchild(image); } loadasset('coffee.jpg', 'blob', displayimage); pitfalls nested callbacks can be cumbersome and hard to read (i.e.
... browser compatibility really good general support, although the exact support for callbacks in apis dep
ends on the particular api.
...And 17 more matches
Introduction to the server side - Learn web development
it can even allow interaction with users of the site, s
ending notifications and updates via email or through other channels.
... in the modern world of web development, learning about server-side development is highly recomm
ended.
...when a user wants to navigate to a page, the browser s
ends an http "get" request specifying its url.
...And 17 more matches
Web Replay
to resume recording and interacting with the tab, press the pause button and then the play button to run forward to the
end of the recording.
... clicking the 'tools -> web developer -> web replay -> load recording in new tab' menu item will start a new tab which replays the recording to the
end.
... the developer tools can be used to interact with this tab in the same way as a recording tab, though playing forward to the
end will pause the tab instead of allowing further recording.
...And 17 more matches
AbstractRange - Web APIs
a range is an object that indicates the start and
end points of a section of content within the document.
...a collapsed range is one whose start position and
end position are the same, resulting in a zero-character-long range.
...
endcontainer read only the dom node in which the
end of the range, as specified by the
endoffset property, is located.
...And 17 more matches
IDBTransaction - Web APIs
recomm
endation initial definition indexed database api draftthe definition of 'idbtransaction' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 17 more matches
RTCPeerConnection.addTrack() - Web APIs
syntax rtps
ender = rtcpeerconnection.addtrack(track, stream...); parameters track a mediastreamtrack object representing the media track to add to the peer connection.
...instead, the streams are simply a way to group tracks together on the receiving
end of the connection, making sure they are synchronized.
... any tracks that are added to the same stream on the local
end of the connection will be on the same stream on the remote
end.
...And 17 more matches
SourceBuffer - Web APIs
ffer" target="_top"><rect x="151" y="1" width="120" 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">sourcebuffer</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties sourcebuffer.app
endwindow
end controls the timestamp for the
end of the app
end window.
... sourcebuffer.app
endwindowstart controls the timestamp for the start of the app
end window.
... this is a timestamp range that can be used to filter what media data is app
ended to the sourcebuffer.
...And 17 more matches
Web Video Text Tracks Format (WebVTT) - Web APIs
we finish the first line with a second time, which is the
ending time for showing the associated text.
...comments are int
ended for those reading the file and are not seen by users.
...a blank line signifies the
end of a comment.
...And 17 more matches
Geometry and reference spaces in WebXR - Web APIs
at a fundamental level, r
endering of scenes for webxr presentation in either augmented reality or virtual reality contexts is performed using webgl, so the two apis share much of the same design language.
... the article spatial tracking in webxr builds upon the information provided here to cover how the physical position and orientation of the user's head, as well as potentially other parts of their body such as the hands, are mapped into the digital world, as well as how the relative positions of both physical and virtual objects are tracked as they move around, so that the scene can be properly r
endered and composited.
... the webgl coordinates and lengths are transformed automatically at r
ender time to the size of the viewport in which the scene is being r
endered.
...And 17 more matches
Using Web Workers - Web APIs
once created, a worker can s
end messages to the javascript code that created it by posting messages to an event handler specified by that code (and vice versa).
... data is sent between workers and the main thread via a system of messages — both sides s
end their messages using the postmessage() method, and respond to messages via the onmessage event handler (the message is contained within the message event's data attribute.) the data is copied rather than shared.
...all you need to do is call the worker() constructor, specifying the uri of a script to execute in the worker thread (main.js): var myworker = new worker('worker.js'); s
ending messages to and from a dedicated worker the magic of workers happens via the postmessage() method and the onmessage event handler.
...And 17 more matches
Window.open() - Web APIs
google chrome (55.0.2883.87 m ) on the other hand will do it only from the same parent (as if the window was created dep
endent, which is the "opener").
...if windowname does not specify an existing window and the windowfeatures parameter is not provided (or if the windowfeatures parameter is an empty string), then the new secondary window will r
ender the default toolbars of the main window.
... note on position and dimension error correction position if only one of them is specified, the behavior is implementation-dep
endent, and web author should not rely on it.
...And 17 more matches
ARIA: listbox role - Accessibility
it is highly recomm
ended to use the html select element, or a group of radio buttons if only one item can be selected, or a group of checkboxes if multiple items can be selected, because there is a lot of keyboard interactivity to manage focus for all the desc
endants, and native html elements provide this functionality for you for free.
...up/down arrows navigate the list, and pressing shift + up/down arrows will move and ext
end the selection.
...it is recomm
ended that a checkbox, link or other method be used to select all items, and ctrl+a could be used as a shortcut key for this.
...And 17 more matches
Line-based placement with CSS Grid - CSS: Cascading Style Sheets
.box1 { grid-column-start: 1; grid-column-
end: 2; grid-row-start: 1; grid-row-
end: 4; } as you position some items, other items on the grid will continue to be laid out using the auto-placement rules.
...); grid-template-rows: repeat(3, 100px); } .wrapper > div { border: 2px solid #ffa94d; border-radius: 5px; background-color: #ffd8a8; padding: 1em; color: #d9480f; } <div class="wrapper"> <div class="box1">one</div> <div class="box2">two</div> <div class="box3">three</div> <div class="box4">four</div> </div> .box1 { grid-column-start: 1; grid-column-
end: 2; grid-row-start: 1; grid-row-
end: 4; } .box2 { grid-column-start: 3; grid-column-
end: 4; grid-row-start: 1; grid-row-
end: 3; } .box3 { grid-column-start: 2; grid-column-
end: 3; grid-row-start: 1; grid-row-
end: 2; } .box4 { grid-column-start: 2; grid-column-
end: 4; grid-row-start: 3; grid-row-
end: 4; } the grid-column and grid-row shorthands we h...
...the grid-column-start and grid-column-
end properties can be combined into grid-column, grid-row-start and grid-row-
end into grid-row.
...And 17 more matches
Images, Tables, and Mysterious Gaps - Archive of obsolete content
the markup of both table and cell remains unchanged-- it's the r
endering mode that's different.
...the baseline's exact placement is dep
endent on the "default" font for the line box (represented by the red box), which is determined by the value of font-family for the element that contains the line box.
... it isn't possible for an author to change the baseline's position directly, so wherever it
ends up is where it will be.
...And 16 more matches
Floats - Learn web development
susp
endisse ac imperdiet turpis.
...ut id ornare felis, eget fermentum sapien.</p> <p>nam vulputate diam nec tempor bib
endum.
...susp
endisse ac imperdiet turpis.
...And 16 more matches
Inheritance in JavaScript - Learn web development
inside here you'll find the same person() constructor example that we've been using all the way through the module, with a slight difference — we've defined only the properties inside the constructor: function person(first, last, age, g
ender, interests) { this.name = { first, last }; this.age = age; this.g
ender = g
ender; this.interests = interests; }; the methods are all defined on the constructor's prototype.
... defining a teacher() constructor function the first thing we need to do is create a teacher() constructor — add the following below the existing code: function teacher(first, last, age, g
ender, interests, subject) { person.call(this, first, last, age, g
ender, interests); this.subject = subject; } this looks similar to the person constructor in many ways, but there is something strange here that we've not seen before — the call() function.
... as a note, we could have simply done this: function teacher(first, last, age, g
ender, interests, subject) { this.name = { first, last }; this.age = age; this.g
ender = g
ender; this.interests = interests; this.subject = subject; } but this is just redefining the properties anew, not inheriting them from person(), so it defeats the point of what we are trying to do.
...And 16 more matches
IAccessible2
1.0 66 introduced gecko 1.9 inherits from: iaccessible last changed in gecko 1.9 (firefox 3) method overview [propget] hresult attributes([out] bstr attributes ); [propget] hresult ext
endedrole([out] bstr ext
endedrole ); [propget] hresult ext
endedstates([in] long maxext
endedstates, [out, size_is(,maxext
endedstates), length_is(, next
endedstates)] bstr ext
endedstates, [out] long next
endedstates ); [propget] hresult groupposition([out] long grouplevel, [out] long similaritemsingroup, [out] long positioningroup ); [propget] hresult indexinparent([out] long indexinparent ); [propget] hresult locale([out] ia2locale locale ); [propget] hresult localizedext
endedrole(...
...[out] bstr localizedext
endedrole ); [propget] hresult localizedext
endedstates([in] long maxlocalizedext
endedstates, [out, size_is(,maxlocalizedext
endedstates), length_is(, nlocalizedext
endedstates)] bstr localizedext
endedstates, [out] long nlocalizedext
endedstates ); [propget] hresult next
endedstates([out] long next
endedstates ); [propget] hresult nrelations([out] long nrelations ); [propget] hresult relation([in] long relationindex, [out] iaccessiblerelation relation ); [propget] hresult relations([in] long maxrelations, [out, size_is(maxrelations), length_is( nrelations)] iaccessiblerelation relations, [out] long nrelations ); hresult role([out] long role ); hresult scrollto([in] enum ia2scrolltype scrolltype ); hresult scrolltopoint([in] enum ia2coordinatetype coordinatetyp...
...ext
endedrole() returns the ext
ended role.
...And 16 more matches
nsINavBookmarksService
cko 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: renamed from createcontainer in gecko 1.9 obsolete since gecko 13.0 long long createfolder(in long long aparentfolder, in autf8string name, in long index); void
endupdatebatch(); obsolete since gecko 1.9 void exportbookmarkshtml(in nsifile file); obsolete since gecko 1.9 nsiuri getbookmarkedurifor(in nsiuri auri); void getbookmarkfolderstarray(in nsiuri auri, in print64array aresult); native code only!
...this contains administrative data as well as user data, and is therefore not recomm
ended for use in queries.
... constants constant value description default_index -1 this is the default index; this value should be used for apis that allow passing in an index where the index is not known or is not required to be specified, such as when app
ending an item to a folder.
...And 16 more matches
nsIRequest
method overview void cancel(in nsresult astatus); boolean isp
ending(); void resume(); void susp
end(); attributes attribute type description loadflags nsloadflags the load flags of this request.
...while p
ending, the request is a member of the load group.
...they are listed in desc
ending order of precedence.
...And 16 more matches
Using IndexedDB - Web APIs
therefore, it is not recomm
ended to use it in production code.
...the call to the open() function returns an idbop
endbrequest object with a result (success) or error value that you handle as an event.
...there are several different ways that a key can be supplied dep
ending on whether the object store uses a key path or a key generator.
...And 16 more matches
RTCPeerConnection.createOffer() - Web APIs
offertoreceiveaudio optional (legacy) a legacy boolean option which used to control whether or not to offer to the remote peer the opportunity to try to s
end audio.
... if this value is false, the remote peer will not be offered to s
end audio data, even if the local side will be s
ending audio data.
... if this value is true, the remote peer will be offered to s
end audio data, even if the local side will not be s
ending audio data.
...And 16 more matches
SVGSVGElement - Web APIs
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 r
endering devices.
...when the browser is actually r
endering the content, then the position and size values represent the actual values when r
endering.
...the meaning dep
ends on the situation: if the initial view was a "standard" view, then: the values for viewbox, preserveaspectratio and zoomandpan within currentview will match the values for the corresponding dom attributes that are on svgsvgelement directly the values for transform and viewtarget within currentview will be null if the initial view was a link into a <view> element, then: the values fo...
...And 16 more matches
<easing-function> - CSS: Cascading Style Sheets
the easing functions in the cubic-bezier subset of easing functions are often called "smooth" easing functions, because they can be used to smooth down the start and
end of the animation.
... dep
ending on the specific function used, the calculated output can sometimes grow to be greater than 1.0 or smaller than 0.0 during the course of an animation.
... the linear class of easing functions linear the animation moves from beginning to
end at a constant rate.
...And 16 more matches
min-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation adds the auto keyword and uses it as the initial value.
... recomm
endation initial definition.
...And 16 more matches
Cross-Origin Resource Sharing (CORS) - HTTP
an example of a cross-origin request: the front-
end javascript code served from https://domain-a.com uses xmlhttprequest to make a request for https://domain-b.com/data.json.
... more specifically, this article is for web administrators, server developers, and front-
end developers.
...additionally, for http request methods that can cause side-effects on server data (in particular, http methods other than get, or post with certain mime types), the specification mandates that browsers "preflight" the request, soliciting supported methods from the server with the http options request method, and then, upon "approval" from the server, s
ending the actual request.
...And 16 more matches
WebAssembly
and what's even better is that it is being developed as a web standard via the w3c webassembly working group and community group with active participation from all major browser v
endors.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... androidfirefox for androidopera for androidsafari on iossamsung internetnode.jswebassemblychrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
...And 16 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
fixme: explain how setting this option and use next listings if we want to run firefox displaying none of its gui and only the contents of a certain xul file, we can launch firefox and set the option: -chrome file_url.xul another way, as shown in listing 1, is to use the window.op
endialog() method, which can be used only within a xul window.
... window.op
endialog('another.xul', '_blank','chrome,all,dialog=no'); listing 1: opening a window without the firefox gui xul as an xml application listing 2 shows an example of a gui definition file marked up in xul (a "xul document").
... orient whether a box's contents will be vertically or horizontally arrayed dep
ends on the elements in their initial state.
...And 15 more matches
Index - Game development
the correct decision entirely dep
ends on the trade-offs that you are willing (and unwilling) to make.
...sometimes you have to sp
end more time promoting a game than actually developing it.
... 15 3d games on the web games, graphics, needscontent, needsexample, webgl, webvr, three.js for rich gaming experiences on the web, the weapon of choice is webgl, which is r
endered on html <canvas>.
...And 15 more matches
Building up a basic demo with Three.js - Game development
r
enderer a r
enderer is a tool which displays scenes right in your browser.
... there are a few different r
enderers: webgl is the default, and others you can use are canvas, svg, css, and dom.
... they differ in how everything is r
endered, so the webgl implementation will implement differently than the css one.
...And 15 more matches
Client-side form validation - Learn web development
your apps should always perform security checks on any form-submitted data on the server-side as well as the client-side, because client-side validation is too easy to bypass, so malicious users can still easily s
end bad data through to your server.
... if the user tries to s
end the data, the browser will submit the form, provided there is nothing else stopping it from doing so (e.g., javascript).
... when an element is invalid, the following things are true: the element matches the :invalid css pseudo-class, and sometimes other ui pseudo-classes (e.g., :out-of-range) dep
ending on the error, which lets you apply a specific style to invalid elements.
...And 15 more matches
Styling web forms - Learn web development
browsers relied on the underlying operating system to manage and r
ender form controls.
... and even with css available to style html, browser v
endors have historically been reluctant to make form controls stylable because users were so accustomed to the visual appearance of their respective platforms.
...these include the following elements: <form> <fieldset> and <leg
end> single-line text <input>s (e.g.
...And 15 more matches
Accessibility in React - Learn web development
previous overview: client-side javascript frameworks next in our final tutorial article, we'll focus on (pun int
ended) accessibility, including focus management in react, which can improve usability and reduce confusion for both keyboard-only and screenreader users.
...e="todo-text" type="text" value={newname} onchange={handlechange} ref={editfieldref} /> the "edit" button in your view template should read like this: <button type="button" classname="btn" onclick={() => setediting(true)} ref={editbuttonref} > edit <span classname="visually-hidden">{props.name}</span> </button> focusing on our refs with useeffect to use our refs for their int
ended purpose, we need to import another react hook: useeffect().
... useeffect() is so named because it runs after react r
enders a given component, and will run any side-effects that we'd like to add to the r
ender process, which we can't run inside the main function body.
...And 15 more matches
Getting started with Svelte - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... nevertheless, svelte is particularly appropriate to tackle the following situations: web applications int
ended for low power devices: applications built with svelte have smaller bundle sizes, which is ideal for devices with slow network connections and limited processing power.
... moreover, with the help of sapper (a framework based on svelte), you can also develop applications with advanced features like server-side r
endering, code splitting, file-based routing and offline support.
...And 15 more matches
Message manager overview
similarly, if you s
end a message using the global frame message manager, it's received by all content tabs, and is then delivered to any frame scripts that are listening for it.
... its most important functions and attributes are: childcount : contains the number of children (typically, browser windows) getchildat() : get the child at the given index loadframescript() : load a frame script into every tab in the browser broadcastasyncmessage() : s
end 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 a...
...if you s
end a message using the window message manager, it gets sent to all content tabs in that window.
...And 15 more matches
A Web PKI x509 certificate primer
in order for a certificate to be valid these three requirements must be met: there is a verification path from the site certificate to a trusted certificate of the user agent (ie if you follow the issuer path you will
end on a self-signed certificate that is considered trusted by the browser).
... ext
ended key usages this is another bitfield to constrain the usages of the key of the certificate.
...examples of ext
ended key usages are: serverauth, clientauth, and ocspsigning.
...And 15 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.
... timing resource loading phases the following example illustrates using the resource timing properties to calculate the amount of time the following phases take: redirection (redirectstart and redirect
end ), dns lookup (domainlookupstart and domainlookup
end), tcp handshake (connectstart and connect
end), and response (responsestart and response
end).
... this example also calculates the time from the start of the fetch and request start phases (fetchstart and requeststart, respectively), until the response has
ended (response
end).
...And 15 more matches
<video>: The Video Embed element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the allowed values are: anonymous s
ends a cross-origin request without a credential.
... in other words, it s
ends the origin: http header without a cookie, x.509 certificate, or performing http basic authentication.
...And 15 more matches
WebAssembly - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... androidfirefox for androidopera for androidsafari on iossamsung internetnode.jswebassemblychrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0compileerrorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 e...
...And 15 more matches
Digital audio concepts - Web media technologies
the number of frames that comprise a single second of audio varies dep
ending on the sample rate used when recording the sound.
... high-resolution (96 khz) audio is used in some high-
end audio systems, and it and ultra-high resolution (192 khz) audio are useful for audio mastering, where you need as much quality as possible while manipulating and editing the sound before downsampling to the sample rate you will use for the final product.
... for example, consider a stereo audio clip (that is, two audio channels) with a sample size of 16 bits (2 bytes), recorded at 48 khz: 2×2bytessample×48000samplessecond=192000bytessecond=192kbps2 \times 2\frac { bytes }{ sample } \times 48000\frac { samples }{ second } = 192000\frac { bytes }{ second } = 192 kbps at 192 kbps, lower-
end networks are already going to be strained just by a single audio stream playing.
...And 15 more matches
Navigation and resource timings - Web Performance
as displayed in the image below, the navigation process goes from navigationstart, unloadeventstart, unloadevent
end, redirectstart, redirect
end, fetchstart, domainlookupstart, domainlookup
end, connectstart , connect
end, secureconnectionstart, requeststart, responsestart, response
end, domloading, dominteractive, domcontentloadedeventstart, domcontentloadedevent
end, domcomplete, loadeventstart, and loadevent
end.
... redirect
end when the last http redirect is completed, that is when the last byte of the http response has been received.
... connect
end when the connection is opened network.
...And 15 more matches
Interaction between privileged and non-privileged pages - Archive of obsolete content
s
ending data from unprivileged document to chrome an easy way to s
end data from a web page to an extension is by using custom dom events.
...to trigger the alert() in the listener and pass the data from the web page, write code such as this in the web page: var element = document.createelement("myextensiondataelement"); element.setattribute("attribute1", "foobar"); element.setattribute("attribute2", "hello world"); document.documentelement.app
endchild(element); var evt = document.createevent("events"); evt.initevent("myextensionevent", true, false); element.dispatchevent(evt); this code creates an arbitrary element -- <myextensiondataelement/> -- and inserts it into the web page's dom.
... (to better ensure others do not also implement the same event with a different meaning, one might either attach a namespace to <myextensiondataelement/> and check on the event handler for the correct namespaceuri property, or as per the dom specification, use initevent() with an event name that is itself namespaced (xml name characters only): "it is also strongly recomm
ended that third parties adding their own events use their own prefix to avoid confusion and lessen the probability of conflicts with other new events.") in the case where your extension's overlay does not interact directly with browser.xul, such as in a sidebar, it might be easier to add the event listener to the top-level document directly as shown below (also see: accessing the elements of the to...
...And 14 more matches
Mozilla Application Framework in Detail - Archive of obsolete content
where speed is the foremost consideration, we provide c++ libraries with multi-language interfaces for comprehensive, performant access to networking, filesystem, content, r
endering, and much more.
... the gecko r
endering engine gecko is the revolutionary r
endering engine that offers advanced features for internet browsing anywhere across applications, computing platforms and devices.
...its ability to r
ender web content correctly is exceptional.
...And 14 more matches
The Business Benefits of Web Standards - Archive of obsolete content
introduction and context doing more with less seems to be the mission impossible for web designers: addressing more customers, a broader audience, more diversity in terms of browsers, more accessibility, users asking for more speed, while sp
ending less to maintain or redesign a web site.
...this translates into better user experience, according to usability guru jakob nielsen, who notes that users t
end to close a web page when it takes more than 10 seconds to load.
...dynamic effects such as those created by javascript are not taken into account, and text r
endered with graphics cannot be read and parsed either.
...And 14 more matches
Anatomy of a video game - Game development
it helps beginners to the modern game development arena understand what is required when building a game and how web standards like javascript l
end themselves as tools.
...games are constantly looping through these stages, over and over, until some
end condition occurs (such as winning, losing, or exiting to go to bed).
... the specifics dep
end on the game.
...And 14 more matches
Efficient animation for web games - Game development
this article covers techniques and advice for creating efficient animation for web games, with a slant towards supporting lower
end devices such as mobile phones.
... there are several techniques worth knowing that will improve the performance of your game or application whilst also using less battery life, especially on low-
end devices.
... help the browser help you if you are using dom for your ui, which i would certainly recomm
end, you really ought to use css transitions and/or css animations, rather than javascript-powered animations.
...And 14 more matches
Fundamental text and font styling - Learn web development
it starts at the top left of the content area (or the top right, in the case of rtl language content), and flows towards the
end of the line.
... once it reaches the
end, it goes down to the next line and continues, then the next line, until all the content has been placed in the box.
... text content effectively behaves like a series of inline elements, being laid out on lines adjacent to one another, and not creating line breaks until the
end of the line is reached, or unless you force a line break manually using the <br> element.
...And 14 more matches
Understanding client-side JavaScript frameworks - Learn web development
javascript frameworks are an essential part of modern front-
end web development, providing developers with tried and tested tools for building scalable, interactive web applications.
... many modern companies use frameworks as a standard part of their tooling, so many front-
end development jobs now require framework experience.
... as an aspiring front-
end developer, it can be hard to work out where to begin when learning frameworks — there are so many different frameworks to choose from, new ones appear all the time, they mostly work in a similar way but do some things differently, and there are some specific things to be careful about when using frameworks.
...And 14 more matches
Command line crash course - Learn web development
this is why we are providing this chapter — to help you get started in this seemingly unfri
endly environment.
... in terms of what option to choose on windows, we’d strongly recomm
end trying to install the wsl.
... introducing command options most terminal commands have options — these are modifiers that you add onto the
end of a command, which make it behave in a slightly different way.
...And 14 more matches
Localization and Plurals
usage here are a couple terms used in this page to help keep things clear: plural rule: for a given language, there is a grammatical rule on how to change words, dep
ending on the number qualifying the word.
..., 48, 49, 50, … plural rule #2 (2 forms) families: romanic (french, brazilian portuguese), lingala is 0 or 1: 0, 1 everything else: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, … plural rule #3 (3 forms) families: baltic (latvian, latgalian)
ends in 0: 0
ends in 1, excluding 11: 1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, … everything else: 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 48, 49, 52, 53, … plural rule #4 (4 forms) families: celtic (scot...
...tish gaelic) is 1 or 11: 1, 11 is 2 or 12: 2, 12 is 3-10 or 13-19: 3, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19 everything else: 0, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, … plural rule #5 (3 forms) families: romanic (romanian) is 1: 1 is 0 or
ends in 01-19, excluding 1: 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, … everything else: 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65...
...And 14 more matches
Hacking Tips
all tips listed here are dealing with the javascript shell obtained at the
end of the build documentation of spidermonkey.
... $ gdb --args js […] (gdb) b js::ion::codegenerator::visitstart (gdb) command >call masm.breakpoint() >continue >
end (gdb) r js> function f(a, b) { return a + b; } js> for (var i = 0; i < 100000; i++) f(i, i + 1); breakpoint 1, js::ion::codegenerator::visitstart (this=0x101ed20, lir=0x10234e0) at /home/nicolas/mozilla/ionmonkey/js/src/ion/codegenerator.cpp:609 609 } program received signal sigtrap, trace/breakpoint trap.
... since there isn't debug info for the jitted code, you will need to tell gdb that you are looking at arm code: (gdb) set arm force-mode arm or you can wrap the x command in your own command: def xi set arm force-mode arm eval "x/%di %d", $arg0, $arg1 set arm force-mode auto
end printing asm.js/wasm generated assembly code (from gdb) set a breakpoint on js::wasm::instance::callexport (defined in wasminstance.cpp as of november 18th 2016).
...And 14 more matches
Timing element visibility with the Intersection Observer API - Web APIs
without the intersection observer api, this winds up being done using intervals and timeouts for each individual ad, or other techniques that t
end to slow the page down.
...more interesting is our use of grid-column here; here we specify that we want the column to start in the first column and
ends in the first column past the last grid line—in other words, the header spans across all of the columns within the grid.
...we have no margins to ext
end or contract the intersection root's rectangle; we want to match the boundaries of the document's viewport exactly for intersection purposes.
...And 14 more matches
Key Values - Web APIs
vk_up (0x26) kvk_uparrow (0x7e) gdk_key_up (0xff52) gdk_key_kp_up (0xff97) qt::key_up (0x01000013) keycode_dpad_up (19) "
end" the
end key.
... moves to the
end of content.
... vk_
end (0x23) kvk_
end (0x77) gdk_key_
end (0xff57) gdk_key_kp_
end (0xff9c) qt::key_
end (0x01000011) keycode_move_
end (123) "home" the home key.
...And 14 more matches
system - CSS: Cascading Style Sheets
syntax /* keyword values */ system: cyclic; system: numeric; system: alphabetic; system: symbolic; system: additive; system: fixed; /* combined values */ system: fixed 3; system: ext
ends decimal; this may take one of three forms: one of the keyword values cyclic, numeric, alphabetic, symbolic, additive, or fixed.
... the keyword value or ext
ends along with a @counter-style name.
...once the
end of the list of symbols is reached, it will loop back to the beginning and start over.
...And 14 more matches
HTTP response status codes - HTTP
103 early hints this status code is primarily int
ended to be used with the link header, letting the user agent start preloading resources while the server prepares a response.
...the meaning of the success dep
ends on the http method: get: the resource has been fetched and is transmitted in the message body.
...it is noncommittal, since there is no way in http to later s
end an asynchronous response indicating the outcome of the request.
...And 14 more matches
Performance fundamentals - Web Performance
html and css greatly increase productivity, sometimes at the expense of framerate or pixel-level control over r
endering.
...this gives developers pixel-level control over r
endering and precise control of framerate, but now the developers need to deal with multiple resolutions and orientations, right-to-left languages, and so forth.
... gecko r
endering the gecko javascript engine supports just-in-time (jit) compilation.
...And 14 more matches
text-anchor - SVG: Scalable Vector Graphics
the text-anchor attribute is used to align (start-, middle- or
end-alignment) a string of pre-formatted text or auto-wrapped text where the wrapping area is determined from the inline-size property relative to a given point.
...each text chunk has an initial current text position, which represents the point in the user coordinate system resulting from (dep
ending on context) application of the x and y attributes on the <text> element, any x or y attribute values on a <tspan>, <tref> or <altglyph> element assigned explicitly to the first r
endered character in a text chunk, or determination of the initial current text position for a <textpath> element.
...f>, and <tspan> html, body, svg { height: 100%; } <svg viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"> <!-- materialisation of anchors --> <path d="m60,15 l60,110 m30,40 l90,40 m30,75 l90,75 m30,110 l90,110" stroke="grey" /> <!-- anchors in action --> <text text-anchor="start" x="60" y="40">a</text> <text text-anchor="middle" x="60" y="75">a</text> <text text-anchor="
end" x="60" y="110">a</text> <!-- materialisation of anchors --> <circle cx="60" cy="40" r="3" fill="red" /> <circle cx="60" cy="75" r="3" fill="red" /> <circle cx="60" cy="110" r="3" fill="red" /> <style><![cdata[ text { font: bold 36px verdana, helvetica, arial, sans-serif; } ]]></style> </svg> usage notes default value start value start | middle |...
...And 14 more matches
Chapter 5: Let's build a Firefox extension - Archive of obsolete content
gomita-san won "most useful upgraded extension" award in mozilla's 2006 "ext
end firefox" competition for scrapbook, and was runner-up in the "ext
end firefox 2" contest for firegestures.
... setting up your development environment in order to develop (and test) extensions in a most convenient way it is recomm
ended to apply some changes to firefox.
...this isn’t a requirement for extension development, but i recomm
end it as a way to work more efficiently.
...And 13 more matches
Archived Mozilla and build documentation - Archive of obsolete content
autodial for windows nt this document is int
ended to explain how the autodial helper feature implemented for bug 93002 works and why it works that way.
... building transformiix standalone calical
endarview an object implementing calical
endarview is generally int
ended to serve as a way of manipulating a set of dom nodes corresonding to a visual representation of calievent and calitodo objects.
... because of this close association between methods and attributes on the one hand, and content on the other, calical
endarview implementations are particularly well suited to xbl.
...And 13 more matches
Grids - Learn web development
we can place things according to these lines by specifying the start and
end line.
... we do this using the following properties: grid-column-start grid-column-
end grid-row-start grid-row-
end these properties can all have a line number as the value.
... you can also use the shorthand properties: grid-column grid-row these let you specify the start and
end lines at once, separated by a / — a forward slash character.
...And 13 more matches
Basic native form controls - Learn web development
you've already met some form elements, including <form>, <fieldset>, <leg
end>, <textarea>, <label>, <button>, and <input>.
... note: the <input> element is unique amongst html elements because it can take many different forms dep
ending on its type attribute value.
... here is a basic single line text field example: <input type="text" id="comment" name="comment" value="i'm a text field"> single line text fields have only one true constraint: if you type text with line breaks, the browser removes those line breaks before s
ending the data to the server.
...And 13 more matches
Debugging HTML - Learn web development
logic errors: these are errors where the syntax is actually correct, but the code is not what you int
ended it to be, meaning that the program runs incorrectly.
... <ul> <li>unclosed elements: if an element is <strong>not closed properly, then its effect can spread to areas you didn't int
end <li>badly nested elements: nesting elements properly is also very important for code behaving correctly.
...looking at the image above, this doesn't seem to have affected the markup r
endering too badly, as it is easy to infer where one element should
end and another should begin.
...And 13 more matches
Making decisions in your code — conditionals - Learn web development
overview: building blocks next in any programming language, the code needs to make decisions and carry out actions accordingly dep
ending on different inputs.
... as a final point, you may sometimes see if...else statements written without the curly braces, in the following shorthand style: if (condition) code to run if condition is true else run some other code instead this is perfectly valid code, but using it is not recomm
ended — it is much easier to read the code and work out what is going on if you use the curly braces to delimit the blocks of code, and use multiple lines and indentation.
...we then use a conditional statement to show different text inside the paragraph dep
ending on what the value of choice is.
...And 13 more matches
What is JavaScript? - Learn web development
note: there are ways to s
end code and data between different websites/tabs in a safe manner, but these are advanced techniques that we won't cover in this course.
...the code is received in its programmer-fri
endly text form and processed directly from that.
...whereas css uses <link> elements to apply external stylesheets and <style> elements to apply internal stylesheets to html, javascript only needs one fri
end in the world of html — the <script> element.
...And 13 more matches
Componentizing our React app - Learn web development
if at any point in the future you try to r
ender a component that does not return anything, react will display an error in your browser.
...next we'll look at how we can make different component calls r
ender unique content.
... in order to track the names of tasks we want to complete, we should ensure that each <todo /> component r
enders a unique name.
...And 13 more matches
Storage access policy: Block cookies from trackers
this documentation describes the policy that we int
end to ship to firefox release users, but may not match what is implemented in the current release version of firefox.
... we recomm
end sites test with firefox nightly, as this includes the newest version of our protections.
... as described above, note that nightly may include additional protections that
end up getting removed or changed before they reach our release users.
...And 13 more matches
Creating localizable web applications
listed below are good practices and recomm
endations that should be followed in order to make your content easily localizable.
...in some cases, the code snippets were slightly changed to better illustrate the recomm
endations or for clarity.
... use the locale code in the urls dep
ending on how you detect user's locale, you may want to provide a way of overriding the autodetection.
...And 13 more matches
imgIContainer
image/public/imgicontainer.idlscriptable represents an image in the gecko r
endering engine.
... obsolete since gecko 2.0 void app
endframe(in print32 ax, in print32 ay, in print32 awidth, in print32 aheight, in gfximageformat aformat, [array, size_is(imagelength)] out pruint8 imagedata, out unsigned long imagelength); native code only!
... obsolete since gecko 2.0 void app
endpalettedframe(in print32 ax, in print32 ay, in print32 awidth, in print32 aheight, in gfximageformat aformat, in pruint8 apalettedepth, [array, size_is(imagelength)] out pruint8 imagedata, out unsigned long imagelength, [array, size_is(palettelength)] out pruint32 palettedata, out unsigned long palettelength); native code only!
...And 13 more matches
Mozilla
add-ons add-ons allow developers to ext
end and modify the functionality of firefox.
...these articles provide important guides and references to ensuring the code you write is secure, including both design recomm
endations and testing guidelines.
...you can choose either dep
ending on your needs and resources.
...And 13 more matches
Waterfall - Firefox Developer Tools
the hint may be any of: self subtree latersiblings csstransitions cssanimations svgattranimations styleattribute styleattribute_animations force forcedesc
endants layout calculating the position and size of page elements.
... console the period between matching calls to console.time() and console.time
end().
... stack at
end (new in firefox 41).
...And 13 more matches
Web Console remoting - Firefox Developer Tools
to better understand the architecture of the web console we recomm
end learning about the debugger architecture.
...when navigation stops the following packet is sent: { "from": tabactor, "type": "tabnavigated", "state": "stop", "url": newurl, "title": newtitle, "nativeconsoleapi": true|false } getcachedmessages(types, onresponse) the webconsoleclient.getcachedmessages(types, onresponse) method s
ends the following packet to the server: { "to": "conn0.console9", "type": "getcachedmessages", "messagetypes": [ "pageerror", "consoleapi" ] } the getcachedmessages packet allows one to retrieve the cached messages from before the web console was open.
...], "from": "conn0.console9" } each message in the array is of the same type as when we s
end typical page errors and console api calls.
...And 13 more matches
IDBKeyRange - Web APIs
a key range can be a single value or a range with upper and lower bounds or
endpoints.
...a bounded key range can either be open (the
endpoints are excluded) or closed (the
endpoints are included).
...ansaction = db.transaction(['fthings'], 'readonly'); var objectstore = transaction.objectstore('fthings'); objectstore.opencursor(keyrangevalue).onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.fthing + '</strong>, ' + cursor.value.frating; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; } specifications specification status comment indexed database api 2.0the definition of 'idbkeyrange' in that specification.
...And 13 more matches
RTCRemoteOutboundRtpStreamStats.localId - Web APIs
let startreport; async function networkteststart(pc) { if (pc) { startreport = await pc.getstats(); } } given an rtcpeerconnection, pc, this calls its getstats() method to obtain a statistics report object, which it stores in startreport for use once the
end-of-test data has been collected by networkteststop().
... networkteststop() the networkteststop() function obtains a second report,
endreport, then uses the two reports together to determine several...
... finding paired statistics each statistics record of type remote-outbound-rtp (describing a remote peer's statistics about s
ending data to the local peer) has a corresponding record of type inbound-rtp which describes the local peer's perspective on the same data being moved between the two peers.
...And 13 more matches
XRSession - Web APIs
environmentbl
endmode read only returns this session's bl
end mode which denotes how much of the real-world environment is visible through the xr device and how the device will bl
end the device imagery with it.
... note: environmentbl
endmode() is part of the webxr augmented reality module, which has not been completed.
... r
enderstate read only an xrr
enderstate object which contains options affecting how the imagery is r
endered.
...And 13 more matches
Border-image generator - CSS: Cascading Style Sheets
artx = null; var start_value = 0; slider.addeventlistener("click", function(e) { document.removeeventlistener("mousemove", slidermotion); setvalue(obj.topic, obj.value + obj.step * sign); }); slider.addeventlistener("mousedown", function(e) { startx = e.clientx; start_value = obj.value; document.body.style.cursor = "e-resize"; document.addeventlistener("mouseup", slide
end); document.addeventlistener("mousemove", slidermotion); }); var slide
end = function slide
end(e) { document.removeeventlistener("mousemove", slidermotion); document.body.style.cursor = "auto"; slider.style.cursor = "pointer"; }; var slidermotion = function slidermotion(e) { slider.style.cursor = "e-resize"; var delta = (e.clientx - startx) / obj.sensivity | 0; var va...
... value; var input = new inputcomponent(this); var slider_left = new slidercomponent(this, -1); var slider_right = new slidercomponent(this, 1); slider_left.classname = 'ui-input-slider-left'; slider_right.classname = 'ui-input-slider-right'; if (name) { var info = document.createelement('span'); info.classname = 'ui-input-slider-info'; info.textcontent = name; node.app
endchild(info); } node.app
endchild(slider_left); node.app
endchild(input); node.app
endchild(slider_right); this.input = input; sliders[topic] = this; setvalue(topic, value); }; inputslider.prototype.setinputvalue = function setinputvalue() { this.input.value = this.value.tofixed(this.precision) + this.unit; }; var setvalue = function setvalue(topic, value, s
end_notify) { var ...
...slider = sliders[topic]; if (slider === undefined) return; value = parsefloat(value.tofixed(slider.precision)); if (value > slider.max) value = slider.max; if (value < slider.min) value = slider.min; slider.value = value; slider.node.setattribute('data-value', value); slider.setinputvalue(); if (s
end_notify === false) return; notify.call(slider); }; var setmax = function setmax(topic, value) { var slider = sliders[topic]; if (slider === undefined) return; slider.max = value; setvalue(topic, slider.value); }; var setmin = function setmin(topic, value) { var slider = sliders[topic]; if (slider === undefined) return; slider.min = value; setvalue(topic, slider.value); }; var setunit = function setunit(topic, unit) { var slider = sli...
...And 13 more matches
Box-shadow generator - CSS: Cascading Style Sheets
true : false; this.topic = topic; this.node = node; var pointer = document.createelement('div'); pointer.classname = 'ui-slider-pointer'; node.app
endchild(pointer); this.pointer = pointer; setmousetracking(node, updateslider.bind(this)); sliders[topic] = this; setvalue(topic, this.value); } var setbuttoncomponent = function setbuttoncomponent(node) { var type = node.getattribute('data-type'); var topic = node.getattribute('data-topic'); if (type === "sub") { node.textcontent = '-'; node.addeventlistener("click", functi...
...listener("click", function() { increment(topic); }); } } var setinputcomponent = function setinputcomponent(node) { var topic = node.getattribute('data-topic'); var unit_type = node.getattribute('data-unit'); var input = document.createelement('input'); var unit = document.createelement('span'); unit.textcontent = unit_type; input.setattribute('type', 'text'); node.app
endchild(input); node.app
endchild(unit); input.addeventlistener('click', function(e) { this.select(); }); input.addeventlistener('change', function(e) { setvalue(topic, e.target.value | 0); }); subscribe(topic, function(value) { node.children[0].value = value; }); } var increment = function increment(topic) { var slider = sliders[topic]; if (slider === null || slider ...
...e"); var checkbox = document.createelement("input"); var label = document.createelement("label"); var id = 'checkbox-' + topic; checkbox.id = id; checkbox.setattribute('type', 'checkbox'); checkbox.checked = state; label.setattribute('for', id); if (name) { label.classname = 'text'; if (align) label.classname += ' ' + align; label.textcontent = name; } node.app
endchild(checkbox); node.app
endchild(label); this.node = node; this.topic = topic; this.checkbox = checkbox; checkbox.addeventlistener('change', function(e) { notify.call(this); }.bind(this)); buttons[topic] = this; } var getnode = function getnode(topic) { return buttons[topic].node; } var setvalue = function setvalue(topic, value) { try { buttons[topic].checkbox.ch...
...And 13 more matches
Layout using named grid lines - CSS: Cascading Style Sheets
i have defined a name for the start and
end of the container, both for rows and columns.
... then defined the centre block of the grid as content-start and content-
end again, both for columns and rows although you do not need to name all of the lines on your grid.
... .wrapper { display: grid; grid-template-columns: [main-start] 1fr [content-start] 1fr [content-
end] 1fr [main-
end]; grid-template-rows: [main-start] 100px [content-start] 100px [content-
end] 100px [main-
end]; } once the lines have names, we can use the name to place the item rather than the line number.
...And 13 more matches
display - CSS: Cascading Style Sheets
see the table at the
end of this document for all of the individual specifications.
... run-in elements act like inlines or blocks, dep
ending on the surrounding elements.
... dep
ending on the value of other properties (such as position, float, or overflow) and whether it is itself participating in a block or inline formatting context, it either establishes a new block formatting context (bfc) for its contents or integrates its contents into its parent formatting context.
...And 13 more matches
<audio>: The Embed Audio element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the allowed values are: anonymous s
ends a cross-origin request without a credential.
... in other words, it s
ends the origin: http header without a cookie, x.509 certificate, or performing http basic authentication.
...And 13 more matches
Standard metadata names - HTML: Hypertext Markup Language
referrer: controls the http referer header for to requests sent from the document: values for the content attribute of <meta name="referrer"> no-referrer do not s
end a http referer header.
... origin s
end the origin of the document.
... no-referrer-when-downgrade s
end the full url when the destination is at least as secure as the current page (http(s)→https), but s
end no referrer when it's less secure (https→http).
...And 13 more matches
Using custom elements - Web Components
optionally, an options object containing an ext
ends property, which specifies the built-in element your element inherits from, if any (only relevant to customized built-in elements; see the definition below).
... so for example, we can define a custom word-count element like this: customelements.define('word-count', wordcount, { ext
ends: 'p' }); the element is called word-count, its class object is wordcount, and it ext
ends the <p> element.
...for example, wordcount is structured like so: class wordcount ext
ends htmlparagraphelement { constructor() { // always call super first in constructor super(); // element functionality written in here ...
...And 13 more matches
dev/panel - Archive of obsolete content
enables you to ext
end the firefox developer tools.
...you can use the class utility function: const { panel } = require("dev/panel"); const { class } = require("sdk/core/heritage"); const mypanel = class({ ext
ends: panel, label: "my panel", tooltip: "my new devtool", icon: "./my-devtool.png", url: "./my-devtool.html", setup: function(options) { // my setup goes here }, dispose: function() { // my teardown goes here }, onready: function() { // i can s
end messages to // the panel document here } }); alternatively, you can use the ext
end function: const { ext
end } = req...
...uire("sdk/core/heritage"); function mypanel() {}; mypanel.prototype = ext
end(panel.prototype, { label: "my panel", tooltip: "...", ....
...And 12 more matches
Enhanced Extension Installation - Archive of obsolete content
it forces its items to be located in different places on the user's disk - some v
endors wish to keep all of their installed content within c:\program files\foo\ for example.
... when changes are made to the extensions datasource - new items are installed, old items uninstalled, enabled or disabled, a .autoreg file is written to the profile directory as well, which tells the startup code that the system has been modified, so that it destroys the component registries, finishes p
ending transactions and regenerates metadata appropriately.
... for extensions, on the next startup, the startup system notices the presence of the .autoreg file and starts the extension manager with a "dirty" flag, telling it to finish any install operations that may be p
ending.
...And 12 more matches
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
instead of configuring
end user individual preferences files (~/.mozilla/default/randomdir/prefs.js) we now use a centralized default set of preferences.
... the name of the file can be anything you want because it is named by a general.config preference that should be added at the
end of file mozilla_home/default/pref/autoconf.js or mozilla_home/greprefs/autoconf.js: pref("general.config.filename", "mozilla.cfg");.
... $ rm -rf ~/.thunderbird start it $ thunderbird if thunderbird ask you to import your profile from netscape/mozilla/tb dep
ending on you mail client history, don't import anything, here we want to check the autoconfig job alone!
...And 12 more matches
Game promotion - Game development
competitions taking part in competitions will not only level up your gamedev skills and let you meet new devs to befri
end and learn from — and it will also get you involved in the community.
... if you make a good game for a competition and win some prizes in the process your game will automatically be promoted by the organizers and other att
endees.
... social media your social media presence is very important — follow the right hashtags, make fri
ends, engage in conversations, help other devs in need.
...And 12 more matches
Advanced styling effects - Learn web development
this article acts as a box of tricks, providing an introduction to some interesting advanced styling features such as box shadows, bl
end modes, and filters.
...first, some html: <article class="simple"> <p><strong>warning</strong>: the thermostat on the cosmic transc
ender has reached a critical level.</p> </article> now the css: p { margin: 0; } article { max-width: 500px; padding: 10px; background-color: red; background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.25)); } .simple { box-shadow: 5px 5px 5px rgba(0,0,0,0.7); } this gives us the following result: you'll see that we've got four items in the box-shadow property va...
... multiple box shadows you can also specify multiple box shadows in a single box-shadow declaration, by separating them with commas: <article class="multiple"> <p><strong>warning</strong>: the thermostat on the cosmic transc
ender has reached a critical level.</p> </article> p { margin: 0; } article { max-width: 500px; padding: 10px; background-color: red; background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.25)); } .multiple { box-shadow: 1px 1px 1px black, 2px 2px 1px black, 3px 3px 1px red, 4px 4px 1px red, 5px 5px 1px black, ...
...And 12 more matches
HTML text fundamentals - Learn web development
furthermore: users looking at a web page t
end to scan quickly to find relevant content, often just reading the headings to begin with.
... (we usually sp
end a very short time on a web page.) if they can't see anything useful within a few seconds, they'll likely get frustrated and go somewhere else.
...stead textarea.onkeydown = function(e){ if (e.keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substring(0, caretpos); var back = (textarea.value).substring(textarea.selection
end, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selection
end = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.onkeyup = function(){ // we only want to save the state when the user code is ...
...And 12 more matches
Fetching data from the server - Learn web development
originally page loading on the web was simple — you'd s
end a request for a website to a server, and as long as nothing went wrong, the assets that made the web page would be downloaded and displayed on your computer.
... note: in the early days, this general technique was known as asynchronous javascript and xml (ajax), because it t
ended to use xmlhttprequest to request xml data.
... however, web servers t
end to be case sensitive, and the file name doesn't have a space in it.
...And 12 more matches
Third-party APIs - Learn web development
they usually require api keys security for browser apis t
ends to be handled by permission prompts, as discussed in our first article.
... third party apis have a slightly different permissions system — they t
end to use developer keys to allow developers access to the api functionality, which is more to protect the api v
endor than the user.
... ext
ending the mapquest example let's add some more functionality to the mapquest example to show how to use some other features of the api.
...And 12 more matches
Client-Server Overview - Learn web development
when you click a link on a web page, submit a form, or run a search, the browser s
ends an http request to the server.
...information can be encoded as: url parameters: get requests encode data in the url sent to the server by adding name/value pairs onto the
end of it — for example http://mysite.com?name=fred&age=11.
... when an html page is returned it is r
endered by the web browser.
...And 12 more matches
TypeScript support in Svelte - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... in the
end, it's your decision.
... then you'll have to tell npm to download dep
endencies and start the project in development mode, like we usually do: npm install npm run dev adding typescript support to an existing svelte project to add typescript support to an existing svelte project you can follow these instructions.
...And 12 more matches
Componentizing our Svelte app - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...it will help you understand how they relate to each other, it will promote reuse, and it will make your code easier to reason about, maintain, and ext
end.
...if it
ends up growing, it should be split into smaller subcomponents.
...And 12 more matches
Advanced Svelte: Reactivity, lifecycle, accessibility - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...we will also learn about the action directive, which will allow us to ext
end the functionality of html elements in a reusable and declarative way.
... add the following import statement below the existing ones: import moreactions from './moreactions.svelte' then add the described functions at the
end of the <script> section: const checkalltodos = (completed) => todos.foreach(t => t.completed = completed) const removecompletedtodos = () => todos = todos.filter(t => !t.completed) now go to the bottom of the todos.svelte markup section and replace the btn-group <div> that we copied into moreactions.svelte with a call to the moreactions component, like so: <!-- moreactions --> <morea...
...And 12 more matches
Handling common JavaScript problems - Learn web development
these days, most cross-browser javascript problems are seen: when poor-quality browser-sniffing code, feature-detection code, and v
endor prefix usage block browsers from running code they could otherwise use just fine.
... confusion about this, in terms of what scope it applies to, and therefore if its value is what you int
ended.
...the javascript/ecmascript linters we'd recomm
end are jshint and eslint; these can be used in a variety of ways, some of which we'll detail below.
...And 12 more matches
Deploying our app - Learn web development
netlify gives us hosting or more specifically, a url to view your project online and to share it with your fri
ends, family, and colleagues.
... deploying to hosting t
ends to be at the tail-
end of the project life cycle, but with services such as netlify bringing down the cost of deployments (both in financial terms and also the time required to actually deploy) it's possible to deploy during development to either share work in progress or to have a pre-release for some other purpose.
... although netlify offers a drag and drop deployment service, we are int
ending to trigger a new deployment to netlify each time we push to a github repo.
...And 12 more matches
Accessibility API cross-reference
aria can be used to 'fill out' the missing semantics of html, but may also be used in other markup languages (such as svg) and expresses semantics using attributes, compared with html, which t
ends to have distinct named elements for its roles.
... 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 dep
ending 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 for alerts, in java/gnome for any alert, in msaa if no other role applies.
... alert alert alert alert, alertdialog content changes over time, such as animated gif animation n/a no spec n/a a section that forms an indep
endent part of a document, page, or site.
...And 12 more matches
Communicating with frame scripts
the api is mostly symmetrical, with one major exception: frame scripts can s
end asynchronous or synchronous messages to chrome, but chrome can only s
end asynchronous messages to content.
... content to chrome the frame script can choose to s
end synchronous or asynchronous messages to chrome code.
... asynchronous messaging to s
end an asynchronous message the frame script uses the global s
endasyncmessage() function: // frame script s
endasyncmessage("my-addon@me.org:my-e10s-extension-message"); s
endasyncmessage() takes one mandatory parameter, which is the name of the message.
...And 12 more matches
nsIAccessibleEvent
event_active_dec
endent_changed 0x0007 0x0004 the active desc
endant of a component has changed.
... the active desc
endant is used in objects with transient children.
...server applications s
end this event when a user needs to know that a user interface element has changed.
...And 12 more matches
Index
these pages document thunderbird and the mailnews back
end which is also used in other projects such as seamonkey and postbox.
... for the message pane, the icon we will show is on disk at: <profile home>/nim/<value of pref aim.session.screenname>/picture/<screenname for s
ender email address>.gif when trying to determine the screenname for the s
ender, we search the addressbook that we are using for collection.
... instead of destroying the mail compose window on s
end (or close) just to create a new one the next time, mozilla mail will "cache" the compose window on s
end (or close), and use that instead.
...And 12 more matches
How whitespace is handled by HTML, CSS, and in the DOM - Web APIs
the presence of whitespace in the dom can cause layout problems and make manipulation of the content tree difficult in unexpected ways, dep
ending on where it is located.
...in fact, much of our source code is full of these whitespace characters, and we only t
end to get rid of it in a production build step to reduce code download sizes.
... in the case of html, whitespace is largely ignored — whitespace in between words is treated as a single character, and whitespace at the start and
end of elements and outside elements is ignored.
...And 12 more matches
Using files from web applications - Web APIs
ple shows a possible use of the size property: <!doctype html> <html> <head> <meta charset="utf-8"> <title>file(s) size</title> </head> <body> <form name="uploadform"> <div> <input id="uploadinput" type="file" name="myfiles" multiple> selected files: <span id="filenum">0</span>; total size: <span id="filesize">0</span> </div> <div><input type="submit" value="s
end file"></div> </form> <script> function updatesize() { let nbytes = 0, ofiles = this.files, nfiles = ofiles.length; for (let nfileid = 0; nfileid < nfiles; nfileid++) { nbytes += ofiles[nfileid].size; } let soutput = nbytes + " bytes"; // optional code for multiples approximation const amultiples = ["kib", "mib", "gib", "tib", "pib", "eib", "zib...
...", "yib"]; for (nmultiple = 0, napprox = nbytes / 1024; napprox > 1; napprox /= 1024, nmultiple++) { soutput = napprox.tofixed(3) + " " + amultiples[nmultiple] + " (" + nbytes + " bytes)"; } //
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.
...exactly what part of your content will accept drops may vary dep
ending on the design of your application, but making an element receive drop events is easy: let dropbox; dropbox = document.getelementbyid("dropbox"); dropbox.addeventlistener("dragenter", dragenter, false); dropbox.addeventlistener("dragover", dragover, false); dropbox.addeventlistener("drop", drop, false); in this example, we're turning the element with the id dropbox into our drop zone.
...And 12 more matches
HTMLTextAreaElement - Web APIs
this is "forward" if selection was performed in the start-to-
end direction of the current locale, or "backward" for the opposite direction.
... selection
end unsigned long: returns / sets the index of the
end of selected text.
...on being set, the control behaves as if setselectionrange() had been called with this as the first argument, and selection
end as the second argument.
...And 12 more matches
OffscreenCanvas - Web APIs
the offscreencanvas interface provides a canvas that can be r
endered off screen.
... methods offscreencanvas.getcontext() returns a r
endering context for the offscreen canvas.
... offscreencanvas.transfertoimagebitmap() creates an imagebitmap object from the most recently r
endered image of the offscreencanvas.
...And 12 more matches
Basic concepts of flexbox - CSS: Cascading Style Sheets
the main axis is defined by the flex-direction property, and the cross axis runs perp
endicular to it.
... the cross axis the cross axis runs perp
endicular to the main axis, therefore if your flex-direction (main axis) is set to row or row-reverse the cross axis runs down the columns.
... start and
end lines another vital area of understanding is how flexbox makes no assumption about the writing mode of the document.
...And 12 more matches
align-content - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* basic positional alignment */ /* align-content does not take left and right values */ align-content: center; /* pack items around the center */ align-content: start; /* pack items from the start */ align-content:
end; /* pack items from the
end */ align-content: flex-start; /* pack flex items from the start */ align-content: flex-
end; /* pack flex items from the
end */ /* normal alignment */ align-content: normal; /* baseline alignment */ align-content: baseline; align-content: first baseline; align-content: last baseline; /* distributed alignment */ align-content: space-between; /* distribute items evenly the first item is flush wi...
...th the start, the last is flush with the
end */ align-content: space-around; /* distribute items evenly items have a half-size space on either
end */ align-content: space-evenly; /* distribute items evenly items have equal space around them */ align-content: stretch; /* distribute items evenly stretch 'auto'-sized items to fit the container */ /* overflow alignment */ align-content: safe center; align-content: unsafe center; /* global values */ align-content: inherit; align-content: initial; align-content: unset; values start the items are packed flush to each other against the star...
...And 12 more matches
max-height - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if the height of the containing block is not specified explicitly (i.e., it dep
ends on content height), and this element is not absolutely positioned, the percentage value is treated as none.computed valuethe percentage as specified or the absolute length or noneanimation typea length, percentage or calc(); formal syntax auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)where <length-percentage> = <length> | <percentage> examples s...
... recomm
endation initial definition.
...And 12 more matches
max-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 12 more matches
<fieldset>: The Field Set element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... as the example above shows, the <fieldset> element provides a grouping for a part of an html form, with a nested <leg
end> element providing a caption for the <fieldset>.
... disabled if this boolean attribute is set, all form controls that are desc
endants of the <fieldset>, are disabled, meaning they are not editable and won't be submitted along with the <form>.
...And 12 more matches
<input type="search"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...since character widths vary, this may or may not be exact and should not be relied upon to be so; the resulting input may be narrower or wider than the specified number of characters, dep
ending on the characters and the font (font settings in use).
... incremental whether or not to s
end repeated search events to allow updating live search results while the user is still editing the value of the field.
...And 12 more matches
Using HTTP cookies - HTTP
an http cookie (web cookie, browser cookie) is a small piece of data that a server s
ends to the user's web browser.
... the browser may store it and s
end it back with later requests to the same server.
...while this was legitimate when they were the only way to store data on the client, it is now recomm
ended to use modern storage apis.
...And 12 more matches
Authoring MathML - MathML
in particular, the mozilla mathml team has been developing texzilla, a javascript unicode latex-to-mathml converter that is int
ended to be used in many scenarios described here.
...it's recomm
ended to convert your content mathml markup into presentation mathml before publishing it, for example with the help of the ctop.xsl stylesheet.
... fallback for browsers without mathml support unfortunately, some browsers are not able to r
ender mathml equations or only have a limited support.
...And 12 more matches
Using templates and slots - Web Components
this element and its contents are not r
endered in the dom, but it can still be referenced using javascript.
... let's look at a trivial quick example: <template id="my-paragraph"> <p>my paragraph</p> </template> this won't appear in your page until you grab a reference to it with javascript and then app
end it to the dom, using something like the following: let template = document.getelementbyid('my-paragraph'); let templatecontent = template.content; document.body.app
endchild(templatecontent); although trivial, you can already start to see how this could be useful.
...we'll call it <my-paragraph>: customelements.define('my-paragraph', class ext
ends htmlelement { constructor() { super(); let template = document.getelementbyid('my-paragraph'); let templatecontent = template.content; const shadowroot = this.attachshadow({mode: 'open'}) .app
endchild(templatecontent.clonenode(true)); } } ); the key point to note here is that we app
end a clone of the template content to the shadow root, created using the node.clonenode() method.
...And 12 more matches
panel - Archive of obsolete content
icon-64.png" }, onchange: handlechange }); var mypanel = sdkpanels.panel({ contenturl: self.data.url("panel.html"), onhide: handlehide }); function handlechange(state) { if (state.checked) { mypanel.show({ position: button }); } } function handlehide() { button.state('window', {checked: false}); } updating panel content you can update the panel's content by: s
ending a message to a content script that updates the dom in the same document.
...so implementing a complete solution usually means you have to s
end messages between the content script and the main add-on code.
... for example, here's an add-on whose content script intercepts mouse clicks on links inside the panel, and s
ends the target url to the main add-on code.
...And 11 more matches
places/bookmarks - Archive of obsolete content
nction (saved, inputitem) { // on a "data" event, an item has been updated, passing in the // latest snapshot from the server as `saved` (with properties // such as `updated` and `id`), as well as the initial input // item as `inputitem` console.log(saved.title === inputitem.title); // true console.log(saved !== inputitem); // true console.log(inputitem === bookmark); // true }).on("
end", function (saveditems, inputitems) { // similar to "data" events, except "
end" is an aggregate of // all progress events, with ordered arrays as `saveditems` // and `inputitems` }); creating several bookmarks with a new group let { bookmark, group, save } = require("sdk/places/bookmarks"); let group = group({ title: "guitars" }); let bookmarks = [ bookmark({ title: "ran", url: "http:/...
... save(bookmarks).on("data", function (saved, input) { // a data event is called once for each item saved, as well // as implicit items, like `group` console.log(input === group || ~bookmarks.indexof(input)); // true }).on("
end", function (saves, inputs) { // like the previous example, the "
end" event returns an // array of all of our updated saves.
... let { search, unsorted } = require("sdk/places/bookmarks"); // simple query with one object search( { query: "firefox" }, { sort: "title" } ).on("
end", function (results) { // results matching any bookmark that has "firefox" // in its url, title or tag, sorted by title }); // multiple queries are or'd together search( [{ query: "firefox" }, { group: unsorted, tags: ["mozilla"] }], { sort: "title" } ).on("
end", function (results) { // our first query is the same as the simple query above; // all of those results are also returned h...
...And 11 more matches
Mozilla Crypto FAQ - Archive of obsolete content
note that this document is for your information only and is not int
ended as legal advice.
... also note that mozilla support for pgp and other security schemes may also be made available by commercial security v
endors or by indep
endent developers, using the various public apis already present in mozilla.
...you should contact those v
endors or developers directly for more information concerning their plans.
...And 11 more matches
Sunbird Theme Tutorial - Archive of obsolete content
to make a theme, you usually need these tools: a jar tool or zip tool an editor for plain text files software for creating and editing images note: some zip tools only work with files whose names have <tt>.zip</tt> at the
end.
...if you want to make it clear that your made-up name is not a real domain, add <tt>.invalid</tt> to the
end.
...copy and paste the content from here (just one line): skin cal
endar testing chrome/cal
endar/ change <tt>testing</tt> to your theme's one-word internal name.
...And 11 more matches
Introduction to CSS layout - Learn web development
let's look at a quick html example: <p>i love my cat.</p> <ul> <li>buy cat food</li> <li>exercise</li> <li>cheer up fri
end</li> </ul> <p>the
end!</p> by default, the browser will display this code as follows: note here how the html is displayed in the exact order in which it appears in the source code, with elements stacked up on top of one another — the first paragraph, followed by the unordered list, followed by the second paragraph.
...the items all line up at the start of the container, leaving any extra space at the
end of the row.
...this will cause all of the items to grow and fill the container, rather than leaving space at the
end.
...And 11 more matches
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 s
ending 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).
...we are asking the user for their name, their e-mail and the message they want to s
end.
... hitting the button will s
end their data to a web server.
...And 11 more matches
Useful string methods - Learn web development
retrieving a specific string character on a related note, you can return any character inside a string by using square bracket notation — this means you include square brackets ([]) on the
end of your variable name.
...you could do something like this: if(browsertype.indexof('mozilla') !== -1) { // do stuff with the string } when you know where a substring starts inside a string, and you know at which character you want it to
end, slice() can be used to extract it.
... note: the second parameter of slice() is optional: if you don't include it, the slice
ends at the
end of the original string.
...And 11 more matches
Focus management with Vue refs - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
...in addition, what happens when you press tab again varies dep
ending on the browser you're using.
...no two elements r
endered at the same time should have the same ref.
...And 11 more matches
Gecko Profiler FAQ
to stop the profiler from gathering more samples after the “startup
end” marker that you’re interested in, you can call services.profiler.pause(); or you can insert a marker with a special string and then write a script that filters out all samples that were gathered after your marker.
...in the
end, you should have one big “before” profile and one big “after” profile.
... it dep
ends on what you are trying to profile to some extent.
...And 11 more matches
nsIFile
with an nsifile you can navigate to ancestors or desc
endants without having to deal with the different path separators used on different platforms, query the state of any file or directory at the position represented by the nsifile and create, move or copy items in the filesystem.
... method overview void app
end(in astring node); void app
endnative(in acstring node); native code only!
... void app
endrelativenativepath(in acstring relativefilepath); void app
endrelativepath(in astring relativefilepath); nsifile clone(); boolean contains(in nsifile infile); void copyto(in nsifile newparentdir, in astring newname); void copytofollowinglinks(in nsifile newparentdir, in astring newname); void copytofollowinglinksnative(in nsifile newparentdir, in acstring newname); native code only!
...And 11 more matches
Streams - Plugins
« previousnext » this chapter describes using plug-in api functions to receive and s
end streams.
... receiving a stream s
ending a stream receiving a stream when the browser s
ends a data stream to the plug-in, it has several tasks to perform: telling the plug-in when a stream is created telling the plug-in when a stream is deleted finding out how much data the plug-in can accept writing the stream to the plug-in s
ending the stream in random-access mode s
ending the stream in file mode telling the plug-in whe...
...this method also determines which mode it should use to s
end data to the plug-in.
...And 11 more matches
Drawing shapes with canvas - Web APIs
by the
end of this article, you will have learned how to draw rectangles, triangles, lines, arcs and curves, providing familiarity with some of the basic shapes.
... in upcoming pages we'll see two alternative methods for clearrect(), and we'll also see how to change the color and stroke style of the r
endered shapes.
... once the path has been created, you can stroke or fill the path to r
ender it.
...And 11 more matches
Using FormData Objects - Web APIs
the formdata object lets you compile a set of key/value pairs to s
end using xmlhttprequest.
... it is primarily int
ended for use in s
ending form data, but can be used indep
endently from forms in order to transmit keyed data.
... the transmitted data is in the same format that the form's submit() method would use to s
end the data if the form's encoding type were set to multipart/form-data.
...And 11 more matches
Drag Operations - Web APIs
an os-specific r
endering of the selection will appear and follow the mouse pointer as the drag occurs.
...the most commonly used types are listed in the article recomm
ended drag types.
... within the drop and drag
end events, you can check the dropeffect property to determine which effect was ultimately chosen.
...And 11 more matches
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 rtcrtps
ender and rtcrtpreceiver objects.
...the number of dtls transports created and how they're used dep
ends on the bundling mode used when creating the rtcpeerconnection.
... whether bundling is used dep
ends on what the other
endpoint is able to negotiate.
...And 11 more matches
Spaces and reference spaces: Spatial tracking in WebXR - Web APIs
the player, avatar, or camera; the origin of this space is used as the camera position for r
endering the scene to be displayed to the user.
... the target ray; each controller or other handheld device may have a targeting ray associated with it, which is represented by a space whose origin is at the point on the controller at which the ray is emitted, and is oriented so that -z ext
ends in the direction of the target it's pointing at.
...this means that most frequently, you'll be using poses within your frame r
endering code, which is executed as a callback from the xrframe method requestanimationframe().
...And 11 more matches
window.postMessage() - Web APIs
this mechanism provides control over where messages are sent; for example, if postmessage() was used to transmit a password, it would be absolutely critical that this argument be a uri whose origin is the same as the int
ended receiver of the message containing the password, to prevent interception of the password by a malicious third party.
...failing to provide a specific target discloses the data you s
end to any interested malicious site.
...the ownership of these objects is given to the destination side and they are no longer usable on the s
ending side.
...And 11 more matches
WindowOrWorkerGlobalScope.setInterval() - Web APIs
this syntax is not recomm
ended for the same reasons that make using eval() a security risk.
...amap[npos]++ : bexit = true; if (beraseandstop && (orel.ref.nodetype - 1 | 1) === 3 && orel.ref.nodevalue) { bexit = true; ocurrent = orel.ref; spart = ocurrent.nodevalue; ocurrent.nodevalue = ''; } osheet.ref.app
endchild(orel.ref); if (bexit) { return false; } } amap.length--; return true; } function typewrite () { if (spart.length === 0 && scroll(asheets[nidx], 0, true) && nidx++ === asheets.length - 1) { clean(); return; } ocurrent.nodevalue += spart.charat(0); spart = spart.slice(1); } function sheet (onode) { this.ref = onode; if (!onode.haschildnodes()) ...
...susp
endisse quam libero, luctus auctor mollis sed, malesuada condimentum magna.
...And 11 more matches
Web APIs
ule cssnumericvalue cssomstring csspagerule csspositionvalue cssprimitivevalue csspseudoelement cssrule cssrulelist cssstyledeclaration cssstylerule cssstylesheet cssstylevalue csssupportsrule cssunitvalue cssunparsedvalue cssvalue cssvaluelist cssvariablereferencevalue cache cachestorage canvascapturemediastreamtrack canvasgradient canvasimagesource canvaspattern canvasr
enderingcontext2d caretposition channelmergernode channelsplitternode characterdata childnode client clients clipboard clipboardevent clipboarditem closeevent comment compositionevent constantsourcenode constrainboolean constraindomstring constraindouble constrainulong contentindex contentindexevent convolvernode countqueuingstrategy crashreportbody credential credentialscontainer c...
... delaynode deprecationreportbody devicelightevent devicemotionevent devicemotioneventacceleration devicemotioneventrotationrate deviceorientationevent deviceproximityevent directoryentrysync directoryreadersync displaymediastreamconstraints document documentfragment documentorshadowroot documenttimeline documenttouch documenttype doublerange dragevent dynamicscompressornode e ext_bl
end_minmax ext_color_buffer_float ext_color_buffer_half_float ext_disjoint_timer_query ext_float_bl
end ext_frag_depth ext_srgb ext_shader_texture_lod ext_texture_compression_bptc ext_texture_compression_rgtc ext_texture_filter_anisotropic eckeygenparams eckeyimportparams ecdhkeyderiveparams ecdsaparams effecttiming element elementcssinlinestyle elementtraversal errorevent event eventlistener even...
...tsource eventtarget ext
endableevent ext
endablemessageevent f featurepolicy federatedcredential fetchevent file fileentrysync fileerror fileexception filelist filereader filereadersync filerequest filesystem filesystemdirectoryentry filesystemdirectoryreader filesystementry filesystementrysync filesystemfileentry filesystemflags filesystemsync focusevent fontface fontfaceset fontfacesetloadevent formdata formdataentryvalue formdataevent fullscreenoptions g gainnode gamepad gamepadbutton gamepadevent gamepadhapticactuator geolocation geolocationcoordinates geolocationposition geolocationpositionerror geometryutils gestureevent globaleventhandlers gyroscope h htmlanchorelement htmlareaelement htmlaudioelement htmlbrelement htmlbaseelement htmlbasefontel...
...And 11 more matches
:nth-last-child() - CSS: Cascading Style Sheets
the :nth-last-child() css pseudo-class matches elements based on their position among a group of siblings, counting from the
end.
... /* selects every fourth element among any group of siblings, counting backwards from the last one */ :nth-last-child(4n) { color: lime; } note: this pseudo-class is essentially the same as :nth-child, except it counts items backwards from the
end, not forwards from the beginning.
... syntax the nth-last-child pseudo-class is specified with a single argument, which represents the pattern for matching elements, counting from the
end.
...And 11 more matches
box-align - CSS: Cascading Style Sheets
the box-align css property specifies how an element aligns its contents across its layout in a perp
endicular direction.
... /* keyword values */ box-align: start; box-align: center; box-align:
end; box-align: baseline; box-align: stretch; /* global values */ box-lines: inherit; box-lines: initial; box-lines: unset; the direction of layout dep
ends on the element's orientation: horizontal or vertical.
... values start the box aligns contents at the start, leaving any extra space at the
end.
...And 11 more matches
clear - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... #container::after { content: ""; display: block; clear: both; } syntax /* keyword values */ clear: none; clear: left; clear: right; clear: both; clear: inline-start; clear: inline-
end; /* global values */ clear: inherit; clear: initial; clear: unset; values none is a keyword indicating that the element is not moved down to clear past floating elements.
... inline-
end is a keyword indicating that the element is moved down to clear floats on
end side of its containing block, that is the right floats on ltr scripts and the left floats on rtl scripts.
...And 11 more matches
justify-content - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* positional alignment */ justify-content: center; /* pack items around the center */ justify-content: start; /* pack items from the start */ justify-content:
end; /* pack items from the
end */ justify-content: flex-start; /* pack flex items from the start */ justify-content: flex-
end; /* pack flex items from the
end */ justify-content: left; /* pack items from the left */ justify-content: right; /* pack items from the right */ /* baseline alignment */ /* justify-content does not take baseline values */ /* normal alignment */ justify-...
...content: normal; /* distributed alignment */ justify-content: space-between; /* distribute items evenly the first item is flush with the start, the last is flush with the
end */ justify-content: space-around; /* distribute items evenly items have a half-size space on either
end */ justify-content: space-evenly; /* distribute items evenly items have equal space around them */ justify-content: stretch; /* distribute items evenly stretch 'auto'-sized items to fit the container */ /* overflow alignment */ justify-content: safe center; justify-con...
...And 11 more matches
justify-items - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the effect of this property is dep
endent of the layout mode we are in: in block-level layouts, it aligns the items inside their containing block on the inline axis.
...ment in flexbox) in grid layouts, it aligns the items inside their grid areas on the inline axis (more about alignment in grid layouts) syntax /* basic keywords */ justify-items: auto; justify-items: normal; justify-items: stretch; /* positional alignment */ justify-items: center; /* pack items around the center */ justify-items: start; /* pack items from the start */ justify-items:
end; /* pack items from the
end */ justify-items: flex-start; /* equivalent to 'start'.
...And 11 more matches
Getting Started - Developer guides
it can s
end and receive information in various formats, including json, xml, html, and text files.
...}; next, after declaring what happens when you receive the response, you need to actually make the request, by calling the open() and s
end() methods of the http request object, like this: httprequest.open('get', 'http://www.example.org/some.file', true); httprequest.s
end(); the first parameter of the call to open() is the http request method – get, post, head, or another method supported by your server.
... the second parameter is the url you're s
ending the request to.
...And 11 more matches
Applying color to HTML elements using CSS - HTML: Hypertext Markup Language
text whenever an element is r
endered, these properties are used to determine the color of the text, its background, and any decorations on the text.
...among the options for the shadow is the shadow's base color (which is then blurred and bl
ended with the background based on the other parameters).
... border-block-start-color and border-block-
end-color with these, you can set the color used to draw the borders which are closest to the start and
end of the block the border surrounds.
...And 11 more matches
HTTP headers - HTTP
end-to-
end headers these headers must be transmitted to the final recipient of the message: the server for a request, or the client for a response.
... accept-language informs the server about the human language the server is expected to s
end back.
... set-cookie s
end cookies from the server to the user-agent.
...And 11 more matches
Local Storage - Archive of obsolete content
we recomm
end that you at least keep an error log, so that you can request error data from your users when you encounter problems that are hard to debug.
... it is strongly recomm
ended that you keep your local files inside the firefox profile directory.
... let localdir = directoryservice.get("profd", ci.nsifile); localdir.app
end("xulschool"); if (!localdir.exists() || !localdir.isdirectory()) { // read and write permissions to owner and group, read-only for others.
...And 10 more matches
Complete - Archive of obsolete content
it is just an ext
ended code sample.
... install.js installation script for seamonkey chrome directory containing the extension code chrome/allcustom.jar the extension jar defaults/preferences directory containing a preferences file inside the jar there are three directories: content xul, javascript and other content that does not dep
end on the locale or theme locale files for each locale skin files for each theme version checks firefox etc.
...these version checks dep
end on the version numbers specified in the install.rdf file.
...And 10 more matches
Using Remote XUL - Archive of obsolete content
xul is often used by desktop applications like mozilla but can also be loaded from a web server and r
endered inside the content pane of a compatible browser.
... xul loaded and r
endered in this way is called remote xul and can be used for basic functions like web site navigation as well as to build sophisticated web-based applications.
... xul's navigation-oriented widgets, like toolbars, menus, and trees, are a better way to provide web site navigation because they can fit a lot of navigation into a small space, r
ender quickly, and work well.
...And 10 more matches
CSS FAQ - Learn web development
why doesn't my css, which is valid, r
ender correctly?
... modern browsers have two main r
endering modes: quirks mode: also called backwards-compatibility mode, allows legacy webpages to be r
endered as their authors int
ended, following the non-standard r
endering rules used by older browsers.
... documents with an incomplete, incorrect, or missing doctype declaration or a known doctype declaration in common use before 2001 will be r
endered in quirks mode.
...And 10 more matches
Advanced text formatting - Learn web development
extarea.onkeydown = function(e){ if (e.keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).substring(0, caretpos); const back = (textarea.value).substring(textarea.selection
end, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selection
end = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.onkeyup = function(){ // we only want to save the state when the user code is ...
...being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; quotations html also has features available for marking up quotations; which element you use dep
ends on whether you are marking up a block or inline quotation.
...for example, the following markup is taken from the mdn <blockquote> element page: <p>the <strong>html <code><blockquote></code> element</strong> (or <em>html block quotation element</em>) indicates that the enclosed text is an ext
ended quotation.</p> to turn this into a block quote, we would just do this: <p>here below is a blockquote...</p> <blockquote cite="/docs/web/html/element/blockquote"> <p>the <strong>html <code><blockquote></code> element</strong> (or <em>html block quotation element</em>) indicates that the enclosed text is an ext
ended quotation.</p> </blockquote> browser default styling will r
ender t...
...And 10 more matches
Introducing asynchronous JavaScript - Learn web development
let's look at a simple example (see it live here, and see the source): const btn = document.queryselector('button'); btn.addeventlistener('click', () => { alert('you clicked me!'); let pelem = document.createelement('p'); pelem.textcontent = 'this is a newly-added paragraph.'; document.body.app
endchild(pelem); }); in this block, the lines are executed one after the other: we grab a reference to a <button> element that is already available in the dom.
... finally, we app
end the paragraph to the document body.
... while each operation is being processed, nothing else can happen — r
endering is paused.
...And 10 more matches
Cooperative asynchronous JavaScript: Timeouts and intervals - Learn web development
dep
ending on how processor-intensive these operations are, they can delay your async code even further, as any async code will execute only after the main thread is available.
... passing parameters to a settimeout() function any parameters that you want to pass to the function being run inside the settimeout() must be passed to it as additional parameters at the
end of the list.
...you'll probably want a way to stop such tasks, otherwise you may
end up getting errors when the browser can't complete any further versions of the task, or if the animation being handled by the task has finished.
...And 10 more matches
Arrays - Learn web development
we'll use the myarray array we
ended up with in the last section.
... if you've not already followed that section, create the array first in your console: let myarray = ['manchester', 'london', 'liverpool', 'birmingham', 'leeds', 'carlisle']; first of all, to add or remove an item at the
end of an array we can use push() and pop() respectively.
... let's use push() first — note that you need to include one or more items that you want to add to the
end of your array.
...And 10 more matches
Working with JSON - Learn web development
it is commonly used for transmitting data in web applications (e.g., s
ending some data from the server to the client, so it can be displayed on a web page, or vice versa).
...even though it closely resembles javascript object literal syntax, it can be used indep
endently from javascript, and many programming environments feature the ability to read (parse) and generate json.
...then we s
end the request with the s
end() method: request.responsetype = 'json'; request.s
end(); the last bit of this section involves waiting for the response to return from the server, then dealing with it.
...And 10 more matches
Server-side web frameworks - Learn web development
exact, case-insensitive, greater than, etc.), and can support complex statements (for example, you can specify a search on u11 teams that have a team name that starts with "fr" or
ends with "al").
... #best/views.py from django.shortcuts import r
ender from .models import team def youngest(request): list_teams = team.objects.filter(team_level__exact="u09") context = {'youngest_teams': list_teams} return r
ender(request, 'best/index.html', context) r
endering data web frameworks often provide templating systems.
...{{ variable_name }}), which will be replaced by values passed in from the view function when a page is r
endered.
...And 10 more matches
Ember resources and troubleshooting - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... for framework-specific things, there is the ember-inspector add-on, which allows inspection of: routes & controllers components services promises data (i.e: from a remote api — from ember-data, by default) deprecation information r
ender performance for general javascript debugging, check out our guides on javascript debugging as well as interacting with the browser's other debugging tools.
... in any default ember project, there will be two main javascript files, v
endor.js and {app-name}.js.
...And 10 more matches
Working with Svelte stores - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...in this case, the alert component is indep
endent from the rest — it is not a parent or child of any other — so the messages don't fit into the component hierarchy.
... our alert component will displayed by the app component, but any component can s
end notifications to it; whenever a notification arrives the alert component will be in charge of displaying it on screen.
...And 10 more matches
Creating our first Vue component - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
... objective: to learn how to create a vue component, r
ender it inside another component, pass data into it using props, and save its state.
... to actually r
ender the todoitem component in the app, you need to go up into your <template> element and call it as a <to-do-item></to-do-item> element.
...And 10 more matches
Introduction to automated testing - Learn web development
inside this section we'll look at how to automate task running with node and gulp, a beginner-fri
endly option.
... first, install gulp globally (meaning, it will be available across all projects) using the following command: npm install --global gulp-cli next, run the following command inside your npm project directory root to set up gulp as a dep
endency of your project: npm install --save-dev gulp now create a new file inside your project directory called gulpfile.js.
... autoprefixer to scan our css and add v
endor prefixes only where needed (see gulp-autoprefixer).
...And 10 more matches
Mozilla accessibility architecture
you may also wish to read gecko info for windows accessibility v
endors, a primer for v
endors of 3rd party accessibility software, on how msaa clients can utilize gecko's support.
...the problem is, what happens if there are dom nodes that the assistive technology v
endors wants to know about, which are not exposed?
...in addition, some v
endors had asked us to provide information and support for pieces of text smaller than a text node (i.e.
...And 10 more matches
About NSPR
netscape portable runtime (nspr) provides platform indep
endence for non-gui operating system facilities.
... these facilities include threads, thread synchronization, normal file and network i/o, interval timing and cal
endar time, basic memory management (malloc and free) and shared library linking.
...nspr went beyond that requirement in some areas and since it was also the platform indep
endent layer for most of the servers produced by netscape.
...And 10 more matches
SpiderMonkey Internals
interpreter like many portable interpreters, spidermonkey's interpreter is mainly a single, trem
endously long function that steps through the bytecode one instruction at a time, using a switch statement (or faster alternative, dep
ending on the compiler) to jump to the appropriate chunk of code for the current instruction.
... some spidermonkey bytecode operations have many special cases, dep
ending on the type of their arguments.
... the representation is 64 bits and uses nan-boxing on all platforms, although the exact nan-boxing format dep
ends on the platform.
...And 10 more matches
nsAdoptingString
class declaration nstadoptingstring ext
ends nstxpidlstring such that: (1) adopt given string on construction or assignment, i.e.
...method overview constructors operator= operator const prunichar* operator[] get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsxpidlstring data members no public members.
...And 10 more matches
nsXPIDLString
class declaration nstxpidlstring ext
ends nststring such that: (1) mdata can be null (2) objects of this type can be automatically cast to |const chart*| (3) getter_copies method is supported to adopt data allocated with ns_alloc, such as "out string" parameters in xpidl.
...cters method overview constructors operator const prunichar* operator[] operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsstring data members no public members.
...And 10 more matches
IAccessibleEditableText
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.
... if
endoffset is lower than startoffset, the result is the same as a call with the two arguments exchanged.
...method overview hresult copytext([in] long startoffset, [in] long
endoffset ); hresult cuttext([in] long startoffset, [in] long
endoffset ); hresult deletetext([in] long startoffset, [in] long
endoffset ); hresult inserttext([in] long offset, [in] bstr text ); hresult pastetext([in] long offset ); hresult replacetext([in] long startoffset, [in] long
endoffset, [in] bstr text ); hresult setattributes([in] long startoffset, [in] long
endoffset, [in] bstr ...
...And 10 more matches
Address Book examples
note: thunderbird and seamonkey user interfaces now reference 'contacts' not 'cards' however, as the back
end still uses the 'cards' terminology, that is what is used here this article provides examples on accessing and manipulating thunderbird address books.
... addressbook.modifycard(card); deleting contacts once you have obtained a card(s) from an nsiabdirectory (see above) you can delete one or more simply by calling the deletecards function: let cardstodelete = components.classes["@mozilla.org/array;1"] .createinstance(components.interfaces.nsimutablearray); cardstodelete.app
endelement(card); // repeat app
end as necessary addressbook.deletecards(cardstodelete); how do i add and use my own properties?
...rty;1"] .createinstance(components.interfaces.nsiabdirectory); maillist.ismaillist = true; now fill in the details you want to store: maillist.dirname = "my mailing list"; maillist.listnickname = "nickname for list"; maillist.description = "list description"; add the cards you want to include in the list: for (let i = 0; i < numcards; i++) maillist.addresslists.app
endelement(card[i], false); now save the list: var parentdirectory = ...; // an nsiabdirectory for the parent of the mailing list.
...And 10 more matches
IDBFactory - Web APIs
recomm
endation indexed database api draftthe definition of 'idbfactory' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 10 more matches
RTCOutboundRtpStreamStats - Web APIs
the rtcoutboundrtpstreamstats dictionary is the rtcstats-based object which provides metrics and statistics related to an outbound rtp stream being sent by an rtcrtps
ender.
... fircount an integer value which indicates the total number of full intra request (fir) packets which this rtcrtps
ender has sent to the remote rtcrtpreceiver.
... framesencoded the number of frames that have been successfully encoded so far for s
ending on this rtp stream.
...And 10 more matches
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 canvasr
enderingcontext2d.measuretext() method.
... textmetrics.actualboundingboxleft read only is a double giving the distance from the alignment point given by the canvasr
enderingcontext2d.textalign property to the left side of the bounding rectangle of the given text, in css pixels.
... textmetrics.actualboundingboxright read only is a double giving the distance from the alignment point given by the canvasr
enderingcontext2d.textalign property to the right side of the bounding rectangle of the given text, in css pixels.
...And 10 more matches
WebRTC Statistics API - Web APIs
the webrtc api has a vast array of statistics available, covering the entire breadth of the webrtc connectivity system, from s
ender to receiver and peer to peer.
... rtcicecandidatestats rtcstats media-source statistics about the media produced by the mediastreamtrack attached to an rtp s
ender.
... the dictionary this key maps to dep
ends on the track's kind.
...And 10 more matches
Lighting a WebXR setting - Web APIs
because the webxr device api relies on other technologies—namely, webgl and frameworks based upon it—to perform all r
endering, texturing, and lighting of a scene, the same general lighting concepts apply to webxr settings or scenes as to any other webgl-generated display.
... because the intensity of diffuse light dep
ends on the angle of incidence (the angle between the vector representing the direction from which the light reaches the surface and the surface's normal vector or the vector perp
endicular to the surface), the intensity or brightness of the light reflected by an object varies dep
ending on the surface's orientation relative to the light source.
...specular lights t
end to appear as bright spots or squares on a surface at the point where a light source strikes the surface most directly.
...And 10 more matches
Accessibility documentation index - Accessibility
the following is int
ended to provide implementation guidance that respects screen readers developers' need to try different things.
... the intention is to strike a balance between providing useful guidance on how to use the markup's int
ended meaning while supporting live regions as an area for screen readers to innovate and compete.
... 12 how to file aria-related bugs aria, bugzilla the state of aria technology has always dep
ended on the community.
...And 10 more matches
font-weight - CSS: Cascading Style Sheets
the weights available dep
end on the font-family that is currently set.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... css fonts level 4 ext
ends the syntax to accept any number between 1 and 1000 and introduces variable fonts, which can make use of this much finer-grained range of font weights.
...And 10 more matches
justify-self - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the effect of this property is dep
endent of the layout mode we are in: in block-level layouts, it aligns an item inside its containing block on the inline axis.
...e about alignment in flexbox) in grid layouts, it aligns an item inside its grid area on the inline axis (more about alignment in grid layouts) syntax /* basic keywords */ justify-self: auto; justify-self: normal; justify-self: stretch; /* positional alignment */ justify-self: center; /* pack item around the center */ justify-self: start; /* pack item from the start */ justify-self:
end; /* pack item from the
end */ justify-self: flex-start; /* equivalent to 'start'.
...And 10 more matches
linear-gradient() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... note: r
endering of color stops in css gradients follows the same rules as color stops in svg gradients.
... note also that the first example above does not exactly r
ender as depicted in mozilla firefox (particularly version 80.0b3).
...And 10 more matches
radial-gradient() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... <extent-keyword> a keyword describing how big the
ending shape must be.
... the possible values are: keyword description closest-side the gradient's
ending shape meets the side of the box closest to its center (for circles) or meets both the vertical and horizontal sides closest to the center (for ellipses).
...And 10 more matches
<img>: The Image Embed element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... image loading errors if an error occurs while loading or r
endering an image, and an onerror event handler has been set on the error event, that event handler will get called.
...setting this attribute to an empty string (alt="") indicates that this image is not a key part of the content (it’s decoration or a tracking pixel), and that non-visual browsers may omit it from r
endering.
...And 10 more matches
<textarea> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the form owner is either the <form> element that this <textarea> element is a desc
endant of or the form element whose id is specified by the form attribute of the input element.
...if this attribute is not specified, the <textarea> element must be a desc
endant of a form element.
...And 10 more matches
Preloading content with rel="preload" - HTML: Hypertext Markup Language
the preload value of the <link> element's rel attribute lets you declare fetch requests in the html's <head>, specifying resources that your page will need very soon, which you want to start loading early in the page lifecycle, before browsers' main r
endering machinery kicks in.
... this ensures they are available earlier and are less likely to block the page's r
ender, improving performance.
... and css preload example</title> <link rel="preload" href="style.css" as="style"> <link rel="preload" href="main.js" as="script"> <link rel="stylesheet" href="style.css"> </head> <body> <h1>bouncing balls</h1> <canvas></canvas> <script src="main.js" defer></script> </body> here we preload our css and javascript files so they will be available as soon as they are required for the r
endering of the page later on.
...And 10 more matches
String.prototype.substring() - JavaScript
the substring() method returns the part of the string between the start and
end indexes, or to the
end of the string.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.substring(indexstart[, index
end]) parameters indexstart the index of the first character to include in the returned substring.
...And 10 more matches
href - SVG: Scalable Vector Graphics
the exact meaning of that link dep
ends on the context of each element using it.
... note: specifications before svg 2 defined an xlink:href attribute, which is now r
endered obsolete by the href attribute.
... value <url> default value none animatable yes image for <image>, href defines a url referring to the image to r
ender.
...And 10 more matches
widget - Archive of obsolete content
so implementing a complete solution usually means you have to s
end messages between the content script and the main add-on code.
...but because content scripts can't use the sdk's apis, we'll want the content script to s
end messages to the main add-on code, which can then implement the media player functions using the sdk.
... next, we write a content script that listens for click events on each icon and s
ends the corresponding message to the main add-on code: var play_button = document.getelementbyid("play-button"); play_button.onclick = function() { self.port.emit("play"); } var pause_button = document.getelementbyid("pause-button"); pause_button.onclick = function() { self.port.emit("pause"); } var stop_button = document.getelementbyid("stop-button"); stop_button.onclick = function() { sel...
...And 9 more matches
MMgc - Archive of obsolete content
delete myobject; the destructor for a gcobject will never be called (unless the object is also a desc
endant of gcfinalizedobject...
... see below.) class myobject : public mmgc::gcobject { ~myobject() { assert(!"this will never be hit (unless we also desc
end from gcfinalizedobject)"); } }; gcobject::getweakref gcweakref *getweakref() const; the getweakref method returns a weak reference to the object.
...gcroots are marked at the
end of the mark phase, and not incrementally, so no write barriers are required.
...And 9 more matches
Monitoring downloads - Archive of obsolete content
in the list is the name of the file, the start and
end times of the download, the download speed, and the status of the download.
... .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.app
end("downloadlogger.sqlite"); // get access to the storage service and open the database this.storageservice = components.classes["@mozilla.org/storage/service;1"] .getservice(components.interfaces.mozistorageservice); var dbconn = this.storageservice.op
endatabase(this.dbfile); // now create the table; if it already exists, this fails, but we don't care!
... dbconn.executesimplesql("create table items (source text, size integer," + " starttime integer,
endtime integer," + " speed real, status integer)"); dbconn.close(); }, this is fairly simple stuff.
...And 9 more matches
Introduction to XUL - Archive of obsolete content
terms "xpfe" is the term mozilla-the-organization is using to describe mozilla-the-browser's cross platform front
end, because x and c look similar if you beat them long and hard with a hammer.
...we int
end to provide a subset of cross-platform functionality suitable for building network applications like browsers, leveraging the cross-platform functionality already built into gecko, mozilla's html layout engine.
...this paper contains a short introduction to mozilla front-
end architecture, concentrating on the task of building uis.
...And 9 more matches
Gecko Compatibility Handbook - Archive of obsolete content
these browsers were developed before the relevant w3c recomm
endations for html, css, and the dom existed.
... solution quick reference as discussed in mozilla's using web standards in your web pages, coding for cross-browser compatibility requires you write standard markup that gecko-based browsers, netscape 4, and ie browsers can r
ender properly.
... verify that all hyperlinks use forward slashes (/) clicking on a link displays a "download" or displays html code instead of r
endering the page correctly, but works as expected in internet explorer the web server has incorrectly specified the mime type for the content.
...And 9 more matches
Back to the Server: Server-Side JavaScript On The Rise - Archive of obsolete content
regardless of how the back-
ends of your web applications are implemented, client side you're using javascript for everything from same form validations to full ajax applications.
...in fact, the next javascript engine from mozilla, tracemonkey, is poised to boost javascript performance by factors of 20 to 40 times according to br
endan eich, mozilla cto and the creator of javascript.
...armed with some basic java knowledge, you can ext
end javascript to include some of the most desired capability such as database access, remote web requests, and xml processing.
...And 9 more matches
Tiles and tilemaps overview - Game development
when it's time to draw a tile, only a small section of this bigger image is r
endered on the game canvas.
... logic grid: this can be a collision grid, a path-finding grid, etc., dep
ending on the type of game.
... r
endering static tilemaps is easy, and can be done with a nested loop iterating over columns and rows.
...And 9 more matches
The HTML5 input types - Learn web development
your apps should always perform security checks on any form-submitted data on the server-side as well as the client-side, because client-side validation is too easy to turn off, so malicious users can still easily s
end bad data through to your server.
... search field search fields are int
ended to be used to create search boxes on pages and apps.
...often, search fields are r
endered with rounded corners; they also sometimes display an "Ⓧ", which clears the field of any value when clicked).
...And 9 more matches
How to build custom form controls - Learn web development
to that
end, we will work with an example: rebuilding the <select> element.
...for any interaction you do add, it is vital to sp
end time in the design stage; if you define a behavior poorly, or forget to define one, it will be very hard to redefine it once the users have gotten used to it.
...to that
end, we will split our css work into two parts: the first part will be the css rules absolutely necessary to make our control behave like a <select> element, and the second part will consist of the fancy styles used to make it look the way we want.
...And 9 more matches
How to structure a web form - Learn web development
the <fieldset> and <leg
end> elements the <fieldset> element is a convenient way to create groups of widgets that share the same purpose, for styling and semantic purposes.
... you can label a <fieldset> by including a <leg
end> element just below the opening <fieldset> tag.
... the text content of the <leg
end> formally describes the purpose of the <fieldset> it is included inside.
...And 9 more matches
Manipulating documents - Learn web development
this is a "tree structure" representation created by the browser that enables the html structure to be easily accessed by programming languages — for example the browser itself uses it to apply styling and other information to the correct elements as it r
enders a page, and developers like you can manipulate the dom with javascript after the page has been r
endered.
... desc
endant node: a node anywhere inside another node.
... for example, img is a child of section in the above example, and it is also a desc
endant.
...And 9 more matches
Ember interactivity: Events, classes and state - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...this is a vanilla javascript class and has no special meaning to ember, other than ext
ending from the component super-class.
... to create a header class to go with your header component, type this in to your terminal: ember generate component-class header this will create the following empty class file — todomvc/app/components/header.js: import component from '@glimmer/component'; export default class headercomponent ext
ends component { } inside this file we will implement the event handler code.
...And 9 more matches
Routing in Ember - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...it contains the following contents: import emberrouter from '@ember/routing/router'; import config from './config/environment'; export default class router ext
ends emberrouter { location = config.locationtype; rooturl = config.rooturl; } router.map(function() { this.route('completed'); this.route('active'); }); the highlighted lines were added when the 2nd and 3rd commands above were run.
... creating the "index" route did not add a route definition line to router.js, because like with url navigation and javascript module loading, "index" is a special word that indicates the default route to r
ender, load, etc.
...And 9 more matches
React interactivity: Events and state - Learn web development
in this article we'll do this, digging into events and state along the way, and
ending up with an app in which we can successfully add and delete tasks, and toggle tasks as completed.
...</button> note: this may seem counter-intuitive regarding best-practice advice that t
ends to advise against use of inline event handlers on html, but remember that jsx is actually part of your javascript.
...it should
end up looking something like this: function handlesubmit(e) { e.preventdefault(); alert('hello, world!'); } to use this function, add an onsubmit attribute to the <form> element, and set its value to the handlesubmit function: <form onsubmit={handlesubmit}> now if you head back to your browser and click on the "add" button, your browser will show you an alert dialog with the words "hello, wo...
...And 9 more matches
Getting started with Vue - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
...it is recomm
ended that you specify a version number when including vue on your site so that any framework updates do not break your live site without you knowing.) <script src="/static/external/29/29296ccacaa9ed35ed168fc51e36f54fd6f8db9c7786bbf38cc59a27229ba5c2.svg"></script> however, this approach has some limitations.
... the cli will now begin scaffolding out your project, and installing all of your dep
endencies.
...And 9 more matches
Eclipse CDT Manual Setup
the consequences of the above observations are this: it is strongly recomm
ended that you invoke your normal (re)builds from the command line, externally of eclipse.
...below.) initial workspace preferences when you open eclipse, it will ask you to "select a workspace" (a directory where eclipse will store files that it generates during indexing, and so on.) it's recomm
ended that you have a separate workspace containing only a single project for each mozilla source tree [rational], and that you choose a directory outside the mozilla source.
...dep
ending on the area of the code that you work on, you may need to tweak this configuration using the "edit" button.
...And 9 more matches
HTML parser threading
nshtml5refptr s
ends runnables back to the main thread to call release on nshtml5streamparser on the main thread.
...each tree op represents a small operation, such as element creation or app
ending a node into another, that can later be performed on the main thread.
...(the same runnable is used repeatedly in order to avoid cross-thread refcounting issues.) memory management when crossing the thread boundary the tree ops hold various heap-allocated objects that
end up crossing the thread boundary.
...And 9 more matches
WebRequest.jsm
usage to import webrequest, use code like: let {webrequest} = cu.import("resource://gre/modules/webrequest.jsm", {}); the webrequest object has the following properties, each of which corresponds to a specific stage in executing a web request: onbeforerequest onbefores
endheaders ons
endheaders onheadersreceived onresponsestarted oncompleted each of these objects defines two functions: addlistener(callback, filter, opt_extrainfospec) removelistener(callback) adding listeners use addlistener to add a listener to a particular event.
... it's passed an object whose structure will vary dep
ending on the event you're listening to: see the event-specific documentation for details.
... the instructions you can pass here vary dep
ending on the event you're listening to: see the event-specific documentation for details.
...And 9 more matches
Mozilla DOM Hacking Guide
by "correct behavior", i mean "the int
ended behavior with respect to the specification or de facto standard".
...the possibilities are
endless.
...they all
end in "sh", for "scriptable helper" e.g.
...And 9 more matches
NSS Sample Code Sample1
the secondary host s
ends its rsa public key to the primary host as // part of a request for a particular key, or to be added to a list // of secondary hosts.
... // utility function to print hex data static void printbuffer(unsigned char *digest, unsigned int len) { int i; cout << "length: " << len <<
endl; for(i = 0;i < len;i++) printf("%02x ", digest[i]); cout <<
endl; } // xxx data protection // - takes an input buffer, applies the encryption // and mac, and generates a buffer with the result.
... // - the application s
ends or uses the result (possibly // after base64 encoding it.
...And 9 more matches
Python binding for NSS
.compression_method sslchannelinfo.compression_method_name sslchannelinfo.session_id the following files were added: doc/examples/cert_trust.py doc/examples/ssl_version_range.py the following constants were added: nss.certdb_terminal_record nss.certdb_valid_peer nss.certdb_trusted nss.certdb_s
end_warn nss.certdb_valid_ca nss.certdb_trusted_ca nss.certdb_ns_trusted_ca nss.certdb_user nss.certdb_trusted_client_ca nss.certdb_govt_approved_ca ssl.srtp_aes128_cm_hmac_sha1_32 ssl.srtp_aes128_cm_hmac_sha1_80 ssl.srtp_null_hmac_sha1_32 ssl.srtp_null_hmac_sha1_80 ssl.ssl_ck_des_192_ede3_cbc_with_md5 ssl.ssl_ck_des_...
... cert_dump.py ext
ended to print ns_cert_type_extension cert_usage_flags, nss_init_flags now support optional repr_kind parameter the following classes were added: nss.certverifylognode nss.certverifylog error.certverifyerror (exception) nss.authorityinfoaccess nss.authorityinfoaccesses the following class methods were added: ...
... nsprerror now derived from standardexception, provides: errno (numeric error code) strerror (error description associated with error code) error_message (optional detailed message) error_code (alias for errno) error_desc (alias for strerror) certverifyerror derived from nsprerror, ext
ends with: usages (bitmask of returned usages) log (certverifylog object) expose error lookup to sibling modules use macros for bitmask_to_list functions to reduce code duplication and centralize logic.
...And 9 more matches
JSAPI User Guide
static jsfunctionspec myjs_global_functions[] = { js_fs("rand", myjs_rand, 0, 0), js_fs("srand", myjs_srand, 0, 0), js_fs("system", myjs_system, 1, 0), js_fs_
end }; ...
...it only creates a new javascript error object and stores it in the context as the current p
ending exception.
...each of these functions checks, just before it returns, to see if an exception is p
ending in the current jscontext.
...And 9 more matches
XPCOM array guide
the point of nscomarray is that it's a template, and all the pointers in it must be pointers to the same type; it's nice to be able to use it because you get type-safety and don't have to sp
end time and code qiing (like you have to with nsiarray).
... c++ example void getlist(nsiarray** aresult) { nscomptr<nsimutablearray> array = do_createinstance(ns_array_contractid); // app
end some elements ...
... // return it to the caller *aresult = array; ns_addref(*aresult); } javascript example function getlist() { var array = components.classes["@mozilla.org/array;1"] .createinstance(components.interfaces.nsimutablearray); // app
end some elements ...
...And 9 more matches
NS_ConvertASCIItoUTF16
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assi...
...gn assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsautostring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
NS_ConvertUTF8toUTF16
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assi...
...gn assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsautostring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsAdoptingCString
class declaration nstadoptingstring ext
ends nstxpidlstring such that: (1) adopt given string on construction or assignment, i.e.
...ethod overview constructors operator= operator const char* operator[] get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsxpidlcstring data members no public members.
...And 9 more matches
nsAutoString
ide characters nscautostring for narrow characters method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequa...
...lsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsfixedstring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsCAutoString
nd rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char ...
... equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsfixedcstring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsFixedString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assi...
...gn assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsstring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsPromiseFlatString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assi...
...gn assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsstring data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsString
method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequa...
...lsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsastring_internal data members no public members.
...use -1 to search from the
end of the string.
...And 9 more matches
nsXPIDLCString
class declaration nstxpidlstring ext
ends nststring such that: (1) mdata can be null (2) objects of this type can be automatically cast to |const chart*| (3) getter_copies method is supported to adopt data allocated with ns_alloc, such as "out string" parameters in xpidl.
...ethod overview constructors operator const char* operator[] operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char ...
... assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nscstring data members no public members.
...And 9 more matches
nsIDownloadManager
sidownload 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.1 void flush(); obsolete since gecko 1.8 nsidownload getdownload(in unsigned long aid); void onclose(); obsolete since gecko 1.9.1 void open(in nsidomwindow aparent, in nsidownload adownload); obsolete since gecko 1.9.1 void openprogressdialogfor(in nsidownload adownload, in nsidomwindow aparent, in boolean acanc...
...eldownloadonclose); obsolete since gecko 1.9.1 void pausedownload(in unsigned long aid); void removedownload(in unsigned long aid); void removedownloadsbytimeframe(in long long abegintime, in long long a
endtime); void removelistener(in nsidownloadprogresslistener alistener); void resumedownload(in unsigned long aid); void retrydownload(in unsigned long aid); void savestate(); obsolete since gecko 1.8 void startbatchupdate(); obsolete since gecko 1.9.1 attributes attribute type description activedownloadcount long the number of files currently being downloaded.
... the path is dep
endent on two user configurable prefs set in preferences: browser.download.folderlist defines the default download location for files: 0: files are downloaded to the desktop by default.
...And 9 more matches
nsISelection
void collapseto
end(); void collapsetostart(); boolean containsnode(in nsidomnode node, in boolean partlycontained); void deletefromdocument(); void ext
end(in nsidomnode parentnode, in long offset); void ext
endnative(in nsidomnode parentnode, in long offset); native code only!
... focusnode nsidomnode returns the node in which the selection
ends.
... focusoffset long the offset within the (text) node where the selection
ends.
...And 9 more matches
Plug-in Basics - Plugins
plug-ins like these are now available: multimedia viewers such as adobe flash and adobe acrobat utilities that provide object embedding and compression/decompression services applications that range from personal information managers to games the range of possibilities for using plug-in technology seems boundless, as shown by the growing numbers of indep
endent software v
endors who are creating new and innovative plug-ins.
... understanding the plug-in api plug-ins and platform indep
endence understanding the plug-in api a plug-in is a native code library whose source conforms to standard c syntax.
... plug-ins and platform indep
endence a plug-in is a dynamic code module that is native to the specific platform on which the browser is running.
...And 9 more matches
Background Tasks API - Web APIs
this code draws any p
ending updates to the document currently being displayed, runs any javascript code the page needs to run, accepts events from input devices, and dispatches those events to the elements that should receive them.
... getting the most out of idle callbacks because idle callbacks are int
ended to give your code a way to cooperate with the event loop to ensure that the system is utilized to its full potential without over-tasking it, resulting in lag or other performance problems, you should be thoughtful about how you go about using them.
...while the browser, your code, and the web in general will continue to run normally if you go over the specified time limit (even if you go way over it), the time restriction is int
ended to ensure that you leave the system enough time to finish the current pass through the event loop and get on to the next one without causing other code to stutter or animation effects to lag.
...And 9 more matches
Basic usage of canvas - Web APIs
at the
end of this page, you will know how to set up a canvas 2d context and have drawn a first example in your browser.
...the element can be sized arbitrarily by css, but during r
endering the image is scaled to fit its layout size: if the css sizing doesn't respect the ratio of the initial canvas, it will appear distorted.
... note: if your r
enderings seem distorted, try specifying your width and height attributes explicitly in the <canvas> attributes, and not using css.
...And 9 more matches
Using Fetch - Web APIs
fetch won’t s
end cookies, unless you set the credentials init option.
...tive javascript objects } postdata('https://example.com/answer', { answer: 42 }) .then(data => { console.log(data); // json data parsed by `data.json()` call }); note that mode: "no-cors" only allows a limited set of headers in the request: accept accept-language content-language content-type with a value of application/x-www-form-urlencoded, multipart/form-data, or text/plain s
ending a request with credentials included to cause browsers to s
end a request with credentials included, even for a cross-origin call, add credentials: 'include' to the init object you pass to the fetch() method.
... fetch('https://example.com', { credentials: 'include' }); if you only want to s
end credentials if the request url is on the same origin as the calling script, add credentials: 'same-origin'.
...And 9 more matches
HTMLCanvasElement.getContext() - Web APIs
possible values are: "2d", leading to the creation of a canvasr
enderingcontext2d object representing a two-dimensional r
endering context.
... "webgl" (or "experimental-webgl") which will create a webglr
enderingcontext object representing a three-dimensional r
endering context.
... "webgl2" which will create a webgl2r
enderingcontext object representing a three-dimensional r
endering context.
...And 9 more matches
HTMLMediaElement - Web APIs
keep in mind that browsers may ignore autoplay requests, so you should ensure that your code isn't dep
endent on autoplay working.
... htmlmediaelement.
ended read only returns a boolean that indicates whether the media element has finished playing.
... htmlmediaelement.loop a boolean that reflects the loop html attribute, which indicates whether the media element should start over when it reaches the
end.
...And 9 more matches
HTMLScriptElement.referrerPolicy - Web APIs
origin only s
end the origin of the document as the referrer in all cases.
... the document https://example.com/page.html will s
end the referrer https://example.com/.
... origin-when-cross-origin s
end a full url when performing a same-origin request, but only s
end the origin of the document for other cases.
...And 9 more matches
Touch events - Web APIs
the interaction
ends when the fingers are removed from the surface.
... during this interaction, an application receives touch events during the start, move, and
end phases.
... function startup() { var el = document.getelementbyid("canvas"); el.addeventlistener("touchstart", handlestart, false); el.addeventlistener("touch
end", handle
end, false); el.addeventlistener("touchcancel", handlecancel, false); el.addeventlistener("touchmove", handlemove, false); } document.addeventlistener("domcontentloaded", startup); this simply sets up all the event listeners for our <canvas> element so we can handle the touch events as they occur.
...And 9 more matches
WebRTC API - Web APIs
webrtc concepts and usage webrtc serves multiple purposes; together with the media capture and streams api, they provide powerful multimedia capabilities to the web, including support for audio and video conferencing, file exchange, screen sharing, identity management, and interfacing with legacy telephone systems including support for s
ending dtmf (touch-tone dialing) signals.
...most streams consist of at least one audio track and likely also a video track, and can be used to s
end and receive both live media or stored media information (such as a streamed movie).
... rtcrtps
ender manages the encoding and transmission of data for a mediastreamtrack on an rtcpeerconnection.
...And 9 more matches
Window - Web APIs
window.devicepixelratio read only returns the ratio between physical pixels and device indep
endent pixels in the current display.
... window.innerheight read only gets the height of the content area of the browser window including, if r
endered, the horizontal scrollbar.
... window.innerwidth read only gets the width of the content area of the browser window including, if r
endered, the vertical scrollbar.
...And 9 more matches
XRView - Web APIs
this value is used to ensure that any content which is pre-r
endered for presenting to a specific eye is distributed or positioned correctly.
... transform read only an xrrigidtransform which describes the current position and orientation of the viewpoint in relation to the xrreferencespace specified when getviewerpose() was called on the xrframe being r
endered.
... usage notes positions and number of xrviews per frame while r
endering a scene, the set of views that are used to r
ender the scene for the viewer as of the current frame are obtained by calling the xrframe object's getviewerpose() method to get the xrviewerpose representing (in essence) the position of the viewer's head.
...And 9 more matches
ARIA Test Cases - Accessibility
there are several purposes for providing this information: help browser v
endors provide correct implementations help at v
endors provide correct implementations inform authors as to what actually works reliably in general we're testing with the latest public releases.
...fail - - voiceover (leopard) n/a n/a - fail window-eyes - - - - nvda - - - - zoom (leopard) pass n/a pass pass zoomtext - - - - orca - - - - table leg
end - no info/test yet n/a not applicable (not supported technically) pass expected behaviour met fail expected behaviour notmet 1.
...the above is a suggested series of behaviors i as an
end user would want to experience when dealing with aria drag and drop, but it has no basis to go on, unlike common controls, for example.
...And 9 more matches
ARIA: feed role - Accessibility
a feed is a dynamic scrollable list of articles in which articles are added to or removed from either
end of the list as the user scrolls.
...</section> description a feed is a page structure for a scrollable list of articles where scrolling may cause articles to be added to the top or
end of the list.
...an article should be scrolled into view when it, or a desc
endant element, receives focus.
...And 9 more matches
CSS Containment - CSS: Cascading Style Sheets
if the browser knows that a part of the page is indep
endent, r
endering can be optimized and performance improved.
... basic example many webpages contain a number of sections which are indep
endent of each other.
... article { contain: content; } each article is indep
endent of the other articles on the page, and so they have been given contain: content in order to indicate to the browser that this is the case.
...And 9 more matches
Using CSS transitions - CSS: Cascading Style Sheets
linearly or quick at the beginning, slow at the
end).
...the specification recomm
ends not animating from and to auto.
...using animations with auto may lead to unpredictable results, dep
ending on the browser and its version, and should be avoided.
...And 9 more matches
animation-direction - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...in other words, each time the animation cycles, the animation will reset to the
end state and start over again.
... note: when you specify multiple comma-separated values on an animation-* property, they will be assigned to the animations specified in the animation-name property in different ways dep
ending on how many there are.
...And 9 more matches
place-content - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: align-content justify-content syntax /* positional alignment */ /* align-content does not take left and right values */ place-content: center start; place-content: start center; place-content:
end left; place-content: flex-start center; place-content: flex-
end center; /* baseline alignment */ /* justify-content does not take baseline values */ place-content: baseline center; place-content: first baseline space-evenly; place-content: last baseline right; /* distributed alignment */ place-content: space-between space-evenly; place-content: space-around space-evenly; place-content: space-evenly stretch; place-content: stretch space-evenly; /* global values */ place-content: inherit; place-content: ...
...
end the items are packed flush to each other toward the
end edge of the alignment container in the appropriate axis.
...And 9 more matches
Audio and Video Delivery - Developer guides
this article is int
ended as a starting point for exploring the various delivery mechanisms of web based media and compatibility with popular browsers.
...it's strongly recomm
ended that you read the autoplay guide for media and web audio apis to learn how to use autoplay wisely..
... javascript audio var myaudio = document.createelement('audio'); if (myaudio.canplaytype('audio/mpeg')) { myaudio.setattribute('src','audiofile.mp3'); } else if (myaudio.canplaytype('audio/ogg')) { myaudio.setattribute('src','audiofile.ogg'); } myaudio.currenttime = 5; myaudio.play(); we set the source of the audio dep
ending on the type of audio file the browser supports, then set the play-head 5 seconds in and attempt to play it.
...And 9 more matches
MIME types (IANA media types) - HTTP
important: browsers use the mime type, not the file extension, to determine how to process a url, so it's important that web servers s
end the correct mime type in the response's content-type header.
...for example, for the mime type text, the subtype might be plain (plain text), html (html source code), or cal
endar (for ical
endar/.ics) files.
... with the exception of multipart/form-data, used in the post method of html forms, and multipart/byteranges, used with 206 partial content to s
end part of a document, http doesn't handle multipart documents in a special way: the message is transmitted to the browser (which will likely show a "save as" window if it doesn't know how to display the document).
...And 9 more matches
Array.prototype.copyWithin() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax arr.copywithin(target[, start[,
end]]) parameters target zero-based index at which to copy the sequence to.
... if negative, target will be counted from the
end.
...And 9 more matches
The "codecs" parameter in common media types - Web media technologies
to do so, app
end a semicolon (;) followed by codecs= and then the string describing the format of the contents of the file.
...the list may also contain codecs not present in the file.= codec options by container the containers below support ext
ended codec options in their codecs parameters: 3gp av1 iso bmff mpeg-4 quicktime webm several of the links above go to the same section; that's because those media types are all based on iso base media file format (iso bmff), so they share the same syntax.
...see app
endix a, section 3 in the av1 specification for details.
...And 9 more matches
Animation performance and frame rate - Web Performance
while performance is sensitive to the particular system and its load, performance tools can help you understand the work the browser's doing to r
ender your site, and help you prevent and diagnose problems when they occur.
...they can also give better performance, as they give the browser more control over when to r
ender frames, and to drop frames if necessary.
... the r
endering waterfall the process a browser uses to paint changes to a page when an element is animating css properties can be described as a waterfall consisting of the following steps: recalculate style: when a property for an element changes, the browser must recalculate computed styles.
...And 9 more matches
Web Performance
the performance cost of animating a css property can vary from one property to another, and animating expensive css properties can result in jank as the browser struggles to hit a smooth frame rate.critical r
endering paththe critical r
endering path is the sequence of steps the browser goes through to convert the html, css, and javascript into pixels on the screen.
... optimizing the critical r
ender path improves r
ender performance.the critical r
endering path includes the document object model (dom), css object model (cssom), r
ender tree and layout.css and javascript animation performancebrowsers are able to optimize r
endering flows.
...it is a way of shorten the critical r
endering path length, what would translate into improved page load times.
...And 9 more matches
Progressive web app structure - Progressive web apps (PWAs)
previous overview: progressive web apps next now that we know the theory behind pwas, let's look at the recomm
ended structure of an actual app.
... architecture of an app there are two main, different approaches to r
endering a website — on the server or on the client.
... server-side r
endering (ssr) means a website is r
endered on the server, so it offers quicker first load, but navigating between pages requires downloading new html content.
...And 9 more matches
Introduction to progressive web apps - Progressive web apps (PWAs)
for example, web apps are more discoverable than native apps; it's a lot easier and faster to visit a website than to install an application, and you can also share web apps by simply s
ending a link.
...progressive enhancement and responsive design already allow us to build mobile fri
endly websites.
...an app could be considered a pwa when it meets certain requirements, or implements a set of given features: works offline, is installable, is easy to synchronize, can s
end push notifications, etc.
...And 9 more matches
Structural overview of progressive web apps - Progressive web apps (PWAs)
architecture of an app there are two main, different approaches to r
endering a website — on the server or on the client.
... server-side r
endering (ssr) means a website is r
endered on the server, so it offers quicker first load, but navigating between pages requires downloading new html content.
... client-side r
endering (csr) allows the website to be updated in the browser almost instantly when navigating to different pages, but requires more of an initial download hit and extra r
endering on the client at the beginning.
...And 9 more matches
SVG Presentation Attributes - SVG: Scalable Vector Graphics
alignment-baseline baseline-shift clip clip-path clip-rule color color-interpolation color-interpolation-filters color-profile color-r
endering cursor direction display dominant-baseline enable-background fill fill-opacity fill-rule filter flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-orientation-horizontal glyph-orientation-vertical image-r
endering kerning letter-spacing lighting-color marker-
end marker-mid marker-start mask opacity overflow pointer-events shape-r
endering solid-color solid-opacity stop-color stop-opacity stroke stroke-dasharray stroke-dashoffset stroke-li...
...necap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-r
endering transform unicode-bidi vector-effect visibility word-spacing writing-mode attributes alignment-baseline it specifies how an object is aligned along the font baseline with respect to its parent.
... value: auto|srgb|linearrgb|<name>|<iri>|inherit; animatable: yes color-r
endering it provides a hint to the browser about how to optimize its color interpolation and compositing operations.
...And 9 more matches
Communicating With Other Scripts - Archive of obsolete content
section of the guide explains how content scripts can communicate with: your main.js file, or any other modules in your add-on other content scripts loaded by your add-on page scripts (that is, scripts embedded in the web page or included using <script> tags) main.js your content scripts can communicate with your add-on's "main.js" (or any other modules you're written for your add-on) by s
ending it messages, using either the port.emit() api or the postmessage() api.
... messaging from content script to page script suppose we have a page called "listen.html" hosted at "my-domain.org", and we want to s
end messages from the add-on to a script embedded in that page.
... in the main add-on code, we have a page-mod that attaches the content script "talk.js" to the right page: var data = require("sdk/self").data; var pagemod = require("sdk/page-mod"); pagemod.pagemod({ include: "http://my-domain.org/listen.html", contentscriptfile: data.url("talk.js") }); the "talk.js" content script uses window.postmessage() to s
end the message to the page: // content-script (talk.js) window.postmessage("message from content script", "http://my-domain.org/"); the second argument may be '*' which will allow communication with any domain.
...And 8 more matches
Interacting with page scripts - Archive of obsolete content
this guide describes: how to share objects between content scripts and page scripts how to s
end messages between content scripts and page scripts sharing objects with page scripts there are two possible cases here: a content script might want to access an object defined by a page script a content script might want to expose an object to a page script access objects defined by page scripts to access page script objects from content scripts, you can use the global unsafewindow objec...
... content script to page script suppose we have a page called "listen.html" hosted at "my-domain.org", and we want to s
end messages from the add-on to a script embedded in that page.
... in the main add-on code, we have a page-mod that attaches the content script "talk.js" to the right page: var data = require("sdk/self").data; var pagemod = require("sdk/page-mod"); pagemod.pagemod({ include: "http://my-domain.org/listen.html", contentscriptfile: data.url("talk.js") }); the "talk.js" content script uses window.postmessage() to s
end the message to the page: // talk.js window.postmessage("message from content script", "http://my-domain.org/"); the second argument may be '*' which will allow communication with any domain.
...And 8 more matches
Forms related code snippets - Archive of obsolete content
pan"), odecrmonth = document.createelement("span"), oincrmonth = document.createelement("span"); var nid = ainstances.length, oth; this.target = otarget; this.display = document.createelement("span"); this.current = new date(); this.container = otable; this.display.classname = sprefs + "-current-month"; this.id = nid; otable.classname = sprefs + "-cal
endar"; otable.id = sprefs + "-cal-" + nid; odecryear.classname = sprefs + "-decrease-year"; odecrmonth.classname = sprefs + "-decrease-month"; oincrmonth.classname = sprefs + "-increase-month"; oincryear.classname = sprefs + "-increase-year"; odecryear.innerhtml = "\u00ab"; /* « */ odecrmonth.innerhtml = "\u003c"; /* < */ oincrmonth.innerhtml = "\u003e"; /* &...
...ecrmonth.id = sprefs + "-decr-month-" + nid; oincrmonth.id = sprefs + "-incr-month-" + nid; oincryear.id = sprefs + "-incr-year-" + nid; odecryear.onmousedown = oincryear.onmousedown = odecrmonth.onmousedown = oincrmonth.onmousedown = onheadclick; for (var nthid = 0; nthid < 7; nthid++) { oth = document.createelement("th"); oth.innerhtml = sdays[nthid]; ohrow.app
endchild(oth); } othead.app
endchild(ohrow); ocapt.app
endchild(odecryear); ocapt.app
endchild(odecrmonth); ocapt.app
endchild(oincryear); ocapt.app
endchild(oincrmonth); ocapt.app
endchild(this.display); this.container.app
endchild(ocapt); this.container.app
endchild(othead); this.current.setdate(1); this.writedays(); otarget.onclick = function () { if (otable.parentnode...
... return; } otable.style.zindex = nzindex++; otable.style.position = "absolute"; otable.style.left = otarget.offsetleft + "px"; otable.style.top = (otarget.offsettop + otarget.offsetheight) + "px"; otarget.parentnode.insertbefore(otable, otarget); }; ainstances.push(this); } datepicker.prototype.writedays = function () { const n
endblanks = (this.current.getday() + bzeroismonday * 6) % 7, n
end = amonthlengths[this.current.getmonth()] + n
endblanks, ntotal = n
end + ((7 - n
end % 7) % 7); var otd, otr; if (this.otbody) { this.container.removechild(this.otbody); } this.otbody = document.createelement("tbody"); for (var nday, oday, niter = 0; niter < ntotal; niter++) { if (niter % 7 ===...
...And 8 more matches
How to convert an overlay extension to restartless - Archive of obsolete content
ses["@mozilla.org/network/file-input-stream;1"] .createinstance(components.interfaces.nsifileinputstream) .queryinterface(components.interfaces.nsiseekablestream); stream.init(file, 0x01, 0444, 0); // read-only, read by owner/group/others, normal behavior /* do stuff */ }); this bit of code is paraphrased and probably not to be recomm
ended as-is, but it should work.
... (note that the usage of an octal integer literal, while standard for handling permissions, is dangerous and deprecated; usage of use es5 strict mode to disable this and other foot-guns is recomm
ended) if you need to read/manipulate binary data, a nsibinaryinputstream instance is what you'll use on that stream (e.g.
...xmlhttprequest is an api created by microsoft, adopted by mozilla and other v
endors, and hacked into a swiss army knife of file loading.
...And 8 more matches
JavaScript Client API - Archive of obsolete content
client may be downloaded) a separate, conspicuous, and reasonably detailed privacy policy detailing how data collected or transmitted by your third party client is managed and protected; (b) that your third party client will only store data in encrypted form on the firefox sync servers operated by mozilla; (c) that you and your third party client will use the firefox sync apis solely for their int
ended purpose; (d) that your third party client will not hide or mask its identity as it uses the services and/or firefox sync apis, including by failing to follow required identification conventions; and (e) that you and your third party client will not use the firefox sync apis for any application or service that replicates or attempts to replicate the services or firefox sync experience unless suc...
...you may not imply, either directly or by omission, that your third party client is produced or
endorsed by mozilla.
... before starting before you start learning the javascript api, you should sp
end some time on http://docs.services.mozilla.com/ reading about how the sync service operates.
...And 8 more matches
Menu - Archive of obsolete content
this method and set() are the recomm
ended methods of adding items to a menu.
...this method and add() are the recomm
ended methods of adding items to a menu.
...null is recomm
ended because it stands out.) function a menuitem that will update itself when its menu is shown.
...And 8 more matches
XML in Mozilla - Archive of obsolete content
several world wide web consortium (w3c) recomm
endations and drafts from the xml family of specifications are supported, as well as other related technologies.
... supported core xml w3c recomm
endations the core xml support includes parsing xml without validation (we use the expat parser), displaying xml with css, manipulating xml documents with scripts via dom, associating stylesheets with xml documents, and namespaces in xml.
...other notes a lot of the document object model (dom, w3c recomm
endations and drafts) applies to xml.
...And 8 more matches
Sorting Results - Archive of obsolete content
this method of sorting a seq works best for the simple query syntax since it is obvious how the starting ref relates to the
end member results (they are just the children), or for ext
ended syntax queries that follow a similar pattern.
... for more complex queries, this natural sorting will not work, because the sort service assumes that the starting ref resource is the container and the
end results are the children.
...for asc
ending or desc
ending sorts, this doesn't matter, since it will ignore whether results are containers and just sort by a value, alphabetically or numerically dep
ending on the type of data.
...And 8 more matches
The First Install Problem - Archive of obsolete content
unless gecko does a pre-emptive scan upon startup for desirable plugins that are not in the browser's plugins directory first, the best way to solve this problem is to encourage plugin v
endors to leave dlls (and xpt files, if applicable) in a location that gecko can discover at runtime.
...this document presents windows solutions for plugin v
endors.
... the solution suggests that plugin v
endors ought to leave dlls on a windows desktop whether or not a netscape gecko browser is detected, and then write keys in the windows registry giving future netscape gecko browsers the path where the plugin resides and meta-information about how to load the plugin.
...And 8 more matches
Visual typescript game engine - Game development
text editor used and recomm
ended: visual studio code.
... client part to make all dep
endency works in build process we need some plugins.
... */ private aspectratio: number = 1.333; /** * domain is simple url address, * recomm
endent to use for local propose lan ip * like : 192.168.0.xxx if you wanna run ant test app with server.
...And 8 more matches
Gecko FAQ - Gecko Redirect 1
gecko also offers the ability to parse various document types (html, xml, svg, etc), advanced r
endering capabilities including compositing and transformations, and support for embedded javascript and plugins.
...however, gecko does not package all of these components alongside other interface modules in a coherent, user-fri
endly application (including menus, toolbars, etc.), such as firefox.
... third parties such as isvs and hardware v
endors will pick and choose the components they want to use in their applications or hardware devices.
...And 8 more matches
Advanced form styling - Learn web development
prefixed usually means "work in progress", so in the future browser v
endors may come to a consensus to drop the prefix.
...this is because non-macos chrome browsers no longer use the webkit r
endering engine, which enabled aqua appearance by default for certain form controls.
... this can be fixed using our fri
end appearance: none;, which disables the default aqua appearance: input[type="search"] { -webkit-appearance: none; appearance: none; } in the example below, you can see two identical styled search boxes.
...And 8 more matches
Getting started with HTML - Learn web development
this marks where the element
ends.
...to close the element, put the closing tag </em> at the
end of the line.
...stead textarea.onkeydown = function(e){ if (e.keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substring(0, caretpos); var back = (textarea.value).substring(textarea.selection
end, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selection
end = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.onkeyup = function(){ // we only want to save the state when the user code is ...
...And 8 more matches
Making asynchronous programming easier with async and await - Learn web development
status: ${response.status}`); } else { return response.blob(); } }) .then(myblob => { let objecturl = url.createobjecturl(myblob); let image = document.createelement('img'); image.src = objecturl; document.body.app
endchild(image); }) .catch(e => { console.log('there has been a problem with your fetch operation: ' + e.message); }); by now, you should have a reasonable understanding of promises and how they work, but let's convert this to use async/await to see how much simpler it makes things: async function myfetch() { let response = await fetch('coffee.jpg'); if (!response.ok) { throw new error(`...
...status: ${response.status}`); } else { let myblob = await response.blob(); let objecturl = url.createobjecturl(myblob); let image = document.createelement('img'); image.src = objecturl; document.body.app
endchild(image); } } myfetch() .catch(e => { console.log('there has been a problem with your fetch operation: ' + e.message); }); it makes code much simpler and easier to understand — no more .then() blocks everywhere!
...status: ${response.status}`); } else { return await response.blob(); } } myfetch().then((blob) => { let objecturl = url.createobjecturl(blob); let image = document.createelement('img'); image.src = objecturl; document.body.app
endchild(image); }).catch(e => console.log(e)); you can try typing in the example yourself, or running our live example (see also the source code).
...And 8 more matches
CSS performance optimization - Learn web development
for this reason, css is r
ender blocking, unless the browser knows the css is not currently needed.
...browsers follow a specific r
endering path: paint only occurs after layout, which occurs after the r
ender tree is created, which in turn requires both the dom and the cssom trees.
... to optimize the cssom construction, remove unnecessary styles, minify, compress and cache it, and split css not required at page load into additional files to reduce css r
ender blocking.
...And 8 more matches
Perceived performance - Learn web development
how fast a website feels like it's loading and r
endering has a greater impact on user experience than how fast the website actually loads and r
enders.
...relevant measurements include first meaningful paint (fmp), largest contentful paint (lcp), time to interactive (tti), r
ender start, dom interactive, and speed index.
...first contentful paint (fcp) reports the time when the browser first r
endered anything of signifigance, be that text, foreground or background image, or a canvas or svg; capturing the very beginning of the loading experience.
...And 8 more matches
Getting started with Ember - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...components are individual bundles of behavior, style, and markup — much like what other front
end frameworks provide, such as react, vue, and angular.
... use cases generally, emberjs works well for building apps that desire either or both of the following traits: single page applications, including native-like web apps, and progressive web apps (pwas) ember works best when it is the entire front
end of your application.
...And 8 more matches
Ember app structure and componentization - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...--}} {{outlet}} <welcomepage /> is a component provided by an ember addon that r
enders the default welcome page we saw in the previous article, when we first navigated to our server at localhost:4200.
...the r
endered output should now look like this: it doesn't take too much effort to get our html looking like a fully-featured to-do list app.
...And 8 more matches
Adding a new todo form: Vue events, methods, and models - Learn web development
previous overview: client-side javascript frameworks next we now have sample data in place, and a loop that takes each bit of data and r
enders it inside a todoitem in our app.
... what we really need next is the ability to allow our users to enter their own todo items into the app, and for that we'll need a text <input>, an event to fire when the data is submitted, a method to fire upon submission to add the data and rer
ender the list, and a model to control the data.
...for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
...And 8 more matches
Handling common HTML and CSS problems - Learn web development
note: html errors don't t
end to show up so easily in dev tools, as the browser will try to correct badly-formed markup automatically; the w3c validator is the best way to find html errors — see validation above.
...supporting platforms provide special ui widgets when these input types are used, such as a cal
endar widget for entering dates.
...the syntax looks like this: <!--[if lte ie 8]> <script src="ie-fix.js"></script> <link href="ie-fix.css" rel="stylesheet" type="text/css"> <![
endif]--> this block will apply the ie-specific css and javascript only if the browser viewing the page is ie 8 or older.
...And 8 more matches
Simple Thunderbird build
8 gb or more is recomm
ended.
... build prerequisites dep
ending on your operating system you will need to carry out a different process to prepare your machine.
...other build configuration options can be added to this file, although it's strongly recomm
ended that you only use options that you fully understand.
...And 8 more matches
The Firefox codebase: CSS Guidelines
this document contains guidelines defining how css inside the firefox codebase should be written, it is notably relevant for firefox front-
end engineers.
... using desc
endant selectors is good practice for performance when possible: for example: .autocomplete-item[selected] > .autocomplete-item-title would be more efficient than .autocomplete-item[selected] .autocomplete-item-title overriding css before overriding any css rules, check whether overriding is really needed.
... using variables use the variable according to its naming do this: xul|tab:hover { background-color: var(--in-content-box-background-hover); } not this: #certificateerrordebuginformation { background-color: var(--in-content-box-background-hover); } localization text direction for margins, padding and borders, use inline-start/inline-
end rather than left/right.
...And 8 more matches
SVG Guidelines
file size whether svg or a raster format will produce a smaller file for a given image dep
ends very much on the image.
...on the other hand the size of a raster file of the same image will likely vary trem
endously dep
ending on the dimensions of the image since the larger the dimensions the more pixel data the file needs to store.
...this flexibility dep
ends on doing computations for svg images at the time they're displayed, rather than at the time the author creates them.
...And 8 more matches
Mozilla Web Developer FAQ
there are links to more general web authoring faqs at the
end of this document.
...the almost standards mode is like the standards mode except it addresses the issue of the next question by r
endering table cells with images in the traditional way.
...the consequence is that xhtml 1.0 transitional documents are r
endered in the almost standards mode when served as text/html under pretext of the app
endix c but in the standards mode when served as application/xhtml+xml.
...And 8 more matches
Handling Mozilla Security Bugs
version 1.1 important: anyone who believes they have found a mozilla-related security vulnerability can and should report it by s
ending email to address security@mozilla.org.
...some of these products may be used by large populations of
end users, many of whom may not often upgrade or check for recent security fixes.
... we understand and acknowledge the concerns of those who believe that too-hasty disclosure of exploit details can provide a short-term advantage to potential attackers, who can exploit a problem before most
end users become aware of its existence.
...And 8 more matches
NS_ConvertUTF16toUTF8
that converts a utf-16 string to utf-8 method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequa...
...lsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nscautostring data members no public members.
...use -1 to search from the
end of the string.
...And 8 more matches
NS_LossyConvertUTF16toASCII
f-16 string to ascii in a lossy manner method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequa...
...lsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nscautostring data members no public members.
...use -1 to search from the
end of the string.
...And 8 more matches
nsCString
method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequa...
...lsliteral(char assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nsacstring_internal data members no public members.
...use -1 to search from the
end of the string.
...And 8 more matches
nsFixedCString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(c...
...har assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nscstring data members no public members.
...use -1 to search from the
end of the string.
...And 8 more matches
nsPromiseFlatCString
class declaration method overview constructors operator= get find rfind rfindchar findcharinset rfindcharinset compare equalsignorecase tofloat tointeger mid left right setcharat stripchars stripwhitespace replacechar replacesubstring trim compresswhitespace assignwithconversion app
endwithconversion app
endint app
endfloat beginreading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(c...
...har assign assignascii assignliteral(const char assignliteral(char adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar base classes nscstring data members no public members.
...use -1 to search from the
end of the string.
...And 8 more matches
nsICompositionStringSynthesizer
to create an instance for this: var domwindowutils = window.windowutils; var compositionstringsynthesizer = domwindowutils.createcompositionstringsynthesizer(); for example, when you create a composition whose composing string is "foo-bar-buzz" and "bar" is selected to convert, then, first, you need to start composition: domwindowutils.s
endcompositionevent("compositionstart", "", ""); next, dispatch composition string with crause information and caret information (optional): // set new composition string with .setstring().
... compositionstringsynthesizer.setstring("foo-bar-buzz"); // set clause information with .app
endclause().
... compositionstringsynthesizer.app
endclause("foo-".length, compositionstringsynthesizer.attr_convertedtext); compositionstringsynthesizer.app
endclause("bar".length, compositionstringsynthesizer.attr_selectedconvertedtext); compositionstringsynthesizer.app
endclause("-buzz".length, compositionstringsynthesizer.attr_convertedtext); // set caret position in the composition string.
...And 8 more matches
nsIDocShell
void setcurrenturi(in nsiuri auri); void susp
endrefreshuris(); void tabtotreeowner(in boolean forward, out boolean tookfocus); attributes attribute type description allowauth boolean certain dochshells (like the message pane) should not throw up auth dialogs because it can act as a password trojan.
... isoffscreenbrowser boolean if true, this docshell is not visible in the traditional sense, but is being actively r
endered to the screen (such as by being painted to a canvas), and should be treated accordingly.
... internal_load_flags_dont_s
end_referrer 0x2 used to indicate that the load was caused by a meta refresh and the current document uri shouldn't be sent as the http referrer.
...And 8 more matches
nsILocalFile
to create an instance, use: var localfile = components.classes["@mozilla.org/file/local;1"] .createinstance(components.interfaces.nsilocalfile); method overview void app
endrelativenativepath(in acstring relativefilepath); native code only!
... void app
endrelativepath(in astring relativefilepath); acstring getrelativedescriptor(in nsilocalfile fromfile); void initwithfile(in nsilocalfile afile); void initwithnativepath(in acstring filepath); native code only!
...the persistent descriptor is int
ended to be used whenever a nsilocalfile needs to be serialized to disk and later recovered.
...And 8 more matches
nsISelectionPrivate
method overview void addselectionlistener(in nsiselectionlistener newlistener); void
endbatchchanges(); void getcachedframeoffset(in nsiframe aframe, in print32 inoffset, in nspointref apoint); native code only!
... void getrangesforinterval(in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, out pruint32 resultcount, [retval, array, size_is(resultcount)] out nsidomrange results); void getrangesforintervalarray(in nsinode beginnode, in print32 beginoffset, in nsinode
endnode, in print32
endoffset, in boolean allowadjacent, in rangearray results); native code only!
... void getrangesforintervalcomarray(in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, in rangearray results); native code only!
...And 8 more matches
nsIWebProgressListener
state_transferring 0x00000004 this flag indicates that data for a request is being transferred to an
end consumer.
... constant value description state_restoring 0x01000000 this flag indicates that the state transition corresponds to the start or stop of activity for restoring a previously-r
endered presentation.
...these are instead int
ended as a rough indicator that may be used to, for example, color code a security indicator or otherwise provide basic data transfer security feedback to the user.
...And 8 more matches
Animating CSS properties - Firefox Developer Tools
they can also give better performance, as they give the browser more control over when to r
ender frames, and to drop frames if necessary.
... the css r
endering waterfall the process the browser uses to update the page when a css property has changed can be described as a waterfall consisting of the following steps: recalculate style: every time a css property for an element changes, the browser must recalculate computed styles.
...one last step is not shown in this sequence: the page may be split into layers, which are painted indep
endently and then combined in a process called "composition".
...And 8 more matches
AudioBufferSourceNode.AudioBufferSourceNode() - Web APIs
detune: a value in cents to modulate the speed of audio stream r
endering.
... loop
end: an optional value, in seconds, where looping should
end if the loop attribute is true.
...the sample frames, comprising the loop, run from the values loopstart to loop
end-(1/samplerate).
...And 8 more matches
FileSystemFlags - Web APIs
values and results the table below describes the result of each possible combination of these flags dep
ending on whether or not the target file or directory path already exists.
... option values file/directory condition result create exclusive false n/a[1] path exists and matches the desired type (dep
ending on whether the function called is getfile() or getdirectory() the successcallback is called with a filesystemfileentry if getfile() was called or a filesystemdirectoryentry if getdirectory() was called.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 8 more matches
OfflineAudioContext - Web APIs
in contrast with a standard audiocontext, an offlineaudiocontext doesn't r
ender the audio to the device hardware; instead, it generates it, as fast as it can, and outputs the result to an audiobuffer.
... event handlers offlineaudiocontext.oncomplete is an eventhandler called when processing is terminated, that is when the complete event (of type offlineaudiocompletionevent) is raised, after the event-based version of offlineaudiocontext.startr
endering() is used.
... offlineaudiocontext.susp
end() schedules a suspension of the time progression in the audio context at the specified time and returns a promise.
...And 8 more matches
Using server-sent events - Web APIs
you'll need a bit of code on the server to stream events to the front-
end, but the client side code works almost identically to websockets in part of handling incoming events.
... this is one-way connection, so you can't s
end events from a client to a server.
.../ssedemo.php", { withcredentials: true } ); once you've instantiated your event source, you can begin listening for messages from the server by attaching a handler for the message event: evtsource.onmessage = function(event) { const newelement = document.createelement("li"); const eventlist = document.getelementbyid("list"); newelement.innerhtml = "message: " + event.data; eventlist.app
endchild(newelement); } this code listens for incoming messages (that is, notices from the server that do not have an event field on them) and app
ends the message text to a list in the document's html.
...And 8 more matches
Synchronous and asynchronous requests - Web APIs
example: s
end a file to the console log this is the simplest usage of asynchronous xmlhttprequest.
... var xhr = new xmlhttprequest(); xhr.open("get", "/bar/foo.txt", true); xhr.onload = function (e) { if (xhr.readystate === 4) { if (xhr.status === 200) { console.log(xhr.responsetext); } else { console.error(xhr.statustext); } } }; xhr.onerror = function (e) { console.error(xhr.statustext); }; xhr.s
end(null); line 2 specifies true for its third parameter to indicate that the request should be handled asynchronously.
...*/) { var xhr = new xmlhttprequest(); xhr.callback = callback; xhr.arguments = array.prototype.slice.call(arguments, 2); xhr.onload = xhrsuccess; xhr.onerror = xhrerror; xhr.open("get", url, true); xhr.s
end(null); } usage: function showmessage(message) { console.log(message + this.responsetext); } loadfile("message.txt", showmessage, "new message!\n\n"); the signature of the utility function loadfile declares (i) a target url to read (via an http get request), (ii) a function to execute on successful completion of the xhr operation, and (iii) an arbitrary list of additional arguments that ...
...And 8 more matches
XRWebGLLayer.getNativeFramebufferScaleFactor() static method - Web APIs
if the scaling factor is greater than zero, then the frame buffer is smaller than the diplay's native dimensions, resulting in the output being up-scaled for display to the screen after r
endering into the frame buffer.
... return value a floating-point value which, when multiplied by the xrsession's recomm
ended framebuffer dimensions, results in the xr device's native frame buffer resolution.
... if the session has
ended, this function returns 0.0.
...And 8 more matches
ARIA: grid role - Accessibility
end moves focus to the last cell in the row that contains focus.
... ctrl +
end moves focus to the last cell in the last row.
... shift + → ext
ends selection one cell to the right.
...And 8 more matches
Architecture - Accessibility
they
end up getting exposed as '\n' in their parent nshypertextaccessible.
...this allows at's to find its position within that text, because the hyperlink interface exposes a start and
end index.
... in fact, the
end index will always be 1 larger than the start index, because the object is always represented by a single '\xfffc' character.
...And 8 more matches
Aligning Items in a Flex Container - CSS: Cascading Style Sheets
we can use other values to control how the items align: align-items: flex-start align-items: flex-
end align-items: center align-items: stretch align-items: baseline in the live example below, the value of align-items is stretch.
... the align-content property takes the following values: align-content: flex-start align-content: flex-
end align-content: center align-content: space-between align-content: space-around align-content: stretch align-content: space-evenly (not defined in the flexbox specification) in the live example below, the flex container has a height of 400 pixels, which is more than needed to display our items.
... the value of align-content is space-between, which means that the available space is shared out between the flex lines, which are placed flush with the start and
end of the container on the cross axis.
...And 8 more matches
Variable fonts guide - CSS: Cascading Style Sheets
so you would have separate files for 'roboto regular', 'roboto bold', and 'roboto bold italic' — meaning that you could
end up with 20 or 30 different font files to represent a complete typeface (it could be several times that for a large typeface that has different widths as well).
...example code follows at the
end of the guide.
... width width (represented by the wdth tag) defines the design axis of how narrow or wide (condensed or ext
ended, in typographic terms) the letterforms can be.
...And 8 more matches
animation-timing-function - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ animation-timing-function: ease; animation-timing-function: ease-in; animation-timing-function: ease-out; animation-timing-function: ease-in-out; animation-timing-function: linear; animation-timing-function: step-start; animation-timing-function: step-
end; /* function values */ animation-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1); animation-timing-function: steps(4,
end); /* steps function keywords */ animation-timing-function: steps(4, jump-start); animation-timing-function: steps(10, jump-
end); animation-timing-function: steps(20, jump-none); animation-timing-function: steps(5, jump-both); animation-timing-function: steps(6, start); animation-timin...
...g-function: steps(8,
end); /* multiple animations */ animation-timing-function: ease, step-start, cubic-bezier(0.1, 0.7, 1.0, 0.1); /* global values */ animation-timing-function: inherit; animation-timing-function: initial; animation-timing-function: unset; timing functions may be specified on individual keyframes in a @keyframes rule.
...And 8 more matches
mask-size - CSS: Cascading Style Sheets
the interpretation of possible values dep
ends on the image's intrinsic dimensions (width and height) and intrinsic proportion (ratio of width and height).
... the r
endered size of the mask image is then computed as follows: if both components of mask-size are specified and are not auto: the mask image r
enders at the specified size.
... if the mask-size is contain or cover: the image is r
endered by preserving its intrinsic proportion at the largest size contained within or covering the mask positioning area.
...And 8 more matches
place-items - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: align-items justify-items syntax /* keyword values */ place-items: auto center; place-items: normal start; /* positional alignment */ place-items: center normal; place-items: start auto; place-items:
end normal; place-items: self-start auto; place-items: self-
end normal; place-items: flex-start auto; place-items: flex-
end normal; place-items: left auto; place-items: right normal; /* baseline alignment */ place-items: baseline normal; place-items: first baseline auto; place-items: last baseline normal; place-items: stretch auto; /* global values */ place-items: inherit; place-items: initial; place-items: unset; values auto the value used is the value of the justify-items property of the par...
... normal the effect of this keyword is dep
endent of the layout mode we are in: in block-level layouts, the keyword is a synonym of start.
...And 8 more matches
text-align - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ text-align: left; text-align: right; text-align: center; text-align: justify; text-align: justify-all; text-align: start; text-align:
end; text-align: match-parent; /* character-based alignment in a table column */ text-align: "."; text-align: "." center; /* block alignment values (non-standard syntax) */ text-align: -moz-center; text-align: -webkit-center; /* global values */ text-align: inherit; text-align: initial; text-align: unset; the text-align property is specified in one of the following ways: using the keyword values start,
end, left, right, center, justify, justify-all, or match-parent.
...
end the same as right if direction is left-to-right and left if direction is right-to-left.
...And 8 more matches
Live streaming web audio and video - Developer guides
the key consideration when streaming media to a browser is the fact that rather than playing a finite file we are relaying a file that is being created on the fly and has no pre-determined start or
end.
... live streamed media lacks a finite start and
end time as rather than a static file, it is a stream of data that the server passes on down the line to the browser and is often adaptive (see below).
... rtsp real time streaming protocol (rtsp) controls media sessions between
endpoints and is often used together with real-time transport protocol (rtp) and with real-time control protocol (rtcp) for media stream delivery.
...And 8 more matches
HTML attribute: rel - HTML: Hypertext Markup Language
valid on <link>, <a>, <area>, and <form>, the supported values dep
end on the element on which the attribute is found.
...optionally, the module's dep
endencies can be fetched as well.
... link link link nofollow indicates that the current document's original author or publisher does not
endorse the referenced document.
...And 8 more matches
<th> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content flow content, but with no header, footer, sectioning content, or heading content desc
endants.
... the
end tag may be omitted, if it is immediately followed by a <th> or <td> element or if there are no more data in its parent element.
...And 8 more matches
Link types - HTML: Hypertext Markup Language
note: this may be a mailto: hyperlink, but this is not recomm
ended on public pages as robot harvesters will quickly lead to a lot of spam sent to the address.
... <a>, <area>, <link> <form> help if the element is <a> or <area>, it indicates that the hyperlink leads to a resource giving further help about the parent of the element, and its desc
endants.
... although recognized, the synonym
end is incorrect and must be avoided.
...And 8 more matches
Content-Security-Policy - HTTP
with a few exceptions, policies mostly involve specifying server origins and script
endpoints.
...therefore it is recomm
ended to restrict this fetch-directive (e.g., explicitly set object-src 'none' if possible).
... prefetch-src specifies valid sources to be prefetched or prer
endered.
...And 8 more matches
WebAssembly.Table - JavaScript
webassembly.instantiatestreaming(fetch('table2.wasm'), importobject) .then(function(obj) { console.log(tbl.length); console.log(tbl.get(0)()); console.log(tbl.get(1)()); }); note how you've got to include a second function invocation operator at the
end of the accessor to actually invoke the referenced function and log the value stored inside it (e.g.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...me for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jstablechrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
...And 8 more matches
begin - SVG: Scalable Vector Graphics
the interpretation of a list of start times is detailed in the smil specification in "evaluation of begin and
end time lists".
...the element's animation start time is defined relative to the begin or active
end of another animation.
... a valid syncbase-value consists of an id reference to another animation element followed by a dot and either begin or
end to identify whether to synchronize with the beginning or active
end of the referenced animation element.
...And 8 more matches
display - SVG: Scalable Vector Graphics
the display attribute lets you control the r
endering of graphical or container elements.
... a value of display="none" indicates that the given element and its children will not be r
endered.
... any value other than none or inherit indicates that the given element will be r
endered by the browser.
...And 8 more matches
Content Scripts - Archive of obsolete content
"
end": load the scripts after all content (dom, js, css, images) for the page has been loaded, at the time the window.onload event fires.
... the default value is "
end".
...but sometimes you might want to interact with page scripts: you might want to share objects between content scripts and page scripts or to s
end messages between them.
...And 7 more matches
platform/xpcom - Archive of obsolete content
getservice(ci.nsiobserverservice); var starobserver = class({ ext
ends: unknown, interfaces: [ 'nsiobserver' ], topic: '*', register: function register() { observerservice.addobserver(this, this.topic, false); }, unregister: function() { observerservice.removeobserver(this, this.topic); }, observe: function observe(subject, topic, data) { console.log('star observer:', subject, topic, data); } }); var starobserver = starobserver(); star...
... var { class } = require('sdk/core/heritage'); var { unknown, factory } = require('sdk/platform/xpcom'); var { cc, ci } = require('chrome'); var contractid = '@me.org/helloworld'; // define a component var helloworld = class({ ext
ends: unknown, get wrappedjsobject() this, hello: function() {return 'hello world';} }); // create and register the factory var factory = factory({ contract: contractid, component: helloworld }); // xpcom clients can retrieve and use this new // component in the normal way var wrapper = cc[contractid].createinstance(ci.nsisupports); var helloworld = wrapper.wrappedjsobject; console.log(hell...
...here's the example above, rewritten to use class id instead of contract id for lookup: var { class } = require('sdk/core/heritage'); var { unknown, factory } = require('sdk/platform/xpcom'); var { cc, ci, components } = require('chrome'); // define a component var helloworld = class({ ext
ends: unknown, get wrappedjsobject() this, hello: function() {return 'hello world';} }); // create and register the factory var factory = factory({ component: helloworld }); var id = factory.id; // retrieve the factory by class id var wrapper = components.classesbyid[id].createinstance(ci.nsisupports); var helloworld = wrapper.wrappedjsobject; console.log(helloworld.hello()); replacing fact...
...And 7 more matches
ui/sidebar - Archive of obsolete content
communicating with sidebar scripts you can't directly access your sidebar's content from your main add-on code, but you can s
end messages between your main add-on code and scripts loaded into your sidebar.
... on the sidebar
end of the conversation, sidebar scripts get a global variable addon that contains a port for s
ending and receiving messages.
... on the add-on side, you need to get a worker object for the sidebar before you can s
end or receive messages.
...And 7 more matches
Install Manifests - Archive of obsolete content
examples <em:id>extensionname@example.org</em:id> <em:id>{daf44bf7-a45e-4450-979c-91cf07434c3d}</em:id> name the name of the add-on; int
ended for display in the ui.
... optional property reference you may need to supply these properties, dep
ending on the capabilities of your add-on.
... 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 - int
ended for display in the user interface.
...And 7 more matches
Migrating from Internal Linkage to Frozen Linkage - Archive of obsolete content
use .setlength() instead: nsstring mystring = somestring; - mystring.truncate(4); + mystring.setlength(4); the frozen string api doesn't support the iterator or const_iterator classes, but you can use pointers the same way: nsstring mystring = somestring; - nsstring::const_iterator begin,
end;- mystring.beginreading(begin); mystring.
endreading(
end); + const prunichar *begin, *
end;+ mystring.beginreading(&begin, &
end); the frozen string api uses comparator functions instead of a virtual comparator class.
...use stringhead(), substring(), and stringtail() instead: nsstring buffer = somestring; - nscautostring prefix;- buffer.left(prefix, 4); + const nsdep
endentsubstring prefix = stringhead(buffer, 4); the frozen string api doesn't use nssubstringtuple objects and maintains all strings in a contiguous buffer.
...use += or app
end() instead of using +, and use nsstring or nscstring instead of promiseflatstring: nsstring firststring = somestring; nsstring secondstring = someotherstring; - nsstring combostring = firststring + secondstring; + nsstring combostring = firststring;+ combostring += secondstring; // or: combostring.app
end(secondstring); - nsresult rv = somefunc(promiseflatstring(combostring)); + nsresult rv = somefunc(combostring); removing the nsreadableutils.h from the headers list also means that we would not have access to app
endutf16toutf8 kind of functions.
...And 7 more matches
Custom XUL Elements with XBL - Archive of obsolete content
personlist.app
endchild(person); // ...
...bindings t
end to require many lines of code, and having more than one
ends up making gigantic, unbrowsable files.
...the main setback is that you can't have script tags defined in a binding, so you dep
end on the scripts that have been included in the xul files that use the binding.
...And 7 more matches
The Box Model - Archive of obsolete content
we recomm
end you play around with it for a while to get an idea of how the basic parts of the box model work.
...the css property may be useful on some occasions, but using the orient attribute is not recomm
ended because it mixes content and presentation.
... if we also add flexibility to the "cat" button, this is what we get: now the flexible button is taking the available inner space, moving the other two buttons all the way to the
end of the box.
...And 7 more matches
Index of archived content - Archive of obsolete content
listening to events in firefox extensions migrating from internal linkage to frozen linkage migrating raw components to add-ons multiple item extension packaging offering a context menu for form controls overlay extensions firefox addons developer guide app
endix: what you should know about open-source software licenses chapter 1: introduction to extensions chapter 2: technologies used in developing extensions chapter 3: introduction to xul—how to build a more intuitive ui chapter 4: using xpcom—implementing advanced processes chapter 5: let's build a firefox extension ...
... chapter 6: firefox extensions and xul applications license and authors xul school tutorial adding events and commands adding toolbars and toolbar buttons adding menus and submenus adding sidebars adding windows and dialogs app
endix a: add-on performance app
endix b: install and uninstall scripts app
endix c: avoiding using eval in add-ons app
endix d: loading scripts app
endix e: dom building and insertion (html & xul) app
endix f: monitoring dom changes connecting to remote content custom xul elements with xbl getting sta...
...sions session store api setting up an extension development environment signing an xpi signing an extension supporting search suggestions in search plugins tabbed browser techniques promises updating addons broken by private browsing changes using dep
endent libraries in extension components using the stylesheet service bookmarks.export() bookmarks.import() adding preferences to an extension an interview with douglas bowman of wired news archived mozilla and build documentation activex control for hosting netscape plug-ins in ie ...
...And 7 more matches
Source code directories overview - Archive of obsolete content
there are also platform dep
endent subdirectories which contain source code for specific platforms.
... cal
endar contains the code for the various mozilla cal
endar apps and extensions.
... gfx contains c interfaces and code for platform indep
endent drawing and imaging.
...And 7 more matches
Reading from Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
...the default character encoding is utf-8 which means that characters below value 128 will occupy a single byte whereas characters above value 128 will occupy multiple bytes, dep
ending on their value.
...dep
ending on the character encoding, it is possible that more than 20 bytes will be read from the file in order to retrieve 20 characters from the file.
...And 7 more matches
Modifying a XUL Interface - Archive of obsolete content
you can then set attributes of the element using the setattribute() function and app
end it to the xul document using the app
endchild() function.
... for example, the following will add a button to a xul window: example 1 : source view <script> function addbutton(){ var abox = document.getelementbyid("abox"); var button = document.createelement("button"); button.setattribute("label","a new button"); abox.app
endchild(button); } </script> <box id="abox" width="200"> <button label="add" oncommand="addbutton();"/> </box> this example has two parts a box container element in xul.
...this is a subtle dep
endency between the function and the xul element to which you should pay attention.
...And 7 more matches
XUL Questions and Answers - Archive of obsolete content
overlaying elements without ids the original developers only t
end to put ids where they need them.
...a workaround is to open the content in a new window using "window.open" and s
end titlebar=”no” as one of the flags in the 3rd argument.
...(server can just s
end the xul code to use for popup - alternatively it can s
end generic xml describing the attributes of the items in the menu and you generate the xul on client by applying an xslt transform.) can i change a xul tree cell/row/item background color with javascript?
...And 7 more matches
panel - Archive of obsolete content
when open, it floats above the window and may ext
end outside the border of the main window.
... flip type: string normally, when a popup opens near the edge of the screen, it flips over to open on the opposite side of the anchor, so that it doesn't ext
end off the screen.
... a sliding panel will have the start (or
end) position ext
ended such that the panel can be the requested size, meaning the arrow will no longer be at the start (or
end) of the panel - i.e., the arrow will appear to have been slid along the panel to ensure the arrow is still pointing at the anchor.
...And 7 more matches
How RSS Works - Archive of obsolete content
how rss works there are two main components that come into play with rss syndication: the server
end and the client
end.
... the server
end of rss syndication is the part of the system that produces the rss feed.
... a news website would be at the server
end of rss syndication.
...And 7 more matches
XForms Custom Controls - Archive of obsolete content
purpose you are in the right place if you would like to create your own custom r
enderings of the xforms controls like input, output, trigger, etc.
...why do you need this you will probably find that your need for customization will fall into one of the following categories: custom presentation - xforms controls as r
endered by the mozilla xforms processor do not provide the right look and feel for you.
...for example, you might want to r
ender images that are held inside an instance document or you would like to show a disabled trigger when its bound node becomes irrelevant rather than having it not display (the current default behavior).
...And 7 more matches
Mozilla XForms User Interface - Archive of obsolete content
mainly this is aimed to document how xforms elements will be presented in mozilla since the xforms specifications give only a hint of how controls might be r
endered.
...some of the 'form controls' can have multiple appearances and thus may be r
endered in multiple ways.
... we use the data type of the instance node that the form control is bound to as a clue when making a r
endering decision.
...And 7 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.
...a datasource is a subgraph (or collection of statements, dep
ending on your viewpoint) that are for some reason collected together.
...make sure that your web server // dishes it up as text/xml (recomm
ended) or text/rdf!
...And 7 more matches
Game distribution - Game development
this can range from low-
end smartphones or tablets, through laptops and desktop computers, to smart tvs, watches or even a fridge if it can handle a modern enough browser.
...you can sp
end more time and money on promotion and monetization.
...you can just s
end them a direct url to access the game, which they can then click to play the game right away without the need to use third party plugins or download and install a large package.
...And 7 more matches
Building up a basic demo with Babylon.js - Game development
we will try to create a simple demo first — a cube r
endered on the screen.
... html structure here's the html structure we will use: <!doctype html> <html> <head> <meta charset="utf-8"> <title>mdn games: babylon.js demo</title> <style> html,body,canvas { margin: 0; padding: 0; width: 100%; height: 100%; font-size: 0; } </style> </head> <body> <script src="babylon.js"></script> <canvas id="r
ender-canvas"></canvas> <script> var canvas = document.getelementbyid("r
ender-canvas"); /* all our javascript code goes here */ </script> </body> </html> it contains some basic information like the document <title>, and some css to set the width and height of the <canvas> element (which babylon.js will use to r
ender the content on) to fill the entire available viewport space.
... initialising the babylon.js engine we have to create a babylon.js engine instance first (passing it the <canvas> element to r
ender on) before we start developing our game.
...And 7 more matches
Square tilemaps implementation: Scrolling maps - Game development
r
endering the map there are two main differences between r
endering scrolling maps vs.
...in static maps, usually the r
endering starts at the top left corner of a tile situated at the top left corner of a viewport.
... while r
endering scrolling tilemaps, the first tile will often be clipped.
...And 7 more matches
How much does it cost to do something on the Web? - Learn web development
in this article we discuss how much you may have to sp
end, and why.
... summary when launching a website, you may sp
end nothing, or your costs may go through the roof.
...some, like phpstorm, can cost between a few dozen and 200 dollars, dep
ending on the plan you purchase.
...And 7 more matches
Other form controls - Learn web development
<textarea cols="30" rows="8"></textarea> this r
enders like so: the main difference between a <textarea> and a regular single line text field is that users are allowed to include hard line breaks (i.e.
... note that even though you can put anything inside a <textarea> element (including other html elements, css, and javascript), because of its nature, it is all r
endered as if it was plain text content.
... controlling multi-line r
endering <textarea> accepts three attributes to control its r
endering across several lines: cols specifies the visible width (columns) of the text control, measured in average character widths.
...And 7 more matches
Document and website structure - Learn web development
basic sections of a document webpages can and will look pretty different from one another, but they all t
end to share similar standard components, unless the page is displaying a fullscreen video or game, is part of some kind of art project, or is just badly structured: header: usually a big strip across the top with a big heading, logo, and perhaps a tagline.
...ps://fonts.googleapis.com/css?family=open+sans+condensed:300|sonsie+one" rel="stylesheet" type="text/css"> <link rel="stylesheet" href="style.css"> <!-- the below three lines are a fix to get html5 semantic elements working in old versions of internet explorer--> <!--[if lt ie 9]> <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.js"></script> <![
endif]--> </head> <body> <!-- here is our main header that is used across all the pages of our website --> <header> <h1>header</h1> </header> <nav> <ul> <li><a href="#">home</a></li> <li><a href="#">our team</a></li> <li><a href="#">projects</a></li> <li><a href="#">contact</a></li> </ul> <!-- a search form is another co...
...maecenas congue ligula as quam viverra nec consectetur ant h
endrerit.
...And 7 more matches
Images in HTML - Learn web development
so for example, if your image is called dinosaur.jpg, and it sits in the same directory as your html page, you could embed the image like so: <img src="dinosaur.jpg"> if the image was in an images subdirectory, which was inside the same directory as the html page (which google recomm
ends for seo/indexing purposes), then you'd embed it like this: <img src="images/dinosaur.jpg"> and so on.
...its value is supposed to be a textual description of the image, for use in situations where the image cannot be seen/displayed or takes a long time to r
ender because of a slow internet connection.
...it dep
ends on why the image is there in the first place.
...And 7 more matches
From object to iframe — other embedding technologies - Learn web development
extarea.onkeydown = function(e){ if (e.keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).substring(0, caretpos); const back = (textarea.value).substring(textarea.selection
end, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selection
end = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.onkeyup = function(){ // we only want to save the state when the user code is ...
...using this isn't really recomm
ended any more, as the same effect can be better achieved using border: none; in your css.
...when it comes to securing <iframe>s, you can configure your server to s
end an appropriate x-frame-options header.
...And 7 more matches
HTML table advanced features and accessibility - Learn web development
we'd recomm
end using the <caption> element instead, however, as summary is deprecated by the html5 spec, and can't be read by sighted users (it doesn't appear on the page.) active learning: adding a caption let's try this out, revisiting an example we first met in the previous article.
... open up your language teacher's school timetable from the
end of html table basics, or make a local copy of our timetable-fixed.html file.
...you can include the table footer right at the bottom of the table as you'd expect, or just below the table header (the browser will still r
ender it at the bottom of the table).
...And 7 more matches
Client-side storage - Learn web development
note: there are limits to the amount of data you can store using client-side storage apis (possibly both per individual api and cumulatively); the exact limit varies dep
ending on the browser and possibly based on user settings.
...on('notes_os').objectstore('notes_os'); objectstore.opencursor().onsuccess = function(e) { // get a reference to the cursor let cursor = e.target.result; // if there is still another data item to iterate through, keep running this code if(cursor) { // create a list item, h3, and p to put each data item inside when displaying it // structure the html fragment, and app
end it inside the list const listitem = document.createelement('li'); const h3 = document.createelement('h3'); const para = document.createelement('p'); listitem.app
endchild(h3); listitem.app
endchild(para); list.app
endchild(listitem); // put the data from the cursor inside the h3 and para h3.textcontent = cursor.value.title; para.textcontent = c...
...this will be useful later when we want to delete items listitem.setattribute('data-note-id', cursor.value.id); // create a button and place it inside each listitem const deletebtn = document.createelement('button'); listitem.app
endchild(deletebtn); deletebtn.textcontent = 'delete'; // set an event handler so that when the button is clicked, the deleteitem() // function is run deletebtn.onclick = deleteitem; // iterate to the next item in the cursor cursor.continue(); } else { // again, if list item is empty, display a 'no notes stored' message if(!list.firstchild) { ...
...And 7 more matches
Starting our Svelte Todo list app - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
... objective: to learn how to create a svelte component, r
ender it inside another component, pass data into it using props, and save its state.
... mark tasks as completed/p
ending without deleting them.
...And 7 more matches
Deployment and next steps - Learn web development
prerequisites: at minimum, it is recomm
ended that you are familiar with the core html, css, and javascript languages, and have knowledge of the terminal/command line.
...there are no additional runtimes or dep
endencies to download, parse, execute, and keep running in memory.
...vercel is a cloud platform specifically tailored for static sites, which has out-of-the-box support for most common front-
end tools, svelte being one of them.
...And 7 more matches
Introduction to cross browser testing - Learn web development
remember that you are not your users — just because your site works on your macbook pro or high-
end galaxy nexus, doesn't mean it will work for all your users — there's a whole lot of testing to be done!
...if your site includes a load of big animations, it might be ok on a high spec tablet, but might be sluggish or jerky on a low
end device.
... if you leave all the testing to the
end of a project, any bugs you uncover will be a lot more expensive and time consuming to fix than if you uncover them and fix them as you go along.
...And 7 more matches
Strategies for carrying out testing - Learn web development
there are a number of sites that provide such stats, for example: netmarketshare statcounter these are both very north america-centric, and not particularly accurate, but they can give you an idea of broad tr
ends.
... final support chart so, our final support chart will
end up looking like so: a grade: chrome and firefox for windows/mac, safari for mac, edge and ie for windows (last two versions of each), ios safari for iphone/ipad, android stock browser (last two versions) on phone/tablet, chrome and firefox for android (last two versions) on phone tablet.
...smaller companies and individuals are generally not able to afford such a sophisticated lab, so t
end to make do with smaller labs, emulators, virtual machines, and commercial testing apps.
...And 7 more matches
Client-side tooling overview - Learn web development
if you jump on your favourite search engine and look for "front-
end developer tools" you're going to hit a huge spectrum of results ranging from text editors, to browsers, to the type of pens you can use to take notes.
...there is usually a way of controlling and coordinating what changes are made to the "master" copy of the code, and when, so a team of developers doesn’t
end up overwriting each other’s work all the time.
...it is primarily accessed via the command line but can be accessed via fri
endly user interfaces.
...And 7 more matches
Creating reftest-based unit tests
running ipc reftests reftests can also be run in a separate process, which can differ from same-process r
endering in significant ways.
...the reftest.list file can be named whatever you want, not necessarily reftest.list (but it has to
end with .list).
...this is why manual tests t
end to get longer, include more steps and ultimately become a long list that actually tests a lot of things.
...And 7 more matches
Debugging on Mac OS X
rather than disabling sip (which has security implications), it is recomm
ended to debug with try builds or local builds.
...to workaround this problem, remove the quarantine ext
ended attribute from the downloaded nightly: $ xattr -r -d com.apple.quarantine /path/to/nightly.app local builds local builds of mozilla-central do not enable hardened runtime and hence do not have debugging restrictions.
...note that disabling sip bypasses hardened runtime restrictions which can mask some bugs that only occur with hardened runtime so it is recomm
ended to test fixes with sip enabled.
...And 7 more matches
Experimental features in Firefox
nightly 75 yes developer edition 75 no beta 75 no release 75 no preference name dom.forms.inputmode <link rel="preload"> the <link> element's rel attribute is int
ended to help provide performance gains by letting you download resources earlier in the page lifecycle, ensuring that they're available earlier and are less likely to block page r
endering.
... nightly 78 yes developer edition 78 yes beta 78 yes release 78 no preference name network.preload css display stray control characters in css as hex boxes this feature r
enders control characters (unicode category cc) other than tab (u+0009), line feed (u+000a), form feed (u+000c), and carriage return (u+000d) as a hexbox when they are not expected.
... nightly 50 no developer edition 50 no beta 50 no release 50 no preference name layout.css.initial-letter.enabled conic gradients conic gradients expand css gradients to allow the color transitions to be r
endered circling around a center point rather than radiating from it.
...And 7 more matches
Message manager overview
communicate with frame scripts using addmessagelistener() and broadcastasyncmessage() or s
endasyncmessage() functions.
... broadcastasyncmessage() s
ends the message to every <browser> in every browser window.
...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 content tab) loaded into that window: loadframescript() loads the given script into every <browser> in that browser window broadcastasyncmessage() s
ends the message to every <browser> in that browser window.
...And 7 more matches
Interfacing with the Add-on Repository
this article provides some sample code that queries the recomm
ended add-ons list on amo and lets the user click a button to install an add-on from the list.
... enabling the recomm
endation feature in current builds of firefox 4, the recomm
endation api doesn't work because the preference for the url to query to get recomm
ended add-ons is not included by default; see bug 628785.
... 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.recomm
ended.url"); } catch(e) { recurl = ""; } if (recurl == "") { prefbranch.setcharpref("getaddons.recomm
ended.url", "https://services.addons.mozilla.org/%locale%/%app%/api/%api_version%/list/recomm
ended/all/%max_results%/%os%/%version%?src=firefox"); prefsservice.savepreffile(null); } this fetches the value of the extensions.getaddons.recomm
ended.url preference, and, if the preference d...
...And 7 more matches
NSS Tools certutil
changing the names of the certificate and key databases is not recomm
ended.
...in each category position use zero or more of the following attribute codes: p prohibited (explicitly distrusted) p trusted peer c valid ca t trusted ca to issue client certificates (implies c) c trusted ca to issue server certificates (ssl only) (implies c) u certificate can be used for authentication or signing w s
end warning (use with other attributes to include a warning when the certificate is used in that context) the attribute codes for the categories are separated by commas, and the entire set of attributes enclosed by quotation marks.
...these usages are described under standard x.509 v3 certificate extensions in app
endix a.3 of thered hat certificate system administration guide.
...And 7 more matches
certutil
the format of the validity-time argument is yymmddhhmmss[+hhmm|-hhmm|z], which allows offsets to be set relative to the validity
end time.
...when specifying an explicit time, use a z at the
end of the term, yymmddhhmmssz, to close it.
...dep
ending on the command option, an input file can be a specific certificate, a certificate request file, or a batch file of commands.
...And 7 more matches
SpiderMonkey Build Documentation
(if you want to use spidermonkey as a library in your c++ application, or work on improving spidermonkey itself, do a developer/debug build instead, as described below.) cd js/src # this name should
end with "_opt.obj" to make the version control system ignore it.
... mkdir build_opt.obj cd build_opt.obj /bin/sh ../configure.in # use "mozmake" on windows make a few notes about this: the most common build problems are dep
endency problems.
...thus, in addition to following the steps above, you should also create a debug build using these steps: cd js/src # this name should
end with "_dbg.obj" to make the version control system ignore it.
...And 7 more matches
History Service Design
this system provides additional performance, flexibility, and querying capabilities over the old one, for both
end users and extensions developers.
... objectives the primary objectives of the new history service implementation in places are: improve access to browsing history allow association of useful metadata with urls flexible query system for both
end-users and add-ons developers clean architecture for ease of code reuse and maintainability the most known and visible feature of history are views.
...the system should be customizable enough to allow creation of custom, cal
endar and graphical views based on queries executed through a common api upon underlying data.
...And 7 more matches
nsAString (External)
e="nsastring_(external)"> <area alt="" coords="939,102,1069,150" href="http://developer.mozilla.org/en/nsstringcontainer_(external)" shape="rect" title="nsstringcontainer_(external)"> <area alt="" coords="548,198,676,246" href="http://developer.mozilla.org/en/nsstring_external" shape="rect" title="nsstring_external"> <area alt="" coords="700,198,913,246" href="http://developer.mozilla.org/en/nsdep
endentsubstring_external" shape="rect" title="nsdep
endentsubstring_external"> <area alt="" coords="937,198,1071,246" href="http://developer.mozilla.org/en/promiseflatstring_(external)" shape="rect" title="promiseflatstring_(external)"> <area alt="" coords="1095,198,1196,246" href="http://developer.mozilla.org/en/nsautostring_(external)" shape="rect" title="nsautostring_(external)"> <area alt="" coord...
...s="5,294,197,342" href="http://developer.mozilla.org/en/nsdep
endentstring_external" shape="rect" title="nsdep
endentstring_external"> <area alt="" coords="221,294,467,342" href="http://developer.mozilla.org/en/ns_convertasciitoutf16_external" shape="rect" title="ns_convertasciitoutf16_external"> <area alt="" coords="491,294,733,342" href="http://developer.mozilla.org/en/ns_convertutf8toutf16_external" shape="rect" title="ns_convertutf8toutf16_external"> <area alt="" coords="757,294,869,342" href="http://developer.mozilla.org/en/nsliteralstring_(external)" shape="rect" title="nsliteralstring_(external)"> </map> method overview beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral oper...
...ator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find rfind findchar rfindchar app
endint tointeger data members no public members.
...And 7 more matches
nsICacheEntryDescriptor
inherits from: nsicacheentryinfo last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void close(); void doom(); void doomandfailp
endingrequests(in nsresult status); string getmetadataelement(in string key); void markvalid(); nsiinputstream openinputstream(in unsigned long offset); nsioutputstream openoutputstream(in unsigned long offset); void setdatasize(in unsigned long size); void setexpirationtime(in pruint32 expirationtime); void setmetadataelement(in string key, in string value); void visitmetadata(in nsicachemetadatavisitor visitor); attributes attribute type description accessgranted nscacheaccessmode ge...
...a descriptor with write access can doom the cache entry and choose to fail p
ending requests.
... this means that p
ending requests will not get a cache descriptor.
...And 7 more matches
nsIFilePicker
to create an instance, use: var filepicker = components.classes["@mozilla.org/filepicker;1"] .createinstance(components.interfaces.nsifilepicker); method overview void app
endfilter(in astring title, in astring filter); void app
endfilters(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...
...on some platforms, this is automatically app
ended to filenames the user enters, if required.
... methods app
endfilter() app
ends a custom file extension filter to the dialog.
...And 7 more matches
Working with windows in chrome code
opening windows from a <script> in a window or an overlay to open a new window, we usually use a window.open or window.op
endialog dom call, like this: var win = window.open("chrome://myextension/content/about.xul", "aboutmyextension", "chrome,centerscreen"); the first parameter to window.open is the uri of the xul file that describes the window and its contents.
... the window.op
endialog function works similarly, but lets you specify optional arguments that can be referenced from the javascript code.
...accessing elements which are ancestors of your chrome document, or accessing elements which are desc
endants of your chrome document (but nevertheless in a different context).
...And 7 more matches
Network request details - Firefox Developer Tools
clicking the icon at the right-hand
end of the toolbar closes the details pane and returns you to the list view.
... res
end the request.
... the res
end button opens a menu with two items: res
end: simply res
ends the request.
...And 7 more matches
EffectTiming.fill - Web APIs
the web animations api's effecttiming dictionary's fill property specifies a fill mode, which defines how the element to which the animation is applied should look when the animation sequence is not actively running, such as before the time specified by iterationstart or after animation's
end time.
... for example, setting fill to "none" means the animation's effects are not applied to the element if the current time is outside the range of times during which the animation is running, while "forwards" ensures that once the animation's
end time has been passed, the element will continue to be drawn in the state it was in at its last r
endered frame.
... syntax var timingproperties = { fill: "none" | "forwards" | "backwards" | "both" | "auto" } value a domstring indicating the fill type to use in order to properly r
ender an affected element when outside the animation's active interval (that is, when it's not actively animating).
...And 7 more matches
GlobalEventHandlers - Web APIs
globaleventhandlers.onanimation
end an eventhandler called when an animation
end event is sent, indicating that a css animation has stopped playing.
... globaleventhandlers.ondrag
end is an eventhandler representing the code to be called when the drag
end event is raised.
... globaleventhandlers.on
ended is an eventhandler representing the code to be called when the
ended event is raised.
...And 7 more matches
HTMLIFrameElement.referrerPolicy - Web APIs
origin only s
end the origin of the document as the referrer in all cases.
... the document https://example.com/page.html will s
end the referrer https://example.com/.
... origin-when-cross-origin s
end a full url when performing a same-origin request, but only s
end the origin of the document for other cases.
...And 7 more matches
HTMLInputElement.setSelectionRange() - Web APIs
the htmlinputelement.setselectionrange() method sets the start and
end positions of the current text selection in an <input> or <textarea> element.
...this lets you indicate, for example, that the selection was set by the user clicking and dragging from the
end of the selected text toward the beginning.
... this method updates the htmlinputelement.selectionstart, selection
end, and selectiondirection properties in one call.
...And 7 more matches
Node - Web APIs
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, dep
ending on circumstances.
... node.textcontent returns / sets the textual content of an element and all its desc
endants.
... node.app
endchild(childnode) adds the specified childnode argument as the last child to the current node.
...And 7 more matches
RTCPeerConnection: icecandidate event - Web APIs
rtcpeerconnection.onicecandidate = (event) => { if (event.candidate) { s
endcandidatetoremotepeer(event.candidate) } else { /* there are no more candidates coming during this negotiation */ } } the remote peer, upon receiving the candidate, will add the candidate to its candidate pool by calling addicecandidate(), passing in the candidate string you have passed along using the signaling server.
... indicating the
end of a generation of candidates when an ice negotiation session runs out of candidates to propose for a given rtcicetransport, it has completed gathering for a generation of candidates.
...this ensures that the remote peer is given the
end-of-candidates notification as well.
...And 7 more matches
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, dns lookup start and
end times, request start, response start and
end times, etc.
... the performanceresourcetiming interface ext
ends the performanceentry for performance entries which have an entrytype of "resource".
...the next stages are connectstart and connect
end which are the timestamps immediately before and after connecting to the server, respectively.
...And 7 more matches
Selection - Web APIs
the anchor is where the user began the selection and the focus is where the user
ends the selection.
... anchor and focus should not be confused with the start and
end positions of a selection.
... the anchor can be placed before the focus or vice-versa, dep
ending on the direction you made your selection.
...And 7 more matches
Using Service Workers - Web APIs
the below graphic shows a summary of the available service worker events: promises promises are a great mechanism for running async operations, with success dep
endant on one another.
... promises can do a variety of things, but all you need to know for now is that if something returns a promise, you can attach .then() to the
end and include callbacks inside it for success cases, or you can insert .catch() on the
end if you want to include a failure callback.
...equest(); request.open('get', url); request.responsetype = 'blob'; request.onload = () => { if (request.status == 200) { resolve(request.response); } else { reject(error('image didn\'t load successfully; error code:' + request.statustext)); } }; request.onerror = () => { reject(error('there was a network error.')); }; request.s
end(); }); } we return a new promise using the promise() constructor, which takes as an argument a callback function with resolve and reject parameters.
...And 7 more matches
Using Touch Events - Web APIs
the interaction
ends when the fingers are removed from the surface.
... during this interaction, an application receives touch events during the start, move, and
end phases.
... touch
end - fired when a touch point is removed from the touch surface.
...And 7 more matches
Adding 2D content to a WebGL context - Web APIs
« previousnext » once you've successfully created a webgl context, you can start r
endering into it.
... drawing the scene the most important thing to understand before we get started is that even though we're only r
endering a square plane object in this example, we're still drawing in 3d space.
... it's just we're drawing a square and we're putting it directly in front of the camera perp
endicular to the view direction.
...And 7 more matches
Using the Web Animations API - Web APIs
in the @keyframes block we can see that 30% of the way through each loop (about .9 seconds in), alice’s color changes from black to a deep burgundy then back again by the
end of the loop.
... currently, there should be at least two keyframes specified (representing the starting and
ending states of the animation sequence).
... pausing and playing animations we’ll talk more about alice’s animation later, but for now, let’s look closer at the cupcake’s animation: var nommingcake = document.getelementbyid('eat-me_sprite').animate( [ { transform: 'translatey(0)' }, { transform: 'translatey(-80%)' } ], { fill: 'forwards', easing: 'steps(4,
end)', duration: alicechange.effect.timing.duration / 2 }); the element.animate() method will immediately run after it is called.
...And 7 more matches
Privileged features - Web APIs
dep
endent if on, the new window is said to be dep
endent of its parent window.
... a dep
endent window closes when its parent window closes.
... a dep
endent window is minimized on the windows task bar only when its parent window is minimized.
...And 7 more matches
Worker.prototype.postMessage() - Web APIs
the postmessage() method of the worker interface s
ends a message to the worker's inner scope.
... this accepts a single parameter, which is the data to s
end to the worker.
... the worker can s
end back information to the thread that spawned it using the dedicatedworkerglobalscope.postmessage method.
...And 7 more matches
Web accessibility for seizures and physical reactions - Accessibility
seizures can be fatal, but even the ones that are "only" debilitating can be of such severity, that they r
ender the user incapacitated.
... animation-iteration-count: 1 !important; /* hat tip nick/cssremedy (https://css-tricks.com/revisiting-prefers-reduced-motion-the-reduced-motion-media-query/#comment-1700170) */ transition-duration: 0.001ms !important; } } from w3.org's page on media queries 4: the update media feature is used to query the ability of the output device to modify the appearance of content once it has been r
endered.
... environment-bl
ending from w3c's draft document, media queries level 5: "the environment-bl
ending media feature is used to query the characteristics of the user’s display so the author can adjust the style of the document.
...And 7 more matches
negative - CSS: Cascading Style Sheets
when defining custom counter styles, the negative descriptor lets you alter the representations of negative counter values, by providing a way to specify symbols to be app
ended or prep
ended to the counter representation when the value is negative.
... syntax /* <symbol> values */ negative: "-"; /* prep
ends '-' if value is negative */ negative: "(" ")"; /* surrounds value by '(' and ')' if it is negative */ values first <symbol> this symbol will be prep
ended to the representation when the counter is negative.
... second <symbol> if present, this symbol will be app
ended to the representation when the counter is negative.
...And 7 more matches
Using multi-column layouts - CSS: Cascading Style Sheets
the css multi-column layout module ext
ends the block layout mode to allow the easy definition of multiple columns of text.
... people have trouble reading text if lines are too long; if it takes too long for the eyes to move from the
end of the one line to the beginning of the next, they lose track of which line they were on.
...this limitation is solved by adding new css properties to ext
end the traditional block layout mode.
...And 7 more matches
CSS reference - CSS: Cascading Style Sheets
the syntax for each specified value dep
ends on the data type defined for each specified property.
...tive-symbols (@counter-style)::after (:after)align-contentalign-itemsalign-selfall<an-plus-b><angle><angle-percentage>animationanimation-delayanimation-directionanimation-durationanimation-fill-modeanimation-iteration-countanimation-nameanimation-play-stateanimation-timing-function@annotationannotation()attr()b::backdropbackdrop-filterbackface-visibilitybackgroundbackground-attachmentbackground-bl
end-modebackground-clipbackground-colorbackground-imagebackground-originbackground-positionbackground-repeatbackground-size<basic-shape>::before (:before)bleed (@page)<bl
end-mode>block-sizeblur()borderborder-blockborder-block-colorborder-block-
endborder-block-
end-colorborder-block-
end-styleborder-block-
end-widthborder-block-startborder-block-start-colorborder-block-start-styleborder-block-start-width...
...border-block-styleborder-block-widthborder-bottomborder-bottom-colorborder-bottom-left-radiusborder-bottom-right-radiusborder-bottom-styleborder-bottom-widthborder-collapseborder-colorborder-
end-
end-radiusborder-
end-start-radiusborder-imageborder-image-outsetborder-image-repeatborder-image-sliceborder-image-sourceborder-image-widthborder-inlineborder-inline-colorborder-inline-
endborder-inline-
end-colorborder-inline-
end-styleborder-inline-
end-widthborder-inline-startborder-inline-start-colorborder-inline-start-styleborder-inline-start-widthborder-inline-styleborder-inline-widthborder-leftborder-left-colorborder-left-styleborder-left-widthborder-radiusborder-rightborder-right-colorborder-right-styleborder-right-widthborder-spacingborder-start-
end-radiusborder-start-start-radiusborder-styleborde...
...And 7 more matches
animation-delay - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... note: when you specify multiple comma-separated values on an animation-* property, they will be assigned to the animations specified in the animation-name property in different ways dep
ending on how many there are.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 7 more matches
contain - CSS: Cascading Style Sheets
the contain css property allows an author to indicate that an element and its contents are, as much as possible, indep
endent of the rest of the document tree.
... this property is useful on pages that contain a lot of widgets that are all indep
endent, as it can be used to prevent each widget's internals from having side effects outside of the widget's bounding-box.
... note: if applied (with value: paint, strict or content), this property creates: a new containing block (for the desc
endants whose position property is absolute or fixed).
...And 7 more matches
grid-area - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if four <grid-line> values are specified, grid-row-start is set to the first value, grid-column-start is set to the second value, grid-row-
end is set to the third value, and grid-column-
end is set to the fourth value.
... when grid-column-
end is omitted, if grid-column-start is a <custom-ident>, grid-column-
end is set to that <custom-ident>; otherwise, it is set to auto.
...And 7 more matches
grid-column - CSS: Cascading Style Sheets
the grid-column css shorthand property specifies a grid item's size and location within a grid column by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the inline-start and inline-
end edge of its grid area.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: grid-column-
end grid-column-start syntax this property is specified as one or two <grid-line> values.
...And 7 more matches
grid-row - CSS: Cascading Style Sheets
the grid-row css shorthand property specifies a grid item’s size and location within the grid row by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the inline-start and inline-
end edge of its grid area.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if two <grid-line> values are specified, the grid-row-start longhand is set to the value before the slash, and the grid-row-
end longhand is set to the value after the slash.
...And 7 more matches
repeating-radial-gradient() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...thus, the position of each
ending color stop coincides with a starting color stop; if the color values are different, this will result in a sharp visual transition, which can be mitigated by repeating the first color as the last color.
... <extent-keyword> a keyword describing how big the
ending shape must be.
...And 7 more matches
transition-timing-function - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ transition-timing-function: ease; transition-timing-function: ease-in; transition-timing-function: ease-out; transition-timing-function: ease-in-out; transition-timing-function: linear; transition-timing-function: step-start; transition-timing-function: step-
end; /* function values */ transition-timing-function: steps(4, jump-
end); transition-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1); /* steps function keywords */ transition-timing-function: steps(4, jump-start); transition-timing-function: steps(10, jump-
end); transition-timing-function: steps(20, jump-none); transition-timing-function: steps(5, jump-both); transition-timing-function: steps(6,...
... start); transition-timing-function: steps(8,
end); /* multiple timing functions */ transition-timing-function: ease, step-start, cubic-bezier(0.1, 0.7, 1.0, 0.1); /* global values */ transition-timing-function: inherit; transition-timing-function: initial; transition-timing-function: unset; values <timing-function> each <timing-function> represents the timing function to link to the corresponding property to transition, as defined in transition-property.
...And 7 more matches
Date and time formats used in HTML - HTML: Hypertext Markup Language
year numbers in order to simplify the basic format used for date strings in html, the specification requires that all years be given using the modern (or proleptic) gregorian cal
endar.
... while user interfaces may allow entry of dates using other cal
endars, the underlying value always uses the gregorian cal
endar.
... while the gregorian cal
endar wasn't created until the year 1582 (replacing the similar julian cal
endar), for html's purposes, the gregorian cal
endar is ext
ended back to the year 1 c.e.
...And 7 more matches
<a>: The Anchor element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...when the link is followed, the browser will s
end post requests with the body ping to the urls.
... referrerpolicy how much of the referrer to s
end when following the link.
...And 7 more matches
<input type="checkbox"> - HTML: Hypertext Markup Language
<input> elements of type checkbox are r
endered by default as boxes that are checked (ticked) when activated, like you might see in an official government paper form.
... the exact appearance dep
ends upon the operating system configuration under which the browser is running.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 7 more matches
<input type="datetime-local"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the control is int
ended to simply represent a local date and time, not necessarily the user's local date and time.
... dep
ending on what browser you are using, you might find that times outside the specified values might not be selectable in the time picker (e.g.
...And 7 more matches
<input type="submit"> - HTML: Hypertext Markup Language
<input> elements of type submit are r
endered as buttons.
... <input type="submit" value="s
end request"> value a domstring used as the button's label events click supported common attributes type and value idl attributes value methods none value an <input type="submit"> element's value attribute contains a domstring which is displayed as the button's label.
... <input type="submit" value="s
end request"> if you don't specify a value, the button will have a default label, chosen by the user agent.
...And 7 more matches
<link>: The External Resource Link element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... other usage notes: a <link> element can occur either in the <head> or <body> element, dep
ending on whether it has a link type that is body-ok.
...without s
ending the origin http header), preventing its non-tainted usage.
...And 7 more matches
<td>: The Table Data Cell element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the
end tag may be omitted, if it is immediately followed by a <th> or <td> element or if there are no more data in its parent element.
... implicit aria role cell if a desc
endant of a <table> element permitted aria roles any dom interface htmltabledatacellelement attributes this element includes the global attributes.
...And 7 more matches
Global attributes - HTML: Hypertext Markup Language
the event handler attributes: onabort, onautocomplete, onautocompleteerror, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncuechange, ondblclick, ondrag, ondrag
end, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, on
ended, onerror, onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset,...
... onresize, onscroll, onseeked, onseeking, onselect, onshow, onsort, onstalled, onsubmit, onsusp
end, ontimeupdate, ontoggle, onvolumechange, onwaiting.
...the browser won't r
ender such elements.
...And 7 more matches
Compression in HTTP - HTTP
compression happens at three different levels: first some file formats are compressed with specific optimized methods, then general encryption can happen at the http level (the resource is transmitted compressed from
end to
end), and finally compression can be defined at the connection level, between two nodes of an http connection.
...for images, an image generated by a tool could be not optimized enough for the web; it is recomm
ended to use tools that will compress as much as possible with the required quality.
...
end-to-
end compression for compression,
end-to-
end compression is where the largest performance improvements of web sites reside.
...And 7 more matches
HTTP conditional requests - HTTP
principles http conditional requests are requests that are executed differently, dep
ending on the value of specific headers.
... the different behaviors are defined by the method of the request used, and by the set of headers used for a precondition: for safe methods, like get, which usually tries to fetch a document, the conditional request can be used to s
end back the document, if relevant only.
... comparing versions of the same resource is a bit tricky: dep
ending on the context, there are two kinds of equality checks: strong validation is used when byte to byte identity is expected, for example when resuming a download.
...And 7 more matches
A typical HTTP session - HTTP
the client s
ends its request, and waits for the answer.
... the server processes the request, s
ending back its answer, providing a status code and appropriate data.
... note: the client-server model does not allow the server to s
end data to the client without an explicit request for it.
...And 7 more matches
A re-introduction to JavaScript (JS tutorial) - JavaScript
javascript was created in 1995 by br
endan eich while he was an engineer at netscape.
... let a; let name = 'simon'; the following is an example of scope with a variable declared with let: // myletvariable is *not* visible out here for (let myletvariable = 0; myletvariable < 5; myletvariable++) { // myletvariable is only visible in here } // myletvariable is *not* visible out here const allows you to declare variables whose values are never int
ended to change.
...these ext
end out to x = x operator y.
...And 7 more matches
Details of the object model - JavaScript
it adds the reports property (whose value defaults to an empty array, int
ended to have an array of employee objects as its value).
...it adds the projects property (whose value defaults to an empty array, int
ended to have an array of strings as its value).
...how you choose to define them dep
ends largely on what you want to be able to do in your application.
...And 7 more matches
Inheritance and the prototype chain - JavaScript
when trying to access a property of an object, the property will not only be sought on the object but on the prototype of the object, the prototype of the prototype, and so on until either a property with a matching name is found or the
end of the prototype chain is reached.
...// this is the
end of the prototype chain, as null, // by definition, has no [[prototype]].
...for the best learning experience, it is highly recomm
ended that you open a console, navigate to the "console" tab, copy-and-paste in the below javascript code, and run it by pressing the enter/return key.
...And 7 more matches
Promise - JavaScript
a promise is in one of these states: p
ending: initial state, neither fulfilled nor rejected.
... a p
ending promise can either be fulfilled with a value, or rejected with a reason (error).
... note: a promise is said to be settled if it is either fulfilled or rejected, but not p
ending.
...And 7 more matches
String.prototype.slice() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.slice(beginindex[,
endindex]) parameters beginindex the zero-based index at which to begin extraction.
...
endindex optional the zero-based index before which to
end extraction.
...And 7 more matches
WebAssembly.Module - JavaScript
examples s
ending a compiled module to a worker the following example (see our index-compile.html demo on github, and view it live also) compiles the loaded simple.wasm byte code using the webassembly.compilestreaming() method and then s
ends the resulting module instance to a worker using postmessage().
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...e for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsmodulechrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
...And 7 more matches
Lexical grammar - JavaScript
ecmascript also defines certain keywords and literals and has rules for automatic insertion of semicolons to
end statements.
... u+200d zero width joiner <zwj> placed between characters that would not normally be connected in order to cause the characters to be r
endered using their connected form in certain languages (wikipedia).
...notice that we don't need to
end the comment until we're done.
...And 7 more matches
Media container formats (file types) - Web media technologies
3gp the 3gp or 3gpp media container is used to encapsulate audio and/or video that is specifically int
ended for transmission over cellular networks for consumption on mobile devices.
... base 3gp media mime types audio video audio/3gpp video/3gpp audio/3gpp2 video/3gpp2 audio/3gp2 video/3gp2 these mime types are the fundamental types for the 3gp media container; other types may be used dep
ending on the specific codec or codecs in use; in addition, you can add the codecs parameter to the mime type string to indicate which codecs are used for the audio and/or video tracks, and to optionally provide details about the profile, level, and/or other codec configuration specifics.
... adts audio data transport stream (adts) is a container format specified by mpeg-4 part 3 for audio data, int
ended to be used for streamed audio, such as for internet radio.
...And 7 more matches
edgeMode - SVG: Scalable Vector Graphics
the edgemode attribute determines how to ext
end the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image.
... two elements are using this attribute: <feconvolvematrix> and <fegaussianblur> feconvolvematrix for <feconvolvematrix>, edgemode determines how to ext
end the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image.
... value duplicate | wrap | none default value duplicate animatable yes duplicate this value indicates that the input image is ext
ended along each of its borders as necessary by duplicating the color values at the given edge of the input image.
...And 7 more matches
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(), app
enditem(), 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 least for <image>; bug 1240357) r
endering model change notes svg root and <foreignobject> not overflow...
...known animval attribute alias of baseval implementation status unknown dataset attribute for svgelement implementation status unknown moved pathlength attribute and gettotallength() and getpointatlength() methods from svgpathelement to svggeometryelement implemented (bug 1239100) document structure change notes svgsvgelement.susp
endredraw(), svgsvgelement.unsusp
endredraw(), and svgsvgelement.unsusp
endredrawall() deprecated turned into no-ops (bug 734079) externalresourcesrequired attribute removed implementation status unknown auto value for width and height in <image> implementation status unknown referencing entire document with <use> implementation status unknown lang attrib...
...removed svgsvgelement.currentview was never implemented, svgsvgelement.usecurrentview not removed yet (bug 1174097) svgunknownelement not implemented (bug 1239218) lang attribute without namespace implemented (bug 721920) svgsvgelement.viewport removed never implemented xml:base attribute removed implementation status unknown reorder desc
endent elements of <switch> having systemlanguage attribute according to allowreorder smil attribute implementation status unknown made <tspan> and <textpath> graphics elements implementation status unknown allow x, y, width, and height on <symbol> implementation status unknown made <use> element shadow trees consistent with shadow dom spec implementation status...
...And 7 more matches
Connecting to Remote Content - Archive of obsolete content
le.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.s
end(null); in this example we demonstrate how to make a xmlhttprequest call in asynchronous mode.
... request.overridemimetype("text/xml"); // do this before s
ending the request!
... the open method takes two required parameters: the http request method and the url to s
end the request.
...And 6 more matches
The Essentials of an Extension - Archive of obsolete content
testing your add-ons with every firefox version is always recomm
ended, though.
... skin and locale packages have a third value to specify what locale or what skin they are ext
ending.
...an overlay ext
ends an existing window, adding new elements to it or replacing some of the elements in it.
...And 6 more matches
User Notifications and Alerts - Archive of obsolete content
this kind on notification is very easy to implement, it doesn't interrupt the user and is easy to read and dismiss, so it is our recomm
ended way of displaying alerts and notifications.
... notification boxes are very easy to create, and are very customizable: let nb = gbrowser.getnotificationbox(); let acceptbutton = new object(); let declinebutton = new object(); let message = this._bundle.getstring("xulschoolhello.fri
endmessage.label"); let that = this; acceptbutton.label = this._bundle.getstring("xulschoolhello.acceptbutton.label"); acceptbutton.accesskey = this._bundle.getstring("xulschoolhello.acceptbutton.accesskey"); acceptbutton.popup = null; acceptbutton.callback = function() { that.acceptrequest(); }; // similarly for decline button.
... nb.app
endnotification( message, "xulschoolhello-fri
end-notification", "chrome://xulschoolhello/skin/fri
end-notification.png", nb.priority_info_high, [ acceptbutton, declinebutton ]); all browser tabs have a notification box by default, so you don't need to do any overlaying.
...And 6 more matches
SQLite Templates - Archive of obsolete content
(if you int
end to set it by script, you must set datasources in the xul to rdf:null).
... <listbox datasources="profile:userdata.sqlite" ref="*" querytype="storage"> <template> <query> select name from myfri
ends </query> <action> <listitem uri="?" label="?name"/> </action> </template> </listbox> the query returns the list of values from the 'name' column in the table 'myfri
ends'.
... <vbox datasources="profile:userdata.sqlite" ref="*" querytype="storage"> <template> <query> select name, email from myfri
ends where age >= 30 </query> <action> <hbox uri="?"> <label value="?name"/> <label value="?email"/> </hbox> </action> </template> </vbox> this template displays the results of two columns.
...And 6 more matches
Textbox (XPFE autocomplete) - Archive of obsolete content
properties accessible, alwaysopenpopup, autofill, autofillaftermatch, completedefaultindex, crop, disableautocomplete, disabled, editable, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputfield, issearching, iswaiting, label, maxlength, maxrows, minresultsforpopup, nomatch, open, popup, popupopen, resultspopup, searchcount, searchparam, searchsessions, selection
end, selectionstart, sessioncount, showcommentcolumn, showpopup, size, tabindex, tabscrolling, textlength, textvalue, timeout, type, useraction, value methods addsession, clearresults, getdefaultsession, getresultat, getresultcount, getresultvalueat, getsession, getsessionbyname, getsessionresultat, getsessionstatusat, getsessionvalueat, removesession, select, setselectionrange, syncs...
... autofillaftermatch obsolete since gecko 1.9.1 type: boolean if set to true, the entire text of the best match will be displayed at the
end of the input.
... disablehistory obsolete since gecko 2.0 type: boolean note: applies to: thunderbird and seamonkeyif false, an arrow button will appear on the
end of the textbox which will open a dropdown menu of all available results.
...And 6 more matches
Accesskey display rules - Archive of obsolete content
if a label doesn't have the character, xul elements app
end the accesskey character with parentheses.
... this document calls the app
ended text "accesskey text".
... always app
ends accesskey text the basic rules are enough for western locales.
...And 6 more matches
XUL Template Primer - Bindings - Archive of obsolete content
overview this document expands on the xul template primer by introducing the <bindings> element in the ext
ended xul template syntax.
... <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin" type="text/css"?> <window xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" align="vertical"> <vbox datasources="fri
ends.rdf" ref="urn:root"> <template> <rule> <conditions> <content uri="?uri"/> <triple subject="?uri" predicate="http://home.netscape.com/nc-rdf#fri
ends" object="?fri
ends"/> <member container="?fri
ends" child="?fri
end"/> <triple subject="?fri
end" predicate="http://home.netscape.com/nc-rdf#name...
..." object="?name"/> </conditions> <bindings> <binding subject="?fri
end" predicate="http://home.netscape.com/nc-rdf#address" object="?addr"/> <binding subject="?addr" predicate="http://home.netscape.com/nc-rdf#street" object="?street"/> </bindings> <action> <hbox uri="?fri
end"> <label value="?name"/> <label value="?street"/> </hbox> </action> </rule> </template> </vbox> </window> the xul template primer covers the <conditions> and <action> elements, so we won't discuss those here.
...And 6 more matches
menulist - Archive of obsolete content
attributes accesskey, crop, disableautoselect, disabled, editable, focused, image, label, oncommand, open, preference, readonly, sizetopopup, tabindex, value properties accessibletype, crop, description, disableautoselect, disabled, editable, editor, image, inputfield, itemcount, label, menuboxobject, menupopup, open, selectedindex, selecteditem, tabindex, value methods app
enditem, contains, getindexofitem, getitematindex, insertitemat, removeallitems, removeitemat, select examples <menulist> <menupopup> <menuitem label="option 1" value="1"/> <menuitem label="option 2" value="2"/> <menuitem label="option 3" value="3"/> <menuitem label="option 4" value="4"/> </menupopup> </menulist> attributes accesskey type: character this should be...
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 6 more matches
tab - Archive of obsolete content
attributes accesskey, afterselected, beforeselected, command, crop, disabled, first-tab, image, label, last-tab, linkedpanel, oncommand, p
ending, pinned, selected, tabindex, unread, validate, value properties accesskey, accessibletype, command, control, crop, disabled, image, label, linkedpanel, selected, tabindex, value examples (example needed) attributes accesskey type: character this should be set to a character that is used as a shortcut key.
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 6 more matches
tooltip - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 6 more matches
Theme changes in Firefox 2 - Archive of obsolete content
browser/go-rtl.png new file; go icon to use if it's positioned at the left
end of the url field.
...the
ends of the bar are now skinned separately.
... browser/search-go-rtl.png new file; the go button displayed when it's at the left
end of the search bar.
...And 6 more matches
Game monetization - Game development
if your work is a serious
endeavour on the path to becoming an indep
endent game developer able to make a living, read on and see what your options are.
... how much you charge for your game dep
ends on the market, quality of your game and a lot of other small factors.
... in-app purchases instead of having people pay for your game up front, you can offer a free game with in-app purchases (iaps.) in this case the game can be acquired without sp
ending a dime — give the game to the players, but offer in-game currency, bonuses or benefits for real money.
...And 6 more matches
Audio for Web games - Game development
there are a couple of differences between desktop and mobile browsers that may have caused browser v
endors to make choices that can make web audio difficult for game developers to work with.
... to prime audio like this we want to play a part of it; for this reason it is useful to include a moment of silence at the
end of your audio sample.
...you may want music to change dep
ending on whether you are trying to build suspense or encourage the player in some way.
...And 6 more matches
2D maze game with device orientation - Game development
basic javascript knowledge is recomm
ended to get the most from this tutorial.
... example game by the
end of the tutorial you will have a fully functional demo game: cyber orb.
...the folder structure is quite straightforward: the starting point is the index.html file where we initialize the framework and set up an <canvas> to r
ender the game on.
...And 6 more matches
Flexbox - Learn web development
as rows across the page, or columns down the page.) the start and
end of this axis are called the main start and main
end.
... the cross axis is the axis running perp
endicular to the direction the flex items are being laid out in.
... the start and
end of this axis are called the cross start and cross
end.
...And 6 more matches
Multiple-column layout - Learn web development
susp
endisse ac imperdiet turpis.
...ut id ornare felis, eget fermentum sapien.</p> <p>nam vulputate diam nec tempor bib
endum.
...susp
endisse ac imperdiet turpis.
...And 6 more matches
HTML forms in legacy browsers - Learn web development
there are other resources that can be amazingly helpful: browser v
endor documentation mozilla: you're in the right place, just browse mdn microsoft: internet explorer standards support documentation webkit: because there are several different editions of this engine, things are a little trickier.
... graceful degradation is web developer's best fri
end graceful degradation and progressive enhancement are development patterns that allow you to build great stuff by supporting a wide range of browsers at the same time.
... input { /* this rule turns off the default r
endering for the input types that have a border, including buttons defined with an input element */ border: 1px solid #ccc; } input[type="button"] { /* this does not restore the default r
endering */ border: none; } input[type="button"] { /* these don't either!
...And 6 more matches
JavaScript basics - Learn web development
it was invented by br
endan eich (co-founder of the mozilla project), the mozilla foundation, and the mozilla corporation.
... javascript is versatile and beginner-fri
endly.
...placing javascript near the bottom of an html page is one way to accommodate this dep
endency.
...And 6 more matches
Tips for authoring fast-loading HTML pages - Learn web development
dep
ending on a browser's cache settings, it may s
end a request with the if-modified-since header for each referenced file, asking whether the file has been modified since the last time it was downloaded.
... too much time spent querying the last modified time of the referenced files can delay the initial display of the web page, since the browser must check the modification time for each of these files, before r
endering the page.
...most web servers automatically app
end the last-modified header to static pages (e.g.
...And 6 more matches
Build your own function - Learn web development
we'd recomm
end you doing this exercise in a modern browser like firefox, opera, or chrome.
... finally, add the following code inside the curly braces: const html = document.queryselector('html'); const panel = document.createelement('div'); panel.setattribute('class', 'msgbox'); html.app
endchild(panel); const msg = document.createelement('p'); msg.textcontent = 'this is a message box'; panel.app
endchild(msg); const closebtn = document.createelement('button'); closebtn.textcontent = 'x'; panel.app
endchild(closebtn); closebtn.onclick = function() { panel.parentnode.removechild(panel); } this is quite a lot of code to go through, so we'll walk you through it bit by bit.
... finally, we call a dom function called node.app
endchild() on the html constant we stored earlier, which nests one element inside the other as a child of it.
...And 6 more matches
Introduction to web APIs - Learn web development
angular and ember) t
end to be packages of html, css, javascript, and other technologies that you install and then use to write an entire web application from scratch.
... the twilio api, which provides a framework for building voice and video call functionality into your app, s
ending sms/mms from your apps, and more.
...ent.queryselector('.volume'); const audiosource = audioctx.createmediaelementsource(audioelement); next up we include a couple of event handlers that serve to toggle between play and pause when the button is pressed and reset the display back to the beginning when the song has finished playing: // play/pause audio playbtn.addeventlistener('click', function() { // check if context is in susp
ended state (autoplay policy) if (audioctx.state === 'susp
ended') { audioctx.resume(); } // if track is stopped, play it if (this.getattribute('class') === 'paused') { audioelement.play(); this.setattribute('class', 'playing'); this.textcontent = 'pause' // if track is playing, stop it } else if (this.getattribute('class') === 'playing') { au...
...And 6 more matches
A first splash into JavaScript - Learn web development
i.textcontent = 'last guess was too high!'; } } guesscount++; guessfield.value = ''; } guesssubmit.addeventlistener('click', checkguess); function setgameover() { guessfield.disabled = true; guesssubmit.disabled = true; resetbutton = document.createelement('button'); resetbutton.textcontent = 'start new game'; document.body.app
end(resetbutton); resetbutton.addeventlistener('click', resetgame); } function resetgame() { guesscount = 1; const resetparas = document.queryselectorall('.resultparas p'); for(let i = 0 ; i < resetparas.length ; i++) { resetparas[i].textcontent = ''; } resetbutton.parentnode.removechild(resetbutton); guessfield.disabled = false; guess...
...the game will
end once the player guesses correctly, or once they run out of turns.
... when the game
ends, the player should be given an option to start playing again.
...And 6 more matches
Website security - Learn web development
because the injected code comes to the browser from the site, the code is trusted and can do things like s
end the user's site authorization cookie to the attacker.
...when the comments are displayed, the script is executed and can s
end to the attacker the information required to access the user's account.
... while the data from post or get requests is the most common source of xss vulnerabilities, any data from the browser is potentially vulnerable, such as cookie data r
endered by the browser, or user files that are uploaded and displayed.
...And 6 more matches
Old Thunderbird build
8 gb or more is recomm
ended.
... build prerequisites dep
ending on your operating system you will need to carry out a different process to prepare your machine.
... get the latest source code from mozilla's comm-central mercurial code repository: hg clone https://hg.mozilla.org/comm-central then, get all the repositories it dep
ends on.
...And 6 more matches
Eclipse CDT
therefore, it is not recomm
ended for use if your machine only has 4 gb of ram.
...this plugin is int
ended mainly for managed projects but we use an unmanaged project for mozilla (since it has its own build system).
...since it's a pain to install them and keep them up to date we do not recomm
end getting eclipse this way.) increase eclipse's memory limits!
...And 6 more matches
Addon
l() void canceluninstall() boolean hasresource(in string path) nsiuri getresourceuri(in string path) void getdatadirectory(in datadirectorycallback callback) required properties attribute type description appdisabled read only boolean true if this add-on cannot be used in the application based on version compatibility, dep
endencies, and blocklisting.
... foreigninstall read only boolean true or false dep
ending on whether the add-on is a third party add-on installation or not.
... iscompatible read only boolean true or false dep
ending on whether the add-on is compatible with the current application version and platform version.
...And 6 more matches
AddonManager
p
ending operations constant description p
ending_none no operations are p
ending.
... p
ending_enable this add-on will be enabled after the application restarts.
... p
ending_disable this add-on will be disabled after the application restarts.
...And 6 more matches
Localizing with Koala
due to a bug in koala (bug 21930), it is recomm
ended that you don't choose a path that contains spaces (like c:\documents and settings\user\...).
...4 files (+9 heads) updating working directory 40357 files updated, 0 files merged, 0 files removed, 0 files unresolved configure the locale locale id: x-testing (put your locale's code) version: 3.6 location: choose the folder where you want to keep the localized files or leave empty for now check "mercurial" if you wish to use mercurial to keep the revision history of your files (very recomm
ended) existing localizations: url: if you're editing an existing localization or you already have a repository set up (either on hg.mozilla.org or bitbucket), type the url of the remote repository, e.g.
...it is still recomm
ended to use mercurial locally to version your local files.
...And 6 more matches
Fonts for Mozilla 2.0's MathML engine
furthermore, in accordance with the w3c css2 recomm
endation on fonts, authors can specify an ordered list of particular fonts which they prefer (using the font-family property of css), with the assurance that mozilla's font engine will hunt for alternate fonts whenever their specified fonts are not found on a particular user's system.
...in general, if the necessary glyphs are not available on the system then mozilla tries to stretch symbols using scale transforms, but that may result in a less pleasant r
endering.
... to see mathml as int
ended, you need sufficient font support, which may mean installing some fonts.
...And 6 more matches
Using the viewport meta tag to control layout on mobile browsers
this is often not the same size as the r
endered page, in which case the browser provides scrollbars for the user to scroll around and access all the content.
...mobiles) r
ender pages in a virtual window or viewport, which is usually wider than the screen, and then shrink the r
endered result down so it can all be seen at once.
...for example, if a mobile screen has a width of 640px, pages might be r
endered with a virtual viewport of 980px, and then it will be shrunk down to fit into the 640px space.
...And 6 more matches
NSS tools : certutil
the format of the validity-time argument is yymmddhhmmss[+hhmm|-hhmm|z], which allows offsets to be set relative to the validity
end time.
...when specifying an explicit time, use a z at the
end of the term, yymmddhhmmssz, to close it.
...dep
ending on the command option, an input file can be a specific certificate, a certificate request file, or a batch file of commands.
...And 6 more matches
Gecko events
- this is a layout occurance and is thus asynchronous is supported: yes event_asynch_hide an object is hidden -- this is a layout occurance and is thus asynchronous is supported: yes event_asynch_significant_change an object had a significant layout change which could affect the type of accessible object -- this is a layout occurance and is thus asynchronous is supported: yes event_active_dec
endent_changed the active desc
endant of a component has changed.
... the active desc
endant is used in objects with transient children.
...server applications s
end this event when a user needs to know that a user interface element has changed.
...And 6 more matches
XPCOM glue
compiling or linking against xpcom headers there are three ways to compile/link against xpcom headers/libraries: frozen linkage: dep
endent glue (dep
endent on xpcom.dll) xpcom modules, i.e.
... extension or xulrunner application components, should use the dep
endent glue.
... code which wishes to use only frozen symbols but can tolerate a load-time dep
endency on xpcom.dll should link against xpcomglue_s.lib and xpcom.lib.
...And 6 more matches
Starting WebLock
this interface allows you to ext
end and override nsifile objects registered with the directory service.
...to modify this nsifile so that it points to the file, you must call the app
end method of the nsifile.
... app
end adds the input string to the path already specified in the nsifile.
...And 6 more matches
NS ConvertASCIItoUTF16 external
class declaration method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find ...
... rfind findchar rfindchar app
endint tointeger base classes nsstring_external data members no public members.
... nsastring& operator=(prunichar) - source parameters prunichar achar adopt void adopt(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
NS ConvertUTF8toUTF16 external
class declaration method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find ...
... rfind findchar rfindchar app
endint tointeger base classes nsstring_external data members no public members.
... nsastring& operator=(prunichar) - source parameters prunichar achar adopt void adopt(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
PromiseFlatString (External)
class declaration method overview get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find rfind ...
...findchar rfindchar app
endint tointeger base classes nsstringcontainer data members no public members.
... nsastring& operator=(prunichar) - source parameters prunichar achar adopt void adopt(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
nsACString (External)
acstring_(external)"> <area alt="" coords="980,102,1121,150" href="http://developer.mozilla.org/en/nscstringcontainer_(external)" shape="rect" title="nscstringcontainer_(external)"> <area alt="" coords="571,198,707,246" href="http://developer.mozilla.org/en/nscstring_external" shape="rect" title="nscstring_external"> <area alt="" coords="731,198,955,246" href="http://developer.mozilla.org/en/nsdep
endentcsubstring_external" shape="rect" title="nsdep
endentcsubstring_external"> <area alt="" coords="979,198,1123,246" href="http://developer.mozilla.org/en/promiseflatcstring_(external)" shape="rect" title="promiseflatcstring_(external)"> <area alt="" coords="1147,198,1259,246" href="http://developer.mozilla.org/en/nscautostring_(external)" shape="rect" title="nscautostring_(external)"> <area alt=""...
... coords="5,294,208,342" href="http://developer.mozilla.org/en/nsdep
endentcstring_external" shape="rect" title="nsdep
endentcstring_external"> <area alt="" coords="232,294,475,342" href="http://developer.mozilla.org/en/ns_convertutf16toutf8_external" shape="rect" title="ns_convertutf16toutf8_external"> <area alt="" coords="499,294,779,342" href="http://developer.mozilla.org/en/ns_lossyconvertutf16toascii_external" shape="rect" title="ns_lossyconvertutf16toascii_external"> <area alt="" coords="803,294,925,342" href="http://developer.mozilla.org/en/nsliteralcstring_(external)" shape="rect" title="nsliteralcstring_(external)"></map> method overview beginreading
endreading charat operator[] first beginwriting
endwriting setleng...
...th length isempty setisvoid isvoid assign assignliteral operator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar rfindchar app
endint tointeger data members no public members.
...And 6 more matches
nsAutoString (External)
class declaration method overview get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find rfind ...
...findchar rfindchar app
endint tointeger base classes nsstringcontainer data members no public members.
... nsastring& operator=(prunichar) - source parameters prunichar achar adopt void adopt(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
nsStringContainer (External)
class declaration method overview beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral operator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral find rfind findchar rfindchar ...
... app
endint tointeger base classes nsastring data members no public members.
... methods beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
nsString external
class declaration basic strings method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral lowercaseequalsliteral ...
... find rfind findchar rfindchar app
endint tointeger base classes nsstringcontainer data members no public members.
... nsastring& operator=(prunichar) - source parameters prunichar achar adopt void adopt(const prunichar*, pruint32) - source parameters prunichar* adata pruint32 alength beginreading pruint32 beginreading(const prunichar**, const prunichar**) const - source returns the length, beginning, and
end of a string in one operation.
...And 6 more matches
imgIEncoder
ncinputstream last changed in gecko 1.9 (firefox 3) method overview void addimageframe( [array, size_is(length), const] in pruint8 data, in unsigned long length, in pruint32 width, in pruint32 height, in pruint32 stride, in pruint32 frameformat, in astring frameoptions); void encodeclipboardimage(in nsiclipboardimage aclipboardimage, out nsifile aimagefile); obsolete since gecko 1.9 void
endimageencode(); void initfromdata([array, size_is(length), const] in pruint8 data, in unsigned long length, in pruint32 width, in pruint32 height, in pruint32 stride, in pruint32 inputformat, in astring outputoptions); void startimageencode(in pruint32 width, in pruint32 height, in pruint32 inputformat, in astring outputoptions); constants possible values for input format (note that not a...
...ll image formats support saving alpha channels): constant value description input_format_rgb 0 input is rgb each pixel is represented by three bytes: r, g, and b (in that order, regardless of host
endianness) input_format_rgba 1 input is rgb each pixel is represented by four bytes: r, g, and b (in that order, regardless of host
endianness).
... post-multiplied alpha us used (for example 50% transparent red is 0xff000080) input_format_hostargb 2 input is host-
endian argb: on big-
endian machines each pixel is therefore argb, and for little-
endian machiens (intel) each pixel is bgra (this is used by canvas to match it's internal representation) pre-multiplied alpha is used (that is, 50% transparent red is 0x80800000, not 0x80ff0000) possible values for outputoptions.
...And 6 more matches
nsIAccessibleEditableText
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void copytext(in long startpos, in long
endpos); void cuttext(in long startpos, in long
endpos); void deletetext(in long startpos, in long
endpos); void inserttext(in astring text, in long position); void pastetext(in long position); void setattributes(in long startpos, in long
endpos, in nsisupports attributes); unimplemented void settextcontents(in astring text); attributes ...
... void copytext( in long startpos, in long
endpos ); parameters startpos start offset of the text to be copied into the clipboard.
...
endpos
end offset of the text to be copied into the clipboard.
...And 6 more matches
nsIInputStream
a blocking input stream may susp
end the calling thread in order to satisfy a call to close(), available(), read(), or readsegments().
...if a stream is at
end-of-file, but not closed, then this method returns 0 bytes available.
... note: some nsiinputstream implementations automatically close() when
end-of-file is reached; others do not.
...And 6 more matches
nsIScriptableIO
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
...if you need to select a file in a subdirectory, you should get a reference to the directory, then use the file's app
end() method to navigate through the directory hierarchy to the file you really want.
... this properly allows platform-indep
endent path construction.
...And 6 more matches
nsITransactionListener
inherits from: nsisupports last changed in gecko 1.7 method overview void didbeginbatch(in nsitransactionmanager amanager, in nsresult aresult); void diddo(in nsitransactionmanager amanager, in nsitransaction atransaction, in nsresult adoresult); void did
endbatch(in nsitransactionmanager amanager, in nsresult aresult); void didmerge(in nsitransactionmanager amanager, in nsitransaction atoptransaction, in nsitransaction atransactiontomerge, in boolean adidmerge, in nsresult amergeresult); void didredo(in nsitransactionmanager amanager, in nsitransaction atransaction, in nsresult aredoresult); void didundo(in nsitransactionmanager amanager, in ns...
...itransaction atransaction, in nsresult aundoresult); boolean willbeginbatch(in nsitransactionmanager amanager); boolean willdo(in nsitransactionmanager amanager, in nsitransaction atransaction); boolean will
endbatch(in nsitransactionmanager amanager); boolean willmerge(in nsitransactionmanager amanager, in nsitransaction atoptransaction, in nsitransaction atransactiontomerge); boolean willredo(in nsitransactionmanager amanager, in nsitransaction atransaction); boolean willundo(in nsitransactionmanager amanager, in nsitransaction atransaction); methods didbeginbatch() called after a nsitransactionmanager begins a batch.
... did
endbatch() called after a nsitransactionmanager
ends a batch.
...And 6 more matches
nsIWebSocketChannel
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 s
endbinarymsg(in acstring amsg); void s
endmsg(in autf8string amsg); attributes attribute type description extensions acstring sec-websocket-extensions response header value.
... 1001 close_going_away the
endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.
... 1002 close_protocol_error the
endpoint is terminating the connection due to a protocol error.
...And 6 more matches
Troubleshooting XPCOM components registration
if your component requires any external libraries, you may need to read using dep
endent libraries in extension components make sure you are compiling against the right version.
... if you are testing a build from your linux distribution (or other v
endor-supplied build), look for -dev packages from them.
... windows-specific hints use dep
endency walker to check that your dep
endent libraries are loaded correctly.
...And 6 more matches
Using the Beacon API - Web APIs
navigator.s
endbeacon() the beacon api's navigator.s
endbeacon() method s
ends a beacon request to the server in the global browsing context.
... the method takes two arguments: the url and the data to s
end.
...the handler calls s
endbeacon() with the current url.
...And 6 more matches
BlobBuilder - Web APIs
just create a blobbuilder and app
end chunks of data to it by calling the app
end() method.
... method overview void app
end(in arraybuffer data); void app
end(in blob data); void app
end(in string data, [optional] in string
endings); blob getblob([optional] in domstring contenttype); file getfile(in domstring name, [optional] in domstring contenttype); methods app
end() app
ends the contents of the specified javascript object to the blob being built.
... if the value you specify isn't a blob, arraybuffer, or string, the value is coerced to a string before being app
ended to the blob.
...And 6 more matches
console - Web APIs
to move back out a level, call group
end().
...to move back out a level, call group
end().
... console.group
end() exits the current inline group.
...And 6 more matches
CustomElementRegistry.define() - Web APIs
customized built-in element: these elements inherit from — and ext
end — built-in html elements.
...one option is currently supported: ext
ends: string specifying the name of a built-in element to ext
end.
... exceptions exception description notsupportederror the customelementregistry already contains an entry with the same name or the same constructor (or is otherwise already defined), or ext
ends is specified and it is a valid custom element name, or ext
ends is specified but the element it is trying to ext
end is an unknown element.
...And 6 more matches
Element.scrollHeight - Web APIs
duis aute irure dolor in repreh
enderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
... padding-bottom left top right bottom margin-top margin-bottom border-top border-bottom problems and solutions determine if an element has been totally scrolled the following equivalence returns true if an element is at the
end of its scroll, false if it isn't.
...praesent molestie, dolor ut eleif
end aliquam, mi ligula ultrices sapien, quis cursus neque dui nec risus.
...And 6 more matches
Element - Web APIs
element.getelementsbyclassname() returns a live htmlcollection that contains all desc
endants of the current element that possess the list of classes given in the parameter.
... element.getelementsbytagname() returns a live htmlcollection containing all desc
endant elements, of a particular tag name, from the current element.
... element.getelementsbytagnamens() returns a live htmlcollection containing all desc
endant elements, of a particular tag name and namespace, from the current element.
...And 6 more matches
FileSystemFileEntry - Web APIs
inside the success callback, event handlers are set up to handle the error error and write
end events.
... the text data is written to the file by creating a blob, app
ending text to it, and passing the blob to filewriter.write().
... fileentry.createwriter(function(filewriter) { filewriter.onwrite
end = function(e) { console.log('write completed.'); }; filewriter.onerror = function(e) { console.log('write failed: ' + e.tostring()); }; // create a new blob and write it to log.txt.
...And 6 more matches
Guide to the Fullscreen API - Web APIs
attempting to put an element which can't be displayed in fullscreen mode (or the parent or desc
endant of such an element) won't work.
... for the moment not all browsers are implementing the unprefixed version of the api (for v
endor agnostic access to the fullscreen api you can use fscreen).
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 6 more matches
HTMLElement - Web APIs
htmlelement.innertext represents the "r
endered" text content of a node and its desc
endants.
... toucheventhandlers.ontouch
end returns the event handling code for the touch
end event.
... htmlelement.click() s
ends a mouse click event to the element.
...And 6 more matches
HTMLImageElement - Web APIs
htmlimageelement.height an integer value that reflects the height html attribute, indicating the r
endered height of the image in css pixels.
...this is the height the image would be if it were r
endered at its natural full size.
...this is the width the image would be if it were r
endered at its natural full size.
...And 6 more matches
The HTML DOM API - Web APIs
buttonelement htmlcanvaselement htmldlistelement htmldataelement htmldatalistelement htmldetailselement htmldialogelement htmldirectoryelement htmldivelement htmlelement htmlembedelement htmlfieldsetelement htmlformelement htmlhrelement htmlheadelement htmlheadingelement htmlhtmlelement htmliframeelement htmlimageelement htmlinputelement htmllielement htmllabelelement htmlleg
endelement htmllinkelement htmlmapelement htmlmediaelement htmlmenuelement htmlmetaelement htmlmeterelement htmlmodelement htmlolistelement htmlobjectelement htmloptgroupelement htmloptionelement htmloutputelement htmlparagraphelement htmlparamelement htmlpictureelement htmlpreelement htmlprogresselement htmlquoteelement htmlscriptelement htmlselectelement htmlslotelement htmlso...
... canvasgradient canvaspattern canvasr
enderingcontext2d imagebitmap imagebitmapr
enderingcontext imagedata offscreencanvas offscreencanvasr
enderingcontext2d path2d textmetrics media interfaces the media interfaces provide html access to the contents of the media elements: <audio> and <video>.
... closeevent websocket server-sent events interfaces the eventsource interface represents the source which sent or is s
ending server-sent events.
...And 6 more matches
HTML Drag and Drop API - Web APIs
drag
end ondrag
end …a drag operation
ends (such as releasing a mouse button or hitting the esc key; see finishing a drag.) dragenter ondragenter …a dragged item enters a valid drop target.
...(see performing a drop.) note: neither dragstart nor drag
end events are fired when dragging a file into the browser from the os.
... function dragstart_handler(ev) { // add different types of drag data ev.datatransfer.setdata("text/plain", ev.target.innertext); ev.datatransfer.setdata("text/html", ev.target.outerhtml); ev.datatransfer.setdata("text/uri-list", ev.target.ownerdocument.location.href); } for a list of common data types used in drag-and-drop (such as text, html, links, and files), see recomm
ended drag types.
...And 6 more matches
IDBFactory.open() - Web APIs
the method returns an idbop
endbrequest object immediately, and performs the open operation asynchronously.
... syntax for the current standard: var idbop
endbrequest = indexeddb.open(name); var idbop
endbrequest = indexeddb.open(name, version); parameters name the name of the database.
... return value a idbop
endbrequest object on which subsequent events related to this request are fired.
...And 6 more matches
IDBKeyRange.bound() - Web APIs
the bounds can be open (that is, the bounds exclude the
endpoint values) or closed (that is, the bounds include the
endpoint values).
... loweropen optional indicates whether the lower bound excludes the
endpoint value.
... upperopen optional indicates whether the upper bound excludes the
endpoint value.
...And 6 more matches
NotificationEvent - Web APIs
this interface inherits from the ext
endableevent interface.
... methods inherits methods from its parent, ext
endableevent.
... ext
endableevent.waituntil() ext
ends the lifetime of the event.
...And 6 more matches
PerformanceEventTiming - Web APIs
auxclick beforeinput click composition
end compositionstart compositionupdate contextmenu dblclick drag
end dragenter dragleave dragover dragstart drop input keydown keypress keyup mousedown mouseenter mouseleave mouseout mouseover mouseup pointerover pointerenter pointerdown pointerup pointercancel pointerout pointerleave gotpointercapture lostpointercapture touchstart touch
end touchcancel properties performanceeventtiming.processingstart returns the time at which event dispatch started.
... performanceeventtiming.processing
end returns the time at which the event dispatch
ended.
...use the api for all events: const observer = new performanceobserver(function(list) { const perfentries = list.getentries().foreach(entry => { // full duration const inputduration = entry.duration; // input delay (before processing event) const inputdelay = entry.processingstart - entry.starttime; // synchronous event processing time (between start and
end dispatch).
...And 6 more matches
PerformanceResourceTiming - 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..
... additionally, the interface ext
ends 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.
... properties this interface ext
ends the following performanceentry properties for resource performance entry types by qualifying and constraining them as follows: performanceentry.entrytyperead only returns "resource".
...And 6 more matches
PerformanceTiming - Web APIs
performancetiming.unloadevent
end read only when the unload event handler finishes.
... performancetiming.redirect
end read only when the last http redirect is completed, that is when the last byte of the http response has been received.
... performancetiming.domainlookup
end read only when the domain lookup is finished.
...And 6 more matches
SVGAnimationElement - Web APIs
if the simple duration is undefined (e.g., the
end time is indefinite), then a domexception with code not_supported_err is raised.
... svganimationelement.
endelement() creates an
end instance time for the current time.
... the new instance time is added to the
end instance times list.
...And 6 more matches
SVGTransformList - Web APIs
lement 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 app
enditem(in svgtransform newitem) svgtransform createsvgtransformfrommatrix(in svgmatrix) svgtransform consolidate() properties readonly unsigned long numberofitems readonly unsigned long length normative document svg 1.1 (2nd edition) properties name type description numberofitems unsigned lo...
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in svgtransform newitem) svgtransform inserts a new item at the
end of the list.
...And 6 more matches
SpeechRecognition - Web APIs
audio
end fired when the user agent has finished capturing audio.
... also available via the onaudio
end property.
...
end fired when the speech recognition service has disconnected.
...And 6 more matches
Writing WebSocket client applications - Web APIs
these strings are used to indicate sub-protocols, so that a single server can implement multiple websocket sub-protocols (for example, you might want one server to be able to handle different types of interactions dep
ending on the specified protocol).
... s
ending data to the server once you've opened your connection, you can begin transmitting data to the server.
... to do this, simply call the websocket object's s
end() method for each message you want to s
end: examplesocket.s
end("here's some text that the server is urgently awaiting!"); you can s
end data as a string, blob, or arraybuffer.
...And 6 more matches
WebXR application life cycle - Web APIs
this will involve managing inputs, animations, and r
endering.
... call the xrsession method requestanimationframe() to schedule the first frame r
ender for the xr device.
... if your scene is complex, you should consider creating a worker—or using one that you've previously created for this purpose—to perform the computations needed for each frame to be r
endered.
...And 6 more matches
Migrating from webkitAudioContext - Web APIs
the example below shows old code which downloads an audio file over the network, and then decoded it using createbuffer(): var xhr = new xmlhttprequest(); xhr.open("get", "/path/to/audio.ogg", true); xhr.responsetype = "arraybuffer"; xhr.s
end(); xhr.onload = function() { var decodedbuffer = context.createbuffer(xhr.response, false); if (decodedbuffer) { // decoding was successful, do something useful with the audio buffer } else { alert("decoding the audio buffer failed"); } }; converting this code to use decodeaudiodata() is relatively simple, as can be seen below: var xhr = new xmlhttprequest(); xhr.open("get", "/...
...path/to/audio.ogg", true); xhr.responsetype = "arraybuffer"; xhr.s
end(); xhr.onload = function() { context.decodeaudiodata(xhr.response, function onsuccess(decodedbuffer) { // decoding was successful, do something useful with the audio buffer }, function onfailure() { alert("decoding the audio buffer failed"); }); }; note that the decodeaudiodata() method is asynchronous, which means that it will return immediately, and then when the decoding finishes, one of the success or failure callback functions will get called dep
ending on whether the audio decoding was successful.
...instead of having code like this: var source = context.createbuffersource(); source.looping = true; you can change it to respect the last version of the specification: var source = context.createbuffersource(); source.loop = true; note, the loopstart and loop
end attributes are not supported in webkitaudiocontext.
...And 6 more matches
XRSession.requestAnimationFrame() - Web APIs
syntax requestid = xrsession.requestanimationframe(animationframecallback); parameters animationframecallback a function which is called before the next repaint in order to allow you to update and r
ender the xr scene based on elapsed time, animation, user input changes, and so forth.
...this can be used to obtain the poses of the viewer and the scene itself, as well as other information needed to r
ender a frame of an ar or vr scene.
... return value an integer value which serves as a unique, non-zero id or handle you may pass to cancelanimationframe() if you need to remove the p
ending animation frame request.
...And 6 more matches
Using CSS animations - CSS: Cascading Style Sheets
animations consist of two components, a style describing the css animation and a set of keyframes that indicate the start and
end states of the animation’s style, as well as possible intermediate waypoints.
...the r
endering engine can use frame-skipping and other techniques to keep the performance as smooth as possible.
...each keyframe describes how the animated element should r
ender at a given time during the animation sequence.
...And 6 more matches
Relationship of grid layout to other layout methods - CSS: Cascading Style Sheets
with five items, we get a gap on the
end of row two.
...i have set align-items on the flex container to flex-
end so the items will line up at the
end of the flex container.
...wrapper { border: 2px solid #f76707; border-radius: 5px; background-color: #fff4e6; } .wrapper > div { border: 2px solid #ffa94d; border-radius: 5px; background-color: #ffd8a8; padding: 1em; color: #d9480f; } <div class="wrapper"> <div class="box1">one</div> <div class="box2">two</div> <div class="box3">three</div> </div> .wrapper { display: flex; align-items: flex-
end; min-height: 200px; } .box1 { align-self: stretch; } .box2 { align-self: flex-start; } alignment in css grids this second example uses a grid to create the same layout.
...And 6 more matches
The stacking context - CSS: Cascading Style Sheets
the stacking context in the previous part of this article, using z-index, the r
endering order of certain elements is influenced by their z-index value.
... element with a mix-bl
end-mode value other than normal.
... each stacking context is completely indep
endent of its siblings: only desc
endant elements are considered when stacking is processed.
...And 6 more matches
Visual formatting model - CSS: Cascading Style Sheets
the type of the box generated dep
ends on the value of the css display property.
... initially defined in css2, the display property is ext
ended in the css display module level 3.
... css takes your source document and r
enders it onto a canvas.
...And 6 more matches
align-items - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* basic keywords */ align-items: normal; align-items: stretch; /* positional alignment */ /* align-items does not take left and right values */ align-items: center; /* pack items around the center */ align-items: start; /* pack items from the start */ align-items:
end; /* pack items from the
end */ align-items: flex-start; /* pack flex items from the start */ align-items: flex-
end; /* pack flex items from the
end */ /* baseline alignment */ align-items: baseline; align-items: first baseline; align-items: last baseline; /* overflow alignment (for positional alignment only) */ align-items: safe center; align-items: unsafe center; /* global values */ align-items: inherit; align-items: initial; align-items: unset; values normal the effect of this keyword is dep
endent of the la...
... flex-
end the cross-
end margin edges of the flex items are flushed with the cross-
end edge of the line.
...And 6 more matches
align-self - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ align-self: auto; align-self: normal; /* positional alignment */ /* align-self does not take left and right values */ align-self: center; /* put the item around the center */ align-self: start; /* put the item at the start */ align-self:
end; /* put the item at the
end */ align-self: self-start; /* align the item flush at the start */ align-self: self-
end; /* align the item flush at the
end */ align-self: flex-start; /* put the flex item at the start */ align-self: flex-
end; /* put the flex item at the
end */ /* baseline alignment */ align-self: baseline; align-self: first baseline; align-self: last baseline; align-self: stretch; /*...
... normal the effect of this keyword is dep
endent of the layout mode we are in: in absolutely-positioned layouts, the keyword behaves like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
...And 6 more matches
box-decoration-break - CSS: Cascading Style Sheets
the box-decoration-break css property specifies how an element's fragments should be r
endered when broken across multiple lines, columns, or pages.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values slice the element is initially r
endered as if its box were not fragmented, after which the r
endering for this hypothetical box is sliced into pieces for each line/column/page.
...And 6 more matches
box-direction - CSS: Cascading Style Sheets
reverse the box lays out its contents from the
end (the right or bottom edge).
... notes the edge of the box designated the start for layout purposes dep
ends on the box's orientation: horizontal left vertical top the edge opposite to the start is designated the
end.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 6 more matches
break-after - CSS: Cascading Style Sheets
however, we used break-after: column on the <p> elements to force a column break after each one, meaning that you
end up with an <h2> neatly at the top of each column.
...mauris vitae h
endrerit arcu, ac scelerisque lacus.
...morbi metus libero, pharetra non porttitor a, molestie nec nisi.</p> <h2>subheading</h2> <p>vivamus eleif
end metus vitae neque placerat, eget interdum elit mattis.
...And 6 more matches
break-before - CSS: Cascading Style Sheets
however, we used break-before: column on the <h2> elements to force a column break before each one, meaning that you
end up with an <h2> neatly at the top of each column.
...mauris vitae h
endrerit arcu, ac scelerisque lacus.
...morbi metus libero, pharetra non porttitor a, molestie nec nisi.</p> <h2>subheading</h2> <p>vivamus eleif
end metus vitae neque placerat, eget interdum elit mattis.
...And 6 more matches
<color> - CSS: Cascading Style Sheets
they are called the ext
ended color keywords, the x11 colors, or the svg colors.
... gainsboro #dcdcdc ghostwhite #f8f8ff gold #ffd700 goldenrod #daa520 greenyellow #adff2f grey #808080 honeydew #f0fff0 hotpink #ff69b4 indianred #cd5c5c indigo #4b0082 ivory #fffff0 khaki #f0e68c lav
ender #e6e6fa lav
enderblush #fff0f5 lawngreen #7cfc00 lemonchiffon #fffacd lightblue #add8e6 lightcoral #f08080 lightcyan #e0ffff lightgoldenrodyellow #fafad2 lightgray #d3d3d3 lightgreen #90ee90 lightgrey #d3d3d3 lightpink ...
... many designers find hsl more intuitive than rgb, since it allows hue, saturation, and lightness to each be adjusted indep
endently.
...And 6 more matches
<display-box> - CSS: Cascading Style Sheets
please note that the css display level 3 spec defines how the contents value should affect "unusual elements" — elements that aren’t r
endered purely by css box concepts such as replaced elements.
... see app
endix b: effects of display: contents on unusual elements for more details.
... none turns off the display of an element so that it has no effect on layout (the document is r
endered as though the element did not exist).
...And 6 more matches
Creating a cross-browser video player - Developer guides
swf?videourl=video/tears-of-steel-battle-clip-medium.mp4" /> <img alt="tears of steel poster image" src="img/poster.jpg" width="1024" height="428" title="no video playback possible, please download the video from the link below" /> </object> <!-- offer download --> <a href="video/tears-of-steel-battle-clip-medium.mp4">download mp4</a> </video> <figcaption>© bl
ender foundation | <a href="http://mango.bl
ender.org">mango.bl
ender.org</a></figcaption> </figure> even though this player will define its own custom control set, the controls attribute is still added to the <video> element, and the player's default control set is switched off later with javascript.
... for browsers that do not support html5 video, a flash player is provided that will allow playback of the mp4 video source, provided the
end user has flash installed.
... play/pause playpause.addeventlistener('click', function(e) { if (video.paused || video.
ended) video.play(); else video.pause(); }); when a click event is detected on the play/pause button, the handler first of all checks if the video is currently paused or has
ended (via the media api's paused and
ended attributes); if so, it uses the play() method to playback the video.
...And 6 more matches
disabled - HTML: Hypertext Markup Language
the user can neither edit nor focus on the control, nor it's form control desc
endants.
... if the disabled attribute is specified on a form control, the element and its form control desc
endants do not participate in constraint validation.
... this boolean disabled attribute indicates that the user cannot interact with the control or it's desc
endant controls.
...And 6 more matches
<button>: The Button element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content phrasing content but there must be no interactive content tag omission none, both the starting and
ending tag are mandatory.
... get: the form data are app
ended to the form's action url, with a ?
...And 6 more matches
<form> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... content categories flow content, palpable content permitted content flow content, but not containing <form> elements tag omission none, both the starting and
ending tag are mandatory.
...(browsers t
end to ignore this for suspected login forms; see the autocomplete attribute and login fields.) on: the browser may automatically complete entries.
...And 6 more matches
<input type="password"> - HTML: Hypertext Markup Language
this character will vary dep
ending on the user agent and os.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... value a domstring representing a password, or empty events change and input supported common attributes autocomplete, inputmode, maxlength, minlength, pattern, placeholder, readonly, required, and size idl attributes selectionstart, selection
end, selectiondirection, and value methods select(), setrangetext(), and setselectionrange() value the value attribute contains a domstring whose value is the current contents of the text editing control being used to enter the password.
...And 6 more matches
<input type="text"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...since character widths vary, this may or may not be exact and should not be relied upon to be so; the resulting input may be narrower or wider than the specified number of characters, dep
ending on the characters and the font (font settings in use).
... permitted values are: go, done, next, search, and s
end.
...And 6 more matches
<script>: The Script element - HTML: Hypertext Markup Language
tag omission none, both the starting and
ending tag are mandatory.
... for module scripts, if the async attribute is present then the scripts and all their dep
endencies will be executed in the defer queue, therefore they will get fetched in parallel to parsing and evaluated as soon as they are available.
... referrerpolicy indicates which referrer to s
end when fetching the script, or resources fetched by the script: no-referrer: the referer header will not be sent.
...And 6 more matches
Evolution of HTTP - HTTP
these four building blocks were completed by the
end of 1990, and the first servers were already running outside of cern by early 1991.
...there were no status or error codes: in case of a problem, a specific html file was s
end back with the description of the problem contained in it, for human consumption.
... http/1.0 – building extensibility http/0.9 was very limited and both browsers and servers quickly ext
ended it to be more versatile: versioning information is now sent within each request (http/1.0 is app
ended to the get line) a status code line is also sent at the beginning of the response, allowing the browser itself to understand the success or failure of the request and to adapt its behavior in consequence (like in updating or using its local cache in a specific way) the notion of http headers has been introduced, both for the requests and the responses, allowing metadata to be transmitted and making the protocol extremely flexible and extensible.
...And 6 more matches
Array.prototype.fill() - JavaScript
the fill() method changes all elements in an array to a static value, from a start index (default 0) to an
end index (default array.length).
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax arr.fill(value[, start[,
end]]) parameters value value to fill the array with.
...And 6 more matches
Array.prototype.slice() - JavaScript
the slice() method returns a shallow copy of a portion of an array into a new array object selected from start to
end (
end not included) where start and
end represent the index of items in that array.
...if you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax arr.slice([start[,
end]]) parameters start optional zero-based index at which to start extraction.
...And 6 more matches
Date.parse() - JavaScript
it is not recomm
ended to use date.parse as until es5, parsing of strings was entirely implementation dep
endent.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax direct call: date.parse(datestring) implicit call: new date(datestring) parameters datestring a string representing a simplification of the iso 8601 cal
endar date ext
ended format.
...And 6 more matches
SharedArrayBuffer.prototype.slice() - JavaScript
the sharedarraybuffer.prototype.slice() method returns a new sharedarraybuffer whose contents are a copy of this sharedarraybuffer's bytes from begin, inclusive, up to
end, exclusive.
... if either begin or
end is negative, it refers to an index from the
end of the array, as opposed to from the beginning.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 6 more matches
TypedArray.prototype.fill() - JavaScript
the fill() method fills all the elements of a typed array from a start index to an
end index with a static value.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax typedarray.fill(value[, start = 0[,
end = this.length]]) parameters value value to fill the typed array with.
...And 6 more matches
this - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... function context inside a function, the value of this dep
ends on how the function is called.
... class base {} class good ext
ends base {} class alsogood ext
ends base { constructor() { return {a: 5}; } } class bad ext
ends base { constructor() {} } new good(); new alsogood(); new bad(); // referenceerror examples this in function contexts // an object can be passed as the first argument to call or apply and this will be bound to it.
...And 6 more matches
Image file type and format guide - Web media technologies
however, the ones listed below are generally recognized as usable on the web, though bmp is generally not recomm
ended as browser support is potentially constrained; it should usually be avoided for web content.
... apng (animated portable network graphics) apng is a file format first introduced by mozilla which ext
ends the png standard to add support for animated images.
...e extension(s) .bmp specification no specification; however, microsoft provides general documentation of the format at docs.microsoft.com/en-us/windows/desktop/gdi/bitmap-storage browser compatibility all versions of chrome, edge, firefox, internet explorer, opera, and safari maximum dimensions either 32,767×32,767 or 2,147,483,647×2,147,483,647 pixels, dep
ending on the format version supported color modes color mode bits per component (d) description greyscale 1 each bit represents a single pixel, which can be either black or white.
...And 6 more matches
stroke-linecap - SVG: Scalable Vector Graphics
the stroke-linecap attribute is a presentation attribute defining the shape to be used at the
end of open subpaths when they are stroked.
...roke-linecap="square" /> <!-- the following pink lines highlight the position of the path for each stroke --> <path d="m1,1 h4 m1,3 h4 m1,5 h4" stroke="pink" stroke-width="0.025" /> </svg> usage notes value butt | round | square default value butt animatable yes butt the butt value indicates that the stroke for each subpath does not ext
end beyond its two
endpoints.
... on a zero length subpath, the path will not be r
endered at all.
...And 6 more matches
SVG Attribute reference - SVG: Scalable Vector Graphics
svg elements can be modified using attributes that specify details about exactly how the element should be handled or r
endered.
... accent-height accumulate additive alignment-baseline allowreorder alphabetic amplitude arabic-form ascent attributename attributetype autoreverse azimuth b basefrequency baseline-shift baseprofile bbox begin bias by c calcmode cap-height class clip clippathunits clip-path clip-rule color color-interpolation color-interpolation-filters color-profile color-r
endering contentscripttype contentstyletype cursor cx cy d d decelerate descent diffuseconstant direction display divisor dominant-baseline dur dx dy e edgemode elevation enable-background
end exponent externalresourcesrequired f fill fill-opacity fill-rule filter filterres filterunits flood-color flood-opacity font-family font-size font-size-adjust font-...
...stretch font-style font-variant font-weight format from fr fx fy g g1 g2 glyph-name glyph-orientation-horizontal glyph-orientation-vertical glyphref gradienttransform gradientunits h hanging height href hreflang horiz-adv-x horiz-origin-x i id ideographic image-r
endering in in2 intercept k k k1 k2 k3 k4 kernelmatrix kernelunitlength kerning keypoints keysplines keytimes l lang lengthadjust letter-spacing lighting-color limitingconeangle local m marker-
end marker-mid marker-start markerheight markerunits markerwidth mask maskcontentunits maskunits mathematical max media method min mode n name numoctaves o offset opacity operator order orient orientation origin overflow overline-position over...
...And 6 more matches
<textPath> - SVG: Scalable Vector Graphics
to r
ender text along the shape of a <path>, enclose the text in a <textpath> element that has an href attribute with a reference to the <path> element.
... </textpath> </text> </svg> attributes href the url to the path or basic shape on which to r
ender the text.
... value type: spacing|spacingandglyphs; default value: spacing; animatable: yes method which method to r
ender individual glyphs along the path.
...And 6 more matches
Getting started - SVG: Scalable Vector Graphics
it will r
ender as shown in the following screenshot.
... (firefox users: click here) the r
endering process involves the following: we start with the <svg> root element: a doctype declaration as known from (x)html should be left off because dtd based svg validation leads to more problems than it solves before svg 2, to identify the version of the svg for other types of validation the version and baseprofile attributes should always be used instead.
... basic properties of svg files the first important thing to notice is the order of r
endering elements.
...And 6 more matches
Communicating using "port" - Archive of obsolete content
to enable add-on scripts and content scripts to communicate with each other, each
end of the conversation has access to a port object.
... to s
end messages from one side to the other, use port.emit() to receive messages sent from the other side, use port.on() messages are asynchronous: that is, the s
ender does not wait for a reply from the recipient but just emits the message and continues processing.
... here's a simple add-on that s
ends a message to a content script using port: var tabs = require("sdk/tabs"); var alertcontentscript = "self.port.on('alert', function(message) {" + " window.alert(message);" + "})"; tabs.on("ready", function(tab) { worker = tab.attach({ contentscript: alertcontentscript }); worker.port.emit("alert", "message from the add-on"); }); tabs.open("http://www.mozilla.org"); in total, the port object defines four functions: emit(): emit a message.
...And 5 more matches
places/history - Archive of obsolete content
usage this module exports a single function, search(), which synchronously returns a placesemitter object which then asynchronously emits data and
end or error events that contain information about the state of the operation.
... example let { search } = require("sdk/places/history"); // simple query search( { url: "https://developers.mozilla.org/*" }, { sort: "visitcount" } ).on("
end", function (results) { // results is an array of objects containing // data about visits to any site on developers.mozilla.org // ordered by visit count }); // complex query // the query objects are or'd together // let's say we want to retrieve all visits from before a week ago // with the query of 'ruby', but from last week onwards, we want // all results with 'javascript' in the url or title.
...'d compose the query with the following options let lastweek = date.now - (1000*60*60*24*7); search( // first query looks for all entries before last week with 'ruby' [{ query: "ruby", to: lastweek }, // second query searches all entries after last week with 'javascript' { query: "javascript", from: lastweek }], // we want to order chronologically by visit date { sort: "date" } ).on("
end", function (results) { // results is an array of objects containing visit data, // sorted by visit date, with all entries from more than a week ago // that contain 'ruby', *in addition to* entries from this last week // that contain 'javascript' }); globals functions search(queries, options) queries can be performed on history entries by passing in one or more query options.
...And 5 more matches
Creating custom Firefox extensions with the Mozilla build system - Archive of obsolete content
i can't even remember why anymore, but i got stuck in a number of places, and the whole affair
ended up taking far longer than i originally expected.
...the actual makefiles t
end to be very similar or identical to the templates, but the extra flexibility gained from having the makefiles generated dynamically is one of the things that makes the build system so powerful.
...out="urn:mozilla:install-manifest"> <em:id>myextension@mycompany.com</em:id> <em:version>0.1</em:version> <em:targetapplication> <!-- firefox --> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minversion>1.0+</em:minversion> <em:maxversion>1.0+</em:maxversion> </description> </em:targetapplication> <!-- front-
end metadata --> <em:name>my first extension</em:name> <em:description>just an example.</em:description> <em:creator>allpeers.com</em:creator> <em:homepageurl>http://www.allpeers.com/blog/</em:homepageurl> </description> </rdf> there's a detailed description of the format of the install.rdf file.
...And 5 more matches
Intercepting Page Loads - Archive of obsolete content
which one you should use solely dep
ends on your needs.
...read the recomm
endations in app
endix a regarding performance if you're planning on implementing any of these.
...they are window-indep
endent, so it is better to keep your observer code in non-chrome objects (your xpcom service or jsm module).
...And 5 more matches
XPCOM Objects - Archive of obsolete content
the fact that it allows to easily create os-indep
endent applications is a big selling point for xulrunner.
...there is no comprehensive list of these (that we know of), and that's understandable since it would be a very long list, and it can be ext
ended by add-ons.
...the method you call on cc["some-string"] should either be getservice or createinstance, dep
ending on what you're asking for.
...And 5 more matches
Building Firefox with Rust code - Archive of obsolete content
if you have new rust libraries that code in libxul calls directly, then you should add the appropriate extern crate lines in toolkit/library/rust/shared/lib.rs, and add those libraries (crates) as dep
endencies in toolkit/library/rust/cargo.toml.
... if you want to call code in the "e10s" crate, you would add: extern crate e10s; to toolkit/library/rust/shared/lib.rs; you would also need to specify the path to that crate in the dep
endencies section of toolkit/library/rust/shared/cargo.toml: [dep
endencies] e10s = { path = "../../../../path/from/srcdir/e10s" } the e10s crate must also be checked into the tree at the appropriate path.
... if the e10s crate dep
ends on any other crates, their sources must also be checked into the tree, and e10s's cargo.toml must have path attributes for each of its dep
endencies, and so on.
...And 5 more matches
Style System Overview - Archive of obsolete content
inherited structs act like reset ones in the desc
endants of any rule node for which the data are fully specified.
... style data cached in style context tree if a style struct for a context dep
ends on the data in the parent context, we will cache that struct in the style context tree.
... style data cached in rule tree if the data struct doesn't dep
end on the parent style context in any ways (inheritance, perhaps by omission; percentages and ems when computed), we can cache it in the rule tree.
...And 5 more matches
New Skin Notes - Archive of obsolete content
devmo skin vs cav
endish skin --callek i can probably pull-off this patch if needed (quickly), so dria or others do not have to hunt up "how".
...--dria but if the editors use a different skin, they won't have an easy way to make sure the pages look good to
end-users.
...--dria ok, the difference on the cav
endish theme is negligible (to the point where i never noticed).
...And 5 more matches
Using XPInstall to Install Plugins - Archive of obsolete content
for plugin v
endors who have already written a native code (e.g.
... xpinstall can be used to install any combination of these files on an
end-user's machine.
... the recomm
ended installation process xpinstall provides a cohesive api to accomplish rapid installation and setup of plugin software for
end-users.
...And 5 more matches
XUL accessibility guidelines - Archive of obsolete content
navigation order may vary dep
ending on the nature of the application or the reading direction of the language.
...the recomm
ended way of fixing this is that all functionality associated with a toolbar be duplicated elsewhere in the application, such as in a menu item or context menu.
... mouse dep
endent scripting functionality associated with mouse events such as onmouseover, onmousemove, and ondrag can only be activated with the use of the mouse.
...And 5 more matches
menu - Archive of obsolete content
attributes acceltext, accesskey, allowevents, command, crop, disabled, image, label, menuactive, open, sizetopopup, tabindex, value properties accessibletype, accesskey, command, control, crop, disabled, image, itemcount, label, labelelement, menupopup, open, parentcontainer, selected, tabindex, value methods app
enditem, getindexofitem, getitematindex, insertitemat, removeitemat style classes menu-iconic example <menubar id="sample-menubar"> <menu id="file-menu" label="file"> <menupopup id="file-popup"> <menuitem label="new"/> <menuitem label="open"/> <menuitem label="save"/> <menuseparator/> <menuitem label="exit"/> </menupopup> </menu> <menu id="edit-menu" l...
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 5 more matches
XULRunner 2.0 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
...windows unpack the zip file to a new directory using an archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\2.0 .
...And 5 more matches
Finishing up - Game development
we could also improve our code r
endering.
...he number of lives in the same place where we declared our other variables: var lives = 3; drawing the life counter looks almost the same as drawing the score counter — add the following function to your code, below the drawscore() function: function drawlives() { ctx.font = "16px arial"; ctx.fillstyle = "#0095dd"; ctx.filltext("lives: "+lives, canvas.width-65, 20); } instead of
ending the game immediately, we will decrease the number of lives until they are no longer available.
...so, in the draw() function replace the following three lines: alert("game over"); document.location.reload(); clearinterval(interval); // needed for chrome to
end game with this, we can add slightly more complex logic to it as given below: lives--; if(!lives) { alert("game over"); document.location.reload(); clearinterval(interval); // needed for chrome to
end game } else { x = canvas.width/2; y = canvas.height-30; dx = 2; dy = -2; paddlex = (canvas.width-paddlewidth)/2; } now, when the ball hits the bottom edge of the screen, we're subtracting one life from the lives variable.
...And 5 more matches
CSS and JavaScript accessibility best practices - Learn web development
css and javascript don't have the same immediate importance for accessibility as html, but they are still able to help or damage accessibility, dep
ending on how they are used.
... javascript javascript can also break accessibility, dep
ending on how it is used.
... complex functionality like 3d games are not so easy to make accessible — a complex 3d game created using webgl will be r
endered on a <canvas> element, which has no facility at this time to provide text alternatives or other information for severely visually impaired users to make use of.
...And 5 more matches
HTML: A good basis for accessibility - Learn web development
this means using the correct html elements for their int
ended purpose as much as possible.
...you'll then likely (dep
ending on which screen reader you're using) have to go down into the table as an object and look at its features separately, then get out of the table again to carry on navigating the content.
... <div> buttons the ability to be focused (including via tab) by giving each one the attribute tabindex="0": <div data-message="this is from the first button" tabindex="0">click me!</div> <div data-message="this is from the second button" tabindex="0">click me too!</div> <div data-message="this is from the third button" tabindex="0">and me!</div> basically, the tabindex attribute is primarily int
ended to allow tabbable elements to have a custom tab order (specified in positive numerical order), instead of just being tabbed through in their default source order.
...And 5 more matches
HTML: A good basis for accessibility - Learn web development
this means using the correct html elements for their int
ended purpose as much as possible.
...you'll then likely (dep
ending on which screen reader you're using) have to go down into the table as an object and look at its features separately, then get out of the table again to carry on navigating the content.
... <div> buttons the ability to be focused (including via tab) by giving each one the attribute tabindex="0": <div data-message="this is from the first button" tabindex="0">click me!</div> <div data-message="this is from the second button" tabindex="0">click me too!</div> <div data-message="this is from the third button" tabindex="0">and me!</div> basically, the tabindex attribute is primarily int
ended to allow tabbable elements to have a custom tab order (specified in positive numerical order), instead of just being tabbed through in their default source order.
...And 5 more matches
WAI-ARIA basics - Learn web development
html5 provides special input types to r
ender such controls: <input type="date"> <input type="range"> these are not well-supported across browsers, and it is also difficult to style them, making them not very useful for integrating with website designs.
... dynamic content updates: screenreaders t
end to have difficulty with reporting constantly changing content; with aria we can use aria-live to inform screenreader users when an area of content is updated, e.g.
... the problem is that modern web apps are often not just static text — they t
end to have a lot of dynamically updating content, i.e.
...And 5 more matches
Pseudo-classes and pseudo-elements - Learn web development
they t
end to act as if you had applied a class to some part of your document, often helping you cut down on excess classes in your markup, and giving you more flexible, maintainable code.
...as we t
end not to know how many words will fit on a line — as that will change if the screen width or font-size changes — it is impossible to robustly do this by adding html.
...you could also change the ::before pseudo-element to ::after and see the text inserted at the
end of the element instead of the beginning.
...And 5 more matches
Beginner's guide to media queries - Learn web development
media queries are a key part of responsive web design, as they allow you to create different layouts dep
ending on the size of the viewport, but they can also be used to detect other things about the environment your site is running on, for example whether the user is using a touchscreen rather than a mouse.
... width and height the feature we t
end to detect most often in order to create responsive designs (and that has widespread browser support) is viewport width, and we can apply css if the viewport is above or below a certain width — or an exact width — using the min-width, max-width, and width media features.
... if you look at the final example at different widths you can see how the design responds and works as a single column, two columns, or three columns, dep
ending on the available width.
...And 5 more matches
Responsive design - Learn web development
these two approaches t
ended to result in a website that looked its best on the screen of the person designing the site!
...in 2004 cameron adams wrote a post entitled resolution dep
endent layout, describing a method of creating a design that could adapt to different screen resolutions.
...the media queries level 3 specification became a candidate recomm
endation in 2009, meaning that it was deemed ready for implementation in browsers.
...And 5 more matches
The web and web standards - Learn web development
these documents are not very useful for learning how to use the technologies they describe (this is why we have sites like mdn web docs), but instead are int
ended to be used by software engineers to implement these technologies (usually in web browsers).
... overview of modern web technologies there are a number of technologies to learn if you want to be a front-
end web developer.
...can you give me the files i need to r
ender bbc.co.uk"?
...And 5 more matches
Adding vector graphics to the Web - Learn web development
note: this article doesn't int
end to teach you svg; just what it is, and how to add it to web pages.
...popular web raster formats include bitmap (.bmp), png (.png), jpeg (.jpg), and gif (.gif.) vector images are defined using algorithms — a vector image file contains shape and path definitions that the computer can use to work out what the image should look like when r
endered on the screen.
...at the simplest
end of the spectrum, you've got elements for creating simple shapes, like <circle> and <rect>.
...And 5 more matches
Properly configuring server MIME types - Learn web development
mime types describe the media type of content either in email or served by web servers or web applications and are int
ended to help guide a web browser in how the content is to be processed and displayed.
... if the web server or application reports an incorrect mime type for content, a web browser has no way, according to the http specification, of knowing that the author actually int
ended the content to be processed and displayed in a way different from that implied by the reported mime type.
... serving content using the correct mime type can also be important for security reasons; it's possible for malicious content to affect the user's computer by pret
ending to be a safe type of document when it is in fact not.
...And 5 more matches
Software accessibility: Where are we today?
this t
ends to be somewhat less of a limitation in that most software doesn't rely exclusively on audio to relay feedback.
...in answer to this problem, many small accessibility hardware and software v
endors created products and software which helped people who could not perform one of the four basic tasks to use common computer applications.
... a major limitation - the lack of context the solutions developed by these accessibility v
endors have greatly increased the employment and personal fulfillment opportunities of hundreds of thousands of persons with disabilities, and the importance of their work cannot be diminished.
...And 5 more matches
Using the Browser API
the javascript implementation to wire up the functionality required by our simple browser, we've written some basic javascript (see the full javascript listing.) wiring up the back and forward buttons early on in the code we implement two simple event listeners to move the browser back and forward in history when the relevant buttons are pressed: back.addeventlistener('touch
end',function() { browser.goback(); }); fwd.addeventlistener('touch
end',function() { browser.goforward(); }); the functions can be handled using the browser api htmliframeelement.goback() and htmliframeelement.goforward() methods.
... you'll also notice that we're also firing these functions on the touch
end event, which is effective as firefox os devices are generally touchscreen.
... zoomin.addeventlistener('touch
end',function() { zoomfactor += 0.1; browser.zoom(zoomfactor); }); zoomout.addeventlistener('touch
end',function() { zoomfactor -= 0.1; browser.zoom(zoomfactor); }); controlling the stop/reload button next, let's talk about the stop/reload button.
...And 5 more matches
Add-on Repository
the api also offers two ways to search for and retrieve an array of addon instances: retrieverecomm
endedaddons(), which returns a list of recomm
ended add-ons, and searchaddons(), which performs a search of the repository.
... to import the add-on repository code module, use: components.utils.import("resource://gre/modules/addonrepository.jsm"); method overview string getrecomm
endedurl() string getsearchurl(in string searchterms) void cancelsearch() void retrieverecomm
endedaddons(in integer maxresults, in searchcallback callback) void searchaddons(in string searchterms, in integer maxresults, in searchcallback callback) properties property type description homepageurl string the url of the repository...
... methods getrecomm
endedurl() returns the url that can be visited to see recomm
ended add-ons.
...And 5 more matches
Log.jsm
progress is tracked in bugzilla using dep
endencies of bug 451283.
... the log.jsm javascript code module (formerly named log4moz.js) provides a log4j style api for logging log messages to various
endpoints, such as the browser console or a file on disk.
...// use dots to create a hierarchy, this way you can later change // the log level of sets of loggers under some common root let log = log.repository.getlogger("myextension.myclass"); log.level = log.level.debug; // a console app
ender logs to the browser console.
...And 5 more matches
Promise
internally, a promise can be in one of three states: p
ending, when the final value is not available yet.
... method overview promise then([optional] function onfulfill, [optional] function onreject); promise catch([optional] function onreject); constructor creates a new promise, initially in the p
ending state, and provides references to the resolving functions that can be used to change its state.
... note: calling this method with a p
ending promise as the avalue argument, and then calling it again with another value before the promise is fulfilled or rejected, will have no effect the second time, as the associated promise is already resolved to the p
ending promise.
...And 5 more matches
Profiling with the Firefox Profiler
also note that this indicates what would have happened had there been an event waiting and not necessarily that there was an event p
ending for that long.
... clicking the "invert call stack" option will sort by the time spent in a function in desc
ending order.
...for example:in the results above we can see that we're sp
ending ~287 milliseconds in startup::xre_initchildprocess, 194 ms of which are spent in pvsync::msg_notify and all child functions that it calls.
...And 5 more matches
Optimizing Applications For NSPR
the implementation has dep
endencies on libraries that are implemented in the netscape communicator.
... the work to undo this dep
endency has already been started and the result will be made available soon.
... cal
endar time facilities are limited on macintosh.
...And 5 more matches
NSS Certificate Download Specification
following the data should be the following line: -----
end certificate----- in a text format download, nss ignores any text before the first begin certificate line, and ignores any text after the first
end certificate line.
...regardless of which of the supported binary formats is used, the begin and
end lines must say certificate, and not any other word (such as key).
... the begin and
end lines must begin and
end with 5 dashes, with no extra leading or trailing white space (excluding the
end of line characters).
...And 5 more matches
sample2
rt.h> #include <base64.h> #include <secerr.h> #include <secport.h> #include <secoid.h> #include <secmodt.h> #include <secoidt.h> #include <sechash.h> /* our samples utilities */ #include "util.h" /* constants */ #define blocksize 32 #define modblocksize 128 #define default_key_bits 1024 /* header file constants */ #define enckey_header "-----begin wrapped enckey-----" #define enckey_trailer "-----
end wrapped enckey-----" #define mackey_header "-----begin wrapped mackey-----" #define mackey_trailer "-----
end wrapped mackey-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" #define lab_header "-----begin...
... key label-----" #define lab_trailer "-----
end key label-----" #define pubkey_header "-----begin pub key -----" #define pubkey_trailer "-----
end pub key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----
end new certificate request-----" #define ns_cert_enc_header "-----begin certificate for encryption-----" #define ns_cert_enc_trailer "-----
end certificate for encryption-----" #define ns_cert_vfy_header "-----begin certificate for signature verification-----" #define ns_cert_vfy_trailer "-----
end certificate for signature verification-----" #define ns_sig_header "-----begin signature-----" #define ns_sig_trailer "-----
end signature-----" #define ns_cert_header "-----begin certificate-----" #define ns_cert_trailer "-----
end certificate-...
...----" /* missing publically from nss versions earlier than 3.13 */ #ifndef sec_error_base #define sec_error_base (-0x2000) typedef enum { sec_error_io = sec_error_base + 0, sec_error_token_not_logged_in = (sec_error_base + 155), sec_error_
end_of_list } secerrorcodes; #
endif /* port_errortostring introduced in nss 3.13.
...And 5 more matches
PKCS #11 Module Specs
if the value is quoted, then the value is terminated with and
ending quote of the form ', ", ), ], }, or > matching the respective starting quote.
...
ending quotes can be escaped.
... cryptotok
endescription override the default label value for the internal crypto token returned in the ck_token_info structure with an internationalize string (utf8).
...And 5 more matches
NSS tools : modutil
changing the names of the certificate and key databases is not recomm
ended.
... modutil supports several mechanisms: rsa, dsa, rc2, rc4, rc5, aes, des, dh, sha1, sha256, sha512, ssl, tls, md5, md2, random (for random number generation), and fri
endly (meaning certificates are publicly readable).
...the available mechanisms dep
end on the module; nss supplies almost all common mechanisms.
...And 5 more matches
NSS tools : modutil
changing the names of the certificate and key databases is not recomm
ended.
... modutil supports several mechanisms: rsa, dsa, rc2, rc4, rc5, aes, des, dh, sha1, sha256, sha512, ssl, tls, md5, md2, random (for random number generation), and fri
endly (meaning certificates are publicly readable).
...the available mechanisms dep
end on the module; nss supplies almost all common mechanisms.
...And 5 more matches
64-bit Compatibility
this article focuses on hacking tracemonkey code generation (jstracer.cpp, jsregex.cpp) in ways that will work on both 32-bit and 64-bit jit back
ends.
...the compiler can implicitly sign or zero ext
end operands with unint
ended side effects.
... for example, consider this code: #define pointer_tagbits 3 static inline uintptr_t unmaskpointer(uintptr_t v) { return v & ~pointer_tagbits; } the value 3 will be inverted to 0xfffffffc, then zero-ext
ended to 0x00000000fffffffc - a subtle and nasty bug, assuming it is unint
ended.
...And 5 more matches
Invariants
(the jsval encoding dep
ends on this.) the jsstackframe::down chain never forms a cycle.
...js_setparent can violate this, if the application is really that dumb, but generally every object is newer than its __parent__.) the tracejit must not trace into a function whose scope chain
ends in a different global object.
... a given trace-jit trace stays within a single compartment (indeed, a single global object)
end-to-
end.
...And 5 more matches
JSAPI Cookbook
use js_setp
endingexception to throw an arbitrary js::value from c/c++.
... // javascript throw exc; /* jsapi */ js_setp
endingexception(cx, exc); return false; when js_reporterror creates a new error object, it sets the filename and linenumber properties to the line of javascript code currently at the top of the stack.
...ue exc; messagestr = js_newstringcopyz(cx, message); if (!messagestr) return false; filenamestr = js_newstringcopyz(cx, filename); if (!filenamestr) return false; args[0] = string_to_jsval(messagestr); args[1] = string_to_jsval(filenamestr); args[2] = int_to_jsval(lineno); if (js_callfunctionname(cx, global, "error", 3, args, &exc)) js_setp
endingexception(cx, exc); return false; } ...
...And 5 more matches
JS_SetGCCallback
callback syntax typedef enum jsgcstatus { jsgc_begin, jsgc_
end, jsgc_mark_
end, // obsolete since jsapi 13 jsgc_finalize_
end // obsolete since jsapi 13 } jsgcstatus; typedef void (* jsgccallback)(jsruntime *rt, jsgcstatus status, void *data); name type description cx jscontext * the context in which garbage collection is happening.
... jsgc_mark_
end obsolete since jsapi 13
end of marking.
... jsgc_finalize_
end obsolete since jsapi 13
end of finalization.
...And 5 more matches
JSAPI reference
allocationoverflow added in spidermonkey 1.8 js_geterrorreporter js_seterrorreporterobsolete since jsapi 52 js_errorfromexception js_geterrorprototype jsreport_is_exception jsreport_is_strict jsreport_is_warning jsreport_is_strict_mode_error the following functions allow c/c++ functions to throw and catch javascript exceptions: js::createerror added in spidermonkey 38 js_isexceptionp
ending js_getp
endingexception js_setp
endingexception js_clearp
endingexception js_throwstopiteration added in spidermonkey 1.8 js_isstopiteration added in spidermonkey 31 typedef jsexceptionstate js_saveexceptionstate js_restoreexceptionstate js_dropexceptionstate these functions translate errors into exceptions and vice versa: js_reportp
endingexception js_errorfromexception js_t...
...bsolete since jsapi 38 js_doubletouint32 added in spidermonkey 17 obsolete since jsapi 38 js_newnumbervalue obsolete since jsapi 17 js_newdoublevalue obsolete since jsapi 17 js_newdouble obsolete since jsapi 17 strings typedef jsstring class jsautobytestring added in spidermonkey 17 js_newstringcopyn js_newstringcopyz js_newucstring js_newucstringcopyn js_newucstringcopyz js_newdep
endentstring js_getemptystringvalue js_getemptystring added in spidermonkey 1.8.5 js_concatstrings js_comparestrings js_stringequalsascii added in spidermonkey 1.8.5 js_flatstringequalsascii added in spidermonkey 1.8.5 js_stringhaslatin1chars added in spidermonkey 38 js_getstringcharat added in spidermonkey 38 js_getflatstringcharat added in spidermonkey 38 js_getstringlength js_enco...
... jsclass.flags jsclass.call jsclass.construct struct jsfunctionspec struct jspropertyspec js_initclass js_linkconstructorandprototype added in spidermonkey 17 js::propertyspecnameissymbol added in spidermonkey 38 js::propertyspecnameequalsid added in spidermonkey 38 js::propertyspecnametopermanentid added in spidermonkey 38 js_getreservedslot js_setreservedslot struct jsext
endedclass obsolete since javascript 1.8.5 struct jsobjectops obsolete since javascript 1.8.5 struct jsxmlobjectops obsolete since javascript 1.8.5 struct jsproperty obsolete since jsapi 16 adding native properties and methods to classes: jsnative struct jsfunctionspec js_fs added in spidermonkey 1.8 js_fn added in spidermonkey 1.8 js_sym_fn added in spidermonkey 38 js_fninfo added in sp...
...And 5 more matches
Mozilla Projects
mailnews is the back
end of the messaging parts of seamonkey and thunderbird.
... necko necko is a network library that provides a platform-indep
endent api for several layers of networking, ranging from transport to presentation layers.
...the core of pork is a c++ parser that provides exact character positions for the start and
end of every ast node, as well as the set of macro expansions that contain any location.
...And 5 more matches
Redis Tips
it is int
ended primarily for developers, and deliberately omits some topics that will be important in any redis deployment, like security and backups.
... here's a stupid node script to show how this works: #!/usr/bin/env node var r = require('redis').createclient(); r.multi() .set("foo", 42) .set("bar", "ice cream") .set("baz", 6.28) .get("foo") .get("bar") .get("baz") .exec(function(err, resultlist) { console.log(json.stringify(resultlist, null, 2)); r.
end(); // terminate the redis connection; node can quit }); when run, this prints: [ "ok", "ok", "ok", "42", "ice cream", "6.28" ] the result list includes one value per each command executed.
... zrange gives you everything in the zset, in order of score, from the beginning offset to the
end offset.
...And 5 more matches
Places Developer Guide
// observers can use this to susp
end updates to the user-interface, for example // while a batch change is occurring.
... }, on
endupdatebatch: function() { this._inbatch = false; }, onitemadded: function(id, folder, index) { }, onitemremoved: function(id, folder, index) { }, onitemchanged: function(id, property, isannotationproperty, value) { // isannotationproperty is a boolean value that is true of the changed property is an annotation.
...var ci = components.interfaces; var cc = components.classes; var cu = components.utils; // import placesutils cu.import("resource://gre/modules/placesutils.jsm"); cu.import("resource://gre/modules/services.jsm"); // create the backup file var jsonfile = services.dirsvc.get("profd", ci.nsilocalfile); jsonfile.app
end("bookmarks.json"); jsonfile.create(ci.nsilocalfile.normal_file_type, 0600); // export bookmarks in json format to file placesutils.backupbookmarkstofile(jsonfile); // restore bookmarks from the json file // note: this *overwrites* all pre-existing bookmarks placesutils.restorebookmarksfromjsonfile(jsonfile); history the toolkit history service is nsinavhistoryservice: var history = cc["@mozill...
...And 5 more matches
Finishing the Component
the service manager dep
ends * on the repository to find and instantiate factories to obtain * services.
...they may be able to suggest a supported alternative, or they may be able to notify you about p
ending changes.
...the location of the file and the steps for adding that location to the build system vary dep
ending on how you build this component.
...And 5 more matches
NS ConvertUTF16toUTF8 external
class declaration method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar ...
... rfindchar app
endint tointeger base classes nscstring_external data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
NS LossyConvertUTF16toASCII external
class declaration method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar ...
... rfindchar app
endint tointeger base classes nscstring_external data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
PromiseFlatCString (External)
class declaration method overview get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar rfindchar ...
... app
endint tointeger base classes nscstringcontainer data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
nsCAutoString (External)
class declaration method overview get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar rfindchar ...
... app
endint tointeger base classes nscstringcontainer data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
nsCStringContainer (External)
class declaration method overview beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral operator= replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare(const char*, print32 (*) compare(const nsacstring&, print32 (*) equals(const char*, print32 (*) equals(const nsacstring&, print32 (*) operator< operator<= operator== operator>= operat...
...ing&, print32 (*) find(const nsacstring&, pruint32, print32 (*) find(const char*, print32 (*) find(const char*, pruint32, print32 (*) rfind(const nsacstring&, print32 (*) rfind(const nsacstring&, print32, print32 (*) rfind(const char*, print32 (*) rfind(const char*, print32, print32 (*) findchar rfindchar app
endint tointeger base classes nsacstring data members no public members.
... methods beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
nsCString external
class declaration method overview constructors get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar ...
... rfindchar app
endint tointeger base classes nscstringcontainer data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
nsLiteralCString (External)
class declaration method overview rebind get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar ...
... rfindchar app
endint tointeger base classes nscstring_external data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
nsLiteralString (External)
class declaration method overview rebind get operator= adopt beginreading
endreading charat operator[] first beginwriting
endwriting setlength length isempty setisvoid isvoid assign assignliteral replace app
end app
endliteral operator+= insert cut truncate stripchars stripwhitespace trim defaultcomparator compare equals operator< operator<= operator== operator>= operator> operator!= equalsliteral find rfind findchar ...
... rfindchar app
endint tointeger base classes nscstring_external data members no public members.
... char* aptr nsacstring& operator=(char) - source parameters char achar adopt void adopt(const char*, pruint32) - source parameters char* adata pruint32 alength beginreading pruint32 beginreading(const char**, const char**) const - source returns the length, beginning, and
end of a string in one operation.
...And 5 more matches
IAccessibleHyperlink
linked objects and anchors are implementation dep
endent.
...startindex() and
endindex() are indices with respect to the text exposed by iaccessibletext.
...this interface could also be applied to other kinds of objects with multiple actions such as "smart tags" which are objects, typically strings, which have multiple actions such as "activate uri", "bookmark uri",
end so on.
...And 5 more matches
mozIStorageService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) see mozistorageconnection method overview nsifile backupdatabasefile(in nsifile adbfile, in astring abackupfilename, [optional] in nsifile abackupparentdirectory); mozistorageconnection op
endatabase(in nsifile adatabasefile); mozistorageconnection openspecialdatabase(in string astoragekey); mozistorageconnection openunshareddatabase(in nsifile adatabasefile); methods backupdatabasefile() this method makes a backup of the specified file.
...op
endatabase() opens a database connection to the specified file.
...if this method throws ns_error_file_corrupted, it's recomm
ended that you call mozistorageservice.backupdatabasefile() to back up the database so that user data is not lost (although we have no way of recovering this data yet).
...And 5 more matches
nsIMsgDatabase
the nsimsgdatabase interface is an abstract interface used to access the mail database back
end.
... void markreadbydate(in prtime startdate, in prtime
enddate, in nsmsgkeyarrayptr markedids); native code only!
...gproperty(in nsmsgkey akey, in string aproperty, in string avalue); void markimapdeleted(in nsmsgkey key, in boolean deleted, in nsidbchangelistener instigator); void applyretentionsettings(in nsimsgretentionsettings amsgretentionsettings, in boolean adeleteviafolder); boolean hasnew(); void clearnewlist(in boolean notify); void addtonewlist(in nsmsgkey key); void startbatch(); void
endbatch(); nsimsgofflineimapoperation getofflineopforkey(in nsmsgkey messagekey, in boolean create); void removeofflineop(in nsimsgofflineimapoperation op); nsisimpleenumerator enumerateofflineops(); void listallofflineopids(in nsmsgkeyarrayptr offlineopids); native code only!
...And 5 more matches
nsIMsgFolder
inherits from: nsisupports method overview void startfolderloading(); void
endfolderloading(); void updatefolder(in nsimsgwindow awindow); nsimsgfilterlist getfilterlist(in nsimsgwindow msgwindow); void setfilterlist(in nsimsgfilterlist filterlist); void forcedbclosed(); void delete(); void deletesubfolders(in nsisupportsarray folders, in nsimsgwindow msgwindow); void propagatedelete(in nsimsgfolder folder, in boolean deletestorage,in nsimsgwindow msgwindow); ...
...pertyflagchanged(in nsimsgdbhdr item, in nsiatom property, in unsigned long oldvalue, in unsigned long newvalue); void notifyunicharpropertychanged(in nsiatom property, in astring oldvalue, in astring newvalue); void notifyitemadded(in nsisupports item); void notifyitemremoved(in nsisupports item); void notifyfolderevent(in nsiatom event); void listdesc
endents(in nsisupportsarray desc
endents); void shutdown(in boolean shutdownchildren); void setinvfeditsearchscope(in boolean asearchthisfolder, in boolean asetonsubfolders); void copydatatooutputstreamforapp
end(in nsiinputstream aistream, in long alength, in nsioutputstream outputstream); void copydatadone(); void setjunkscoreformessages(in nsisupportsarra...
... displayrecipients boolean readonly: should we be displaying recipients instead of the s
ender.
...And 5 more matches
nsIPipe
inherits from: nsisupports last changed in gecko 1.6 method overview void init(in boolean nonblockinginput, in boolean nonblockingoutput, in unsigned long segmentsize, in unsigned long segmentcount, in nsimemory segmentallocator); attributes attribute type description inputstream nsiasyncinputstream the pipe's input
end, which also implements nsisearchableinputstream.
... outputstream nsiasyncoutputstream the pipe's output
end.
...each
end of the pipe can be either blocking or non-blocking.
...And 5 more matches
nsIThread
last changed in gecko 1.9 (firefox 3) inherits from: nsieventtarget method overview void shutdown() boolean hasp
endingevents() boolean processnextevent(in boolean maywait) attributes attribute type description prthread prthread the nspr thread object corresponding to the nsithread.
...this causes events to stop being dispatched to the thread, and causes any p
ending events to run to completion before the thread joins with the current thread (see pr_jointhread() for details).
... hasp
endingevents() determines whether or not the thread has events that are ready to be processed.
...And 5 more matches
nsITreeBoxObject
row, in nsitreecolumn col); void scrolltocolumn(in nsitreecolumn col); void scrolltohorizontalposition(in long horizontalposition); void invalidate(); void invalidatecolumn(in nsitreecolumn col); void invalidaterow(in long index); void invalidatecell(in long row, in nsitreecolumn col); void invalidaterange(in long startindex, in long
endindex); void invalidatecolumnrange(in long startindex, in long
endindex, in nsitreecolumn col); long getrowat(in long x, in long y); void getcellat(in long x, in long y, out long row, out nsitreecolumn col, out acstring childelt); void getcoordsforcellitem(in long row, in nsitreecolumn col, in acstring element, out long x, out long y, out long width, out long he...
...ight); boolean iscellcropped(in long row, in nsitreecolumn col); void rowcountchanged(in long index, in long count); void beginupdatebatch(); void
endupdatebatch(); void clearstyleandimagecaches(); attributes attribute type description columns nsitreecolumns readonly: obtain the columns.
...prevents scrolling off the
end of the tree.
...And 5 more matches
XPIDL
interface description languages (idl) are used to describe interfaces in a language- and machine-indep
endent way.
... idls make it possible to define interfaces which can then be processed by tools to autogenerate language-dep
endent interface specifications.
... writing xpidl interface files xpidl closely resembles omg idl, with ext
ended syntax to handle iids and additional types.
...And 5 more matches
URLs - Plugins
« previousnext » this chapter describes retrieving urls and displaying them on specified target pages, posting data to an http server, uploading files to an ftp server, and s
ending mail.
...for some recomm
endations to help you with target parameter choice, see the reference entry for npn_geturl.
...the url can be displayed in the same window or frame, a new window, or a different window or frame, dep
ending on the value of the target parameter.
...And 5 more matches
Debugger.Object - Firefox Developer Tools
promisestate if the referent is a promise, return a string indicating whether the promise is p
ending, or has been fulfilled or rejected.
... this string takes one of the following values: "p
ending", if the promise is p
ending.
... promisedep
endentpromises if the referent is a promise, this is an array of debugger.objects referring to the promises directly dep
ending on the referent promise.
...And 5 more matches
Beacon API - Web APIs
example use cases of the beacon api are logging activity and s
ending analytics data to the server.
... the beacon interface addresses the needs of analytics and diagnostics code that typically attempts to s
end data to a web server before unloading the document.
... s
ending the data any sooner may result in a missed opportunity to gather data.
...And 5 more matches
Optimizing canvas - Web APIs
« previousnext » the <canvas> element is one of the most widely used tools for r
endering 2d graphics on the web.
... pre-r
ender similar primitives or repeating objects on an offscreen canvas if you find yourself repeating some of the same drawing operations on each animation frame, consider offloading them to an offscreen canvas.
... you can then r
ender the offscreen image to your primary canvas as often as needed, without unnecessarily repeating the steps needed to generate it in the first place.
...And 5 more matches
In depth: Microtasks and the JavaScript runtime environment - Web APIs
the main program exits and its execution context is removed from the execution stack; as there are no contexts remaining on the stack, program execution
ends.
...it then runs any p
ending javascript tasks, then any p
ending microtasks, then performs any needed r
endering and painting before looping again to check for p
ending tasks.
...this is the main thread, and in addition to running your site's main code body, it handles receiving and dispatching user and other events, r
endering and painting web content, and so forth.
...And 5 more matches
Using microtasks in JavaScript with queueMicrotask() - Web APIs
warning: since microtasks can themselves enqueue more microtasks, and the event loop continues processing microtasks until the queue is empty, there's a real risk of getting the event loop
endlessly processing microtasks.
... 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, dep
ending on the current execution context.
... the snippet below creates a function that batches multiple messages into an array, using a microtask to s
end them as a single object when the context exits.
...And 5 more matches
IDBCursor.direction - Web APIs
prev this direction causes the cursor to be opened at the
end of the source.
... prevunique this direction causes the cursor to be opened at the
end of the source.
...saction(['rushalbumlist'], 'readonly'); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor(null,'prev').onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.albumtitle + '</strong>, ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.direction); cursor.continue(); } else { console.log('entries displayed backwards.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'direction' in that specification.
...And 5 more matches
IDBCursorWithValue - Web APIs
splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'idbcursorwithvalue' in that specification.
... recomm
endation indexed database api draftthe definition of 'idbcursorwithvalue' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 5 more matches
IDBFactory.deleteDatabase() - Web APIs
the method returns an idbop
endbrequest object immediately, and performs the deletion operation asynchronously.
... optionsnon-standard in gecko, since version 26, you can include a non-standard optional storage parameter that specifies whether you want to delete a permanent (the default value) indexeddb, or an indexeddb in temporary storage (aka shared pool.) return value a idbop
endbrequest on which subsequent events related to this request are fired.
... recomm
endation indexed database api 2.0the definition of 'deletedatabase()' in that specification.
...And 5 more matches
IDBKeyRange.lowerBound() - Web APIs
by default, it includes the lower
endpoint value and is closed.
... open optional indicates whether the lower bound excludes the
endpoint value.
...n = db.transaction(['fthings'], 'readonly'); var objectstore = transaction.objectstore('fthings'); objectstore.opencursor(keyrangevalue).onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.fthing + '</strong>, ' + cursor.value.frating; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'lowerbound()' in that specification.
...And 5 more matches
IDBKeyRange.upperBound() - Web APIs
by default, it includes the upper
endpoint value and is closed.
... open indicates whether the upper bound excludes the
endpoint value.
...n = db.transaction(['fthings'], 'readonly'); var objectstore = transaction.objectstore('fthings'); objectstore.opencursor(keyrangevalue).onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.fthing + '</strong>, ' + cursor.value.frating; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'upperbound()' in that specification.
...And 5 more matches
IDBObjectStore.createIndex() - Web APIs
from inside a idbop
endbrequest.onupgradeneeded handler.
...has been deleted or removed.) in firefox previous to version 41, an invalidstateerror was raised in this case as well, which was misleading; this has now been fixed (see bug 1176165.) example in the following example you can see the idbop
endbrequest.onupgradeneeded handler being used to update the database structure if a database with a higher version number is loaded.
... recomm
endation indexed database api draftthe definition of 'createindex()' in that specification.
...And 5 more matches
MediaStreamTrack - Web APIs
mediastreamtrack.enabled a boolean whose value of true if the track is enabled, that is allowed to r
ender the media source stream; or false if it is disabled, that is not r
endering the media source stream but silence and blackness.
... "
ended" which indicates that the input is not giving any more data and will never provide new data.
...the track state is set to
ended.
...And 5 more matches
PasswordCredential - Web APIs
the data in the objects will be added to the request body and sent to the remote
endpoint with the credentials.
...this image is int
ended for display in a credential chooser.
... passwordcredential.idname secure context a usvstring containing the name that will be used for the id field when submitting the current object to a remote
endpoint via fetch.
...And 5 more matches
Payment processing concepts - Web APIs
url-based payment method identifiers these may vary substantially dep
ending on the specifics of the service, and a given processing service may have multiple urls used, dep
ending on the version of their api, their communication technology, and so forth.
...the conditions that make payment possible vary dep
ending on the payment method and the user's payment request; for example, if the user chooses to pay using a credit card that isn't accepted by the payee, the payment can't be made.
... the exact validation technology dep
ends on the payment handler, and merchant validation is entirely optional.
...And 5 more matches
Performance API - Web APIs
the now() method returns a domhighrestimestamp whose value that dep
ends on the navigation start and scope.
...the timing property returns a performancetiming object containing latency-related performance information such as the start of navigation time, start and
end times for redirects, start and
end times for responses, etc.
... specifications specification status comment high resolution time recomm
endation initial definition.
...And 5 more matches
RTCPeerConnection.addIceCandidate() - Web APIs
this adds this new remote candidate to the rtcpeerconnection's remote description, which describes the state of the remote
end of the connection.
... if the candidate parameter is missing or a value of null is given when calling addicecandidate(), the added ice candidate is an "
end-of-candidates" indicator.
... the
end-of-candidates notification is transmitted to the remote peer using a candidate with an a-line value of
end-of-candidates.
...And 5 more matches
RTCRtpStreamStats - Web APIs
the rtcrtpstreamstats dictionary is returned by the rtcpeerconnection.getstats(), rtcrtps
ender.getstats(), and rtcrtpreceiver.getstats() methods to provide detailed statistics about webrtc connectivity.
... while the dictionary has a base set of properties that are present in each of these cases, there are also additional properties added dep
ending on which interface the method is called on.
... fircount a count of the total number of full intra request (fir) packets received by the s
ender.
...And 5 more matches
RTCRtpTransceiver.direction - Web APIs
each describes how the transceiver's associated rtcrtps
ender and rtcrtpreceiver behave as shown in the table below.
... value rtcrtps
ender behavior rtcrtpreceiver behavior "s
endrecv" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
... "s
endonly" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
...And 5 more matches
RTCStatsReport - Web APIs
the rtcstatsreport interface provides a statistics report obtained by calling one of the rtcpeerconnection.getstats(), rtcrtpreceiver.getstats(), and rtcrtps
ender.getstats() methods.
...the rtcrtpreceiver and rtcrtps
ender versions of getstats() specifically only return statistics available to the incoming or outgoing stream on which you call them.
... codec an rtccodecstats object containing statistics about a codec currently being used by rtp streams to s
end or receive data for the rtcpeerconnection.
...And 5 more matches
Range - Web APIs
range.collapsed read only returns a boolean indicating whether the range's start and
end points are at the same position.
... range.commonancestorcontainer read only returns the deepest node that contains the startcontainer and
endcontainer nodes.
... range.
endcontainer read only returns the node within which the range
ends.
...And 5 more matches
A basic 2D WebGL animation example - Web APIs
in this webgl example, we create a canvas and within it r
ender a rotating square using webgl.
...its job, as always, is to convert the coordinates we're using for our scene into clipspace coordinates (that is, the system by which (0, 0) is at the center of the context and each axis ext
ends from -1.0 to 1.0 regardless of the actual size of the context).
...its role is to return the color of each pixel in the shape being r
endered.
...And 5 more matches
Using WebGL extensions - Web APIs
canonical extension names, v
endor prefixes and preferences extensions may be supported by browser v
endors before being officially ratified (but only when they are in draft stage).
... in that case, their name can be prefixed by the v
endor prefix (moz_, webkit_, etc.) or the extension is only available once a browser preference has been toggled.
... if you wish to work with the bleeding edge of extensions, and want to keep working on upon ratification (assuming, of course, that the extension doesn't change in incompatible ways), that you query the canonical extension name as well as the v
endor extension name.
...And 5 more matches
WebGL: 2D and 3D graphics for the web - Web APIs
webgl (web graphics library) is a javascript api for r
endering high-performance interactive 3d and 2d graphics within any compatible web browser without the use of plug-ins.
... the webgl 2 api introduces support for much of the opengl es 3.0 feature set; it's provided through the webgl2r
enderingcontext interface.
... reference standard interfaces webglr
enderingcontext webgl2r
enderingcontext webglactiveinfo webglbuffer webglcontextevent webglframebuffer webglprogram webglquery webglr
enderbuffer webglsampler webglshader webglshaderprecisionformat webglsync webgltexture webgltransformfeedback webgluniformlocation webglvertexarrayobject extensions angle_instanced_arrays ext_bl
end_minmax ext_color_buffer_float ext_color_buffer_half_float ext_disjoint_timer_query ext_float_bl
end 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_r
ender_mipma...
...And 5 more matches
Using WebRTC data channels - Web APIs
once you've established a webrtc peer connection using the rtcpeerconnection interface, you're able to s
end and receive media data between the two peers on the connection.
...this makes it easy to write efficient routines that make sure there's always data ready to s
end without over-using memory or swamping the channel completely.
...at a fundamental level, the individual network packets can't be larger than a certain value (the exact number dep
ends on the network and the transport layer being used).
...And 5 more matches
Writing a WebSocket server in C# - Web APIs
let us ext
end our example.
...pclient client = server.accepttcpclient(); console.writeline("a client connected."); networkstream stream = client.getstream(); //enter to an infinite cycle to be able to handle every change in stream while (true) { while (!stream.dataavailable); byte[] bytes = new byte[client.available]; stream.read(bytes, 0, bytes.length); } handshaking when a client connects to a server, it s
ends a get request to upgrade the connection to a websocket from a simple http request.
...espace concatenate it with "258eafa5-e914-47da-95ca-c5ab0dc85b11" (a special guid specified by rfc 6455) compute sha-1 and base64 hash of the new value write the hash back as the value of "sec-websocket-accept" response header in an http response if (new system.text.regularexpressions.regex("^get").ismatch(data)) { const string eol = "\r\n"; // http/1.1 defines the sequence cr lf as the
end-of-line marker byte[] response = encoding.utf8.getbytes("http/1.1 101 switching protocols" + eol + "connection: upgrade" + eol + "upgrade: websocket" + eol + "sec-websocket-accept: " + convert.tobase64string( system.security.cryptography.sha1.create().computehash( encoding.utf8.getbytes( new system.text.regularexpression...
...And 5 more matches
Web Audio API - Web APIs
once the sound has been sufficiently processed for the int
ended effect, it can be linked to the input of a destination (audiocontext.destination), which s
ends the sound to the speakers or headphones.
...so if some of the theory doesn't quite fit after the first tutorial and article, there's an advanced tutorial which ext
ends the first one to help you practise what you've learnt, and apply some more advanced techniques to build up a step sequencer.
... the
ended event the
ended event is fired when playback has stopped because the
end of the media was reached.
...And 5 more matches
Web Authentication API - Web APIs
in order to understand how the create() and get() methods fit into the bigger picture, it is important to understand that they sit between two components that are outside the browser: server - the web authentication api is int
ended to register new credentials on a server (also referred to as a service or a relying party) and later use those same credentials on that same server to authenticate a user.
...this is a simplification of the data required for the registration process that is only int
ended to provide an overview.
... server s
ends challenge, user info, and relying party info - the server s
ends a challenge, user information, and relying party information to the javascript program.
...And 5 more matches
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 r
ender the scene for display on the device.
... constructor new xrwebgllayer() creates and returns a new xrwebgllayer object for use by the specified xrsession, using a particular webglr
enderingcontext or webgl2r
enderingcontext as the destination context.
...in this way, for example, the r
endering of the left eye's point of view and of the right eye's point of view are each placed into the correct parts of the framebuffer.
...And 5 more matches
Keyboard-navigable JavaScript widgets - Accessibility
grouping controls for grouping widgets such as menus, tablists, grids, or tree views, the parent element should be in the tab order (tabindex="0"), and each desc
endent choice/tab/cell/row should be removed from the tab order (tabindex="-1").
... users should be able to navigate the desc
endent elements using arrow keys.
...there are two techniques for accomplishing this: roving tabindex: programmatically moving focus aria-activedesc
endant: managing a 'virtual' focus technique 1: roving tabindex setting the tabindex of the focused element to "0" ensures that if the user tabs away from the widget and then returns, the selected item within the group retains focus.
...And 5 more matches
Text labels and names - Accessibility
use the <leg
end> element to describe the purpose of a fieldset.
... use a leg
end to label a fieldset when grouping a set of form elements together with a <fieldset> element, you should include a nested <leg
end> element inside it, containing a clear description of the group.
...without the leg
end, they would have to navigate around the individual form controls in the group to infer an idea of the overall purpose, which could result in confusion.
...And 5 more matches
-webkit-mask-composite - CSS: Cascading Style Sheets
source-over the source mask image is r
endered over the destination mask image.
... source-out overlapping pixels in the source mask image and the destination mask image are cleared; all remaining pixels of the source mask image are r
endered.
... source-atop the pixels of the destination mask image are r
endered.
...And 5 more matches
OpenType font features guide - CSS: Cascading Style Sheets
while none of these features individually will r
ender a site useless due to their absence, each of them in turn can make a site easier to use and more memorable for its attention to detail.
...this is generally on by default (as recomm
ended by the opentype specification).
...this property can activate an entire set of alternates or just a specific one, dep
ending on the values supplied.the example below is showing several different aspects of working with alternate characters.
...And 5 more matches
Basic Concepts of grid layout - CSS: Cascading Style Sheets
in the following example i am placing the first two items on our three column track grid, using the grid-column-start, grid-column-
end, grid-row-start and grid-row-
end properties.
...it begins at row line 1 and
ends at row line 3, therefore spanning two row tracks.
...this is the default so i do not need to specify the
end line.
...And 5 more matches
Box alignment in CSS Grid Layout - CSS: Cascading Style Sheets
i can use the align-items property on the grid container, to align the items using one of the following values: auto normal start
end center stretch baseline first baseline last baseline * {box-sizing: border-box;} .wrapper { border: 2px solid #f76707; border-radius: 5px; background-color: #fff4e6; } .wrapper > div { border: 2px solid #ffa94d; border-radius: 5px; background-color: #ffd8a8; padding: 1em; color: #d9480f; } .wrapper { display: grid; grid-template-columns: repeat(8,...
...the second item, has an align-self value of start, the third
end and the fourth center.
...-color: #ffd8a8; padding: 1em; color: #d9480f; } .wrapper { display: grid; grid-template-columns: repeat(8, 1fr); grid-gap: 10px; grid-auto-rows: 100px; grid-template-areas: "a a a a b b b b" "a a a a b b b b" "c c c c d d d d" "c c c c d d d d"; } .item1 { grid-area: a; } .item2 { grid-area: b; align-self: start; } .item3 { grid-area: c; align-self:
end; } .item4 { grid-area: d; align-self: center; } <div class="wrapper"> <div class="item1">item 1</div> <div class="item2">item 2</div> <div class="item3">item 3</div> <div class="item4">item 4</div> </div> items with an intrinsic aspect ratio the specification details that the default behavior in align-self is to stretch, except for items which have an intrinsic aspect ratio, i...
...And 5 more matches
Realizing common layouts using CSS Grid Layout - CSS: Cascading Style Sheets
my mark-up is a container with elements inside for a header, footer, main content, navigation, sidebar, and a block into which i am int
ending to place advertising.
...2 row tracks.</div> <div class="item3">start row 2 column line 2, span 2 column tracks.</div> <div class="item4">start at column line 3, span to the
end of the grid (-1).</div> </div> i can then place these on the grid using the named lines, and also the span keyword.
... rather than setting the
end line number, i have chosen to say how many tracks this element should span, using the span keyword.
...And 5 more matches
Logical properties for floating and positioning - CSS: Cascading Style Sheets
logical property or value physical property or value float: inline-start float: left float: inline-
end float: right clear: inline-start clear: left clear: inline-
end clear: right inset-inline-start left inset-inline-
end right inset-block-start top inset-block-
end bottom text-align: start text-align: left text-align:
end text-align: right in addition to these mapped properties there are some ad...
...the logical properties specification defines the values inline-start and inline-
end as mappings for left and right.
...these are as follows: inset-block-start, inset-block-
end, inset-inline-start and inset-inline-
end.
...And 5 more matches
box-sizing - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if the element has any border or padding, this is then added to the width and height to arrive at the size of the box that's r
endered on the screen.
...if you set an element's width to 100 pixels, then the element's content box will be 100 pixels wide, and the width of any border or padding will be added to the final r
endered width, making the element wider than 100px.
...And 5 more matches
cross-fade() - CSS: Cascading Style Sheets
the css cross-fade() function can be used to bl
end two or more images at a defined transparency.
... specification syntax the cross-fade() function takes a list of images with a percentage defining how much of each image is retained in terms of opacity when it is bl
ended with the other images.
...a 25% value r
enders the first image at 25% and the second at 75%.
...And 5 more matches
cursor - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...a non-url fallback (one or more of the keyword values) must be at the
end of the fallback list.
... default the platform-dep
endent default cursor.
...And 5 more matches
element() - CSS: Cascading Style Sheets
a particularly useful scenario for using this would be to r
ender an image in an html <canvas> element, then use that as a background.
...the background element uses a gradient, but also includes text that is r
endered as part of the background.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 5 more matches
font-family - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the following keywords are defined: serif glyphs have finishing strokes, flared or tapering
ends, or have actual serifed
endings.
... sans-serif glyphs have stroke
endings that are plain.
...And 5 more matches
mask - CSS: Cascading Style Sheets
it is therefore recomm
ended to use the mask shorthand rather than other shorthands or the individual properties to override any mask settings earlier in the cascade.
...vg graphic used as mask positioned 40px from the top and 20px from the left */ mask: url(masks.svg#star) 0 0/50px 50px; /* element within svg graphic used as mask with a width and height of 50px */ mask: url(masks.svg#star) repeat-x; /* element within svg graphic used as horizontally repeated mask */ mask: url(masks.svg#star) stroke-box; /* element within svg graphic used as mask ext
ending to the box enclosed by the stroke */ mask: url(masks.svg#star) exclude; /* element within svg graphic used as mask and combined with background using non-overlapping parts */ /* global values */ mask: inherit; mask: initial; mask: unset; /* multiple masks */ mask: url(masks.svg#star) left / 16px repeat-y, /* element within svg graphic is used as a mask on the left-hand side with a...
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
...And 5 more matches
object-position - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 5 more matches
overflow-block - CSS: Cascading Style Sheets
the overflow-block css property sets what shows when content overflows the block start and block
end edges of a box.
... the overflow-block property maps to overflow-y or overflow-x dep
ending on the writing mode of the document.
... values visible content is not clipped and may be r
endered outside the padding box's block start and block
end edges.
...And 5 more matches
place-self - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: align-self justify-self syntax /* keyword values */ place-self: auto center; place-self: normal start; /* positional alignment */ place-self: center normal; place-self: start auto; place-self:
end normal; place-self: self-start auto; place-self: self-
end normal; place-self: flex-start auto; place-self: flex-
end normal; place-self: left auto; place-self: right normal; /* baseline alignment */ place-self: baseline normal; place-self: first baseline auto; place-self: last baseline normal; place-self: stretch auto; /* global values */ place-self: inherit; place-self: initial; place-self: unset; values auto computes to the parent's align-items value.
... normal the effect of this keyword is dep
endent of the layout mode we are in: in absolutely-positioned layouts, the keyword behaves like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
...And 5 more matches
pointer-events - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... none the element is never the target of pointer events; however, pointer events may target its desc
endant elements if those desc
endants have pointer-events set to some other value.
... in these circumstances, pointer events will trigger event listeners on this parent element as appropriate on their way to/from the desc
endant during the event capture/bubble phases.
...And 5 more matches
position - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...dep
ending on the content needing to be repainted, the browser performance, and the device's processing speed, the browser may not be able to manage repaints at 60 fps, causing accessibility concerns for people with sensitivities and jank for everyone.
... one solution is to add will-change: transform to the positioned elements to r
ender the element in its own layer, improving repaint speed and therefore improving performance and accessibility.
...And 5 more matches
<canvas>: The Graphics Canvas element - HTML: Hypertext Markup Language
permitted content transparent but with no interactive content desc
endants except for <a> elements, <button> elements, <input> elements whose type attribute is checkbox, radio, or button.
... tag omission none, both the starting and
ending tag are mandatory.
...that content will be r
endered both on older browsers that don't support canvas and in browsers with javascript disabled.
...And 5 more matches
<colgroup> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if the attribute is not present: zero or more <col> element tag omission the start tag may be omitted, if it has a <col> element as its first child and if it is not preceded by a <colgroup> whose
end tag has been omitted.
... the
end tag may be omitted, if it is not followed by a space or a comment.
...And 5 more matches
<details>: The Details disclosure element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
... an input device as well as some form of output device is recomm
ended.</p> </details> in this situation, the browser will use a default summary string (usually "details").
...And 5 more matches
<iframe>: The Inline Frame element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
... referrerpolicy indicates which referrer to s
end when fetching the frame's resource: no-referrer: the referer header will not be sent.
...And 5 more matches
<input type="file"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...instead, the filename is shown, with c:\fakepath\ app
ended to the beginning of it.
...next, we hide the <input> element — we do this because file inputs t
end to be ugly, difficult to style, and inconsistent in their design across browsers.
...And 5 more matches
<input type="image"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...there are three permitted values: application/x-www-form-urlencoded this, the default value, s
ends the form data as a string after url encoding the text using an algorithm such as encodeuri().
...permitted values are: get a url is constructed by starting with the url given by the formaction or action attribute, app
ending a question mark ("?") character, then app
ending the form's data, encoded as described by formenctype or the form's enctype attribute.
...And 5 more matches
<meter>: The HTML Meter element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content phrasing content, but there must be no <meter> element among its desc
endants.
... tag omission none, both the starting and
ending tag are mandatory.
...And 5 more matches
<strong>: The Strong Importance element - HTML: Hypertext Markup Language
browsers typically r
ender the contents in bold type.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, must have both a start tag and an
end tag.
...And 5 more matches
<time> - HTML: Hypertext Markup Language
a precise date in the gregorian cal
endar (with optional time and timezone information).
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 5 more matches
Using the application cache - HTML: Hypertext Markup Language
in addition, the browser also s
ends a checking event to the window.applicationcache object, and fetches the manifest file, following the appropriate http caching rules.
... if the currently-cached copy of the manifest is up-to-date, the browser s
ends a noupdate event to the applicationcache object, and the update process is complete.
...for each file fetched into this temporary cache, the browser s
ends a progress event to the applicationcache object.
...And 5 more matches
Content negotiation - HTTP
server-driven content negotiation in server-driven content negotiation, or proactive content negotiation, the browser (or any other kind of user-agent) s
ends several http headers along with the url.
...though strictly speaking user-agent is not in this list, it is sometimes also used to s
end a specific representation of the requested resource, though this is not considered as a good practice.
... compressing http messages is one of the most important ways to improve the performance of a web site, it shrinks the size of the data transmitted and makes better use of the available bandwidth; browsers always s
end this header and the server should be configured to abide to it and to use compression.
...And 5 more matches
Redirections in HTTP - HTTP
principle in http, redirection is triggered by a server s
ending a special redirect response to a request.
... [1] the specification did not int
end to allow method changes, but there are existing user agents that do change their method.
... [2] the specification did not int
end to allow method changes, but there are existing user agents that do change their method.
...And 5 more matches
Classes - JavaScript
by defining things which are not visible outside of the class, you ensure that your classes' users can't dep
end on internals, which may change version to version.
... sub classing with ext
ends the ext
ends keyword is used in class declarations or class expressions to create a class as a child of another class.
... class animal { constructor(name) { this.name = name; } speak() { console.log(`${this.name} makes a noise.`); } } class dog ext
ends animal { constructor(name) { super(name); // call the super class constructor and pass in the name parameter } speak() { console.log(`${this.name} barks.`); } } let d = new dog('mitzie'); d.speak(); // mitzie barks.
...And 5 more matches
ArrayBuffer.prototype.slice() - JavaScript
the slice() method returns a new arraybuffer whose contents are a copy of this arraybuffer's bytes from begin, inclusive, up to
end, exclusive.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax arraybuffer.slice(begin[,
end]) parameters begin zero-based byte index at which to begin slicing.
...And 5 more matches
String - JavaScript
rather than having lines that go on
endlessly, or wrap at the whim of your editor, you may wish to specifically break the string into multiple lines in the source code without affecting the actual string contents.
... method 1 you can use the + operator to app
end multiple strings together, like this: let longstring = "this is a very long string which needs " + "to wrap across multiple lines because " + "otherwise my code is unreadable." method 2 you can use the backslash character (\) at the
end of each line to indicate that the string will continue on the next line.
... string.prototype.
endswith(searchstring [, length]) determines whether a string
ends with the characters of the string searchstring.
...And 5 more matches
TypedArray.prototype.slice() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax typedarray.slice([begin[,
end]]) parameters begin optional zero-based index at which to begin extraction.
... a negative index can be used, indicating an offset from the
end of the sequence.
...And 5 more matches
gradientUnits - SVG: Scalable Vector Graphics
with this value and gradienttransform being the identity matrix, the normal of the linear gradient is perp
endicular to the gradient vector in object bounding box space (i.e., the abstract coordinate system where (0,0) is at the top/left of the object bounding box and (1,1) is at the bottom/right of the object bounding box).
... when the object's bounding box is not square, the gradient normal which is initially perp
endicular to the gradient vector within object bounding box space may r
ender non-perp
endicular relative to the gradient vector in user space.
... if the gradient vector is parallel to one of the axes of the bounding box, the gradient normal will remain perp
endicular.
...And 5 more matches
y2 - SVG: Scalable Vector Graphics
two elements are using this attribute: <line>, and <lineargradient> html,body,svg { height:100% } <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <line x1="1" x2="9" y1="5" y2="1" stroke="red" /> <line x1="1" x2="9" y1="5" y2="5" stroke="green" /> <line x1="1" x2="9" y1="5" y2="9" stroke="blue" /> </svg> line for <line>, y2 defines the y coordinate of the
ending point of the line.
...efault value 0 animatable yes example html,body,svg { height:100% } <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <line x1="1" x2="9" y1="5" y2="1" stroke="red" /> <line x1="1" x2="9" y1="5" y2="5" stroke="green" /> <line x1="1" x2="9" y1="5" y2="9" stroke="blue" /> </svg> lineargradient for <lineargradient>, y2 defines the y coordinate of the
ending point of the gradient vector used to map the gradient stop values.
... the exact behavior of this attribute is influenced by the gradientunits attributs value <length> | <percentage> default value 0% animatable yes example html,body,svg { height:100% } <svg viewbox="0 0 20 10" xmlns="http://www.w3.org/2000/svg"> <!-- by default the gradient vector
end at the top right corner of the bounding box of the shape it is applied to.
...And 5 more matches
<altGlyph> - SVG: Scalable Vector Graphics
the <altglyph> svg element allows sophisticated selection of the glyphs used to r
ender its child character data.
... usage context categoriestext content element, text content child elementpermitted contentany elements or character data attributes x this attribute defines the corresponding absolute x-coordinates for r
endering the element.
... value type: <list-of-coordinates> ; default value: absolute x-coordinate of ancestor <text> or <tspan>; animatable: yes y this attribute defines the corresponding absolute y-coordinates for r
endering the element.
...And 5 more matches
<radialGradient> - SVG: Scalable Vector Graphics
2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <radialgradient id="mygradient"> <stop offset="10%" stop-color="gold" /> <stop offset="95%" stop-color="red" /> </radialgradient> </defs> <!-- using my linear gradient --> <circle cx="5" cy="5" r="4" fill="url('#mygradient')" /> </svg> attributes cx this attribute defines the x coordinate of the
end circle of the radial gradient.
... value type: <length> ; default value: 50%; animatable: yes cy this attribute defines the y coordinate of the
end circle of the radial gradient.
... value type: <url> ; default value: none; animatable: yes r this attribute defines the radius of the
end circle of the radial gradient.
...And 5 more matches
Namespaces crash course - SVG: Scalable Vector Graphics
the declaration defines the default namespace, so the user agent knows that all the <svg> element's desc
endants also belong to the same namespace.
...(in fact uris are used so frequently that the term "namespace uri" is commonly used instead of "namespace name".) redeclaring the default namespace so if all the desc
endants of the root element are also defined to be in the default namespace, how do you mix in content from another namespace?
...the <svg> element has its own xmlns parameter, and by redeclaring the default namespace, this tells the user agent that the <svg> element and its desc
endants (unless they also redeclare the default namespace) belong to svg.
...And 5 more matches
Introduction to using XPath in JavaScript - XPath
see the using a user defined namespace resolver section in the app
endix for details.
...there is a section in the app
endix which contains a full list of the available constants.
...the constant values of this property are defined in the app
endix.
...And 5 more matches
An Overview - XSLT: Extensible Stylesheet Language Transformations
the string "http://www.w3.org/1999/xsl/transform" is a constant that designates the elements so marked as belonging to the set of tags designated by the w3c in the 1999 xslt recomm
endation.
... because typing "http://www.w3.org/1999/xsl/transform" repeatedly would be tedious and would r
ender the markup difficult to read, there is a standard mechanism for assigning a shorthand name to the namespace in the stylesheet heading.
...the tree is an abstract datatype, a conceptual model which can be implemented in various ways dep
ending on the parser and the processor.
...And 5 more matches
port - Archive of obsolete content
the port object provides message s
ending and receiving api enabling conversations between a content script and the main add-on code.
... each
end of the conversation has access to a port: the content script via the global self property, and the main add-on code via a worker object associated with the sdk module you've used to attach the content script, such as page-mod or page-worker.
... port methods emit() the port.emit() function s
ends a message from one side to the other.
...And 4 more matches
Content Processes - Archive of obsolete content
in this model, the ui would be r
endered in one process (called the chrome process), whereas each tab and each add-on would run in their own dedicated process (called content and add-on processes, respectively).
...although e10s has now been susp
ended, the sdk was designed with this multiprocess model in mind.
...content scripts differ from scripts that are loaded by the page itself in that they are provided with a messaging api that can be used to s
end messages back to the add-on script.
...And 4 more matches
page-mod - Archive of obsolete content
the listener is passed a worker object that your add-on can use to s
end and receive messages.
...the main add-on code s
ends the desired tag to the content script, and the content script replies by s
ending the html content of all the elements with that tag.
...its event handler s
ends the getelements message to the content script, and then adds a listener to the gotelement message.
...And 4 more matches
page-worker - Archive of obsolete content
for example, the content script might read some content and s
end it back to the main add-on, which could store it using the simple-storage api.
... for example, this add-on loads a page from wikipedia, and runs a content script in it to s
end all the headers back to the main add-on code: var pageworkers = require("sdk/page-worker"); // this content script s
ends header titles from the page to the add-on: var script = "var elements = document.queryselectorall('h2 > span'); " + "for (var i = 0; i < elements.length; i++) { " + " postmessage(elements[i].textcontent) " + "}"; // create a page worker that loads wikipedia: pageworkers.page({ contenturl: "http://en.wikipedia.org/wiki/internet", contentscript: script, contentscriptwhen: "ready", onmessage: function(message) { console.
...this may take one of the following values: "start": load content scripts immediately after the document element for the page is inserted into the dom, but before the dom content itself has been loaded "ready": load content scripts once dom content has been loaded, corresponding to the domcontentloaded event "
end": load content scripts once all the content (dom, js, css, images) for the page has been loaded, at the time the window.onload event fires this property is optional and defaults to "
end".
...And 4 more matches
core/heritage - Archive of obsolete content
reading or writing such code requires sharp eye and lot's of discipline, mainly due to code fragmentation and lots of machinery being exposed: // defining a simple class function dog(name) { // classes are for creating instances, calling them without `new` changes // behavior, which in majority cases you need to handle, so you
end up // with additional boilerplate.
...also you could specify which class you want to inherit from by passing special ext
ends property: var pet = class({ ext
ends: dog, // should inherit from dog initialize: function initialize(breed, name) { // to call ancestor methods you will have to access them // explicitly dog.prototype.initialize.call(this, name); this.breed = breed; }, call: function call(name) { return this.name === name ?
...ruff!' please note that class is just an utility function which we use in sdk, and recomm
end our users to use it, but it's in no way enforced.
...And 4 more matches
remote/parent - Archive of obsolete content
the sdk/remote/parent module provides port objects for the parent's
end of the conversation, and the sdk/remote/child module provides port objects for the child's
end.
...t { frames } = require("sdk/remote/child"); // listeners receive the frame the event was for as the first argument frames.port.on("changelocation", (frame, ref) => { frame.content.location += "#" + ref; }); // main.js const { frames, remoterequire } = require("sdk/remote/parent"); remoterequire("./remote.js", module); frames.port.emit("changelocation", "foo"); tab information this shows s
ending a message when a tab loads; this is similar to how the sdk/tabs module currently works.
...the module loads asynchronously but you can start s
ending messages to the module immediately.
...And 4 more matches
Creating annotations - Archive of obsolete content
the matched element is highlighted and has a click handler bound to it which s
ends a message to the main add-on code.
...the click handler s
ends a message called show back to the main add-on code.
... in the attach handler we do three things: s
end the content script a message with the current activation status add the worker to an array called selectors so we can s
end it messages later on assign a message handler for messages from this worker.
...And 4 more matches
Adding sidebars - Archive of obsolete content
you should try to balance the content in the tab panels so that you don't
end up with uneven and mostly empty panels.
...it only displays one of its child nodes at a time, dep
ending on its selectedindex value.
... the size of the deck dep
ends on the size of the largest child node, just like in a tabbox.
...And 4 more matches
An Interview With Douglas Bowman of Wired News - Archive of obsolete content
it wasn't that every level was absolutely necessary to reproduce the int
ended design effects.
...that approach meant that the content of every column would have to be loaded and calculated before it would be r
endered in the browser window.
...we
ended up confining the footer to the width of the center column to avoid any possible overlap.
...And 4 more matches
Block and Line Layout Cheat Sheet - Archive of obsolete content
ns_frame_sync_frame_and_view ns_frame_outside_children this flag is set if the combined area of a frame's children ext
end past the frame's bounding box.
...(see nsframe::isframetreetoodeep().) ns_frame_has_dirty_children ns_frame_has_view ns_frame_indep
endent_selection ns_frame_is_special nsblockframe mflags these flags are the private flags that are meaningful to block frames.
...is this where the "t
ending towards zero width" stuff comes in?
...And 4 more matches
Frequently Asked Questions - Archive of obsolete content
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> actually the second binding isn't always required, but unless you understand namespaces, we'd strongly recomm
end you include it.
...when servers s
end user agents an svg file they must tell the user agent that the file has the mime type "image/svg+xml", and if the svg file is stored gzipped they must tell the browser that too.
...failing to respect the mime types servers s
end is incorrect and has been a source of security holes in other browsers.
...And 4 more matches
Space Manager Detailed Design - Archive of obsolete content
it is not a general purpose class, and is not int
ended to be subclasses .
... */ prbool hasfloatdamage() { return !mfloatdamage.isempty(); } void includeindamage(nscoord aintervalbegin, nscoord ainterval
end) { mfloatdamage.includeinterval(aintervalbegin + my, ainterval
end + my); } prbool intersectsdamage(nscoord aintervalbegin, nscoord ainterval
end) { return mfloatdamage.intersects(aintervalbegin + my, ainterval
end + my); } #ifdef debug /** * dump the state of the spacemanager out to a file */ nsresult list(file* out); void sizeof(nsisizeofhandler* ahandler, pruint32...
...* aresult) const; #
endif private: // structure that maintains information about the region associated // with a particular frame struct frameinfo { nsiframe* const mframe; nsrect mrect; // rectangular region frameinfo* mnext; frameinfo(nsiframe* aframe, const nsrect& arect); #ifdef ns_build_refcnt_logging ~frameinfo(); #
endif }; // doubly linked list of band rects struct bandrect : prcliststr { nscoord mleft, mtop; nscoord mright, mbottom; printn mnumframes; // number of frames occupying this rect union { nsiframe* mframe; // single frame occupying the space nsvoidarray* mframes; // list of frames occupying the space }; bandrect(nscoord aleft, nscoord atop, nscoord aright, ...
...And 4 more matches
Tuning Pageload - Archive of obsolete content
the data flows in gecko as follows: network -> necko -> parser -> content sink -> content model -> r
endering model -> layout -> painting.
... during this delay, the page that's coming in is not painted, unless it
ends up fully loaded before the delay expires.
... content.notify.* controls the information flow from content sink to r
endering model.
...And 4 more matches
A XUL Bestiary - Archive of obsolete content
the chrome url, which appears in place of the http url in pointers like the following global skin processing instruction: <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> specifies a chrome to be loaded by the gecko r
endering engine.
... in the example above, the chrome is simply a skin file to be loaded into the xul file, but the chrome can also be used to load whole chromes, as when a <menuitem> in one window brings up a new chrome: <menuitem value="mozilla help" oncommand="window.op
endialog('chrome://help/content/help.xul', '_blank', 'chrome,all,dialog=no')" /> in this example, the chrome url is being used to point to a chrome within the package hierarchy of the mozilla application.
...this special option allows you to create and access chromes indep
endent of the mozilla browser and begins to suggest some possibilities for xul-as-platform beyond the simple restyling of the browser.
...And 4 more matches
Dynamically modifying XUL-based user interface - Archive of obsolete content
examples: using dom methods this section demonstrates the use of app
endchild(), createelement(), insertbefore(), and removechild() dom methods.
...var element = document.getelementbyid("someelement"); while(element.haschildnodes()){ element.removechild(element.firstchild); } inserting menu items to a menu this example adds two new menu items to a <menupopup>: to the start and to the
end of it.
... it uses document.createelementns() method to create the items, and insertbefore() with app
endchild() to insert the created xml elements within the document.
...And 4 more matches
Working With Directories - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
...var dir1 = io.getfile("home", ""); var dir2 = io.getfile("desktop", "myfiles"); to refer to a subdirectory, rather than using a path, use nsifile.app
end() to build up a path.
... for instance: var dir2 = io.getfile("desktop", "myfiles"); dir2.app
end("pictures"); dir2.app
end("vacations"); in this example, a subdirectory several levels down is referenced.
...And 4 more matches
Writing to Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
...this method has a number of options to specify text or binary writing, the character set, and whether to app
end to an existing file or create a new one.
...creating and app
ending to files a number of flags control whether a new file is created when writing or whether data is app
ended to an existing file.
...And 4 more matches
Extensions - Archive of obsolete content
this can be done by overlaying the popup to app
end the item to.
...for example, to add an item to the
end of the tools menu, use the following: <menupopup id="menu_toolspopup"> <menuitem label="thesaurus"/> </menupopup> note that other extensions may be adding their own items into the same menus.
... because of this, the new item might not appear at the
end of the menu but before a menuitem added by another extension, dep
ending on the order in which the overlays are applied.
...And 4 more matches
Positioning - Archive of obsolete content
for instance: <menupopup id="edititems" position="
end_before"> <menuitem label="cut"/> <menuitem label="copy"/> <menuitem label="paste"/> </menupopup> <label value="clipboard" popup="edititems"/> in this example, a menupopup is attached to a label via the popup attribute, which will cause the popup to appear when the label is left-clicked.
... the position attribute is used to specify that the popup should appear at the '
end_before' location, which will cause the popup to appear to the right of the label aligned along the top edge.
...equivalent to topleft bottomleft before_
end the right side of the popup is aligned with the right side of the anchor, and the bottom of the popup is aligned along the top of the anchor.
...And 4 more matches
textbox (Toolkit autocomplete) - Archive of obsolete content
n, showimagecolumn, size, tabindex, tabscrolling, timeout, type, value properties accessibletype, completedefaultindex, controller, crop, disableautocomplete, disablekeynavigation, disabled, editable, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputfield, label, maxlength, maxrows, minresultsforpopup, open, popup, popupopen, searchcount, searchparam, selection
end, selectionstart, showcommentcolumn, showimagecolumn,size, tabindex, tabscrolling, textlength, textvalue, timeout, type, value methods getsearchat, onsearchcomplete, ontextentered, ontextreverted, select, setselectionrange examples <textbox type="autocomplete" autocompletesearch="history"/> attributes accesskey type: character this should be set to a character that is used as...
... enablehistory new in thunderbird 1requires seamonkey 2.0 type: boolean if true, an arrow button will appear on the
end of the textbox which, when pressed, will open a dropdown menu of all available results.
... search a textbox int
ended for searching.
...And 4 more matches
Creating toolbar buttons (Customize Toolbar Window) - Archive of obsolete content
its int
ended audience is extension developers with a basic knowledge of xul and css.
...the latter is possible, but is not recomm
ended and is harder to implement.
...just add code like this to your overlay: <toolbarpalette id="browsertoolbarpalette"> <toolbarbutton id="myextension-button" class="toolbarbutton-1" label="&toolbarbutton.label;" tooltiptext="&toolbarbutton.tooltip;" oncommand="myextension.ontoolbarbuttoncommand(event);"/> </toolbarpalette> notes: the id of the palette (browsertoolbarpalette in the example) dep
ends on the window (the parent window of the toolbar you wish to insert a button).
...And 4 more matches
Manifest Files - Archive of obsolete content
the xpcnativewrappers=yes part at the
end of the manifest line is a flag that may optionally be used.
...the method used dep
ends on what kind of application you are creating.
...it is recomm
ended to upload extensions to the mozilla add-ons site, where users can locate them for installation.
...And 4 more matches
XBL Inheritance - Archive of obsolete content
« previousnext » in this section, we'll look at how to ext
end existing xbl definitions.
...however, it would be better to simply ext
end the existing button code.
... any binding can be ext
ended with another.
...And 4 more matches
Using the Editor from XUL - Archive of obsolete content
it thus gets callbacks for the start, progress, and
end of the document load.
... we detect that the document we want to edit has loaded successfully in nseditorshell::on
enddocumentload().
...cases that it does not handle explicitly it passes on to nshtmleditor::editorkeypress(), which is where normal typing keys
end up.
...And 4 more matches
XUL element attributes - Archive of obsolete content
end child elements are placed on the right or bottom edge of the box.
...the default value dep
ends on the element.
...
end child elements are placed on the right or bottom edge of the box.
...And 4 more matches
XML - Archive of obsolete content
html -- which is a derived language like our memoml (see the app
endix notes for information on the geneology of markup languages) -- has been created for the purposes of representing hypertext documents and the basic relationships between them.
... gecko reads xul and makes interfaces just as our specially created memo is nothing but text unless there is an application for making use of the structure in some way, so too our xul widgets are just marked-up text unless there is software to interpret the structures and r
ender the xul as actual widgets.
... all xml requires a parser or an engine of some kind at the receiving
end to make it run.
...And 4 more matches
button - Archive of obsolete content
it is typically r
endered as a grey outset rectangle.
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 4 more matches
prefwindow - Archive of obsolete content
you can open a preference window using a window's op
endialog method as with other dialogs.
... you can pass the id of a particular pane as the fourth argument to op
endialog to open a specific pane by default.
...prefer the classical window.op
endialog() with the following window features: "chrome,titlebar,toolbar,centerscreen,dialog=yes".
...And 4 more matches
toolbarbutton - Archive of obsolete content
it is equivalent to a regular button except that it may be r
endered differently.
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 4 more matches
treecol - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 4 more matches
XULRunner 1.8.0.1 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
...installing xulrunner mozilla provides xulrunner for windows, mac os x, and linux, in english: download xulrunner for windows download xulrunner for mac os x download xulrunner for linux windows unpack the zip file to a new directory using a archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\1.8.0.1 .
...And 4 more matches
XULRunner 1.8.0.4 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
... installing xulrunner mozilla provides xulrunner for windows, mac os x, and linux, in english: download xulrunner for windows download xulrunner for mac os x download xulrunner for linux windows unpack the zip file to a new directory using an archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\1.8.0.4 .
...And 4 more matches
XULRunner 1.9.1 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
...installing xulrunner mozilla provides xulrunner for windows, mac os x, and linux, in english: download xulrunner for windows download xulrunner for mac os x download xulrunner for linux windows unpack the zip file to a new directory using an archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\1.9.1 .
...And 4 more matches
XULRunner 1.9.2 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
...installing xulrunner mozilla provides xulrunner for windows, mac os x, and linux, in english: download xulrunner for windows download xulrunner for mac os x download xulrunner for linux windows unpack the zip file to a new directory using an archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\1.9.2 .
...And 4 more matches
XULRunner 1.9 Release Notes - Archive of obsolete content
it provides facilities for launching standalone xul applications and embedding apis which can be used to r
ender web pages within native and java applications.
... installing xulrunner mozilla provides xulrunner for windows, mac os x, and linux, in english: download xulrunner for windows download xulrunner for mac os x download xulrunner for linux windows unpack the zip file to a new directory using an archive tool (7zip is recomm
ended).
... the following directory is recomm
ended: c:\program files\mozilla xulrunner\1.9 .
...And 4 more matches
-ms-filter - Archive of obsolete content
filterfrom.filters.item(0).transition=12; imagefrom.style.visibility = "hidden"; filterto.style.visibility = ""; filterfrom.filters.item(0).play(14); } </script> </body> gradient progid:dximagetransform.microsoft.gradient( <properties> ) where <properties> = [ <enabled> | <
endcolor> | <
endcolorstr> | <gradienttype> | <startcolor> | <startcolorstr> ]# where <enabled> = 'enabled=' [ true | false ] <
endcolor> = 'startcolor=' <color> <
endcolorstr> = 'startcolorstr=' <color> <gradienttype> = 'gradienttype=' <integer> <startcolor> = 'startcolor=' <color> <startcolorstr> = 'startcolorstr=' <color> enabled default: true set to false to disable.
...
endcolor the
end color, supports only opaque colors in the #rrggbb notation.
...
endcolorstr the
end color, supports both opaque colors (#rrggbb) and colors with alpha opacity using the #aarrggbb notation.
...And 4 more matches
Writing JavaScript for XHTML - Archive of obsolete content
in the age of xml comments are what they were int
ended: comments.
...for example: var string = '<div xmlns="http://www.w3.org/999/xhtml"><h1>hello world!</h1></div>'; var parser = new domparser(); var documentfragment = parser.parsefromstring(string, "text/xml"); body.app
endchild(documentfragment); // assuming 'body' is the body element but be aware that if your string is not well-formed xml (e.g., you have an & where it should not be), then this method will crash, leaving you with a parser error.
... two possible ways still are there, but neither is very promissing: take the library, recode it and publish it or e-mail the developers, e-mail your fri
ends to e-mail the developers and e-mail your customers to e-mail the developers.
...And 4 more matches
GLSL Shaders - Game development
fragment shaders compute the r
enderings of a shape's colors and other attributes.
...in this article we will make a simple code example that r
enders a cube.
...most of the components like the r
enderer, camera, and lights will stay the same, but instead of the basic material we will set the cube's color and position using shaders.
...And 4 more matches
Plug-in Development Overview - Gecko Plugin API Reference
the server looks for the mime type registered by a plug-in, based on the file extension, and starts s
ending the file to the browser.
... s
ending and receiving streams streams are objects that represent urls and the data they contain.
...the plug-in can select one of these transmission modes: normal mode: the browser s
ends the stream data sequentially to the plug-in as the data becomes available.
...And 4 more matches
Legacy layout methods - Learn web development
previous overview: css layout next grid systems are a very common feature used in css layouts, and before css grid layout they t
ended to be implemented using floats or other layout features.
...susp
endisse ac imperdiet turpis.
...ut id ornare felis, eget fermentum sapien.</p> </div> <div> <h2>second column</h2> <p>nam vulputate diam nec tempor bib
endum.
...And 4 more matches
Positioning - Learn web development
this is very much dep
endent on the position property of the ancestors of the positioned element (see identifying the containing block).
...this works in exactly the same way as absolute positioning, with one key difference: whereas absolute positioning fixes an element in place relative to its nearest positioned ancestor (the initial containing block if there isn't one), fixed positioning usually fixes an element in place relative to the visible portion of the viewport, except if one of its asc
endants is a fixed containing block due to its transform property being different from none.
...susp
endisse ac imperdiet turpis.
...And 4 more matches
How do I start to design my website? - Learn web development
an hour's discussion with fri
ends is a good start, but inadequate.
...it can be anything: selling goods to make money, expressing political opinions, meeting new fri
ends, gigging with musicians, collecting cat pictures, or whatever you want.
... find a new girl/boyfri
end.
...And 4 more matches
What is a web server? - Learn web development
an http server can be accessed through the domain names of the websites it stores, and it delivers the content of these hosted websites to the
end user's device.
...when the request reaches the correct (hardware) web server, the (software) http server accepts the request, finds the requested document, and s
ends it back to the browser, also through http.
...we call it "static" because the server s
ends its hosted files as-is to your browser.
...And 4 more matches
How the Web works - Learn web development
on one
end of the road is the client, which is like your house.
... on the other
end of the road is the server, which is a shop you want to buy something from.
... in addition to the client and the server, we also need to say hello to: your internet connection: allows you to s
end and receive data on the web.
...And 4 more matches
Creating hyperlinks - Learn web development
it normally makes sense to link to a specific heading, so this would look something like the following: <h2 id="mailing_address">mailing address</h2> then to link to that specific id, you'd include it at the
end of the url, preceded by a hash/pound symbol (#), for example: <p>want to write us a letter?
...if the pdf was available in a subdirectory inside projects called pdfs, the relative link would be pdfs/project-brief.pdf (the equivalent absolute url would be http://www.example.com/projects/pdfs/project-brief.pdf.) a relative url will point to different places dep
ending on the actual location of the file you refer from — for example if we moved our index.html file out of the projects directory and into the root of the web site (the top level, not in any directories), the pdfs/project-brief.pdf relative url link inside it would now point to a file located at http://www.example.com/pdfs/project-brief.pdf, not a file located at http://www.example.com/projects/...
... in its most basic and commonly used form, a mailto: link simply indicates the email address of the int
ended recipient.
...And 4 more matches
Basic math in JavaScript — numbers and operators - Learn web development
type the following lines into your browser's console: let lotsofdecimal = 1.766584958675746364; lotsofdecimal; let twodecimalplaces = lotsofdecimal.tofixed(2); twodecimalplaces; converting to number data types sometimes you might
end up with a number that is stored as a string type, which makes it difficult to perform calculations with it.
... for example, try typing these lines into your console: let mynumber = '74'; mynumber + 3; you
end up with the result 743, not 77, because mynumber is actually defined as a string.
...you can see that it's been incremented if you return the variable value again: num1; the same is true of -- : try the following let num2 = 6; num2--; num2; note: you can make the browser do it the other way round — increment/decrement the variable then return the value — by putting the operator at the start of the variable instead of the
end.
...And 4 more matches
What went wrong? Troubleshooting JavaScript - Learn web development
logic errors: these are errors where the syntax is actually correct but the code is not what you int
ended it to be, meaning that program runs successfully but gives incorrect results.
... syntax errors round three now if you try playing the game through again, you should get more success — the game should play through absolutely fine, until you
end the game, either by guessing the right number, or by running out of guesses.
...the instance that stores the random number that we want to guess at the start of the game should be around line number 44: let randomnumber = math.floor(math.random()) + 1; and the one that generates the random number before each subsequent game is around line 113: randomnumber = math.floor(math.random()) + 1; to check whether these lines are indeed the problem, let's turn to our fri
end console.log() again — insert the following line directly below each of the above two lines: console.log(randomnumber); save and refresh, then play a few games — you'll see that randomnumber is equal to 1 at each point where it is logged to the console.
...And 4 more matches
JavaScript object basics - Learn web development
let's update the javascript object in our file to look like this: const person = { name: ['bob', 'smith'], age: 32, g
ender: 'male', interests: ['music', 'skiing'], bio: function() { alert(this.name[0] + ' ' + this.name[1] + ' is ' + this.age + ' years old.
... it is very common to create an object using an object literal when you want to transfer a series of structured, related data items in some manner, for example s
ending a request to the server to be put into a database.
... s
ending a single object is much more efficient than s
ending several items individually, and it is easier to work with than an array, when you want to identify individual items by name.
...And 4 more matches
Web performance resources - Learn web development
best practices start with learning the critical r
endering path of the browser.
...if you do, have a backup plan for seo (e.g r
ender full page for bot traffic); for example, by using the loading attribute on the <img> element it is also crucial to realize what is really important to your users.
...as we learned in the critical r
endering path document, linking css with a tradional link tag with rel="stylesheet" is synchronous and blocks r
endering.
...And 4 more matches
Using Vue computed properties - Learn web development
these work similarly to methods, but only re-run when one of their dep
endencies changes.
...for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
... while it might be tempting to do something like this: <h2>{{todoitems.filter(item => item.done).length}} out of {{todoitems.length}} items completed</h2> it would be recalculated on every r
ender.
...And 4 more matches
Handling common accessibility problems - Learn web development
semantic structure the most important quick win in semantic html is to use a structure of headings and paragraphs for your content; this is because screen reader users t
end to use the headings of a document as signposts to find the content they need more quickly.
...you might have inherited a site where the semantics are not very good (perhaps you've
ended up with a horrible cms that generates buttons made with <div>s), or you are using a complex control that does not have keyboard accessibility built in, like the html5 <video> element (amazingly, opera is the only browser that allows you to tab through the <video> element's default browser controls).
... css css t
ends to provide a lot fewer fundamental accessibility features than html, but it can still do just as much damage to accessibility if used incorrectly.
...And 4 more matches
Implementing feature detection - Learn web development
previous overview: cross browser testing next feature detection involves working out whether a browser supports a certain block of code, and running different code dep
ending on whether it does (or doesn't), so that the browser can always provide a working experience rather than crashing/erroring in some browsers.
...min.js files into your example directory, and link to one of the files by putting the following under your <title> element: <script src="html5shiv.min.js"></script> have a look at your example css files — you'll see that basic-styling.css handles all the styling that we want to give to every browser, whereas the other two css files contain the css we want to selectively apply to browser dep
ending on their support levels.
... note: often such an approach is overkill for a minor feature detection problem — you can often get away with using multiple v
endor prefixes and fallback properties, as described in css fallback behavior and handling css prefixes.
...And 4 more matches
Command line options
dep
ending on changes between the two versions, some files in a profile may not be downwards compatible.
... -no-remote do not accept or s
end remote commands.
...instances created with this parameter do not accept or s
end remote commands, see bug 650078.
...And 4 more matches
Makefiles - Best practices and suggestions
dep
endency builds - a second invocation of make within a sandbox should always be a nop.
... for classes of hardware (unix/windows) place your makefile in a subdirectory, unix/makefile.in always include dep
endencies when creating a target initial make call should always be the workhorse: build, generate, deploy, install, etc.
... all subsequent make calls must become a nop unless sources or dep
endencies change or have been removed.
...And 4 more matches
Simple Instantbird build
build prerequisites hardware requirements: while you can build instantbird on older hardware it can take quite a bit of time to compile on slower machines, and having 8gb of ram is recomm
ended (though you can probably still get away with 4gb).
... setup: dep
ending on your operating system you will need to carry out a different process to prepare your machine.
... get the latest source code from mozilla's comm-central mercurial code repository: hg clone http://hg.mozilla.org/comm-central then, get all the repositories it dep
ends on.
...And 4 more matches
HTTP Cache
when the server responds positively (in case of an http server with a 206 response code) the writer (in this order) opens the output stream on the cache entry and calls setvalid to unblock other p
ending openers.
... any other p
ending openers, if any, are now given this new entry to examine and read as an existing entry.
...write: writes are processed as last, we cache data in memory in the mean time management: level for the memory pool and cacheentry background operations close: file closing level index: index is being rebuild here evict: files overreaching the disk space consumption limit are being evicted here note: special case for eviction - when an eviction is scheduled on the io thread, all operations p
ending on the open level are first merged to the open_priority level.
...And 4 more matches
IPDL Best Practices
this document is int
ended to help correct these before the formal review process is initiated.
... are you s
ending the __delete__ message to trigger protocol deletion?
... the main concern you have now is that you absolutely, certainly, positively call s
end__delete__ in all possible circumstances or your protocol can and will leak.
...And 4 more matches
Examples
how to throw reject if you have a function that is a promise, and want to
end it and throw a reject, you can throw an error.
...") let path = os.path.join(os.constants.path.tmpdir, "file.txt"); let promise = os.file.exists(path); let newpromise = promise.then(function onfulfill(aexists) { if (aexists) { console.log("you have file.txt in your temporary directory."); } else { throw new error("you don't have file.txt in your temporary directory."); } }); // unexpected errors should always be reported at the
end of a promise chain.
....jsm") let path = os.path.join(os.constants.path.tmpdir, "file.txt"); let promise = os.file.exists(path); let newpromise = promise.then(function onfulfill(aexists) { if (aexists) { console.log("you have file.txt in your temporary directory."); } else { console.log("you don't have file.txt in your temporary directory."); } }); // unexpected errors should always be reported at the
end of a promise chain.
...And 4 more matches
PromiseWorker.jsm
summary a promiseworker is a chromeworker except instead of calling postmessage() to s
end a message, you call post(), which returns a promise.
... s
ending a message from main thread to s
end a message to a worker from the main thread, one normally uses postmessage().
... s
ending a message from worker with all other workers, to s
end a message to the main thread, postmessage is typically used.
...And 4 more matches
Application Translation with Mercurial
the localization of the lightning cal
endar add-on also takes place on these branches.
... lightning and cal-* denote branches of lightning, the cal
endar add-on for thunderbird.
... file comparison program for the translation, it is recomm
end to use file comparison program to compare the english file (containing the new texts) with the file of your locale (which is still missing the new strings).
...And 4 more matches
Bootstrapping a new locale
installing mercurial dep
ending on your operating system, you will need to install the correct version of hg on your machine.
... make sure to have the directory where you int
end to work as the current path on your terminal.
... directories to localize if you're starting from scratch, you should have just downloaded: mozilla-1.9.x/browser/locales/ mozilla-1.9.x/dom/locales/ mozilla-1.9.x/netwerk/locales/ mozilla-1.9.x/other-licenses/branding/firefox/locales/en-us mozilla-1.9.x/security/manager/locales/ mozilla-1.9.x/toolkit/locales/ and then copied them so that the files for localization
end up in the following directories: ab-cd/browser/ ab-cd/dom/ ab-cd/netwerk/ ab-cd/other-licenses/branding/firefox/ ab-cd/security/manager/ ab-cd/toolkit/ translating to start editing, you will need a text editing application.
...And 4 more matches
Localization content best practices
dep
ending on the parser logic, one of these two translations will be ignored.
... idiom idiom, in a loose sense, also has an impact on localization if it leads to strings being prepared in a way that r
enders them unlocalizable.
...examples from other languages: g
ender in german: nouns can be either masculine, feminine or neuter.
...And 4 more matches
Translation phase
as you gain more experience, you may want to localize indep
endent of mozilla-developed l10n tools, which we'll also discuss here.
... these are the l10n tools we use to localize mozilla applications: pootle a user-fri
endly web portal built on the translate toolkit api.
... lightning lightning is a popular cal
endaring, scheduling and task management extension.
...And 4 more matches
Localization Use Cases
needless to say, this
ends up being long and often unnaturally-sounding to the native speakers.
...slovenian uses the locative case with its about preposition: <aboutbrowser "o {{ browserbrandshortname.locative }}"> for the official branding, we get: o firefoxu and for the unofficial branding, we
end up with: o brskalniku g
enders in the system app's apps/system/locales/system, there's a string called crash-banner-os2.
... problem definition in some languages, past participles (crashed) must be accorded with the g
ender of the subject (in case of reflexive verbs) or the g
ender of the object.
...And 4 more matches
Introduction to NSPR
the netscape portable runtime (nspr) api allows compliant applications to use system facilities such as threads, thread synchronization, i/o, interval timing, atomic operations, and several other low-level services in a platform-indep
endent manner.
...each thread is an execution entity that is scheduled indep
endently from other threads in the same process.
...a thread is created by an explicit client request and remains a valid, indep
endent execution entity until it returns from its root function or the process abnormally terminates.
...And 4 more matches
PR_TransmitFile
s
ends a complete file across a connected socket.
... syntax #include <prio.h> print32 pr_transmitfile( prfiledesc *networksocket, prfiledesc *sourcefile, const void *headers, print32 hlen, prtransmitfileflags flags, printervaltime timeout); parameters the function has the following parameters: networksocket a pointer to a prfiledesc object representing the connected socket to s
end data over.
... sourcefile a pointer to a prfiledesc object representing the file to s
end.
...And 4 more matches
Enc Dec MAC Using Key Wrap CertReq PKCS10 CSR
clude <prtypes.h> #include <plstr.h> /* nss headers */ #include <keyhi.h> #include <pk11priv.h> /* our samples utilities */ #include "util.h" /* constants */ #define blocksize 32 #define modblocksize 128 #define default_key_bits 1024 /* header file constants */ #define enckey_header "-----begin wrapped enckey-----" #define enckey_trailer "-----
end wrapped enckey-----" #define mackey_header "-----begin wrapped mackey-----" #define mackey_trailer "-----
end wrapped mackey-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad...
...-----" #define pad_trailer "-----
end pad-----" #define lab_header "-----begin key label-----" #define lab_trailer "-----
end key label-----" #define pubkey_header "-----begin pub key -----" #define pubkey_trailer "-----
end pub key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----
end new certificate request-----" #define ns_cert_enc_header "-----begin certificate for encryption-----" #define ns_cert_enc_trailer "-----
end certificate for encryption-----" #define ns_cert_vfy_header "-----begin certificate for signature verification-----" #define ns_cert_vfy_trailer "-----
end certificate for signature verification-----" #define ns_sig_header "-----begin sign...
...ature-----" #define ns_sig_trailer "-----
end signature-----" #define ns_cert_header "-----begin certificate-----" #define ns_cert_trailer "-----
end certificate-----" /* sample 6 commands */ typedef enum { generate_csr, add_cert_to_db, save_cert_to_header, encrypt, decrypt, sign, verify, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4, pubkey = 5, lab = 6, certenc= 7, certvfy= 8, sig = 9 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s %s %s %s %s %s %s %s %s %s\n\n", progname, " -<g|a|h|e|ds|v> -d <dbdirpath> ", ...
...And 4 more matches
nss tech note3
_ca emailrecipient: cert_sign; email_ca or ssl_ca objectsigner: cert_sign; object_signing_ca; usageanyca: cert_sign; object_signing_ca or email_ca or ssl_ca; statusresponder: cert_sign; object_signing_ca or email_ca or ssl_ca; note: when the required key usage is key_agreement or key_encipherment, the actual key usage required dep
ends on the key's algorithm.
... the x.509v3 ext
ended key usage extension as oid { 2 5 29 37 } encoded in hex as 0x55, 0x1d, 0x25.
... that extension contains a sequence of oids, each of which signifies one or more cert types, dep
ending on the presence or absence of of the true basic constraints extension; that is, the interpretation of the ext
ended key usage extension is controlled by whether the cert is a ca cert, or not.
...And 4 more matches
JS_THREADSAFE
requests must be bracketed with calls to js_beginrequest() and js_
endrequest().
...*/ js_
endrequest(cx); a request is always associated with a specific jscontext and runs from start to finish on a single thread.
...this means that any potentially long-running operation in a native must be bracketed with calls to js_susp
endrequest() and js_resumerequest().
...And 4 more matches
AT APIs Support
accessible gecko gecko is a r
endering engine that firefox, seamonkey, netscape and yelp use.
... gecko can r
ender a variety of content, not just html and supports key web standards such as cascading style sheets, javascript and the w3c dom.
... on windows platform mfcembed testing client - this is a very simple package, great for testing basic html accessibility with your products and the gecko r
endering engine (please contact us for a copy).
...And 4 more matches
Using the Places history service
the places history service ("navhistory") implements these history interfaces: nsiglobalhistory2: basic add page, is visited functionality used by the docshell when visiting and r
endering pages.
... nsiglobalhistory3: adds extra functions for dealing with redirects and hints for r
endering (gecko flags).
...a session is
ended when a new url is typed in or selected from bookmarks.
...And 4 more matches
Building the WebLock UI
it uses xul, which is an xml language that gecko knows how to r
ender 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.
... because this step (particularly the overlay section) is so dep
endent on mozilla, the chapter is divided up into a couple of different sections.
...that function uses the op
endialog method from the window object and takes the url to the xul file in which the dialog is defined: function loadweblock() { window.op
endialog("chrome://weblock/weblock.xul"); } xul the entire user interface of the mozilla browser and all of the applications that go with it, including the mail client, the irc client, and others, have been defined in an xml language called xul.
...And 4 more matches
Using XPCOM Utilities to Make Things Easier
to write a different component library, you could copy the listing at the
end of the chapter, change very little, and paste it into a new project.
...to get an idea about how much can be handled with the macros described in this section, compare the code listing in weblock2.cpp at the
end of the chapter with weblock1.cpp in the previous chapter.
...the four required parts[other-parts] of the structure contain the following information: a human readable class name the class id (cid) the contract id (an optional but recomm
ended argument) a constructor for the given object static const nsmodulecomponentinfo components[] = { { "pretty class name", cid, contract_id, constructor }, // ...
...And 4 more matches
XPCOM Stream Guide
var converter = components.classes["@mozilla.org/intl/scriptableunicodeconverter"] .createinstance(components.interfaces.nsiscriptableunicodeconverter); converter.charset = "utf-8"; var stream = converter.converttoinputstream(string); javascript modules are your fri
ends there are several useful javascript modules at your disposal.
...from the nsirequestobserver interface, the .onstartrequest(request, context) method tells you when the request begins, while the .onstoprequest(request, context) method tells you when the request
ends.
... as for passing in the stream listener and starting the request: that will vary dep
ending on the use case.
...And 4 more matches
Interfacing with the XPCOM cycle collector
the int
ended audience is mozilla c++ developers.
... what the cycle collector does the cycle collector sp
ends most of its time accumulating (and forgetting about) pointers to xpcom objects that might be involved in garbage cycles.
...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.
...And 4 more matches
nsACString_internal
<map id="classes" name="classes"> <area alt="" coords="456,5,605,53" href="http://developer.mozilla.org/en/nsacstring_internal" shape="rect" title="nsacstring_internal"> <area alt="" coords="415,101,497,149" href="http://developer.mozilla.org/en/nscstring" shape="rect" title="nscstring"> <area alt="" coords="521,101,689,149" href="http://developer.mozilla.org/en/nsdep
endentcsubstring" shape="rect" title="nsdep
endentcsubstring"> <area alt="" coords="172,197,289,245" href="http://developer.mozilla.org/en/nsfixedcstring" shape="rect" title="nsfixedcstring"> <area alt="" coords="315,197,437,245" href="http://developer.mozilla.org/en/nsxpidlcstring" shape="rect" title="nsxpidlcstring"> <area alt="" coords="461,197,611,245" href="http://developer.mozilla.org/en/nsdepen...
...dentcstring" shape="rect" title="nsdep
endentcstring"> <area alt="" coords="635,197,787,245" href="http://developer.mozilla.org/en/nspromiseflatcstring" shape="rect" title="nspromiseflatcstring"> <area alt="" coords="173,293,285,341" href="http://developer.mozilla.org/en/nscautostring" shape="rect" title="nscautostring"> <area alt="" coords="5,389,227,437" href="http://developer.mozilla.org/en/ns_lossyconvertutf16toascii" shape="rect" title="ns_lossyconvertutf16toascii"> <area alt="" coords="251,389,435,437" href="http://developer.mozilla.org/en/ns_convertutf16toutf8" shape="rect" title="ns_convertutf16toutf8"> <area alt="" coords="309,293,445,341" href="http://developer.mozilla.org/en/nsadoptingcstring" shape="rect" title="nsadoptingcstring"> </map> method overview constructors beginr...
...eading
endreading beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign assignascii assignliteral(const char assignliteral(char operator= adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar data members no public members.
...And 4 more matches
nsAString_internal
<map id="classes" name="classes"> <area alt="" coords="415,5,553,53" href="http://developer.mozilla.org/en/nsastring_internal" shape="rect" title="nsastring_internal"> <area alt="" coords="379,101,451,149" href="http://developer.mozilla.org/en/nsstring" shape="rect" title="nsstring"> <area alt="" coords="475,101,635,149" href="http://developer.mozilla.org/en/nsdep
endentsubstring" shape="rect" title="nsdep
endentsubstring"> <area alt="" coords="151,197,257,245" href="http://developer.mozilla.org/en/nsfixedstring" shape="rect" title="nsfixedstring"> <area alt="" coords="284,197,396,245" href="http://developer.mozilla.org/en/nsxpidlstring" shape="rect" title="nsxpidlstring"> <area alt="" coords="420,197,559,245" href="http://developer.mozilla.org/en/nsdep
endentst...
...ring" shape="rect" title="nsdep
endentstring"> <area alt="" coords="583,197,727,245" href="http://developer.mozilla.org/en/nspromiseflatstring" shape="rect" title="nspromiseflatstring"> <area alt="" coords="152,293,253,341" href="http://developer.mozilla.org/en/nsautostring" shape="rect" title="nsautostring"> <area alt="" coords="5,389,192,437" href="http://developer.mozilla.org/en/ns_convertasciitoutf16" shape="rect" title="ns_convertasciitoutf16"> <area alt="" coords="216,389,400,437" href="http://developer.mozilla.org/en/ns_convertutf8toutf16" shape="rect" title="ns_convertutf8toutf16"> <area alt="" coords="277,293,405,341" href="http://developer.mozilla.org/en/nsadoptingstring" shape="rect" title="nsadoptingstring"> </map> method overview constructors beginreading
endreading ...
... beginwriting
endwriting data length isempty isvoid isterminated charat operator[] first last countchar findchar equals equalsascii equalsliteral(const char equalsliteral(char lowercaseequalsascii lowercaseequalsliteral(const char lowercaseequalsliteral(char assign assignascii assignliteral(const char assignliteral(char operator= adopt replace replaceascii app
end app
endascii app
endliteral(const char app
endliteral(char operator+= insert cut setcapacity setlength truncate getdata getmutabledata setisvoid stripchar data members no public members.
...And 4 more matches
nsIFaviconService
this function is int
ended for automatic usage, and will only save favicons for "good" urls, as defined by what gets added to history.
...this function does not s
end out notifications that the data has changed.
...but s
ending out those notifications is very intensive.
...And 4 more matches
nsIFrameLoader
method overview void activateframeevent(in astring atype, in boolean capture); void activateremoteframe(); void destroy(); void loadframe(); void loaduri(in nsiuri auri); void s
endcrossprocesskeyevent(in astring atype, in long akeycode, in long acharcode, in long amodifiers, [optional] in boolean apreventdefault); void s
endcrossprocessmouseevent(in astring atype, in float ax, in float ay, in long abutton, in long aclickcount, in long amodifiers, [optional] in boolean aignorerootscrollframe); void updatepositionandsize(in nsiframe aiframe); native code on...
... s
endcrossprocesskeyevent() creates and s
ends a keyevent to the content viewport's process.
... see nsidomwindowutils.s
endkeyevent() for details; this method is its equivalent for cross-process event handling.
...And 4 more matches
nsIIOService
inherits from: nsisupports last changed in gecko 1.2 this interface duplicates many of the nsiprotocolhandler methods in a protocol handler indep
endent way (for example newuri() inspects the scheme in order to delegate creation of the new uri to the appropriate protocol handler).
...and for a css stylesheet it's the document whose r
endering will be affected by the stylesheet.
...in that case the principal of the stylesheet which contains the import command is the triggeringprincipal, and the principal of the document whose r
endering is affected is the loadingprincipal.
...And 4 more matches
nsIJetpack
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void s
endmessage(in astring amessagename /* [optional] in jsval v1, [optional] in jsval v2, ...
... */); void registerreceiver(in astring amessagename, in jsval areceiver); void unregisterreceiver(in astring amessagename, in jsval areceiver); void unregisterreceivers(in astring amessagename); void evalscript(in astring ascript); nsivariant createhandle(); void destroy(); methods s
endmessage() this method asynchronously s
ends a message to the jetpack process.
... void s
endmessage( in astring amessagename, [optional] in jsval v1, optional [optional] in jsval v2, optional ...
...And 4 more matches
nsIMsgHeaderParser
astring makefulladdress( in astring aname, in astring aaddress ); parameters aname the name of the s
ender.
... aaddress the address of the s
ender.
... string makefulladdressstring( in string aname, in string aaddress ); parameters aname the name of the s
ender.
...And 4 more matches
nsINavHistoryQuery
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 nsinavhistoryquery is not int
ended to be a super-general query mechanism.
... absolute
endtime prtime read only: retrieves the
end time value that the currently loaded reference points + offset resolve to.
...otherwise, it will return anything whose host name
ends in domain.
...And 4 more matches
Standard OS Libraries
components.utils.import("resource://gre/modules/ctypes.jsm"); let x11 = ctypes.open("libx11.so.6"); let display_ptr = ctypes.voidptr_t; let xop
endisplay = x11.declare("xop
endisplay", ctypes.default_abi, display_ptr, ctypes.char.ptr ); let window = ctypes.int; let xrootwindow = x11.declare("xrootwindow", ctypes.default_abi, window, display_ptr, ctypes.int ); let xquerypointer = x11.declare("xquerypointer", ctypes.default_abi, ctypes.bool, display_ptr, window, window.ptr, window.ptr, cty...
...pes.int.ptr, ctypes.int.ptr, ctypes.int.ptr, ctypes.int.ptr, ctypes.unsigned_int.ptr ); let xclosedisplay = x11.declare("xclosedisplay", ctypes.default_abi, ctypes.int, display_ptr ); let display = xop
endisplay(null); let rootwindow = xrootwindow(display, 0); let root = new window(); let child = new window(); let rootx = new ctypes.int(); let rooty = new ctypes.int(); let windowx = new ctypes.int(); let windowy = new ctypes.int(); let mask = new ctypes.unsigned_int(); xquerypointer(display, rootwindow, root.address(), child.address(), rootx.address(), rooty.address(), windowx.address(), windowy.address(), mask.address() ); xclosedisplay(display); components.utils.reporterror(rootx.value + "," + rooty.value); x11.close(); reso...
...urces for x11 ext
ended window manager hints githubgists :: noitidart / search · x11 - x11 js-ctypes snippets that can be copied and pasted to scratchpad xcb all the above methods, gdk, gtk, and x11/xlib are meant to be used on the main thread.
...And 4 more matches
Plug-in Development Overview - Plugins
the server looks for the mime type registered by a plug-in, based on the file extension, and starts s
ending the file to the browser.
... s
ending and receiving streams streams are objects that represent urls and the data they contain.
...the plug-in can select one of these transmission modes: normal mode: the browser s
ends the stream data sequentially to the plug-in as the data becomes available.
...And 4 more matches
Animation - Web APIs
animation.p
ending read only indicates whether the animation is currently waiting for an asynchronous operation such as initiating playback or pausing a running animation.
... animation.commitstyles() commits the
end styling state of an animation to the element being animated, even after that animation has been removed.
... it will cause the
end styling state to be written to the element being animated, in the form of properties inside a style attribute.
...And 4 more matches
AudioListener - Web APIs
the forward and up values are linearly indep
endent of each other.
...the forward and up values are linearly indep
endent of each other.
...the forward and up values are linearly indep
endent of each other.
...And 4 more matches
AudioWorkletProcessor.process - Web APIs
the method is called synchronously from the audio r
endering thread, once for each block of audio (also known as a r
endering quantum) being directed through the processor's corresponding audioworkletnode.
...however, plans are already in place to revise the specification to allow the size of the audio blocks to be changed dep
ending on circumstances (for example, if the audio hardware or cpu utilization is more efficient with larger block sizes).
... the number of channels in each input may vary, dep
ending on channelcount and channelcountmode properties.
...And 4 more matches
Hit regions and accessibility - Web APIs
</canvas> tags can be used as a fallback for browsers which don't support canvas r
endering.
... canvasr
enderingcontext2d.addhitregion() adds a hit region to the canvas.
... canvasr
enderingcontext2d.removehitregion() removes the hit region with the specified id from the canvas.
...And 4 more matches
Channel Messaging API - Web APIs
the channel messaging api allows two separate scripts running in different browsing contexts attached to the same document (e.g., two iframes, or the main document and an iframe, two documents via a sharedworker, or two workers) to communicate directly, passing messages between one another through two-way channels (or pipes) with a port at each
end.
...once created, the two ports of the channel can be accessed through the messagechannel.port1 and messagechannel.port2 properties (which both return messageport objects.) the app that created the channel uses port1, and the app at the other
end of the port uses port2 — you s
end a message to port2, and transfer the port over to the other browsing context using window.postmessage along with two arguments (the message to s
end, and the object to transfer ownership of, in this case the port itself.) when these transferable objects are transferred, they are 'neutered' on the previous context — the one they previously belonged to.
...you could then respond by s
ending a message back to the original document using messageport.postmessage.
...And 4 more matches
Examples of web and XML development using the DOM - Web APIs
but the stopevent method has stopped propagation, and so after the data in the table is updated, the event phase is effectively
ended, and an alert box is displayed to confirm this.
... the properties of event objects differs greatly between browsers, the whatwg dom standard lists the standard properties, however many browsers have ext
ended these greatly.
...tml lang="en"> <head> <meta charset="utf-8"/> <title>show event properties</title> <style> table { border-collapse: collapse; } thead { font-weight: bold; } td { padding: 2px 10px 2px 10px; } .odd { background-color: #efdfef; } .even { background-color: #ffffff; } </style> <script> function showeventproperties(e) { function addcell(row, text) { var cell = row.insertcell(-1); cell.app
endchild(document.createtextnode(text)); } var e = e || window.event; document.getelementbyid('eventtype').innerhtml = e.type; var table = document.createelement('table'); var thead = table.createthead(); var row = thead.insertrow(-1); var lablelist = ['#', 'property', 'value']; var len = lablelist.length; for (var i=0; i<len; i++) { addcell(row, lablelist[i]); } var tbo...
...And 4 more matches
EXT_color_buffer_float - Web APIs
the ext_color_buffer_float extension is part of webgl and adds the ability to r
ender a variety of floating point formats.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext
ended methods the following sized formats become color-r
enderable: gl.r16f, gl.rg16f, gl.rgba16f, gl.r32f, gl.rg32f, gl.rgba32f, gl.r11f_g11f_b10f.
...And 4 more matches
EXT_color_buffer_half_float - Web APIs
the ext_color_buffer_half_float extension is part of the webgl api and adds the ability to r
ender to 16-bit floating-point color buffers.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants ext.rgba16f_ext rgba 16-bit floating-point color-r
enderable format.
...And 4 more matches
FileSystemDirectoryEntry.getDirectory() - Web APIs
fileerror.type_mismatch_err the path specified is not a directory; it's probably a file, but might be an unsupported file descriptor such as a pipe; this dep
ends on the user agent to some extent.
... values and results the table below describes the result of each possible combination of these flags dep
ending on whether or not the target file or directory path already exists.
... option values file/directory condition result create exclusive false n/a[1] path exists and matches the desired type (dep
ending on whether the function called is getfile() or getdirectory() the successcallback is called with a filesystemfileentry if getfile() was called or a filesystemdirectoryentry if getdirectory() was called.
...And 4 more matches
FileSystemDirectoryEntry.getFile() - Web APIs
fileerror.type_mismatch_err the path specified is not a file; it's probably a directory, but might be an unsupported file descriptor such as a pipe; this dep
ends on the user agent to some extent.
... values and results the table below describes the result of each possible combination of these flags dep
ending on whether or not the target file or directory path already exists.
... option values file/directory condition result create exclusive false n/a[1] path exists and matches the desired type (dep
ending on whether the function called is getfile() or getdirectory() the successcallback is called with a filesystemfileentry if getfile() was called or a filesystemdirectoryentry if getdirectory() was called.
...And 4 more matches
FileSystemFlags.create - Web APIs
syntax filesystemflags.create = booleanvalue values the table below describes the result of each possible combination of these flags dep
ending on whether or not the target file or directory path already exists.
... option values file/directory condition result create exclusive false n/a[1] path exists and matches the desired type (dep
ending on whether the function called is getfile() or getdirectory() the successcallback is called with a filesystemfileentry if getfile() was called or a filesystemdirectoryentry if getdirectory() was called.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 4 more matches
FileSystemFlags.exclusive - Web APIs
syntax filesystemflags.exclusive = booleanvalue values the table below describes the result of each possible combination of these flags dep
ending on whether or not the target file or directory path already exists.
... option values file/directory condition result create exclusive false n/a[1] path exists and matches the desired type (dep
ending on whether the function called is getfile() or getdirectory() the successcallback is called with a filesystemfileentry if getfile() was called or a filesystemdirectoryentry if getdirectory() was called.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 4 more matches
HTMLImageElement.srcset - Web APIs
the srcset property, along with the sizes property, are a crucial component in designing responsive web sites, as they can be used together to make pages that use appropriate images for the r
endering situation.
...otherwise, the condition descriptor may take one of two forms: to indicate that the image resource specified by the image candidate string should be used when the image is being r
endered with a particular width in pixels, provide a width descriptor comprised the number giving that width in pixels followed by the lower case letter "w".
... for example, to provide an image resource to be used when the r
enderer needs a 450 pixel wide image, use the width descriptor string 450w.
...And 4 more matches
IDBCursor.advance() - Web APIs
invalidstateerror the cursor is currently being iterated or has iterated past its
end.
...ansaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.albumtitle + '</strong>, ' + cursor.value.year; list.app
endchild(listitem); cursor.advance(2); } else { console.log('every other entry displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'advance()' in that specification.
... recomm
endation indexed database api draftthe definition of 'advance()' in that specification.
...And 4 more matches
IDBCursor.continue() - Web APIs
invalidstateerror the cursor is currently being iterated or has iterated past its
end.
...splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'continue()' in that specification.
... recomm
endation indexed database api draftthe definition of 'continue()' in that specification.
...And 4 more matches
IDBCursor.delete() - Web APIs
invalidstateerror the cursor was created using idbindex.openkeycursor, is currently being iterated, or has iterated past its
end.
...even power windows is better.'); }; } else { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.albumtitle + '</strong>, ' + cursor.value.year; list.app
endchild(listitem); } cursor.continue(); } else { console.log('entries displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'delete()' in that specification.
... recomm
endation indexed database api draftthe definition of 'delete()' in that specification.
...And 4 more matches
IDBCursor.source - Web APIs
this function never returns null or throws an exception, even if the cursor is currently being iterated, has iterated past its
end, or its transaction is not active.
...splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.source); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'source' in that specification.
... recomm
endation indexed database api draftthe definition of 'source' in that specification.
...And 4 more matches
IDBCursor.update() - Web APIs
invalidstateerror the cursor was created using idbindex.openkeycursor, is currently being iterated, or has iterated past its
end.
... const updatedata = cursor.value; updatedata.year = 2050; const request = cursor.update(updatedata); request.onsuccess = function() { console.log('a better album year?'); }; }; const listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.albumtitle + '</strong>, ' + cursor.value.year; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'update()' in that specification.
... recomm
endation indexed database api draftthe definition of 'update()' in that specification.
...And 4 more matches
IDBDatabase.onerror - Web APIs
note: consider using idbop
endbrequest.onsuccess instead (see idbrequest.onsuccess, where it is inherited from).
...} example this example shows an idbop
endbrequest.onupgradeneeded block that creates a new object store; it also includes onerror and onabort functions to handle non-success cases.
... recomm
endation indexed database api draftthe definition of 'onerror' in that specification.
...And 4 more matches
IDBDatabase.onversionchange - Web APIs
the onversionchange event handler of the idbdatabase interface handles the versionchange event, fired when a database structure change (idbop
endbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested elsewhere (most probably in another window/tab on the same computer).
...} example this example shows an idbop
endbrequest.onupgradeneeded block that creates a new object store; it also includes onerror and onabort functions to handle non-success cases, and an onversionchange function to notify when a database structure change has occurred.
... recomm
endation indexed database api draftthe definition of 'onversionchange' in that specification.
...And 4 more matches
IDBIndex.count() - Web APIs
+ '<td>' + cursor.value.fname + '</td>' + '<td>' + cursor.value.jtitle + '</td>' + '<td>' + cursor.value.company + '</td>' + '<td>' + cursor.value.email + '</td>' + '<td>' + cursor.value.phone + '</td>' + '<td>' + cursor.value.age + '</td>'; tableentry.app
endchild(tablerow); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'count()' in that specification.
... recomm
endation indexed database api draftthe definition of 'count()' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 4 more matches
IDBIndex.getKey() - Web APIs
+ '<td>' + cursor.value.fname + '</td>' + '<td>' + cursor.value.jtitle + '</td>' + '<td>' + cursor.value.company + '</td>' + '<td>' + cursor.value.email + '</td>' + '<td>' + cursor.value.phone + '</td>' + '<td>' + cursor.value.age + '</td>'; tableentry.app
endchild(tablerow); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'getkey()' in that specification.
... recomm
endation indexed database api draftthe definition of 'getkey()' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 4 more matches
IDBIndex.keyPath - Web APIs
+ '<td>' + cursor.value.fname + '</td>' + '<td>' + cursor.value.jtitle + '</td>' + '<td>' + cursor.value.company + '</td>' + '<td>' + cursor.value.email + '</td>' + '<td>' + cursor.value.phone + '</td>' + '<td>' + cursor.value.age + '</td>'; tableentry.app
endchild(tablerow); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api 2.0the definition of 'keypath' in that specification.
... recomm
endation indexed database api draftthe definition of 'keypath' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 4 more matches
Node.insertBefore() - Web APIs
(that is, it will automatically be removed from its existing parent before app
ending it to the specified new parent.) this means that a node cannot be in two locations of the document simultaneously.
... note: the node.clonenode() can be used to make a copy of the node before app
ending it under the new parent.
...if this is null, then newnode is inserted at the
end of parentnode's child nodes.
...And 4 more matches
OffscreenCanvas.getContext() - Web APIs
possible values are: "2d" creates a canvasr
enderingcontext2d object representing a two-dimensional r
endering context.
... "webgl" creates a webglr
enderingcontext object representing a three-dimensional r
endering context.
... "webgl2" creates a webgl2r
enderingcontext object representing a three-dimensional r
endering context.
...And 4 more matches
Page Visibility API - Web APIs
when the user minimizes the window or switches to another tab, the api s
ends a visibilitychange event to let listeners know the state of the page has changed.
... a site has an image carousel that shouldn't advance to the next slide unless the user is viewing the page an application showing a dashboard of information doesn't want to poll the server for updates when the page isn't visible a page wants to detect when it is being prer
endered so it can keep accurate count of page views a site wants to switch off sounds when a device is in standby mode (user pushes power button to turn screen off) developers have historically used imperfect proxies to detect this.
...these may include: most browsers stop s
ending requestanimationframe() callbacks to background tabs or hidden <iframe>s in order to improve performance and battery life.
...And 4 more matches
PaymentRequest.show() - Web APIs
processing the result and, if necessary, calling paymentresponse.retry() to retry a failed payment can all be done either asynchronously or synchronously, dep
ending on your needs.
... starting the payment process, in the
end, is as simple as calling the processpayment() method.
...the developer then uses the information in the paymentresponse object to format and s
end payment data to the server.
...And 4 more matches
PaymentResponse.complete() - Web APIs
the failure may or may not be announced to the user by the user agent, dep
ending on its design.
... invalidstateerror the payment has already completed, or complete() was called while a request to retry the payment is p
ending.
... examples the following example s
ends payment information to a secure server using the fetch api.
...And 4 more matches
Performance - Web APIs
performance.measure() creates a named timestamp in the browser's performance entry buffer between two specified marks (known as the start mark and
end mark, respectively).
... recomm
endation defines tojson() method.
... recomm
endation defines now() method.
...And 4 more matches
PerformanceEntry.duration - Web APIs
the value returned by this property dep
ends on the performance entry's type: "frame" - returns a timestamp indicating the difference between the starttimes of two successive frames.
... "navigation" - returns the timestamp that is the difference between the performancenavigationtiming.loadevent
end and performanceentry.starttime properties, respectively.
... "resource" - returns the difference between the resource's response
end timestamp and its starttime timestamp.
...And 4 more matches
PerformanceNavigationTiming - Web APIs
top"><rect x="201" y="1" width="270" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="336" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">performancenavigationtiming</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this interface ext
ends the following performanceentry properties for navigation performance entry types by qualifying and constraining them as follows: performanceentry.entrytype read only returns "navigation".
... performanceentry.duration read only returns a timestamp that is the difference between the performancenavigationtiming.loadevent
end and performanceentry.starttime properties.
... this interface also ext
ends following performanceresourcetiming properties for navigation performance entry types by qualifying and constraining them as follows: performanceresourcetiming.initiatortyperead only returns "navigation".
...And 4 more matches
PushEvent - Web APIs
properties inherits properties from its parent, ext
endableevent.
... methods inherits methods from its parent, ext
endableevent.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 4 more matches
RTCRtpEncodingParameters - Web APIs
an instance of the webrtc api's rtcrtpencodingparameters dictionary describes a single configuration of a codec for an rtcrtps
ender.
... it's used in the rtcrtps
endparameters describing the configuration of an rtp s
ender's encodings; rtcrtpdecodingparameters is used to describe the configuration of an rtp receiver's encodings.
...that is, for rtp s
enders, the encoding is currently being used to s
end data, while for receivers, the encoding is being used to decode received data.
...And 4 more matches
RTCRtpStreamStats.pliCount - Web APIs
the plicount property of the rtcrtpstreamstats dictionary states the number of times the stream's receiving
end sent a picture loss indication (pli) packet to the s
ender.
... syntax var plicount = rtcrtpstreamstats.plicount; value an integer value indicating the number of times a pli packet was sent by the stream's receiver to the s
ender.
... a pli message is used by video decoders (running on the receiving
end of the stream) to notify the encoder (the s
ender) that an undefined amount of coded video data, which may span frame boundaries, has been lost.
...And 4 more matches
RTCRtpTransceiver.currentDirection - Web APIs
each describes how the transceiver's associated rtcrtps
ender and rtcrtpreceiver behave as shown in the table below.
... value rtcrtps
ender behavior rtcrtpreceiver behavior "s
endrecv" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
... "s
endonly" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
...And 4 more matches
RTCRtpTransceiverDirection - Web APIs
each describes how the transceiver's associated rtcrtps
ender and rtcrtpreceiver behave as shown in the table below.
... value rtcrtps
ender behavior rtcrtpreceiver behavior "s
endrecv" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
... "s
endonly" offers to s
end rtp data, and will do so if the other peer accepts the connection and at least one of the s
ender's encodings is active1.
...And 4 more matches
RTCStats - Web APIs
rtcstats is the foundation of all webrtc statistics objects rtcrtpstreamstats adds to rtcstats information that applies to all rtp
endpoints (that is, both local and remote
endpoints, and regardless of whether the
endpoint is a s
ender or a receiver) rtcreceivedrtpstreamstats further adds statistics measured at the receiving
end of an rtp stream, regardless of whether it's local or remote.
... rtcinboundrtpstreamstats contains statistics that can only be measured on a receiver at the local
end of the rtp connection.
... rtcoutboundrtpstreamstats contains statistics related to the receiver at the remote
end of the rtp stream.
...And 4 more matches
Service Worker API - Web APIs
they are int
ended, among other things, to enable the creation of effective offline experiences, intercept network requests and take appropriate action based on whether the network is available, and update assets residing on the server.
... other use case ideas service workers are also int
ended to be used for such things as: background data synchronization.
... client-side compiling and dep
endency management of coffeescript, less, cjs/amd modules, etc.
...And 4 more matches
SourceBuffer.mode - Web APIs
the mode property of the sourcebuffer interface controls whether media segments can be app
ended to the sourcebuffer in any order, or in a strict sequence.
...the segments can be app
ended to the sourcebuffer in any order.
... sequence: the order in which the segments are app
ended to the sourcebuffer determines the order in which they are played.
...And 4 more matches
Streams API concepts - Web APIs
as well as the conventional readable stream there is a type called a byte stream — this is an ext
ended version of a conventional stream for reading underlying byte sources (otherwise known as byob, or “bring your own buffer”) sources.
...which underlying stream (and by extension, reader and controller) your code will use dep
ends on how the stream was created in the first place (see the readablestream() constructor page).
... in javascript, this is achieved via the readablestream.tee() method — it outputs an array containing two identical copies of the original readable stream, which can then be read indep
endently by two separate readers.
...And 4 more matches
Multi-touch interaction - Web APIs
example this example demonstrates using the touchstart, touchmove, touchcancel, and touch
end) touch events for the following gestures: single touch, two (simultaneous) touches, more than two simultaneous touches, 1-finger swipe, and 2-finger move/pinch/swipe.
...the touch
end and touchcancel event types use the same handler.
... function set_handlers(name) { // install event handlers for the given element var el=document.getelementbyid(name); el.ontouchstart = start_handler; el.ontouchmove = move_handler; // use same handler for touchcancel and touch
end el.ontouchcancel =
end_handler; el.ontouch
end =
end_handler; } function init() { set_handlers("target1"); set_handlers("target2"); set_handlers("target3"); set_handlers("target4"); } move/pinch/zoom handler this function provides very basic support for 2-touch horizontal move/pinch/zoom handling.
...And 4 more matches
WEBGL_color_buffer_float - Web APIs
the webgl_color_buffer_float extension is part of the webgl api and adds the ability to r
ender to 32-bit floating-point color buffers.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants ext.rgba32f_ext rgba 32-bit floating-point color-r
enderable format.
...And 4 more matches
Detect WebGL - Web APIs
« previousnext » this example demonstrates how to detect a webgl r
endering context and reports the result to the user.
...to that
end we will try to obtain the webgl r
endering context from a canvas element.
... the webgl r
endering context is an interface, through which you can set and query the state of the graphics machine, s
end data to the webgl, and execute draw commands.
...And 4 more matches
Web Audio API best practices - Web APIs
it's constantly in development and
endeavours to keep up with the current specification.
... there is also the option of libraries, of which there are a few dep
ending on your use case.
...browser v
endors decided that web audio contexts should not be allowed to automatically play audio; they should instead be started by a user.
...And 4 more matches
WindowOrWorkerGlobalScope.setTimeout() - Web APIs
this syntax is not recomm
ended for the same reasons that make using eval() a security risk.
...note that in either case, the actual delay may be longer than int
ended; see reasons for delays longer than specified below.
... polyfill if you need to pass one or more arguments to your callback function, but need it to work in browsers which don't support s
ending additional arguments using either settimeout() or setinterval() (e.g., internet explorer 9 and below), you can include this polyfill to enable the html5 standard arguments-passing functionality.
...And 4 more matches
XRRigidTransform.matrix - Web APIs
thus, for an array [a0, a1, a2, ..., a13, a14, a15], the matrix looks like this: [a[0]a[4]a[8]a[12]a[1]a[5]a[9]a[13]a[2]a[6]a[10]a[14]a[3]a[7]a[11]a[15]]\begin{bmatrix} a[0] & a[4] & a[8] & a[12]\\ a[1] & a[5] & a[9] & a[13]\\ a[2] & a[6] & a[10] & a[14]\\ a[3] & a[7] & a[11] & a[15]\\ \
end{bmatrix} the first time matrix is requested, it gets computed; after that, it's should be cached to avoid slowing down to compute it every time you need it.
... creating the matrix in this section, int
ended for more advanced readers, we cover how the api calculates the matrix for the specified transform.
... it begins by allocating a new matrix and writing a 4x4 identity matrix into it: [1000010000100001]\begin{bmatrix} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 1 \
end{bmatrix} this is a transform that will not change either the orientation or position of any point, vector, or object to which it's applied.
...And 4 more matches
XRWebGLLayer() - Web APIs
the webxr device api xrwebgllayer() constructor creates and returns a new xrwebgllayer object, providing the linkage between the webxr device and the webgl graphics layer used to r
ender the 3d scene.
... syntax let gllayer = new xrwebgllayer(session, context, layerinit); parameters session an xrsession object specifying the webxr session which will be r
endered using the webgl context.
... context a webglr
enderingcontext or webgl2r
enderingcontext identifying the webgl drawing context to use for r
endering the scene for the specified webxr session.
...And 4 more matches
ARIA: application role - Accessibility
<div role="application">...</div> this defines this div element and all of its desc
endants to be treated like they are part of a desktop application.
...any sort of special interpretation of html structures and widgets should be susp
ended, and control should be completely handed over to the browser and web application to handle mouse, keyboard, or touch interaction.
... in this mode, the web author is completely responsible for handling any and all keyboard input, focus management, and other interactions and cannot assume assistive technologies would do any processing on their
end.
...And 4 more matches
ARIA: button role - Accessibility
a common convention to inform users a button will launch a dialog is to app
end "…" (ellipsis) to the button's label, e.g., "save as…".
...in our example the label remains "mute" with a screen reader reading "mute toggle button pressed" or "mute toggle button not pressed" dep
ending on the value of aria-pressed.
... space activates the button following button activation, focus is set dep
ending on the type of action the button performs.
...And 4 more matches
Cognitive accessibility - Accessibility
to this
end, they define 17 specific guidelines, of which six are especially relevant for cognitive accessibility.
...for example, being able to ext
end the expiration time on an application requiring an authentication code sent to a mobile device via text message helps with the following scenarios: people with attention or anxiety disorders.
... alerting the user and providing a buffer of at least 20 seconds to ext
end the timeout duration by a factor of 10 with a simple action, such as hitting the space bar.
...And 4 more matches
::first-letter (:first-letter) - CSS: Cascading Style Sheets
nates, font-variant-caps, font-variant-east-asian, font-variant-ligatures, font-variant-numeric, font-variant-position, font-weight, font-size, font-size-adjust, line-height and font-family all background properties : background, background-color, background-image, background-clip, background-origin, background-position, background-repeat, background-size, background-attachment, and background-bl
end-mode all margin properties: margin, margin-top, margin-right, margin-bottom, margin-left all padding properties: padding, padding-top, padding-right, padding-bottom, padding-left all border properties: the shorthands border, border-style, border-color, border-width, border-radius, border-image, and the longhands properties the color property the text-decoration, text-shadow, text-transform, ...
...stet clita kasd gubergren, no sea takimata sanctus est.</p> <p>duis autem vel eum iriure dolor in h
endrerit in vulputate velit esse molestie consequat.</p> css p { width: 500px; line-height: 1.5; } h2 + p::first-letter { color: white; background-color: black; border-radius: 2px; box-shadow: 3px 3px 0 red; font-size: 250%; padding: 6px 3px; margin-right: 6px; float: left; } result effect on special punctuation and non-latin characters this example illustrates the effect ...
... html <p>duis autem vel eum iriure dolor in h
endrerit in vulputate velit esse molestie consequat.</p> <p>-the beginning of a special punctuation mark.</p> <p>_the beginning of a special punctuation mark.</p> <p>"the beginning of a special punctuation mark.</p> <p>'the beginning of a special punctuation mark.</p> <p>*the beginning of a special punctuation mark.</p> <p>#the beginning of a special punctuation mark.</p> <p>「特殊的汉字标点符号开头。</p> <p>《特殊的汉字标点符号开头。</p> <p>“特殊的汉字标点符号开头。</p> css p::first-letter { color: red; font-size: 150%; } result specifications specification status comment css pseudo-elements level 4the ...
...And 4 more matches
Backwards Compatibility of Flexbox - CSS: Cascading Style Sheets
the history of flexbox as with all css specifications the flexbox specification went through a large number of changes before it became the candidate recomm
endation that we have today.
... as a candidate recomm
endation we should not see large changes at this point to the spec, however this has not been the case with past flexbox iterations.
...at the time the method of creating experimental implementations was to use a v
endor prefix.
...And 4 more matches
Cross-browser Flexbox mixins - CSS: Cascading Style Sheets
values: flex-start (default) | flex-
end | center | space-between | space-around spec: https://drafts.csswg.org/css-flexbox/#justify-content-property @mixin justify-content($value: flex-start) { @if $value == flex-start { -webkit-box-pack: start; -moz-box-pack: start; -ms-flex-pack: start; } @else if $value == flex-
end { -webkit-box-pack:
end; -moz-box-pack:
end; -ms-flex-pack:
end; } @else if $value ==...
...se { -webkit-box-pack: $value; -moz-box-pack: $value; -ms-flex-pack: $value; } -webkit-justify-content: $value; justify-content: $value; } // shorter version: @mixin flex-just($args...) { @include justify-content($args...); } flexbox align items flex items can be aligned in the cross axis of the current line of the flex container, similar to justify-content but in the perp
endicular direction.
...(for anonymous flex items, align-self always matches the value of align-items on their associated flex container.) values: flex-start | flex-
end | center | baseline | stretch (default) spec: https://drafts.csswg.org/css-flexbox/#align-items-property @mixin align-items($value: stretch) { @if $value == flex-start { -webkit-box-align: start; -moz-box-align: start; -ms-flex-align: start; } @else if $value == flex-
end { -webkit-box-align:
end; -moz-box-align:
end; -ms-flex-align:
end; } @else { -webkit-box-align: $value; -moz-box-align: $value; -ms-flex-ali...
...And 4 more matches
CSS grids, logical values, and writing modes - CSS: Cascading Style Sheets
if you want to dig into writing modes further, however, then i would recomm
end that you read jen simmons excellent article on css writing modes.
...the start and
end properties work in exactly the same way that they do in the default writing mode, and remain logical in a way that using left and right, top and bottom to align items would not do.
...ding: 1em; color: #d9480f; } .wrapper { writing-mode: vertical-lr; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(3, 100px); grid-gap: 10px; } .item1 { grid-column: 1 / 4; align-self: start; } .item2 { grid-column: 1 / 3; grid-row: 2 / 4; align-self: start; } .item3 { grid-column: 3; grid-row: 2 / 4; align-self:
end; justify-self:
end; } <div class="wrapper"> <div class="item1">item 1</div> <div class="item2">item 2</div> <div class="item3">item 3</div> </div> if you want to see how these work, with a right to left as well as top to bottom writing mode, switch vertical-lr to vertical-rl, which is a vertical writing mode running from right to left.
...And 4 more matches
CSS Grid Layout and Progressive Enhancement - CSS: Cascading Style Sheets
however, while evergreen browsers mean that many of us are going to see the majority of users having grid layout support very quickly, there are also old or non-supporting browsers to cont
end with.
...as these properties are v
endor prefixed, they will not effect any browser supporting the up to date and unprefixed specification.
... as with any front-
end technology choice, the decision to use css grid layout will come down to the browsers your site visitors are typically using.
...And 4 more matches
Logical properties for margins, borders and padding - CSS: Cascading Style Sheets
logical property physical property border-block-
end border-bottom border-block-
end-color border-bottom-color border-block-
end-style border-bottom-style border-block-
end-width border-bottom-width border-block-start border-top border-block-start-color border-top-color border-block-start-style border-top-style border-block-start-width border-top-width bord...
...er-inline-
end border-right border-inline-
end-color border-right-color border-inline-
end-style border-right-style border-inline-
end-width border-right-width border-inline-start border-left border-inline-start-color border-left-color border-inline-start-style border-left-style border-inline-start-width border-left-width border-start-start-radius border-top-left-radius border-start-
end-radius border-bottom-left-radius border-
end-start-radius border-top-right-radius border-
end-
end-radius border-bottom-right-radius margin-block-
end margin-bottom margin-block-start margin-top margin-inline-
end margin-right margin-inline-s...
...tart margin-left padding-block-
end padding-bottom padding-block-start padding-top padding-inline-
end padding-right padding-inline-start padding-left there are also some additional shorthands, made possible because we have the ability to target both block or both inline edges of the box simultaneously.
...And 4 more matches
CSS values and units - CSS: Cascading Style Sheets
dep
ending on the property, the value can include a single integer or keyword, to a series of keywords and values with or without units.
... left | right | none | inline-start | inline-
end such values are used without quotes: .box { float: left; } css-wide values in addition to the pre-defined keywords that are part of the specification for a property, all css properties accept the css-wide property values initial, inherit, and unset, which explicitly specify defaulting behaviors.
... the unset keyword acts as either inherit or initial, dep
ending on whether the property is inherited or not.
...And 4 more matches
Using media queries - CSS: Cascading Style Sheets
media queries are useful when you want to modify your site or app dep
ending on a device's general type (such as print vs.
... print int
ended for paged material and documents viewed on a screen in print preview mode.
... (please see paged media for information about formatting issues that are specific to these formats.) screen int
ended primarily for screens.
...And 4 more matches
background-clip - CSS: Cascading Style Sheets
the background-clip css property sets whether an element's background ext
ends underneath its border box, padding box, or content box.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...it is recomm
ended that authors of html documents specify the canvas background for the <body> element rather than the html element.
...And 4 more matches
background-image - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...And 4 more matches
background - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...And 4 more matches
border-left-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation initial definition.
...And 4 more matches
border-right-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation initial definition.
...And 4 more matches
box-pack - CSS: Cascading Style Sheets
/* keyword values */ box-pack: start; box-pack: center; box-pack:
end; box-pack: justify; /* global values */ box-pack: inherit; box-pack: initial; box-pack: unset; the direction of layout dep
ends on the element's orientation: horizontal or vertical.
... values start the box packs contents at the start, leaving any extra space at the
end.
... center the box packs contents in the center, dividing any extra space equally between the start and the
end.
...And 4 more matches
column-count - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetcolumn-countchrome full support 50 full support 50 full support 1prefixed prefixed implemented with the v
endor prefix: -webkit-edge full support 12 full support 12 full support 12prefixed prefixed implemented with the v
endor prefix: -webkit-firefox full support 52 full support 52 ...
...And 4 more matches
content - CSS: Cascading Style Sheets
p://www.example.com/test.png") / "this is the alt text"; /* values below can only be applied to generated content using ::before and ::after */ /* <string> value */ content: "prefix"; /* <counter> values */ content: counter(chapter_counter); content: counters(section_counter, "."); /* attr() value linked to the html attribute value */ content: attr(value string); /* language- and position-dep
endent keywords */ content: open-quote; content: close-quote; content: no-open-quote; content: no-close-quote; /* except for normal and none, several values can be used simultaneously */ content: open-quote chapter_counter; /* global values */ content: inherit; content: initial; content: unset; syntax values none the pseudo-element is not generated.
...the counters are r
endered in the indicated style (decimal by default).
...the case-sensitivity of attribute names dep
ends on the document language.
...And 4 more matches
filter - CSS: Cascading Style Sheets
filters are commonly used to adjust the r
endering of images, backgrounds, and borders.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...le filters */ filter: contrast(175%) brightness(3%); /* use no filter */ filter: none; /* global values */ filter: inherit; filter: initial; filter: unset; with a function, use the following: filter: <filter-function> [<filter-function>]* | none for a reference to an svg <filter> element, use the following: filter: url(file.svg#filter-element-id) interpolation if both the beginning and
end filters have a function list of the same length without <url>, each of their filter functions is interpolated according to its specific rules.
...And 4 more matches
float - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ float: left; float: right; float: none; float: inline-start; float: inline-
end; /* global values */ float: inherit; float: initial; float: unset; the float property is specified as a single keyword, chosen from the list of values below.
... inline-
end the element must float on the
end side of its containing block.
...And 4 more matches
hanging-punctuation - CSS: Cascading Style Sheets
the hanging-punctuation css property specifies whether a punctuation mark should hang at the start or
end of a line of text.
... /* keyword values */ hanging-punctuation: none; hanging-punctuation: first; hanging-punctuation: last; hanging-punctuation: force-
end; hanging-punctuation: allow-
end; /* two keywords */ hanging-punctuation: first force-
end; hanging-punctuation: first allow-
end; hanging-punctuation: first last; hanging-punctuation: last force-
end; hanging-punctuation: last allow-
end; /* three keywords */ hanging-punctuation: first force-
end last; hanging-punctuation: first allow-
end last; /* global values */ hanging-punctuation: inherit; hanging-punctuation: initial; hanging-punctuation: unset; syntax the hanging-punctuation property may be specified with one, two, or three values.
... two-value syntax uses one of the following: first together with any one of last, allow-
end, or force-
end last together with any one of first, allow-
end, or force-
end three-value syntax uses one of the following: first, allow-
end, and last first, force-
end, and last values none no character hangs.
...And 4 more matches
image-set() - CSS: Cascading Style Sheets
examples background-image: image-set( "cat.png" 1x, "cat-2x.png" 2x, "cat-print.png" 600dpi); this example shows how to use image-set() to provide two alternative background-image options, chosen dep
ending on the resolution needed: a normal version and a high-resolution version.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetimage-set()chrome full support 21prefixed full support 21prefixed prefixed implemented with the v
endor prefix: -webkit-edge full support 79prefixed full support 79prefixed prefixed implemented with the v
endor prefix: -webkit-firefox no support nonotes no support nonotes notes see bug 1107646.ie no support noopera ...
...And 4 more matches
<length> - CSS: Cascading Style Sheets
dep
ending on the unit, this can be the size of a specific character, the line height, or the size of the viewport.
... ic equal to the used advance measure of the "水" (cjk water ideograph, u+6c34) glyph found in the font used to r
ender it.
... mozmm , removed in firefox 59 an experimental unit that attempts to r
ender at exactly one millimeter regardless of the size or resolution of the display.
...And 4 more matches
letter-spacing - CSS: Cascading Style Sheets
this value is added to the natural spacing between characters while r
endering the text.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation no change.
...And 4 more matches
overflow-y - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values visible content is not clipped and may be r
endered outside the padding box's top and bottom edges.
... auto dep
ends on the user agent.
...And 4 more matches
visibility - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...desc
endants of the element will be visible if they have visibility set to visible.
...this will cause the element and all its desc
endant elements to no longer be announced by screen reading technology.
...And 4 more matches
will-change - CSS: Cascading Style Sheets
important: will-change is int
ended to be used as a last resort, in order to try to deal with existing performance problems.
...some of the stronger optimizations that are likely to be tied to will-change
end up using a lot of a machine’s resources, and when overused like this can cause the page to slow down or consume a lot of resources.
...will-change is int
ended to be used as something of a last resort, in order to try to deal with existing performance problems.
...And 4 more matches
HTML5 Parser - Developer guides
changed parser behaviors some changes to the way that the gecko 2 parser behaves, as compared to earlier versions of gecko, may affect web developers, dep
ending on how you've written your code in the past and what browsers you've tested it on.
...this behavior was inherently racy, as the content was inserted into a timing-dep
endent point in the source stream.
... lack of reparsing prior to html5, parsers reparsed the document if they hit the
end of the file within certain elements or within comments.
...And 4 more matches
Developer guides
this article is int
ended as a starting point for exploring the various delivery mechanisms of web-based media and compatibility with popular browsers.
...the html specification recomm
ends the use of the utf-8 encoding (which can represent all of unicode), and regardless of the encoding used requires web content to declare that encoding.
...it describes how the browser should order characters while r
endering unicode text.
...And 4 more matches
<area> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission must have a start tag and must not have an
end tag.
...the number and meaning of the values dep
end upon the value specified for the shape attribute.
...And 4 more matches
<blockquote>: The Block Quotation element - HTML: Hypertext Markup Language
the html <blockquote> element (or html block quotation element) indicates that the enclosed text is an ext
ended quotation.
... usually, this is r
endered visually by indentation (see notes for how to change it).
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 4 more matches
<del>: The Deleted Text element - HTML: Hypertext Markup Language
this can be used when r
endering "track changes" or source code diff information, for example.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... this element is often (but need not be) r
endered by applying a strike-through style to the text.
...And 4 more matches
<dfn>: The Definition element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content phrasing content, but no <dfn> element must be a desc
endant.
... tag omission none, both the starting and
ending tag are mandatory.
...And 4 more matches
<header> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content flow content, but with no <header> or <footer> desc
endant.
... tag omission none, both the starting and
ending tag are mandatory.
...And 4 more matches
<input type="radio"> - HTML: Hypertext Markup Language
radio buttons are typically r
endered as small circles, which are filled or highlighted when selected.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the html looks like this: <form> <fieldset> <leg
end>please select your preferred contact method:</leg
end> <div> <input type="radio" id="contactchoice1" name="contact" value="email" checked> <label for="contactchoice1">email</label> <input type="radio" id="contactchoice2" name="contact" value="phone"> <label for="contactchoice2">phone</label> <input type="radio" id="contactchoice3" name="cont...
...And 4 more matches
<input type="tel"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... value a domstring representing a telephone number, or empty events change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, readonly, and size idl attributes list, selectionstart, selection
end, selectiondirection, and value methods select(), setrangetext(), setselectionrange() value the <input> element's value attribute contains a domstring that either represents a telephone number or is an empty string ("").
...since character widths vary, this may or may not be exact and should not be relied upon to be so; the resulting input may be narrower or wider than the specified number of characters, dep
ending on the characters and the font (font settings in use).
...And 4 more matches
<input type="time"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... appearance chrome and opera in chrome/opera the time control is simple, with slots to enter hours and minutes in 12 or 24-hour format dep
ending on operating system locale, and up and down arrows to increment and decrement the currently selected component.
...for example, specifying a min of 14:00 and a max of 2:00 means that the permitted time values start at 2:00 pm, run through midnight to the next day,
ending at 2:00 am.
...And 4 more matches
<kbd>: The Keyboard Input element - HTML: Hypertext Markup Language
by convention, the user agent defaults to r
endering the contents of a <kbd> element using its default monospace font, although this is not mandated by the html standard.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 4 more matches
<label> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if a form, or a section of a form needs a title, use the <leg
end> element placed within a <fieldset>.
... permitted content phrasing content, but no desc
endant label elements.
...And 4 more matches
<template>: The Content Template element - HTML: Hypertext Markup Language
the html content template (<template>) element is a mechanism for holding html that is not to be r
endered immediately when a page is loaded but may be instantiated subsequently during runtime using javascript.
...while the parser does process the contents of the <template> element while loading the page, it does so only to ensure that those contents are valid; the element's contents are not r
endered, however.
... content categories metadata content, flow content, phrasing content, script-supporting element permitted content no restrictions tag omission none, both the starting and
ending tag are mandatory.
...And 4 more matches
<tr>: The Table Row element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... charoffobsolete since html5 a domstring indicating the number of characters on the tail
end of the column's data should be displayed after the alignment character specified by the char attribute.
... table { border: 1px solid black; } th, td { border: 1px solid black; } result row and column spanning now, let's introduce another column that shows the date the user's membership
ended, along with a super-heading above the "joined" and "canceled" dates called "membership dates".
...And 4 more matches
<u>: The Unarticulated Annotation (Underline) element - HTML: Hypertext Markup Language
the html unarticulated annotation element (<u>) represents a span of inline text which should be r
endered in a way that indicates that it has a non-textual annotation.
... this is r
endered by default as a simple solid underline, but may be altered using css.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 4 more matches
<ul>: The Unordered List element - HTML: Hypertext Markup Language
the html <ul> element represents an unordered list of items, typically r
endered as a bulleted list.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 4 more matches
Microformats - HTML: Hypertext Markup Language
to add a property to an object, the p-*, u-*, dt-*, e-* class names are used on one of the object's desc
endants.
...prefixes are syntax indep
endent from vocabularies, which are developed separately.
..."dt-start", "dt-
end", "dt-bday" special parsing: time element datetime attribute, value-class-pattern and separate date time value parsing for readability.
...And 4 more matches
CSP: report-uri - HTTP
though the report-to directive is int
ended to replace the deprecated report-uri directive, report-to isn’t supported in most browsers yet.
... so for compatibility with current browsers while also adding forward compatibility when browsers get report-to support, you can specify both report-uri and report-to: content-security-policy: ...; report-uri https://
endpoint.com; report-to groupname in browsers that support report-to, the report-uri directive will be ignored.
... content-security-policy: default-src https:; report-uri /csp-violation-report-
endpoint/ /csp-violation-report-
endpoint/ could for example run a php something like the following that logs the json detailing the violation and, if the violation is the first one added to the log file, s
ends an email to an administrator: <?php // start configure $log_file = dirname(__file__) .
...And 4 more matches
Referrer-Policy - HTTP
origin only s
end the origin of the document as the referrer.
... for example, a document at https://example.com/page.html will s
end the referrer https://example.com/.
... origin-when-cross-origin s
end the origin, path, and query string when performing a same-origin request, but only s
end the origin of the document for other cases.
...And 4 more matches
Set-Cookie - HTTP
the set-cookie http response header is used to s
end a cookie from the server to the user agent, so the user agent can s
end it back to the server later.
... to s
end multiple cookies, multiple set-cookie headers should be sent in the same response.
... browsers block front
end javascript code from accessing the set cookie header, as required by the fetch spec, which defines set-cookie as a forbidden response-header name that must be filtered out from any response exposed to front
end code.
...And 4 more matches
Upgrade - HTTP
header type request header, response header forbidden header name yes overview the upgrade header field may be used by clients to invite a server to switch to one (or more) of the listed protocols, in desc
ending preference order.
... for example, the client might s
end a get request as shown, listing the preferred protocols to switch to (in this case "example/1" and "foo/2"): get /index.html http/1.1 host: www.example.com connection: upgrade upgrade: example/1, foo/2 note: connection: upgrade must be set whenever upgrade is sent.
... if the server decides to upgrade the connection, it must: s
end back a 101 switching protocols response status with an upgrade header that specifies the protocol(s) being switched to.
...And 4 more matches
An overview of HTTP - HTTP
to present a web page, the browser s
ends an original request to fetch the html document that represents the page.
... http is extensible introduced in http/1.0, http headers make this protocol easy to ext
end and experiment with.
... http flow when a client wants to communicate with a server, either the final server or an intermediate proxy, it performs the following steps: open a tcp connection: the tcp connection is used to s
end a request, or several, and receive an answer.
...And 4 more matches
Introduction - JavaScript
core javascript can be ext
ended for a variety of purposes by supplementing it with additional objects; for example: client-side javascript ext
ends the core language by supplying objects to control a browser and its document object model (dom).
... server-side javascript ext
ends the core language by supplying objects relevant to running javascript on a server.
... in contrast, javascript desc
ends in spirit from a line of smaller, dynamically typed languages such as hypertalk and dbase.
...And 4 more matches
Array.prototype.sort() - JavaScript
the default sort order is asc
ending, built upon converting the elements into strings, then comparing their sequences of utf-16 code units values.
... the time and space complexity of the sort cannot be guaranteed as it dep
ends on the implementation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 4 more matches
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.
... description
endianness multi-byte number formats are represented in memory differently dep
ending on machine architecture — see
endianness for an explanation.
... dataview accessors provide explicit control of how data is accessed, regardless of the executing computer's
endianness.
...And 4 more matches
TypedArray.prototype.subarray() - JavaScript
the begin offset is inclusive and the
end offset is exclusive.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax typedarray.subarray([begin [,
end]]) parameters begin optional element to begin at.
...And 4 more matches
WebAssembly.Memory - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...e for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsmemorychrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0memory() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the fire...
...And 4 more matches
MathML documentation index - MathML
12 <menclose> mathml, mathml reference, mathml:element, mathml:general layout schemata the mathml <menclose> element r
enders its content inside an enclosing notation specified by the notation attribute.
...in firefox this error message is r
endered similar to the typical xml error message.
... 17 <mi> mathml, mathml reference, mathml:element, mathml:token elements the mathml <mi> element indicates that the content should be r
endered as an identifier such as function names, variables or symbolic constants.
...And 4 more matches
How to make PWAs re-engageable using Notifications and Push - Progressive web apps (PWAs)
push push is more complicated than notifications — we need to subscribe to a server that will then s
end the data back to the app.
... from the server-side, the whole process has to be encrypted with public and private keys for security reasons — allowing everyone to s
end push messages unsecured using your app would be a terrible idea.
...to learn more about vapid keys you can read the s
ending vapid identified webpush notifications via mozilla’s push service blog post.
...And 4 more matches
dominant-baseline - SVG: Scalable Vector Graphics
eline="middle" x="30" y="50">middle</text> <text dominant-baseline="hanging" x="30" y="80">hanging</text> </svg> usage notes value auto | text-bottom | alphabetic | ideographic | middle | central | mathematical | hanging | text-top default value auto animatable yes auto if this property occurs on a <text> element, then the computed value dep
ends on the value of the writing-mode attribute.
...the choice of which font baseline-table to use from the baseline-tables in the font is browser dep
endent.
...the choice of which baseline-table to use from the baseline-tables in the font is browser dep
endent.
...And 4 more matches
kernelUnitLength - SVG: Scalable Vector Graphics
for lighting filter primitives, it indicates the int
ended distance for the x and y coordinates, for <feconvolvematrix>, it indicates the int
ended distance between successive columns and rows in the kernel matrix.
... three elements are using this attribute: <feconvolvematrix>, <fediffuselighting>, and <fespecularlighting> feconvolvematrix for the <feconvolvematrix>, kernelunitlength indicates the int
ended distance in current filter units (i.e., units as determined by the value of primitiveunits attribute) between successive columns and rows, respectively, in the kernelmatrix.
... fediffuselighting for the <fediffuselighting>, kernelunitlength indicates the int
ended distance in current filter units (i.e., units as determined by the value of attribute primitiveunits) for the x and y coordinate, respectively, in the surface normal calculation formulas.
...And 4 more matches
method - SVG: Scalable Vector Graphics
the method attribute indicates the method by which text should be r
endered along the path of a <textpath> element.
... only one element is using this attribute: <textpath> textpath for <textpath>, method indicates the method by which text should be r
endered along the path.
... value align | stretch default value align animatable yes align this value indicates that the characters should be r
endered so that they are not stretched or warped.
...And 4 more matches
requiredFeatures - SVG: Scalable Vector Graphics
it determines whether or not all of the named features are supported by the browser; if all of them are supported, the attribute evaluates to true
end the element is r
endered; otherwise, the attribute evaluates to false and the current element and its children are skipped and thus will not be r
endered.
...if requiredfeatures is used in other situations, it represents a simple switch on the given element whether to r
ender the element or not.
... http://www.w3.org/tr/svg11/feature#basictext the browser supports the <text> element http://www.w3.org/tr/svg11/feature#paintattribute the browser supports the color, fill, fill-rule, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-width, color-interpolation and color-r
endering attributes http://www.w3.org/tr/svg11/feature#basicpaintattribute the browser supports the color, fill, fill-rule, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-width and color-r
endering attributes http://www.w3.org/tr/svg11/feature#opacityattribute the browser supports the opacity, stroke-opacity and fill-opacity attribut...
...And 4 more matches
systemLanguage - SVG: Scalable Vector Graphics
if the attribute is used in other situations, then it represents a simple switch on the given element whether to r
ender the element or not.
...it is thus recomm
ended to include a "catch-all" choice at the
end of such a <switch> which is acceptable in all cases.
... multiple languages may be listed for content that is int
ended for multiple audiences.
...And 4 more matches
x2 - SVG: Scalable Vector Graphics
two elements are using this attribute: <line>, and <lineargradient> html,body,svg { height:100% } <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <line x1="5" x2="1" y1="1" y2="9" stroke="red" /> <line x1="5" x2="5" y1="1" y2="9" stroke="green" /> <line x1="5" x2="9" y1="1" y2="9" stroke="blue" /> </svg> line for <line>, x2 defines the x coordinate of the
ending point of the line.
...fault value 0 animatable yes example html,body,svg { height:100% } <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <line x1="5" x2="1" y1="1" y2="9" stroke="red" /> <line x1="5" x2="5" y1="1" y2="9" stroke="green" /> <line x1="5" x2="9" y1="1" y2="9" stroke="blue" /> </svg> lineargradient for <lineargradient>, x2 defines the x coordinate of the
ending point of the gradient vector used to map the gradient stop values.
... the exact behavior of this attribute is influenced by the gradientunits attributs value <length> | <percentage> default value 100% animatable yes example html,body,svg { height:100% } <svg viewbox="0 0 20 10" xmlns="http://www.w3.org/2000/svg"> <!-- by default the gradient vector
end at the right bounding limit of the shape it is applied to --> <lineargradient x2="100%" id="g0"> <stop offset="0" stop-color="black" /> <stop offset="100%" stop-color="red" /> </lineargradient> <rect x="1" y="1" width="8" height="8" fill="url(#g0)" /> <!-- here the gradient vector start at 20% of the left bounding limit of the shape it is applied to --> <lineargradient x2="20%" id="g1"> <stop offset="0" stop-color="blac...
...And 4 more matches
Using shadow DOM - Web Components
shadow boundary: the place where the shadow dom
ends, and the regular dom begins.
... you can affect the nodes in the shadow dom in exactly the same way as non-shadow nodes — for example app
ending children or setting attributes, styling individual nodes using element.style.foo, or adding style to the entire shadow dom tree inside a <style> element.
...ow dom to a custom element as part of its constructor (by far the most useful application of the shadow dom), you would use something like this: let shadow = this.attachshadow({mode: 'open'}); when you've attached a shadow dom to an element, manipulating it is a matter of just using the same dom apis as you use for the regular dom manipulation: let para = document.createelement('p'); shadow.app
endchild(para); // etc.
...And 4 more matches
Advanced Example - XSLT: Extensible Stylesheet Language Transformations
the example allows sorting the content multiple times, alternating between asc
ending and desc
ending order.
...using the xsltprocessor.getparameter() method, the code can figure whether to sort in asc
ending or desc
ending order.
... it defaults to asc
ending if the parameter is empty (the first time the sorting happens, as there is no value for it in the xslt file).
...And 4 more matches
Compiling from Rust to WebAssembly - WebAssembly
to build a part of an application — using rust in an existing javascript front
end.
...open this file, and change its contents to look like this: [package] name = "hello-wasm" version = "0.1.0" authors = ["your name <you@example.com>"] description = "a sample project with wasm-pack" license = "mit/apache-2.0" repository = "https://github.com/yourgithubusername/hello-wasm" [lib] crate-type = ["cdylib"] [dep
endencies] wasm-bindgen = "0.2" fill in your own repository and use the same info that git uses for the authors field.
... the last section is the [dep
endencies] section.
...And 4 more matches
2015 MDN Fellowship Program - Archive of obsolete content
2015 mdn fellowship program launching in q1 2015, the mozilla developer fellowship int
ends to accelerate the involvement of highly-skilled and experienced web developers with the open web.
... github: brittanystoroz twitter: @brittanystoroz webgl brief project description webgl is the latest incarnation of the opengl family of real time r
endering immediate mode graphics apis.
... github: nickdesaulniers twitter: @lostoracle web app performance brief project description web performance is a feature that needs to be considered from serving content to r
endering to interactivity.
...And 3 more matches
/loader - Archive of obsolete content
you may still
end up with a relative module id if the entry point module id is itself relative.
...in general it is not recomm
ended to provide features via globals, it's almost always better to use pseudo-modules or, even better, modules.
...for example, the sdk generates a manifest file at build time representing a dep
endency graph of all modules used by an add-on.
...And 3 more matches
Creating Reusable Modules - Archive of obsolete content
once you've done this, you can package the modules and distribute them indep
endently of your add-on, making them available to other add-on developers and effectively ext
ending the sdk itself.
... 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.app
endfilters(nsifilepicker.filterall | nsifilepicker.filtertext); var rv = fp.show(); if (rv == nsifilepicker.returnok || rv == nsifilepicker.returnreplace) { var file = fp.file; // get the path as string.
... var s = array.from(hash, (c, i) => tohexstring(hash.charcodeat(i))).join(""); return s; } function promptforfile() { var window = require("sdk/window/utils").getmostrecentbrowserwindow(); const nsifilepicker = ci.nsifilepicker; var fp = cc["@mozilla.org/filepicker;1"] .createinstance(nsifilepicker); fp.init(window, "select a file", nsifilepicker.modeopen); fp.app
endfilters(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 3 more matches
Adding Events and Commands - Archive of obsolete content
please read app
endix a for recomm
endations on how to use the load event to initialize your add-on without having a negative performance impact on firefox.
...there's a long list of events you can listen to, and which you use dep
end on the situation.
...the advantage of using the event argument is that the method is not dep
endent of the specific button, so it can also be used for other elements.
...And 3 more matches
Adding windows and dialogs - Archive of obsolete content
to open a new dialog, use the function window.op
endialog, an extension of the open function.
... it allows you to s
end a set of optional parameters that can be used to communicate with the dialog.
... let somevalue = 2; let returnvalue = { accepted : false , result : "" }; window.op
endialog( "chrome://xulschoolhello/content/somedialog.xul", "xulschoolhello-some-dialog", "chrome,centerscreen", somevalue, returnvalue); // you can s
end as many extra parameters as you need.
...And 3 more matches
Handling Preferences - Archive of obsolete content
if you need to refer to the term "preference" in any of your locale files, you must change the string dep
ending on the operating system.
...it is int
ended to be used by an administrator or isp to set settings centrally.
... note: we recomm
end that you include all of your extension preferences in the js defaults file.
...And 3 more matches
Observer Notifications - Archive of obsolete content
« previousnext » sometimes you need your code to s
end a message to other parts of your code.
... observerservice.removeobserver(testobserver, "xulschoolhello-test-topic"); after you have registered some observers to listen to a notification topic, you can then use the notifyobservers method to s
end a notification to all of them.
...but given that chrome is window-dep
endent and non-chrome objects are not, it's tricky to s
end a message to the chrome.
...And 3 more matches
Setting Up a Development Environment - Archive of obsolete content
we recomm
end komodo edit.
...that is more than what you can get with most other editors, so we recomm
end you to give it a try.
... we recomm
end git and github for source control, but any decent software configuration management system will do.
...And 3 more matches
Promises - Archive of obsolete content
let resp = yield new promise((resolve, reject) => { let xhr = new xmlhttprequest; xhr.onload = resolve; xhr.onerror = reject; xhr.open("get", dataurl); xhr.responsetype = "json"; xhr.s
end(); }); let data = resp.target.response; // use the response to construct form data object for the // second request.
... let form = new formdata; form.app
end("id", data.id); form.app
end("content", data.content); // make the second request.
... resp = yield new promise((resolve, reject) => { let xhr = new xmlhttprequest; xhr.onload = resolve; xhr.onerror = reject; xhr.open("post", updateurl); xhr.s
end(form); }); // use the response of the second request.
...And 3 more matches
Creating regular expressions for a microsummary generator - Archive of obsolete content
by the
end of the tutorial, you should know some basics about regular expressions and understand how to create expressions that match urls.
...when such characters appear in a url, and we want to match them in a regular expression, we have to escape them in the expression by prep
ending them with a backwards slash (\).
...in order to restrict our regular expression to urls that start with our example url, we prep
end a caret (^) to the regular expression: ^http://cgi\.ebay\.com/ws/ebayisapi\.dll\?viewitem&item=280018439106 when a caret is the first character of a regular expression, it signifies that the expression must be found at the beginning of the string being matched.
...And 3 more matches
Content states and the style system - Archive of obsolete content
content states are what gecko uses to implement the various state-dep
endent in css (examples would be :hover, :active, :focus, :target, :checked).
... generally, whenever a node's content state changes, style has to be reresolved (recomputed) for that node and all of its desc
endants.
...to this
end, when a <code>contentstateschanged</code> notification is dispatched for a content node the first thing that's done is to is to check whether the content state change something could affect any styles.
...And 3 more matches
Modularization techniques - Archive of obsolete content
a factory allows an implementor to hide both the class declaration and creation details of an object, an extremely important step for allowing maximum flexibility in the implementation of a class and reducing compile time dep
endencies.
... it can even be used to eliminate all link time dep
endencies on the class and its factory entirely.
... the component manager one of the major goals of our modularization is to remove link time dep
endencies.
...And 3 more matches
Priority Content - Archive of obsolete content
they are dep
endant on some code that cannot be integrated in the page.
... dep
endant on: updating dhtml web pages for next generation browsers on devedge the tune-up wizard (see below, in the wishlist section) mostly completed: popup window controls devedge article migrators: mathieu deaudelin there are inline examples on this page that cannot be migrated.
... they are dep
endant on some style instructions that can only be placed in the header of the page.
...And 3 more matches
File object - Archive of obsolete content
pipelines either begin or
end with the pipe (|) symbol.
...filenames starting and
ending with the pipe symbol (|) are interpreted as pipes.
...pipe to programs generating output on stdout) begin with the pipe symbol; writeable pipelines
end with the pipe symbol.
...And 3 more matches
confirm - Archive of obsolete content
method of install object syntax int confirm( string atext ); int confirm( string atext, string adialogtitle, number abuttonflags, string abutton0title, string abutton1title, string abutton2title, string acheckmsg, object acheckstate ); parameters the second, ext
ended confirm() method is supported starting with gecko 1.8.
...previous gecko versions only support the first, one-parameter method and will throw an error on occuring the ext
ended form.
... see the notes at the
end of this document for a safe way to implement a fallback.
...And 3 more matches
Things I've tried to do with XUL - Archive of obsolete content
this means that creating any sort of visual display (not necessarily "ui"; my use case is for creating a cal
endar time display) that sizes sanely when the user resizes the window is unfortunately very difficult.
... xbl in listboxes using xbl bindings in listboxes is not easy because there is a big bug there: if you create from js an element you want to bind, and if it is hidden when the listbox is first r
endered, the listbox does not create a frame for it, and the xbl doesn't get attached...
... multi-column listboxes when adding items to multi-column listboxes, you can't use the app
enditem api: // auto-create and attach 1st cell var row = mylistbox.app
enditem( label, value ); // create and attach 2nd cell var cell = document.createelement('listcell'); cell.setattribute('label', label2 ); cell.setattribute('value', value2 ); row.app
endchild( cell ); // etc // ...
...And 3 more matches
Manipulating Lists - Archive of obsolete content
although listboxes may be manipulated using the standard dom functions as well, it is recomm
ended that the specialized listbox functions be used instead when possible.
... the app
enditem() function is used to app
end a new item to the
end a list.
... similar to the dom app
endchild() function except that it takes a string label, and you do not have to worry about where to add it in the list structure.
...And 3 more matches
Popup Menus - Archive of obsolete content
the attribute you add dep
ends on which type of popup you want to create.
...if the popup window is larger than the element, is ext
ends to the right.
... after_
end the popup appears below the element with the right edges of the element and the popup window aligned.
...And 3 more matches
Styling a Tree - Archive of obsolete content
all of the content inside the tree's body is r
endered by the treechildren element.
...it contains a function app
endelement() which can be used to add an element to the array.
... getservice(components.interfaces.nsiatomservice); props.app
endelement(aserv.getatom("makeitblue")); } } the properties list requires an array of atom objects, which can be thought of as constant strings.
...And 3 more matches
Writing Skinnable XUL and CSS - Archive of obsolete content
if you wish for your package to bl
end in with the other packages, then the skin for your package should inherit information from the global skin in order to reduce the amount of duplication across packages and in order to make the ui as a whole easier to skin.
...skin files that don't import any other skin files, but that are only int
ended to be used in the context of another component's skin are also considered derived skin files, since they are implicitly importing information from the other component's skin.
...this allows the button to bl
end in as much as possible regardless of where it is used.
...And 3 more matches
checkbox - Archive of obsolete content
this is most commonly r
endered as a box when the element is off and a box with a check when the element is on.
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 3 more matches
menuitem - Archive of obsolete content
it acts much like a button but it is r
endered on a menu.
...
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...And 3 more matches
menupopup - Archive of obsolete content
when a menupopup is open, it floats above the window and may ext
end outside the window border.
... valid single-word values are after_start, after_
end, before_start, before_
end,
end_after,
end_before, start_after, start_before, overlap, at_pointer or after_pointer.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...And 3 more matches
tabbrowser - Archive of obsolete content
ties browsers, cangoback, cangoforward, contentdocument, contenttitle, contentvieweredit, contentviewerfile, contentwindow, currenturi, docshell, documentcharsetinfo, homepage, markupdocumentviewer, securityui, selectedbrowser, selectedtab, sessionhistory, tabcontainer, tabs, visibletabs, webbrowserfind, webnavigation, webprogress methods addprogresslistener, addtab, addtabsprogresslistener,app
endgroup, getbrowseratindex, getbrowserindexfordocument, getbrowserfordocument, getbrowserfortab, geticon, getnotificationbox, gettabforbrowser, gettabmodalpromptbox, goback, gobackgroup, goforward, goforwardgroup, gohome, gotoindex, loadgroup, loadonetab, loadtabs, loaduri, loaduriwithflags, movetabto, pintab, reload, reloadalltabs, reloadtab, reloadwithflags, removealltabsbut, removecurrenttab, rem...
...if this attribute is set to true or omitted, autoscroll will be enabled or dep
ending on the user preference general.autoscroll.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...And 3 more matches
textbox - Archive of obsolete content
, multiline, newlines, onblur, onchange, onfocus, oninput, placeholder, preference, readonly, rows, searchbutton, size, spellcheck, tabindex, timeout, type, value, wrap, wraparound properties accessibletype, clickselectsall, decimalplaces, decimalsymbol, defaultvalue, disabled, editor, emptytext, increment, inputfield, label, max, maxlength, min, placeholder, readonly, searchbutton, selection
end, selectionstart, size, spinbuttons, tabindex, textlength, timeout, type, value, valuenumber, wraparound methods decrease, increase, reset, select, setselectionrange style classes plain examples <vbox> <label control="your-name" value="enter your name:"/> <textbox id="your-name" value="john"/> </vbox> attributes cols type: integer for multiline textboxes, the number of...
... search a textbox int
ended for searching.
... selection
end type: integer get or set the
end of the selected portion of the field's text.
...And 3 more matches
XULRunner Hall of Fame - Archive of obsolete content
source yoono desktop win/mac application to get all your fri
end updates, update your status and share stuff easily across facebook, myspace, twitter, and more - all at once!
...github bluegriffon the next-generation web editor based on the r
endering engine of firefox.
... vivipos integrated point-of-sales software-hardware solution with customized xul application as the device front-
end.
...And 3 more matches
nsIContentPolicy - Archive of obsolete content
query any dom properties that dep
end on layout (e.g., offset* properties).
... query any dom properties that dep
end on style (e.g., computed style).
... query any dom properties that dep
end on the current state of the dom outside the "context" node (e.g., lengths of node lists).
...And 3 more matches
2006-10-20 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - october 13 - october 20, 2006 announcements inter-operability test day on tuesday october 17 interoperability testing on tuesday, for cal
endar applications test on how sunbird works with published cal
endars that were generated.
...discussion about the missing ability to list and search all the events in a cal
endar in lightning 0.3.
... location of files discussion about where are the cal
endar files stored and can they be moved.
...And 3 more matches
Vulnerabilities - Archive of obsolete content
vulnerability categories a software flaw vulnerability is caused by an unint
ended error in the design or coding of software.
... for example, email client software may contain a feature that r
enders html content in email messages.
... an attacker could craft a fraudulent email message that contains hyperlinks that, when r
endered in html, appear to the recipient to be benign but actually take the recipient to a malicious web site when they are clicked on.
...And 3 more matches
Theme changes in Firefox 4 - Archive of obsolete content
controlling the actual icon size used by add-on toolbar buttons the iconsize attribute of the browser's toolbar elements now has a different default value on each toolbar indep
endently.
... default values of the iconsize attribute on browser toolbars if the theme doesn't override the value of the iconsize attribute, the following defaults are used: toolbar element id default iconsize value menu bar #toolbar-menubar small navigation bar #nav-bar small or large dep
ending on user preference.
... bookmarks toolbar #personaltoolbar small tab bar #tabstoolbar small add-on bar #addon-bar small custom toolbars some other value small or large dep
ending on user preference.
...And 3 more matches
Using the Right Markup to Invoke Plugins - Archive of obsolete content
the object element: w3c standards and cross-browser issues the object element is part of the html 4.01 specification, and is the recomm
ended mechanism to invoke plugins.
... browsers such as netscape 7 will not r
ender the flash plugin if the above kind of markup is used, because netscape 7 does not support activex or activex-based component invocations, with the exception of windows media player in netscape 7.1.
...thus, in the following example, instead of stopping at the activex control, ie will display the same animation twice since it also understands the mime type for flash: <!-- usage will not work as int
ended --> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="366" height="142" id="myflash"> <param name="movie" value="javascript-to-flash.swf" /> <param name="quality" value="high" /> <param name="swliveconnect" value="true" /> <object type="application/x-shockwave-flash" da...
...And 3 more matches
Create the Canvas and draw on it - Game development
before we can start writing the game's functionality, we need to create a basic structure to r
ender the game inside.
... the game's html the html document structure is quite simple, as the game will be r
endered entirely on the <canvas> element.
...the body contains <canvas> and <script> elements — we will r
ender the game inside the first one and write the javascript code that controls it in the second one.
...And 3 more matches
Initialize the framework - Game development
before we can start writing the game's functionality, we need to create a basic structure to r
ender the game inside.
... the game's html the html document structure is quite simple, as the game will be r
endered entirely on the <canvas> element generated by the framework.
... choose an option that suits you best — i would recomm
end the min.js option as it keeps the source code smaller, and you are unlikely need to go through the source code anyway.
...And 3 more matches
XInclude - MDN Web Docs Glossary: Definitions of Web-related terms
xml inclusions (xinclude) is a w3c recomm
endation to allow inclusion of xml more different sources in a more convenient fashion than xml external entities.
... { request.setrequestheader('accept-language', acceptlanguage); } switch (parse) { case 'text': // priority should be on media type: var contenttype = request.getresponseheader('content-type'); //text/xml; charset="utf-8" // s
end to get headers first?
...case null: case 'xml': responsetype = 'responsexml'; break; default: alert('xinclude element contains an invalid "parse" attribute value'); return false; break; } request.s
end(null); if((request.status === 200 || request.status === 0) && request[responsetype] !== null) { response = request[responsetype]; if (responsetype === 'responsexml') { // apply xpointer (only xpath1() subset is supported) var responsenodes; if (x...
...And 3 more matches
Mobile accessibility - Learn web development
modern mobile browsers t
end to have good support for wai-aria, too.
...it t
ends to differ widely between android versions and even between different phone models.
... the options available under the rotor are context-sensitive — they will differ dep
ending on what app or view you are in (see below for an example).
...And 3 more matches
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.
... last of all, add the following to the
end of the code, to control the time elapsed display: player.ontimeupdate = function() { let minutes = math.floor(player.currenttime / 60); let seconds = math.floor(player.currenttime - minutes * 60); let minutevalue; let secondvalue; if (minutes<10) { minutevalue = "0" + minutes; } else { minutevalue = minutes; } if (seconds<10) { secondvalue = "0" + seconds; } else { secondvalue = seconds; } mediatime = minutevalue + ":" + secondvalue; timelabel.textcontent = mediatime; }; each time the time updates (once per second), we fire this function.
...dep
ending on how clear the spoken audio is, the resulting transcript quality will vary greatly.
...And 3 more matches
Cascade and inheritance - Learn web development
the h1
ends up being colored blue — these rules have an identical selector and therefore carry the same specificity, so the last one in the source order wins.
...the below h1
ends up being colored red — the class selector gives its rule a higher specificity, and so it will be applied even though the rule with the element selector appears further down in the source order.
... some properties do not inherit — for example if you set a width of 50% on an element, all of its desc
endants do not get a width of 50% of their parent's width.
...And 3 more matches
Practical positioning examples - Learn web development
donec ultrices, urna maximus consequat aliquet, dui neque eleif
end lorem, a auctor libero turpis at sem.
...and now an ordered list: how exciting!</p> <ol> <li>dui neque eleif
end lorem, a auctor libero turpis at sem.</li> <li>aliquam ut porttitor urna.</li> <li>nulla facilisi</li> </ol> </article> </div> </section> so here we've got a <section> element with a class of info-box, which contains a <ul> and a <div>.
...first, add the following rule at the bottom of your css to remove the default padding-left and margin-top from the unordered list: .info-box ul { padding-left: 0; margin-top: 0; } note: we are using desc
endant selectors with .info-box at the start of the chain throughout this example — this is so that we can insert this feature into a page with other content already on it, without fear of interfering with the styles applied to other parts of the page.
...And 3 more matches
How can we design for all types of users? - Learn web development
modern browsers get around this rule by pret
ending that you're asking for "16 pixels when the user sets a zoom factor of 100%".
...relative units are fri
endlier to accessibility because they respect the settings on the user's system.
... suppose we wanted a base font size of 16px and an h1 (main heading) at the equivalent of 32px, yet if within the h1 we find a span with the subheading class, it too must be r
endered at the default font size (usually 16px).
...And 3 more matches
UI pseudo-classes - Learn web development
for example: <form> <fieldset> <leg
end>feedback form</leg
end> <div> <label for="fname">first name: </label> <input id="fname" name="fname" type="text" required> </div> <div> <label for="lname">last name: </label> <input id="lname" name="lname" type="text" required> </div> <div> <label for="email">email address (include if you want a response): </label> <input id="email" name="ema...
...we then absolutely position different generated content dep
ending on whether the form's data is valid or invalid — a green check or a red cross, respectively.
...a classic example is a shipping form — commonly you'll get asked if you want to use the same address for billing and shipping; if so, you can just s
end a single address to the server, and might as well just disable the billing address fields.
...And 3 more matches
Web forms — Working with user data - Learn web development
looking to become a front-
end web developer?
...therefore, before you look at the other sections listed below we'd recomm
end that you go away and learn some css and javascript first.
... validating and submitting form data client-side form validation s
ending data is not enough — we also need to make sure that the data users enter into forms is in the correct format to process it successfully, and that it won't break our applications.
...And 3 more matches
Video and audio content - Learn web development
the ogg container t
ends to use vorbis audio and theora video.
... an audio player will t
end to play an audio track directly, e.g.
...this means media support is partly dep
endent on what software the user has installed.
...And 3 more matches
General asynchronous programming concepts - Learn web development
the final one to the console) and then adds a paragraph to the dom: const btn = document.queryselector('button'); btn.addeventlistener('click', () => { let mydate; for(let i = 0; i < 10000000; i++) { let date = new date(); mydate = date } console.log(mydate); let pelem = document.createelement('p'); pelem.textcontent = 'this is a newly-added paragraph.'; document.body.app
endchild(pelem); }); when running the example, open your javascript console then click the button — you'll notice that the paragraph does not appear until after the dates have finished being calculated and the console message has been logged.
...we block user interactivity with the r
endering of the ui.
... ctx.arc(random(0, canvas.width), random(0, canvas.height), 10, degtorad(0), degtorad(360), false); ctx.fill() } } fillbtn.addeventlistener('click', expensiveoperation); alertbtn.addeventlistener('click', () => alert('you clicked me!') ); if you click the first button and then quickly click the second one, you'll see that the alert does not appear until the circles have finished being r
endered.
...And 3 more matches
Object-oriented JavaScript for beginners - Learn web development
there are lots of things you could know about a person (their address, height, shoe size, dna profile, passport number, significant personality traits ...) , but in this case we are only interested in showing their name, age, g
ender, and interests, and we also want to be able to write a short introduction about them based on this data, and get them to say hello.
... this is really useful — teachers and students share many common features such as name, g
ender, and age, so it is convenient to only have to define those features once.
... remove the code you inserted so far, and add in this replacement constructor — this is exactly the same as the simple example in principle, with just a bit more complexity: function person(first, last, age, g
ender, interests) { this.name = { first : first, last : last }; this.age = age; this.g
ender = g
ender; this.interests = interests; this.bio = function() { alert(this.name.first + ' ' + this.name.last + ' is ' + this.age + ' years old.
...And 3 more matches
The "why" of web performance - Learn web development
web performance refers to how quickly site content loads and r
enders in a web browser, and how well it responds to user interaction.
...while an individual's perception of site performance performance is subjective, loading and r
endering can be measured.
...the same site will be slow to load, possibly verging on unusable dep
ending on cell coverage.
...And 3 more matches
React resources - Learn web development
create-react-app makes it possible to import css files into javascript modules, so that css is only sent to your user when the corresponding component is r
endered.
... this screenshot shows our finished application as it appears in react devtools: on the left, we see all of the components that make up our application, including some unique keys for the things that are r
endered from arrays.
...until the arrival of hooks, es6 classes were the only way to bring state into components or manage r
endering side effects.
...And 3 more matches
Vue resources - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
...this contains information on customizing and ext
ending the output you are generating via the cli.
... nuxtjs — nuxtjs is a server-side vue framework, with some architectural opinions that can be useful to creating maintainable applications, even if you don’t use any of the server side r
endering features it provides.
...And 3 more matches
Accessibility/LiveRegionDevGuide
in at-spi, this is accomplished by app
ending ":add" or ":remove" to the event string.
...in this case, the root event string is object:text-changed with ":delete" and ":insert" being app
ended to complete the event type.
... an event that has an object that is not a desc
endant of the document frame is not a live region.
...And 3 more matches
Accessible Toolkit Checklist
in this case, adding a complete or even a partial accessibility solution is major work, and will require more than one full time person as well as cooperation from windows assistive technology v
endors when parts of your msaa solution isn't working.
...if possible, make the tooltip automatically app
end text for the keyboard shortcut associated with it.
...ise accessibility support will be quite difficult tab should always focus the next item, not insert a tab, unless there's a really good reason and another way to navigate always use system selection color, otherwise screen reader won't read the text make sure the caret is never blinking when focus is not in text field handle standard editing keys, such as arrow keys, home,
end, pageup, pagedown, ctrl+left/right, shifted keys for selection, delete, ctrl+delete, backspace, ctrl+backspace, ctrl+a, ctrl+b, ctrl+c, ctrl+i, ctrl+u, ctrl+x, ctrl+v, ctrl+[shift]+z in multiline text field, enter key inserts new line (thus default button no longer shows dark border when multiline text field is focused) in autocomplete text fields, make sure the autocomplete popup doe...
...And 3 more matches
Chrome registration
the specific format and meaning of category entries dep
end on the category.
...note: it must
end with a '/'.
... manifest flags manifest lines can have multiple, space-delimited flags added at the
end of the registration line.
...And 3 more matches
Debugging Table Reflow
the table layout strategy can be visualized by defining in the makefiles the constant debug_table_strategy.if one takes for instance the following table code: <table border width="300"> <colgroup> <col> <col width="50%"> <col width="1*"> <col> </colgroup> <tr> <td style="width:80px">cell 1</td> <td>cell 2</td> <td>cell 3</td> <td>cell 4</td> </tr> </table> r
endering: <colgroup><col><col width="50%"><col width="1*"><col></colgroup>cell 1cell 2cell 3cell 4 it will produce the following log at the entrance of assignnonpctcolwidths: assignnonpctcolwidths en max=4500 count=0 ***start table dump*** mcolwidths=-1 -1 -1 -1 col frame cache -> 0=00b93138 1=00b931f0 2=024dd728 3=024dd780 **start col dump** colindex=0 isanonymous=0 constraint=0 widths=-1 -1 ...
...-1 -1 -1 -1 -1 -1 -1 -1 **
end col dump** **start col dump** colindex=1 isanonymous=0 constraint=0 widths=-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 **
end col dump** **start col dump** colindex=2 isanonymous=0 constraint=0 widths=-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 **
end col dump** **start col dump** colindex=3 isanonymous=0 constraint=0 widths=-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 **
end col dump** ***
end table dump*** the en stands for entrance (ex for leaving a routine).
...leaving assignnonpctcolwidths shows that already to all columns a width of 360 twips has been assigned assignnonpctcolwidths ex ***start table dump*** mcolwidths=360 360 360 360 col frame cache -> 0=00b93138 1=00b931f0 2=024dd728 3=024dd780 **start col dump** colindex=0 isanonymous=0 constraint=0 widths=360 540 1230 -1 -1 -1 -1 -1 -1 360 **
end col dump** **start col dump** colindex=1 isanonymous=0 constraint=0 widths=360 540 -1 -1 -1 -1 -1 -1 -1 360 **
end col dump** **start col dump** colindex=2 isanonymous=0 constraint=3 widths=360 540 -1 -1 -1 -1 -1 -1 540 360 **
end col dump** **start col dump** colindex=3 isanonymous=0 constraint=0 widths=360 540 -1 -1 -1 -1 -1 -1 -1 360 **
end col dump** ***
end table dump*** the first c...
...And 3 more matches
Cross Process Object Wrappers
passing cpows from frame scripts frame scripts can s
end messages to chrome using one of two global functions: s
endasyncmessage() or s
endsyncmessage().
...for example, this frame script s
ends a dom node to chrome when the user clicks it, as the clicked property of the third argument: // frame script addeventlistener("click", function (event) { s
endasyncmessage("my-e10s-extension-message", {}, { clicked : event.target }); }, false); in the chrome script, the dom node is now accessible through a cross process object wrapper, as a property of the objects property of the message.
... this means you can write code like this: // frame script /* on mouseover, s
end the button to the chrome script as a cpow.
...And 3 more matches
How to Report a Hung Firefox
note: this article is int
ended for developers and technically-knowledgeable users.
...please check the box to s
end the crash report to mozilla start firefox.
... linux and mac on linux and mac (firefox >=27), s
ending sigabrt to a process will trigger the crash reporter.
...And 3 more matches
Internationalized Domain Names (IDN) Support in Mozilla Browsers
rfc's 3490, 3491, 3492.) these new rfc's now make it possible for domain name servers to register non-ascii domain names and application/client v
endors to implement standardized support for handling non-ascii characters in domain names.
... how idn works when a browser sees a host name such as http://developer.mozilla.org, it passes a request to the dns resolver service (usually built into an os), which in turn s
ends a request to a nearest domain name server to return an ip address that corresponds to the host name.
...if
end users input non-ascii characters as part of a domain name or if a web page contains a link using a non-ascii domain name, the application must convert such input into a special encoded format using only the usual ascii subset characters.
...And 3 more matches
DeferredTask.jsm
method overview bool isp
ending();obsolete since gecko 28 void start();obsolete since gecko 28 void flush();obsolete since gecko 28 void cancel();obsolete since gecko 28 void arm(); void disarm(); promise finalize(); attributes isarmed boolean indicates whether the task is currently requested to start again later, regardless of whether it is current...
... methods isp
ending obsolete since gecko 28 check the current task state.
... bool isp
ending(); return value returns true if p
ending, false otherwise.
...And 3 more matches
WebChannel.jsm
method overview listen(function callback); stoplistening(); s
end(object message, eventtarget target); attributes id string webchannel id methods listen() registers the callback for messages on this channel.
... parameters callback callback function containing function(id, message, s
endercontext) parameters.
... id - webchannel id of the incoming messages message - incoming message object s
endercontext - incoming message context - this should be treated as an opaque object and passed to the .s
end() method stoplistening() resets the callback for messages on this channel.
...And 3 more matches
Localizing with Mercurial
note the dot (".") at the
end of the second command, which means the current directory.
...your config file is called either ~/.hgrc (unix systems) or mercurial.ini (windows), dep
ending on your operating system.
... s
ending changes to mozilla now that you have hg account privileges, you can s
end your work to mozilla all by yourself.
...And 3 more matches
Fonts for Mozilla's MathML engine
fonts with appropriate unicode coverage and open font format features are required for good math r
endering.
...note that most of these instructions may as well apply to other web r
endering engines.
... note:cambria math is installed by default on windows 7 and later versions and should ensure relatively good mathml r
endering.
...And 3 more matches
Nonblocking IO In NSPR
a thread is typically created to att
end to one of the simultaneous i/o operations that may potentially block.
...a single thread is sufficient to att
end to multiple nonblocking file descriptors simultaneously.
...the potentially-blocking io functions include <tt>pr_connect()</tt>, <tt>pr_accept()</tt>, <tt>pr_acceptread()</tt>, <tt>pr_read()</tt>, <tt>pr_write()</tt>, <tt>pr_writev()</tt>, <tt>pr_recv()</tt>, <tt>pr_s
end()</tt>, <tt>pr_recvfrom()</tt>, <tt>pr_s
endto()</tt>, and <tt>pr_transmitfile(),</tt> and do not include <tt>pr_bind()</tt> and <tt>pr_listen()</tt>.
...And 3 more matches
PRLinger
structure used with the pr_sockopt_linger socket option to specify the time interval (in printervaltime units) to linger on closing a socket if any data remain in the socket s
end buffer.
...linger time (in printervaltime units) to linger before closing if any data remain in the socket s
end buffer.
... description by default, pr_close returns immediately, but if there are any data remaining in the socket s
end buffer, the system attempts to deliver the data to the peer.
...And 3 more matches
An overview of NSS Internals
a trust anchor is just another x.509 certificate that is already known and has been deliberately marked as trusted by a software v
endor, administrators inside an organizational infrastructure, or the software user.
...data described as pem is a base64 encoded presentation of der, usually wrapped between human readable begin/
end lines.
... it's worth mentioning the ext
ended validation (ev) principle, which is an effort by software v
endors and cas to define a stricter set of rules for issuing certificates for web site certificates.
...And 3 more matches
NSS API Guidelines
here is an example from lib/base/baset.h: #ifdef debug static const char baset_cvs_id[] = "@(#) $rcsfile: nss-guidelines.html, v $ $revision: 48936 $ $date: 2009-08-11 07:45:57 -0700 (tue, 11 aug 2009) $ $name$"; #
endif /* debug */ the difference, between this and id, is that id has some useless information (every file is "experimental"), and doesn't have name.
... data types function prototypes public nss____t.h nss____.h fri
end (only if required) nss____tf.h nss____f.h nss-private ____t.h ____.h module-private ____tm.h ____m.h the files on the right include the files to their left; the files in a row include the files directly above them.
... "fri
end" headers are for things that we really wish weren't used by non-nss code, but which are.
...And 3 more matches
NSS Sample Code sample3
sample code 3: hashing, mac /* * demonstration program for hashing and macs */ #include <iostream.h> #include "pk11pub.h" #include "nss.h" static void printdigest(unsigned char *digest, unsigned int len) { int i; cout << "length: " << len <<
endl; for(i = 0;i < len;i++) printf("%02x ", digest[i]); cout <<
endl; } /* * main */ int main(int argc, const char *argv[]) { int status = 0; pk11slotinfo *slot = 0; pk11symkey *key = 0; pk11context *context = 0; unsigned char data[80]; unsigned char digest[20]; /*is there a way to tell how large the output is?*/ unsigned int len; secstatus s; /* initialize nss * if your application code has already initialized nss, you can skip it * here.
... * this code uses the simplest of the init functions, which does not * require a nss database to exist */ nss_nodb_init("."); /* get a slot to use for the crypto operations */ slot = pk11_getinternalkeyslot(); if (!slot) { cout << "getinternalkeyslot failed" <<
endl; status = 1; goto done; } /* * part 1 - simple hashing */ cout << "part 1 -- simple hashing" <<
endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a context for hashing (digesting) */ context = pk11_createdigestcontext(sec_oid_md5); if (!context) { cout << "createdigestcontext failed" <<
endl; goto done; } s = pk11_digestbegin(context); if (s != secsuccess) { cout << "digestbegin failed" <<
endl; goto done; } s = pk11_digestop(context, data, size...
...of data); if (s != secsuccess) { cout << "digestupdate failed" <<
endl; goto done; } s = pk11_digestfinal(context, digest, &len, sizeof digest); if (s != secsuccess) { cout << "digestfinal failed" <<
endl; goto done; } /* print digest */ printdigest(digest, len); pk11_destroycontext(context, pr_true); context = 0; /* * part 2 - hashing with included secret key */ cout << "part 2 -- hashing with included secret key" <<
endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a key */ key = pk11_keygen(slot, ckm_generic_secret_key_gen, 0, 128, 0); if (!key) { cout << "create key failed" <<
endl; goto done; } cout << (void *)key <<
endl; /* create parameters for crypto context */ /* note: params must be provided, but may be empty */ ...
...And 3 more matches
nss tech note1
the type is undefined as it is completely dep
endent on the content of the decoder templates.† this typically points to a struct that is described (or partially described) by the templates.
...the sub field of the template points to a callback function of type sec_asn1templatechooser that returns the subtemplate dep
ending on the component data.
...this is used in a template array within a sequence, if you don't care about the fields at the
end of it.
...And 3 more matches
NSS PKCS11 Functions
for example, if you would normally specify tokens=<0x4=[configdir='./mybackup' tok
endescription='backup']> to softoken if you at init time, then you could specify "configdir='./mybackup' tok
endescription='backup'" as your module spec here to open the database ./mybackup on the fly.
...typical parameters here are configdir, tok
endescription and flags.
...tok
endescription the label value for this token returned in the ck_token_info structure with an internationalize string (utf8).
...And 3 more matches
sslintro.html
warning: some of the ssl header files provided as part of nss 2.0 include both public apis documented in the nss 2.0 documentation set and private apis int
ended for internal use by the nss implementation of ssl.
...the handshake occurs automatically the first time communication is requested with a socket read/write or s
end/receive call.
... functions that can be used by both clients and servers during communication include the following: pr_s
end or pr_write pr_read or pr_recv pr_geterror pr_getpeername pr_sleep pr_malloc pr_free pr_poll pr_now pr_intervaltomilliseconds pr_millisecondstointerval pr_shutdown pr_close ssl_invalidatesession after establishing a connection, an application first calls pr_s
end, pr_recv, pr_read, pr_write, or ssl_forcehandshake to initiate the handshake.
...And 3 more matches
Exact Stack Rooting
this guide is int
ended for spidermonkey hackers!
...the method you should use to keep the gc up-to-date with this information will vary dep
ending on where the gcpointer is being stored.
...to that
end, we have a special "rooting" mechanism for stack pointers that is very efficiently able to add and remove gcpointers to the rootedset.
...And 3 more matches
JS::AutoVectorRooter
bool app
end(const t &v) app
ends an element v to the array.
... bool app
end(const t *ptr, size_t len) app
ends a sequence of t specified with a pointer ptr and length len to the array.
... bool app
endall(const autovectorrooter<t> &other) app
ends all elements of other to the array.
...And 3 more matches
JS_BeginRequest
syntax void js_beginrequest(jscontext *cx); void js_
endrequest(jscontext *cx); name type description cx jscontext * the context in which the calling thread int
ends to call jsapi functions.
... description when your multithreaded application wants to use a jscontext, it must use js_beginrequest and js_
endrequest to bracket maximal non-blocking hunks of native code that call the jsapi.
...any blocking native call, or lengthy computation that can race safely with the garbage collector, within a request, must be bracketed with js_susp
endrequest and js_resumerequest.
...And 3 more matches
TPS Tests
tps is an
end to
end test for sync.
... tps tests t
end to be broken down into three sections, in the following order (we'll cover these out of order, for the sake of simplicity) phase declarations (mandatory).
... phase implementation (mandatory) it's worth noting that some parts of tps assume that it can read the number off the
end of the phase or profile to get to the next one, so try to stick to the convention established in the other tests.
...And 3 more matches
Secure Development Guidelines
is exploitable (in some browsers) with a simple request such as: http://www.victim.com?something=<script>alert('oops')</script> xss: prevention escape all dynamic input that will be sent back to the user html encoding & → & < → < > → > " → " ' → ' url encoding % encoding java/vbscript escaping dep
ends on the context; in a single-quoted string, escaping ' would suffice sql injection occurs when un-trusted input is mixed with a sql string sql is a language used to interact with databases code injection attack that is similar to xss but targeted at sql rather than html and javascript if input is mixed with sql, it could itself become an sql instruction and be used to: query da...
...a/b : 0; } writing secure code: memory management string handling c-style strings are byte arrays that
end with a \0 byte some string handling functions won’t perform any kind of length checking, so don’t use them ensure your string is always \0 terminated!
...int argc, char **argv, char **envp) { int fd = open("/etc/shadow", o_rdwr); setreuid(getuid(), getuid()); excve("/bin/sh", argv, envp); } suid root applications file i/o: file descriptors and handles potential overflows when using select fd_set struct, static length, holds a bitmask of fds manipulated with fd_set, fd_isset, fd_clr and fd_zero macros fd_set’s size dep
ends on the operating system if the os allows opening more fds, then fd_set can hold could overflow fd_set file i/o: file descriptors and handles good solution: dynamically allocate fd_set structs int main(void) { int i, fd; fd_set fdset; for( i = 0; i < 2000; i++) { fd = open("/dev/null", o_rdwr); } fd_set(fd, &fdset); } file i/o: race conditions operatin...
...And 3 more matches
Querying Places
results_as_full_visit: this is an ext
ended version of result_type_visit.
... basic query search parameters const unsigned long time_relative_epoch = 0 const unsigned long time_relative_today = 1 const unsigned long time_relative_now = 2 attribute prtime begintime attribute unsigned long begintimereference readonly attribute boolean hasbegintime readonly attribute prtime absolutebegintime attribute prtime
endtime attribute unsigned long
endtimereference readonly attribute boolean has
endtime readonly attribute prtime absolute
endtime attribute astring searchterms readonly attribute boolean hassearchterms attribute long minvisits attribute long maxvisits attribute boolean onlybookmarked attribute boolean domainishost attribute autf8string domain readonly attribute boolean hasdomain attribute ...
...attribute autf8string annotation readonly attribute boolean hasannotation readonly attribute unsigned long foldercount basic query configuration options const unsigned short group_by_day = 0 const unsigned short group_by_host = 1 const unsigned short group_by_domain = 2 const unsigned short group_by_folder = 3 const unsigned short sort_by_none = 0 const unsigned short sort_by_title_asc
ending = 1 const unsigned short sort_by_title_desc
ending = 2 const unsigned short sort_by_date_asc
ending = 3 const unsigned short sort_by_date_desc
ending = 4 const unsigned short sort_by_uri_asc
ending = 5 const unsigned short sort_by_uri_desc
ending = 6 const unsigned short sort_by_visitcount_asc
ending = 7 const unsigned short sort_by_visitcount_desc
ending = 8 const unsigned short sort_by_keyw...
...And 3 more matches
operator+=
« xpcom api reference summary this operator+= is a shortcut for the app
end family of functions.
... self_type& operator+=( const self_type& astring ); parameters astring [in] a nsastring to app
end to this string.
... self_type& operator+=( const char_type* adata ); parameters adata [in] a raw character array to app
end to this string.
...And 3 more matches
IAccessibleTable
the range of valid coordinates for this interface are implementation dep
endent.
...content and size of the returned table are implementation dep
endent.
...once the handler has returned, the validity of the data dep
ends on how the server manages the life cycle of its objects.
...And 3 more matches
IAccessibleValue
the exact return type is implementation dep
endent.
...the type of the returned value is implementation dep
endent.
...[propget] hresult maximumvalue( [out] variant maximumvalue ); parameters maximumvalue returns the maximal value in an implementation dep
endent type.
...And 3 more matches
nsIBrowserHistory
eastyped(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); void removepages([array, size_is(alength)] in nsiuri auris, in unsigned long alength, in boolean adobatchnotify); void removepagesbytimeframe(in long long abegintime, in long long a
endtime); void removepagesfromhost(in autf8string ahost, in boolean aentiredomain); void removevisitsbytimeframe(in long long abegintime, in long long a
endtime); void unregisteropenpage(in nsiuri auri); obsolete since gecko 9.0 note: the markpageasfollowedlink and markpageastyped methods were moved to nsinavhistoryservice in gecko 22.0 so that all markpageas* meth...
... adobatchnotify obsolete since gecko 9.0 if set to true, the beginupdatebatch and
endupdatebatch events are sent; otherwise, no notification of changes to the history is provided.
... void removepagesbytimeframe( in long long abegintime, in long long a
endtime ); parameters abegintime the time of the first page to remove, in microseconds from epoch.
...And 3 more matches
nsICrashReporter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void annotatecrashreport(in acstring key, in acstring data); void app
endappnotestocrashreport(in acstring data); void app
endobjcexceptioninfotoappnotes(in voidptr aexception); native code only!
... app
endappnotestocrashreport() app
end some data to the "notes" field, to be submitted with a crash report.
... unlike annotatecrashreport(), this method will app
end to existing data.
...And 3 more matches
nsIHttpServer
* * @param callback * an asynchronous callback used to notify the user when this server is * stopped and all p
ending requests have been fully served * @throws ns_error_null_pointer * if callback is null * @throws ns_error_unexpected * if this server is not running */ void stop(in nsihttpserverstoppedcallback callback); /** * associates the local file represented by the string file with all requests * which match request.
... * * @param path * the path on the server (beginning with a "/") which is to be handled by * handler; this path must not include a query string or hash component; it * also should usually be canonicalized, since most browsers will do so * before s
ending otherwise-matching requests * @param handler * an object which will handle any requests for the given path, or null to * remove any existing handler; if while the server is running the handler * throws an exception while responding to a request, an http 500 response * will be returned * @throws ns_error_invalid_arg * if path does not begin with a "/" */ void...
... * * @param prefix * the path on the server (beginning and
ending with "/") which is to be * handled by handler; this path must not include a query string or hash * component.
...And 3 more matches
nsIMessageBroadcaster
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsimessagelistenermanager message "broadcasters" don't have a single "other side" that they s
end messages to, but rather a set of subordinate message managers.
...see message manager interfaces for more details on the distinction between message s
enders and message broadcasters.
... methods void broadcastasyncmessage([optional] in astring messagename, [optional] in jsval obj, [optional] in jsval objects); nsimessagelistenermanager getchildat(in unsigned long aindex); broadcastasyncmessage() like s
endasyncmessage(), but also broadcasts this message to all "child" message managers of this message manager.
...And 3 more matches
nsIMessageListener
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisupports this interface is used to receive messages sent using the nsimessagebroadcaster, nsimessages
ender, or nsisyncmessages
ender interfaces.
...this function receives a message from one of the three message-s
ending functions in the message manager framework: broadcastasyncmessage s
endasyncmessage s
endsyncmessage.
...this is the first argument passed into the message-s
ending function.
...And 3 more matches
nsIMessenger
nurl(in acstring aurl); void loadurl(in nsidomwindow ptr, in acstring aurl); void launchexternalurl(in acstring aurl); boolean canundo(); boolean canredo(); unsigned long getundotransactiontype(); unsigned long getredotransactiontype(); void undo(in nsimsgwindow msgwindow); void redo(in nsimsgwindow msgwindow); void s
endunsentmessages(in nsimsgidentity aidentity, in nsimsgwindow amsgwindow); void setdocumentcharset(in acstring characterset); void saveas(in acstring auri, in boolean aasfile, in nsimsgidentity aidentity, in astring amsgfilename); void openattachment(in acstring contenttpe, in acstring url, in acstring displayname, in acstring messageuri, in boolean isexternalattachment); ...
... s
endingunsentmsgs boolean indicates if s
ending messages is in progress.
... launchexternalurl() launches the nsiexternalprotocolservice and s
ends it the url.
...And 3 more matches
nsITreeSelection
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void adjustselection(in long index, in long count); void clearrange(in long startindex, in long
endindex); void clearselection(); void getrangeat(in long i, out long min, out long max); long getrangecount(); void invalidateselection(); void invertselection(); boolean isselected(in long index); void rangedselect(in long startindex, in long
endindex, in boolean augment); void select(in long index); void selectall(); void timedselect(in long index, i...
...void clearrange( in long startindex, in long
endindex ); parameters startindex index to clearing at.
...
endindex index to stop clearing at.
...And 3 more matches
Cached compose window FAQ
instead of destroying the mail compose window on s
end (or close) just to create a new one the next time, mozilla mail will "cache" the compose window on s
end (or close), and use that instead.
... but we noticed that the common usage pattern is to compose, s
end, compose, s
end, compose s
end.
... we could just hide it on s
end, and then show it on the next compose.
...And 3 more matches
Mail client architecture overview
the mail reader gecko (xul and html r
endering) rdf (dynamic widgets) 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-indep
endant messaging services.
...it manages individual accounts on mail servers and the identity of users as used to s
end mail.
... there are also a number of protocol indep
endant subsystems that have a symbiotic relationship with base: libmime - for dealing with rfc822 messages and their mime parts.
...And 3 more matches
Activity Manager examples
if the default implementation of nsiactivityprocess, nsiactivitywarning and nsiactivityevent are not sufficient for the activity initiator, activity developers can provide their own components to ext
end the capabilities.
... if activity developers would like to ext
end the default ui representation of the activity types, they can provide their own xbl elements for their own activity types.
...as a result, all junk processing activities (assuming that we process accounts in parallel) dealing with messages coming from the same s
ender will be grouped together.
...And 3 more matches
Using COM from js-ctypes
#include <sapi.h> struct myispvoicevtbl; struct myispvoice { struct myispvoicevtbl* lpvtbl; }; struct myispvoicevtbl { /* start inherit from iunknown */ void* queryinterface; void* addref; ulong (__stdcall *release)(struct myispvoice*); /*
end inherit from iunknown */ /* start inherit from ispnotifysource */ void* setnotifysink; void* setnotifywindowmessage; void* setnotifycallbackfunction; void* setnotifycallbackinterface; void* setnotifywin32event; void* waitfornotifyevent; void* getnotifyeventhandle; /*
end inherit from ispnotifysource */ /* start inherit from ispeventsource */ void* setin...
...terest; void* getevents; void* getinfo; /*
end inherit from ispeventsource */ /* start ispvoice */ void* setoutput; void* getoutputobjecttoken; void* getoutputstream; void* pause; void* resume; void* setvoice; void* getvoice; hresult (__stdcall *speak)(struct myispvoice*, lpcwstr pwcs, dword dwflags, ulong* pulstreamnumber); void* speakstream; void* getstatus; void* skip; void* setpriority; void* getpriority; void* setalertboundary; void* getalertboundary; void* setrate; void* getrate; void* setvolume; void* getvolume; void* waituntildone; void* setsyncspeaktimeout; void* getsyncspeaktimeout; void* speakcompleteevent; void* isuisupported; void* dis...
...playui; /*
end ispvoice */ }; int main(void) { if (succeeded(coinitialize(null))) { struct myispvoice* pvoice = null; hresult hr = cocreateinstance(&clsid_spvoice, null, clsctx_all, &iid_ispvoice, (void**)&pvoice); if (succeeded(hr)) { pvoice->lpvtbl->speak(pvoice, l"hello, firefox!", spf_default, null); pvoice->lpvtbl->release(pvoice); } } // msdn documentation says that even if coinitalize fails, counitialize // must be called couninitialize(); return 0; } converting c code to js-ctypes code now we have working c code.
...And 3 more matches
ctypes
types whose size varies dep
ending on platform because it's unknown whether these values will be 32-bit or 64-bit, they are not automatically converted into javascript numbers.
... type description size_t a platform-dep
endent size type.
... ssize_t a platform-dep
endent size type.
...And 3 more matches
Drawing and Event Handling - Plugins
a drawable can be defined in several ways, dep
ending on the platform.
...drawable } npwindowtype; typedef struct _npwindow { void* window; /* platform-specific handle */ uint32 x; /* position of top-left corner */ uint32 y; /* relative to a netscape page */ uint32 width; /* maximum window size */ uint32 height; nprect cliprect; /* clipping rectangle in port coordinates */ #ifdef xp_unix void * ws_info; /* platform-dep
endent additional data */ #
endif /* xp_unix */ npwindowtype type; /* whether this is a window or a drawable */ } npwindow; the window parameter is a platform-specific handle to a native window element in the browser window hierarchy on windows and unix.
... the browser is also responsible for s
ending the plug-in all events targeted to an instance, such as mouse clicks when the cursor is within the instance rectangle or susp
end and resume events when the application is switched in and out.
...And 3 more matches
Network request list - Firefox Developer Tools
starting with firefox 68, the transferred column lists either "cached (raced)" or "[size] (raced)" dep
ending on the faster source.
...prep
ending a minus (-) negates the filter.
... regexp:\d{5} regexp:mdn|mozilla for example, to find all 404, not found, errors, you can type "404" into the search and auto-complete suggests "status-code:404" so you'll
end up with something like this: search in requests use the search panel to run a full-text search on headers and content.
...And 3 more matches
Console messages - Firefox Developer Tools
the context menu for network messages includes a few extra items in addition the globally-available ones: copy link location acts as you would expect, copying the url into the clipboard open in network panel switches context to the network tab, selects the request and shows you the details res
end request s
ends the network request again.
...additionally, many of these messages help educate developers because they
end with a “learn more” link that takes you to a page with background information and advice for mitigating the issue.
... this site makes use of a sha-1 certificate; it's recomm
ended you use certificates with signature algorithms that use hash functions stronger than sha-1.
...And 3 more matches
about:debugging - Firefox Developer Tools
whether internal extensions appear in the list on this page dep
ends on the setting of the devtools.aboutdebugging.showhiddenaddons preference.
... note: it's recomm
ended that you use the browser toolbox, not the add-on debugger, for debugging webextensions.
... workers the workers section shows all the workers you've got registered on your firefox, categorised as follows: all registered service workers all registered shared workers other workers, including chrome workers and dedicated workers you can connect the developer tools to each worker, and s
end push notifications to service workers.
...And 3 more matches
Animation.playState - Web APIs
syntax var currentplaystate = animation.playstate; animation.playstate = newstate; value idle the current time of the animation is unresolved and there are no p
ending tasks.
... paused the animation was susp
ended and the animation.currenttime property is not updating.
... previously, web animations defined a p
ending value to indicate that some asynchronous operation such as initiating playback was yet to complete.
...And 3 more matches
AudioContext.getOutputTimestamp() - Web APIs
the two values are as follows: audiotimestamp.contexttime: the time of the sample frame currently being r
endered by the audio output device (i.e., output audio stream position), in the same units and origin as the context's audiocontext.currenttime.
... audiotimestamp.performancetime: an estimation of the moment when the sample frame corresponding to the stored contexttime value was r
endered by the audio output device, in the same units and origin as performance.now().
... this is the time after the document containing the audio context was first r
endered.
...And 3 more matches
CloseEvent - Web APIs
1001 going away the
endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.
... 1002 protocol error the
endpoint is terminating the connection due to a protocol error.
... 1003 unsupported data the connection is being terminated because the
endpoint received data of a type it cannot accept (for example, a text-only
endpoint received binary data).
...And 3 more matches
EffectTiming.easing - Web APIs
accepts several pre-defined domstring values, a steps() timing function like steps(5,
end), or a custom cubic-bezier value like cubic-bezier(0.42, 0, 0.58, 1).
... frames(<integer>) specifies a frames timing function, which breaks the animation down into a number of equal time intervals but also displays the start (0%) and
end (100%) states for an equal amount of time to the other intervals.
... steps(<integer>[, [ start |
end ] ]?) specifies a step timing function, which breaks the animation down into a number of equal time intervals.
...And 3 more matches
Element.animate() - Web APIs
enddelay optional the number of milliseconds to delay after the
end of an animation.
... this is primarily of use when sequencing animations based on the
end time of another animation.
...0.5 would indicate starting halfway through the first iteration for example, and with this value set, an animation with 2 iterations would
end halfway through a third iteration.
...And 3 more matches
FileSystemEntry - Web APIs
fullpath read only a usvstring object which provides the full, absolute path from the file system's root to the entry; it can also be thought of as a path which is relative to the root directory, prep
ended with a "/" character.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...tementry experimentalchrome full support 8alternate name full support 8alternate name alternate name uses the non-standard name: entryedge full support 79prefixed full support 79prefixed prefixed implemented with the v
endor prefix: webkitfirefox full support 50ie no support noopera no support nosafari full support 11.1webview android full support ≤37alternate name full suppo...
...And 3 more matches
FileSystemSync - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetfilesystemsync non-standardchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support ≤79prefixed full support ≤79prefixed prefixed implemented with the v
endor prefix: webkitfirefox no support noie no support noopera full support 15prefixed f...
...ull support 15prefixed prefixed implemented with the v
endor prefix: webkitsafari full support 6prefixed full support 6prefixed prefixed implemented with the v
endor prefix: webkitwebview android full support ≤37prefixed full support ≤37prefixed prefixed implemented with the v
endor prefix: webkitchrome android full support 18prefixed full support 18prefixed prefixed implemented with the v
endor prefix: webkitfirefox android no support noopera android ...
...And 3 more matches
FontFace.display - Web APIs
the lengths of the first two periods dep
end on the value of the property and the user agent.
...the spec recomm
ends 3 seconds for the block period, though this may vary from browser to browser.
...the spec recomm
ends 100 ms or less for the block period and 3 seconds for the swap period, though these values may vary from browser to browser.
...And 3 more matches
GamepadEvent - Web APIs
r compatibility desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetgamepadeventchrome full support 35 full support 35 no support 21 — 34prefixed prefixed implemented with the v
endor prefix: webkitedge full support ≤18firefox full support 29 full support 29 no support 24 — 28disabled disabled from version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set ...
...to change preferences in firefox, visit about:config.ie no support noopera full support 22 full support 22 no support 15 — 21prefixed prefixed implemented with the v
endor prefix: webkitsafari full support 10.1webview android no support nochrome android full support yesfirefox android full support 32opera android full support 22 full support 22 ...
...no support 14 — 21prefixed prefixed implemented with the v
endor prefix: webkitsafari ios full support 10.3samsung internet android full support yesgamepadevent() constructorchrome full support 35edge full support 12firefox full support 29 full support 29 no support 24 — 28disabled disabled from version 24 until version 28 (exclusive): this feature is behind the dom.gamepad.enabled preference (needs to be set to true).
...And 3 more matches
HTMLCanvasElement.toBlob() - Web APIs
the code snippet below, for example, takes the image in the <canvas> element whose id is "canvas", obtains a copy of it as a png image, then app
ends a new <img> element to the document, whose source image is the one created using the canvas.
... var canvas = document.getelementbyid('canvas'); canvas.toblob(function(blob) { var newimg = document.createelement('img'), url = url.createobjecturl(blob); newimg.onload = function() { // no longer need to read the blob so it's revoked url.revokeobjecturl(url); }; newimg.src = url; document.body.app
endchild(newimg); }); note that here we're creating a png image; if you add a second parameter to the toblob() call, you can specify the image type.
... var canvas = document.getelementbyid('canvas'); var d = canvas.width; ctx = canvas.getcontext('2d'); ctx.beginpath(); ctx.moveto(d / 2, 0); ctx.lineto(d, d); ctx.lineto(0, d); ctx.closepath(); ctx.fillstyle = 'yellow'; ctx.fill(); function blobcallback(iconname) { return function(b) { var a = document.createelement('a'); a.textcontent = 'download'; document.body.app
endchild(a); a.style.display = 'block'; a.download = iconname + '.ico'; a.href = window.url.createobjecturl(b); } } canvas.toblob(blobcallback('passthisstring'), 'image/vnd.microsoft.icon', '-moz-parse-options:format=bmp;bpp=32'); save toblob to disk with os.file (chrome/add-on context only) this technique saves it to the desktop and is only useful in firefox chrome co...
...And 3 more matches
Ajax navigation example - Web APIs
"&" + sviewkey + "=" + sviewmode : "").slice(1)).replace(r
endqstmark, ""); } function getpage (spage) { if (bisloading) { return; } oreq = new xmlhttprequest(); bisloading = true; oreq.onload = ajaxload; oreq.onerror = ajaxerror; if (spage) { opageinfo.url = filterurl(spage, null); } oreq.open("get", filterurl(opageinfo.url, "json"), true); oreq.s
end(); oloadingbox.parentnode |...
...| document.body.app
endchild(oloadingbox); } function requestpage (surl) { if (history.pushstate) { bupdateurl = true; getpage(surl); } else { /* ajax navigation is not supported */ location.assign(surl); } } function processlink () { if (this.classname === sajaxclass) { requestpage(this.href); return false; } return true; } function init () { opageinfo.title = document.title; history.replacestate(opageinfo, opageinfo.title, opageinfo.url); for (var olink, nidx = 0, nlen = document.links.length; nidx < nlen; document.links[nidx++].onclick = processlink); } const /* customizable constants */ stargetid...
... = "ajax-content", sviewkey = "view_as", sajaxclass = "ajax-nav", /* not customizable constants */ rsearch = /\?.*$/, rhost = /^[^\?]*\?*&*/, rview = new regexp("&" + sviewkey + "\\=[^&]*|&*$", "i"), r
endqstmark = /\?$/, oloadingbox = document.createelement("div"), ocover = document.createelement("div"), oloadingimg = new image(), opageinfo = { title: null, url: location.href }, ohttpstatus = /* http://www.iana.org/assignments/http-status-codes/http-status-codes.xml */ { 100: "continue", 101: "switching protocols", 102: "processing", 200: "ok", 201: "created", 202: "accepted", 203: "non-authoritative information", 204: "no content", ...
...And 3 more matches
IDBCursor.key - Web APIs
splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.key); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'key' in that specification.
... recomm
endation indexed database api draftthe definition of 'key' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 3 more matches
IDBCursor.primaryKey - Web APIs
splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.primarykey); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'primarykey' in that specification.
... recomm
endation indexed database api draftthe definition of 'primarykey' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 3 more matches
IDBCursorWithValue.value - Web APIs
splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.value); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specifications specification status comment indexed database api 2.0the definition of 'source' in that specification.
... recomm
endation indexed database api draftthe definition of 'idbdatabase' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 3 more matches
Pointer Lock API - Web APIs
for example, your users can continue to rotate or manipulate a 3d model by moving the mouse without
end.
... it continues to s
end events regardless of mouse button state.
... requestpointerlock() the pointer lock api, similar to the fullscreen api, ext
ends dom elements by adding a new method, requestpointerlock().
...And 3 more matches
Using Pointer Events - Web APIs
function startup() { var el = document.getelementsbytagname("canvas")[0]; el.addeventlistener("pointerdown", handlestart, false); el.addeventlistener("pointerup", handle
end, false); el.addeventlistener("pointercancel", handlecancel, false); el.addeventlistener("pointermove", handlemove, false); log("initialized."); } this simply sets up all the event listeners for our <canvas> element so we can handle the touch events as they occur.
... handling the
end of a touch when the user lifts a finger off the surface, a pointerup event is sent.
... we handle this event by calling the handle
end() function below.
...And 3 more matches
PushManager.registrations() - Web APIs
the registrations method is used to ask the system about existing push
endpoint registrations.
... pushregistration those objects are anonymous javascript objects with the following properties: push
endpoint a string representing the url of the
endpoint.
... version the current version that the push
endpoint is at.
...And 3 more matches
Web Push API Notifications best practices - Web APIs
searching the web for "web push notifications," you'll find articles from marketing experts who believe you should use push to re-engage people who have left your site so they can complete a purchase, or be sent the latest news, or receive links to recomm
ended products.
... “web push doesn’t risk
ending up in the spam folder.
... after a few failed attempts to get your attention, they s
end you an email, and your email app produces a push notification that successfully alerts you, even though your mail web app is not open.
...And 3 more matches
RTCInboundRtpStreamStats.firCount - Web APIs
the fircount property of the rtcinboundrtpstreamstats dictionary indicates the number of full intra request (fir) packets have been sent by the receiver to the s
ender.
... the receiver s
ends a fir packet when the stream falls behind and needs to skip frames in order to catch up.
... syntax var fircount = rtcinboundrtpstreamstats.fircount; value an integer value indicating how many fir packets have been received by the s
ender during the current connection.
...And 3 more matches
RTCInboundRtpStreamStats.pliCount - Web APIs
the plicount property of the rtcinboundrtpstreamstats dictionary states the number of times the rtcrtpreceiver described by these statistics sent a picture loss indication (pli) packet to the s
ender.
... syntax var plicount = rtcinboundrtpstreamstats.plicount; value an integer value indicating the number of times a pli packet was sent by the rtcrtpreceiver to the s
ender.
... these are sent by the receiver's decoder to notify the encoder (the s
ender) that an undefined amount of coded video data, which may span frame boundaries, has been lost.
...And 3 more matches
RTCInboundRtpStreamStats - Web APIs
the webrtc api's rtcinboundrtpstreamstats dictionary, based upon rtcreceivedrtpstreamstats and rtcstats, contains statistics related to the receiving
end of an rtp stream on the local
end of the rtcpeerconnection.
... fircount an integer value which indicates the total number of full intra request (fir) packets which this receiver has sent to the s
ender.
...this is the number of frames that would have been r
endered if none were dropped.
...And 3 more matches
RTCOutboundRtpStreamStats.firCount - Web APIs
the fircount property of the rtcoutboundrtpstreamstats dictionary indicates the number of full intra request (fir) that the remote rtcrtpreceiver has sent to this rtcrtps
ender.
... a fir packet is sent when the receiver finds that it has fallen behind and needs to skip frames in order to catch up; the s
ender should respond by s
ending a full frame instead of a delta frame.
... syntax var fircount = rtcoutboundrtpstreamstats.fircount; value an integer value indicating how many fir packets have been received by the s
ender during the current connection.
...And 3 more matches
RTCOutboundRtpStreamStats.pliCount - Web APIs
the plicount property of the rtcoutboundrtpstreamstats dictionary states the number of times the remote peer's rtcrtpreceiver sent a picture loss indication (pli) packet to the rtcrtps
ender for which this object provides statistics.
... syntax var plicount = rtcoutboundrtpstreamstats.plicount; value an integer value indicating the number of times a pli packet was sent to this s
ender by the remote peer's rtcrtpreceiver.
... these are sent by the receiver's decoder to notify the s
ender's encoder that an undefined amount of coded video data, which may span frame boundaries, has been lost.
...And 3 more matches
RTCPeerConnection.removeTrack() - Web APIs
the rtcpeerconnection.removetrack() method tells the local
end of the connection to stop s
ending media from the specified track, without actually removing the corresponding rtcrtps
ender from the list of s
enders as reported by rtcpeerconnection.gets
enders().
... if the track is already stopped, or is not in the connection's s
enders list, this method has no effect.
...a negotiationneeded event is sent to the rtcpeerconnection to let the local
end know this negotiation must occur.
...And 3 more matches
RTCPeerConnection.setRemoteDescription() - Web APIs
the description specifies the properties of the remote
end of the connection, including the media format.
...see p
ending and current descriptions in webrtc connectivity for more details on this process.
...this happens instead of throwing an exception, thereby reducing the number of potential errors which might occur, and simplifies the processing you need to do when you receive an offer, by eliminating the need to handle the offer/answer process differently dep
ending on whether the local peer is the caller or callee.
...And 3 more matches
RTCRemoteOutboundRtpStreamStats - Web APIs
the webrtc statistics model's rtcremoteoutboundrtpstreamstats dictionary ext
ends the underlying rtcsentrtpstreamstats dictionary with properties measuring metrics specific to outgoing rtp streams.
... remotetimestamp a domhighrestimestamp specifying the timestamp (on the remote device) at which the statistics in the rtcremoteoutboundrtpstreamstats object were sent by the remote
endpoint.
... this is different from the timestamp found in the base rtcstats dictionary; it represents the time at which the object's statistics were received or generated by the local
endpoint.
...And 3 more matches
RTCRtpParameters - Web APIs
it is ext
ended separately for s
enders and receivers in the form of the rtcrtps
endparameters and rtcrtpreceiveparameters dictionaries.
... to obtain the parameters of a s
ender or receiver, call its getparameters() method: getparameters() getparameters() properties codecs an array of rtcrtpcodecparameters objects describing the set of codecs from which the s
ender or receiver will choose.
... headerextensions an array of zero or more rtp header extensions, each identifying an extension supported by the s
ender or receiver.
...And 3 more matches
RTCRtpStreamStats.firCount - Web APIs
the fircount property of the rtcrtpstreamstats dictionary indicates the number of full intra request (fir) packets have been sent by the receiver to the s
ender.
... syntax var fircount = rtcrtpstreamstats.fircount; value an integer value indicating how many fir packets have been received by the s
ender during the current connection.
... the receiver s
ends a fir packet to the s
ender any time it falls bahind or loses packets and cannot decode the incoming stream any longer because of the lost data.
...And 3 more matches
RTCRtpTransceiver - Web APIs
the webrtc interface rtcrtptransceiver describes a permanent pairing of an rtcrtps
ender and an rtcrtpreceiver, along with some shared state.
...this pairing of s
end and receive srtp streams is significant for some applications, so rtcrtptransceiver is used to represent this pairing, along with other important state from the media section.
... s
ender read only the rtcrtps
ender object responsible for encoding and s
ending data to the remote peer.
...And 3 more matches
RTCStatsType - Web APIs
codec an rtccodecstats object containing statistics about a codec currently being used by rtp streams to s
end or receive data for the rtcpeerconnection.
... s
ender an object containing statistics about the rtcrtps
ender for a stream on the rtcpeerconnection.
... if kind is "audio", this object is of type rtcaudios
enderstats; if kind is "video", this is an rtcvideos
enderstats object.
...And 3 more matches
SVGTextContentElement - Web APIs
the svgtextcontentelement interface is implemented by elements that support r
endering child text content.
... svgtextcontentelement.getnumberofchars() returns a long representing the total number of addressable characters available for r
endering within the current element, regardless of whether they will be r
endered.
... svgtextcontentelement.get
endpositionofchar() returns a dompoint representing the trailing position of a typographic character after text layout has been performed.
...And 3 more matches
SourceBuffer.abort() - Web APIs
saying that, current implementations can be useful in certain situations, when you want to stop the current app
end (or whatever) operation occuring on a sourcebuffer, and then immediately start performing operations on it again.
... for example, consider this code: sourcebuffer.addeventlistener('update
end', function (_) { ...
... }); sourcebuffer.app
endbuffer(buf); let's say that after the call to app
endbuffer but before the update
end event fires (i.e.
...And 3 more matches
StaticRange - Web APIs
the dom staticrange interface ext
ends 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.
... staticrange.collapsed read only returns a boolean value which is true if the range's start and
end positions are the same, resulting in a range of length 0.
... staticrange.
endcontainer read only returns the dom node which contains the
ending point of the range.
...And 3 more matches
SubtleCrypto.importKey() - Web APIs
a pem-encoded privatekeyinfo looks like this: -----begin private key----- mig2ageambagbyqgsm49agegbsubbaaibigemigbagebbdau9bd0jxdff5ov380z 9vieun2w5kjdz3hbuadencxliamsoquktffaou71eldn0tshzaniaarmuhcee/cp xmjgc1roj0d0k6vluqta+jvcwigxciaukoethcngzdkcrd4pkxdbvbcijdzkvo+l ml2fikoovzh/8yetkmjumb804g6omjuc9vvojcrv0ydasmykkjmjblg= -----
end private key----- to get this into a format you can give to importkey() you need to do two things: base64-decode the part between header and footer, using window.atob().
...ijanbgkqhkig9w0baqefaaocaq8amiibcgkcaqea3j+hgshunc7f6xzvebd0 r3m5jny+/kabijvu8iu1eral3osi38vgimzjdbdorfxvznnzl+sxahwxiv5bhixl cq6qhwysdgh6oqgkiwialra/wnh4uhxj1or/iyakjhrr/kghutjyvcjzvaqadpjw 2g+syd1ui0b6kjov2cruwipwpff8hbfvwv8q9yc2yd5hcnykvl0iaiyn+sdak/rv 8dc5eilzci4efucbyg4c9o88qz7bs14dxsfapty8p/twoihvvjladf743lgm/jlq cdpubua3hlszuhkm3bbskd7q9ngkjv3+ybyo4/fl+fkyra8j9ypa2n0iw53lfb3b gqidaqab -----
end public key----- just as with pkcs #8, to get this into a format you can give to importkey() you need to do two things: base64-decode the part between header and footer, using window.atob().
...r6vca0yurnlj6g5r56+srnkioetupi2dlczcqb0poxaogazynhvtlvizn4igsrjz5qkm4liwbithfadxbv1fq6pt0o/bgf2o+cedq0diylgk64cevwbwsbnsg4vzlbqriauejljwedajya4ee8y5a9l04dzv7njb5crak6crgxxay/mbjrftahxvlazgxypgsye6ufs0+3eommevvdzqbf4qecgyea0zf6vavz28+8wlo6sp3w8nmphk7k9tgevufq30sgdx4g7qpigfprbb4op/e0qcfsiimi3scppjvumqdvvzypoimub+rv3zoxkrzxeuorpopr48fzbl7rn90yrqsasrp9e4iv8qwb3vxle7x0tdqqnryqrc/osgzus2zchokmcu8= -----
end private key-----`; /* import a pem encoded rsa private key, to use for rsa-pss signing.
...And 3 more matches
TouchEvent - Web APIs
touch
end sent when the user removes a touch point from the surface (that is, when they lift a finger or stylus from the surface).
... note: the rate at which touchmove events is sent is browser-specific, and may also vary dep
ending on the capability of the user's hardware.
...the change to treat listeners as passive by default prevents the listener from blocking page r
endering while a user is scrolling.
...And 3 more matches
WebXR performance guide - Web APIs
in this guide, we'll examine a variety of suggestions and recomm
endations that will help you make your webxr app as performant as possible.
... r
endering tips ...
... talk about general stuff like limiting how many different loops there are during r
endering, avoiding unnecessary drawing, etc.
...And 3 more matches
Keyframe Formats - Web APIs
element.animate([ { opacity: 1 }, { opacity: 0.1, offset: 0.7 }, { opacity: 0 } ], 2000); note: offset values, if provided, must be between 0.0 and 1.0 (inclusive) and arranged in asc
ending order.
...the provided values will be spaced out indep
endently.
... implicit to/from keyframes in newer browser versions, you are able to set a beginning or
end state for an animation only (i.e.
...And 3 more matches
Example and tutorial: Simple synth keyboard - Web APIs
notefreq.foreach(function(keys, idx) { let keylist = object.entries(keys); let octaveelem = document.createelement("div"); octaveelem.classname = "octave"; keylist.foreach(function(key) { if (key[0].length == 1) { octaveelem.app
endchild(createkey(key[0], idx, key[1])); } }); keyboard.app
endchild(octaveelem); }); document.queryselector("div[data-note='b'][data-octave='5']").scrollintoview(false); sineterms = new float32array([0, 0, 1, 0, 1]); cosineterms = new float32array(sineterms.length); customwaveform = audiocontext.createperiodicwave(cosineterms, sineterms); for (i=0; i<9; i++) { osc...
... an event handler is established (by calling our old fri
end addeventlistener() to handle change events on the master gain control.
...the returned element is app
ended to the octave element created in step 4.
...And 3 more matches
Background audio processing using AudioWorklet - Web APIs
this class ext
ends the audioworkletprocessor class.
... basic code framework the barest framework of an audio processor class looks like this: class myaudioprocessor ext
ends audioworkletprocessor { constructor() { super(); } process(inputlist, outputlist, parameters) { /* using the inputs (or not, as needed), write the output into each of the outputs */ return true; } }; registerprocessor("my-audio-processor", myaudioprocessor); after the implementation of the processor comes a call to the global function registerprocessor(), which is...
...by specification, each block of audio your process() function receives contains 128 frames (that is, 128 samples for each channel), but it is planned that this value will change in the future, and may in fact vary dep
ending on circumstances, so you should always check the array's length rather than assuming a particular size.
...And 3 more matches
Window.pageYOffset - Web APIs
susp
endisse potenti.
... nulla vulputate nunc sit amet h
endrerit faucibus.
...etiam dui dolor, pulvinar sed diam id, eleif
end dapibus odio.
...And 3 more matches
XMLHttpRequest - Web APIs
xmlhttprequest.response read only returns an arraybuffer, blob, document, javascript object, or a domstring, dep
ending on the value of xmlhttprequest.responsetype, that contains the response entity body.
... xmlhttprequest.s
end() s
ends the request.
...you must call setrequestheader()after open(), but before s
end().
...And 3 more matches
XRInputSource - Web APIs
gripspaceread only an xrspace whose origin tracks the pose which is used to r
ender objects which should appear as if they're held in the hand indicated by handedness.
... targetrayspaceread only an xrspace object defining the origin of the target ray and the direciton in which it ext
ends.
...this is a ray ext
ending from the position of the device outward in the direction in which it is pointed.
...And 3 more matches
XRSystem: requestSession() - Web APIs
the supported modes are: immersive-ar the session's output will be given exclusive access to the immersive device, but the r
endered content will be bl
ended with the real-world environment.
... the session's environmentbl
endmode indicates the method to be used to bl
end the content together.
... immersive-vr indicates that the r
endered session will be displayed using an immersive xr device in vr mode; it is not int
ended to be overlaid or integrated into the surrounding environment.
...And 3 more matches
XRView.eye - Web APIs
usage notes the primary purpose of this property is to allow the correct area of any pre-r
endered stereo content to be presented to the correct eye.
... for dynamically-r
endered 3d content, you can usually ignore this and simply r
ender each of the viewer's views, one after another.
... examples this code, from the viewer pose's r
enderer, iterates over the pose's views and r
enders them.
...And 3 more matches
XRViewerPose - Web APIs
to r
ender a scene using the xrviewerpose representing the user's head, one would iterate over the views in the views array, r
endering them one after another.
... by calling viewport() on the webgl context, specifying the xrview as input, you can get the viewport to use when r
endering in order to draw the frame for that eye into the correct part of the drawing surface.
... also, when r
endering the scene for spectators or other players in a multiplayer game, the transform of the xrviewerpose can be used to determine both placement and facing direction of the other players in the game, so that they can be drawn in the correct place with the correct facing.
...And 3 more matches
ARIA: contentinfo role - Accessibility
the contentinfo landmark role is used to identify information repeated at the
end of every page of a website, including copyright information, navigation links, and privacy statements.
...using the <footer> element instead is recomm
ended: <footer> <h2>footer</h2> <!-- footer content --> </footer> description the contentinfo role is a landmark used to identify a page footer.
...content is available under <a href="#">these licenses</a>.</p> </div> </body> accessibility concerns use sparingly landmark roles are int
ended to identify larger overall sections of the document.
...And 3 more matches
ARIA: row role - Accessibility
<div role="table" aria-label="populations" aria-describedby="country_population_desc"> <div id="country_population_desc">world populations by country</div> <div role="rowgroup"> <div role="row"> <span role="columnheader" aria-sort="desc
ending">country</span> <span role="columnheader"aria-sort="none">population</span> </div> </div> <div role="rowgroup"> <div role="row"> <span role="cell">finland</span> <span role="cell">5.5 million</span> </div> <div role="row"> <span role="cell">france</span> <span role="cell">67 million</span> </div> </div> </div> des...
...these cells can be of different types, dep
ending on whether they are column or row headers, or grid or regular cells.
... associated wai-aria roles, states, and properties context roles role="rowgroup" an optional contextual row parent, it establishes a relationship between desc
endant rows.
...And 3 more matches
ARIA: textbox role - Accessibility
description when an element has the textbox role, the browser s
ends an accessible textbox event to assistive technologies, which can then notify the user about it.
... associated aria properties aria-activedesc
endent attribute taking as it's value the id of is either a desc
endant of the element with dom focus or is a logical desc
endant as indicated by the aria-owns attribute, it indicates when that element has focus, when it is part of a composite widget such as a combobox.
... for example, in a combobox, focus may remain on the textbox while the value of aria-activedesc
endant on the textbox element refers to a desc
endant of a popup listbox that is controlled by the textbox.this attribute must be updated programmatically as the focus changes.
...And 3 more matches
Web Accessibility: Understanding Colors and Luminance - Accessibility
luminance is of particular importance, however, because at the
end of the day, understanding of what it is and how it is employed enables accessibility for those who are color-blind, as well as those who can perceive color.
... the rgb color model is ext
ended to include “alpha” -- rgba -- to allow specification of the opacity of a color.
... first, because the blue cones are actually the most sensitive of the three, second, we have fewer blue cones than red or green, and third, it so happens that these "blue sensitive" cones t
end to be located at the rims of our eyeballs, away from the center (fovea centralis) of the back of the eyeball, where the red and green cones t
end to cluster.
...And 3 more matches
::first-line (:first-line) - CSS: Cascading Style Sheets
note that the length of the first line dep
ends on many factors, including the width of the element, the width of the document, and the font size of the text.
...ant-caps, font-variant-alternates, font-variant-ligatures, font-synthesis, font-feature-settings, font-language-override, font-weight, font-size, font-size-adjust, font-stretch, and font-family all background-related properties: background-color, background-clip, background-image, background-origin, background-position, background-repeat, background-size, background-attachment, and background-bl
end-mode the color property word-spacing, letter-spacing, text-decoration, text-transform, and line-height text-shadow, text-decoration, text-decoration-color, text-decoration-line, text-decoration-style, and vertical-align.
... candidate recomm
endation allows the use of text-shadow with ::first-letter.
...And 3 more matches
:link - CSS: Cascading Style Sheets
note: use :any-link to select an element indep
endent of whether it has been visited or not.
... recomm
endation no change.
... recomm
endation lift the restriction to only apply it for <a> element.
...And 3 more matches
:visited - CSS: Cascading Style Sheets
although these styles can be change the appearance of colors to the
end user, the window.getcomputedstyle method will lie and always return the value of the non-:visited color.
... recomm
endation no change.
... recomm
endation lifts the restriction to only apply :visited to the <a> element.
...And 3 more matches
prefix - CSS: Cascading Style Sheets
the prefix descriptor of the @counter-style rule specifies content that will be prep
ended to the marker representation.
... syntax /* <symbol> values */ prefix: "»"; prefix: "page "; prefix: url(bullet.png); values <symbol> specifies a <symbol> that is prep
ended to the marker representation.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
...And 3 more matches
suffix - CSS: Cascading Style Sheets
the suffix descriptor of the@counter-style rule specifies content that will be app
ended to the marker representation.
... syntax /* <symbol> values */ suffix: ""; suffix: ") "; suffix: url(bullet.png); values <symbol> specifies a <symbol> that is app
ended to the marker representation.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
...And 3 more matches
@counter-style - CSS: Cascading Style Sheets
the @counter-style at-rule addresses this shortcoming in an open-
ended manner, by allowing authors to define their own counter styles when the pre-defined styles aren't fitting their needs.
... negative lets the author specify symbols to be app
ended or prep
ended to the counter representation if the value is negative.
... prefix specifies a symbol that should be prep
ended to the marker representation.
...And 3 more matches
@import - CSS: Cascading Style Sheets
so that user agents can avoid retrieving resources for unsupported media types, authors may specify media-dep
endent @import rules.
... candidate recomm
endation ext
ended the syntax to support the @supports syntax.
... candidate recomm
endation media queriesthe definition of '@import' in that specification.
...And 3 more matches
Border-radius generator - CSS: Cascading Style Sheets
ty : 5; var input = new inputcomponent(this); var slider_left = new slidercomponent(this, -1); var slider_right = new slidercomponent(this, 1); slider_left.classname = 'ui-input-slider-left'; slider_right.classname = 'ui-input-slider-right'; if (name) { var info = document.createelement('span'); info.classname = 'ui-input-slider-info'; info.textcontent = name; node.app
endchild(info); } node.app
endchild(slider_left); node.app
endchild(input); node.app
endchild(slider_right); node.classname = 'ui-input-slider ui-input-slider-container'; this.input = input; sliders[topic] = this; setvalue(topic, value); } var setvalue = function setvalue(topic, value, s
end_notify) { var slider = sliders[topic]; if (slider === undefined) return; if (value ...
...> slider.max) value = slider.max; if (value < slider.min) value = slider.min; slider.value = value; slider.node.setattribute('data-value', value); if (s
end_notify !== undefined && s
end_notify === false) { slider.input.value = value + slider.unit; return; } notify.call(slider); } var setmax = function setmax(topic, value) { var slider = sliders[topic]; if (slider === undefined) return; slider.max = value; setvalue(topic, slider.value); } var setmin = function setmin(topic, value) { var slider = sliders[topic]; if (slider === undefined) return; slider.min = value; setvalue(topic, slider.value); } var setunit = function setunit(topic, unit) { var slider = sliders[topic]; if (slider === undefined) return; slider.unit = unit; setval...
...e"); var checkbox = document.createelement("input"); var label = document.createelement("label"); var id = 'checkbox-' + topic; checkbox.id = id; checkbox.setattribute('type', 'checkbox'); checkbox.checked = state; label.setattribute('for', id); if (name) { label.classname = 'text'; if (align) label.classname += ' ' + align; label.textcontent = name; } node.app
endchild(checkbox); node.app
endchild(label); this.node = node; this.topic = topic; this.checkbox = checkbox; checkbox.addeventlistener('change', function(e) { notify.call(this); }.bind(this)); buttons[topic] = this; } var getnode = function getnode(topic) { return buttons[topic].node; } var setvalue = function setvalue(topic, value) { try { buttons[topic].checkbox.ch...
...And 3 more matches
Introduction to the CSS basic box model - CSS: Cascading Style Sheets
when laying out a document, the browser's r
endering engine represents each element as a rectangular box according to the standard css basic box model.
... the padding area, bounded by the padding edge, ext
ends the content area to include the element's padding.
... the border area, bounded by the border edge, ext
ends the padding area to include the element's borders.
...And 3 more matches
Introducing the CSS Cascade - CSS: Cascading Style Sheets
some browsers use actual style sheets for this purpose, while others simulate them in code, but the
end result is the same.
...the cascade is in asc
ending order, which means that !important values from a user-defined style sheet have precedence over normal values originated from a user-agent style sheet: origin importance 1 user agent normal 2 user normal 3 author normal 4 animations 5 autho...
... specifications specification status comment css cascading and inheritance level 4 candidate recomm
endation added the revert keyword, which allows rolling a property back a cascade level.
...And 3 more matches
Mozilla CSS extensions - CSS: Cascading Style Sheets
o -moz-orient -moz-osx-font-smoothing -moz-outline-radius -moz-outline-radius-bottomleft -moz-outline-radius-bottomright -moz-outline-radius-topleft -moz-outline-radius-topright overflow-clip-box overflow-clip-box-block overflow-clip-box-inline s–z -moz-stack-sizing :-moz-system-metric(images-in-menus) :-moz-system-metric(mac-graphite-theme) :-moz-system-metric(scrollbar-
end-backward) :-moz-system-metric(scrollbar-
end-forward) :-moz-system-metric(scrollbar-start-backward) :-moz-system-metric(scrollbar-start-forward) :-moz-system-metric(scrollbar-thumb-proportional) :-moz-system-metric(touch-enabled) :-moz-system-metric(windows-default-theme) -moz-user-focus -moz-user-input -moz-user-modify -moz-window-dragging -moz-window-shadow formerly p...
...timing-function [prefixed version still accepted] -moz-appearance b -moz-backface-visibility [prefixed version still accepted] -moz-background-clipobsolete since gecko 2 -moz-background-originobsolete since gecko 2 -moz-background-inline-policyobsolete since gecko 32 [superseded by the standard version box-decoration-break] -moz-background-sizeobsolete since gecko 2 -moz-border-
end [superseded by the standard version border-inline-
end] -moz-border-
end-color [superseded by the standard version border-inline-
end-color] -moz-border-
end-style [superseded by the standard version border-inline-
end-style] -moz-border-
end-width [superseded by the standard version border-inline-
end-width] -moz-border-image -moz-border-start [superseded by the standard version border...
... accepted] -moz-column-rule-style [prefixed version still accepted] -moz-column-rule-color [prefixed version still accepted] -moz-context-properties f–m filter [applying to more than svg] -moz-font-feature-settings [prefixed version still accepted] -moz-font-language-override [prefixed version still accepted] -moz-hyphens [prefixed version still accepted] -moz-margin-
end [superseded by the standard version margin-inline-
end] -moz-margin-start [superseded by the standard version margin-inline-start] mask [applying to more than svg] o -moz-opacityobsolete since gecko 1.9.1 -moz-outlineobsolete since gecko 1.9.2 -moz-outline-colorobsolete since gecko 1.9.2 -moz-outline-offsetobsolete since gecko 1.9.2 -moz-outline-styleobsolete since gecko 1.9.2 ...
...And 3 more matches
Specificity - CSS: Cascading Style Sheets
end up looking like this: this is because it matches the same element but the id selector has a higher specificity.
...will r
ender as: this is because the two declarations have equal selector type counts, but the html h1 selector is declared last.
...will also r
ender as: this is because the h1 selector targets the element specifically, but the green selector is only inherited from its parent.
...And 3 more matches
Viewport concepts - CSS: Cascading Style Sheets
the size of the viewport dep
ends on the size of the screen, whether the browser is in fullscreen mode or not, and whether or not the user zoomed in.
... the window.innerwidth is the width, in css pixels, of the browser window viewport including, if r
endered, the vertical scrollbar.
...the values returned for the outerwidth and outerheight dep
end on the browser: firefox reports the new value in css pixels, but chrome returns the length in the default pixel size.
...And 3 more matches
background-position - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation adds support for multiple backgrounds and the four-value syntax.
... recomm
endation allows for keyword values and <length> and <percentage> values to be mixed.
...And 3 more matches
border-bottom-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation no significant change.
...And 3 more matches
border-left - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no direct changes, though the modification of values for the border-left-color do apply to it.
... recomm
endation no significant changes.
...And 3 more matches
border-right - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no direct changes, though the modification of values for the border-right-color do apply to it.
... recomm
endation no significant changes.
...And 3 more matches
border-top - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no direct changes, though the modification of values for the border-top-color do apply to it.
... recomm
endation no significant changes.
...And 3 more matches
border - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation removes specific support for transparent, as it is now a valid <color>; this has no practical impact.
... recomm
endation accepts the inherit keyword.
...And 3 more matches
flex-direction - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the main-start and main-
end points are the same as the content direction.
... row-reverse behaves the same as row but the main-start and main-
end points are permuted.
...And 3 more matches
font-size - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...this is an os-indep
endent and cross-browser way of literally telling the browsers to r
ender the letters at exactly the number of pixels in height that you specified.
...take the following html and css: html { font-size: 62.5%; /* font-size 1em = 10px on default browser settings */ } span { font-size: 1.6em; } <div> <span>outer <span>inner</span> outer</span> </div> the result is: assuming that the browser's default font-size is 16px, the words “outer” would be r
endered at 16px, but the word “inner” would be r
endered at 25.6px.
...And 3 more matches
font-variant-position - CSS: Cascading Style Sheets
yword values */ font-variant-position: normal; font-variant-position: sub; font-variant-position: super; /* global values */ font-variant-position: inherit; font-variant-position: initial; font-variant-position: unset; when the usage of these alternate glyphs is activated, if one character in the run doesn't have such a typographically-enhanced glyph, the whole set of characters of the run is r
endered using a fallback method, synthesizing these glyphs.
...if, in a given run, one such glyph is not available for a character, all the characters in the run are r
endered using synthesized glyphs.
...if, in a given run, one such glyph is not available for a character, all the characters in the run are r
endered using synthesized glyphs.
...And 3 more matches
font-variant - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation made it a shorthand of the new font-variant-* properties.
... recomm
endation no change css level 1the definition of 'font-variant' in that specification.
...And 3 more matches
font - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... formal definition initial valueas each of the properties of the shorthand:font-style: normalfont-variant: normalfont-weight: normalfont-stretch: normalfont-size: mediumline-height: normalfont-family: dep
ends on user agentapplies toall elements.
... return oradio[i].value; } } } setcss = function () { getproperties(); injectcss(shorttext); } injectcss = function(cssfragment) { old = document.body.getelementsbytagname("style"); if (old.length > 1) { old[1].parentelement.removechild(old[1]); } css = document.createelement("style"); css.innerhtml = ".fontshorthand{font: " + cssfragment + "}"; document.body.app
endchild(css); } setcss(); specifications specification status comment css fonts module level 3the definition of 'font' in that specification.
...And 3 more matches
object-fit - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 3 more matches
outline-color - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation no change.
... recomm
endation initial definition.
...And 3 more matches
outline-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... thin dep
ends on the user agent.
... medium dep
ends on the user agent.
...And 3 more matches
overflow - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values visible content is not clipped and may be r
endered outside the padding box.
... auto dep
ends on the user agent.
...And 3 more matches
<position> - CSS: Cascading Style Sheets
dep
ending on the context, center represents either the center between the left and right edges, or the center between the top and bottom edges.
... interpolation when animated, a point's abscissa and ordinate values are interpolated indep
endently.
... candidate recomm
endation relists links to both definitions: if css backgrounds and borders module level 3 is supported, its definition of <position> must also be used.
...And 3 more matches
quotes - CSS: Cascading Style Sheets
the quotes css property sets how the browser should r
ender quotation marks that are added using the open-quotes or close-quotes values of the css content property.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... formal definition initial valuedep
ends on user agentapplies toall elementsinheritedyescomputed valueas specifiedanimation typediscrete formal syntax none | auto | [ <string> <string> ]+ examples basic quote marks html <q>to be or not to be.
...And 3 more matches
right - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... description the effect of right dep
ends on how the element is positioned (i.e., the value of the position property): when position is set to absolute or fixed, the right property specifies the distance between the element's right edge and the right edge of its containing block.
...when the position of the element is overspecified, the prec
ende is based on the container's direction: the left will take prec
endence if the container's direction is left-to-right.
...And 3 more matches
scroll-margin-inline - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: scroll-margin-inline-
end scroll-margin-inline-start syntax /* <length> values */ scroll-margin-inline: 10px; scroll-margin-inline: 1em .5em ; /* global values */ scroll-margin-inline: inherit; scroll-margin-inline: initial; scroll-margin-inline: unset; values <length> an outset from the corresponding edge of the scroll container.
... the child elements are styled as follows: .scroller > div { flex: 0 0 250px; width: 250px; background-color: #663399; color: #fff; font-size: 30px; display: flex; align-items: center; justify-content: center; scroll-snap-align:
end; } .scroller > div:nth-child(2n) { background-color: #fff; color: #663399; } the most relevant part here is scroll-snap-align:
end, which specifies that the right-hand edges (the "
ends" along the x axis, in our case) are the designated snap points.
... last of all we specify the scroll margin values, a different one for the second and third child elements: .scroller > div:nth-child(2) { scroll-margin-inline: 1rem; } .scroller > div:nth-child(3) { scroll-margin-inline: 2rem; } this means that when scrolling past the middle child elements, the scrolling will snap to 1rem outside the inline
end edge of the second <div>, and 2rems outside the inline
end edge of the third <div>.
...And 3 more matches
text-decoration - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... text decorations are drawn across desc
endant text elements.
...be careful when removing the text decoration on anchors since users often dep
end on the underline to denote hyperlinks.</p> <p class="underover">this text has lines above <em>and</em> below it.</p> <p class="thick">this text has a really thick purple underline in supporting browsers.</p> <p class="blink">this text might blink for you, dep
ending on the browser you use.</p> specifications specification status comment css text decoration ...
...And 3 more matches
white-space - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... break-spaces the behavior is identical to that of pre-wrap, except that: any sequence of preserved white space always takes up space, including at the
end of the line.
... the following table summarizes the behavior of the various white-space values: new lines spaces and tabs text wrapping
end-of-line spaces normal collapse collapse wrap remove nowrap collapse collapse no wrap remove pre preserve preserve no wrap preserve pre-wrap preserve preserve wrap hang pre-line preserve collapse wrap remove break-spaces preserve preserve wrap wrap formal definit...
...And 3 more matches
Cross-browser audio basics - Developer guides
</audio> note: this value is often ignored on mobile platforms, and its use is not recomm
ended unless really necessary.
... loop the loop attribute will ensure that upon getting to the
end of the audio clip, the audio clip will loop back to the beginning and start playing again.
... susp
end media data is no longer being fetched even though the file has not been entirely downloaded.
...And 3 more matches
Media buffering, seeking, and time ranges - Developer guides
end(index): the
end time, in seconds, of a time range.
...----------------------------- |=============| |===========| | ------------------------------------------------------ 0 5 15 19 21 for this audio instance, the associated timeranges object would have the following available properties: myaudio.buffered.length; // returns 2 myaudio.buffered.start(0); // returns 0 myaudio.buffered.
end(0); // returns 5 myaudio.buffered.start(1); // returns 15 myaudio.buffered.
end(1); // returns 19 to try out and visualize buffered time ranges we can write a little bit of html: <p> <audio id="my-audio" controls> <source src="music.mp3" type="audio/mpeg"> </audio> </p> <p> <canvas id="my-canvas" width="300" height="20"> </canvas> </p> and a little bit of javascript: window.o...
...lstyle = 'lightgray'; context.fillrect(0, 0, mycanvas.width, mycanvas.height); context.fillstyle = 'red'; context.strokestyle = 'white'; var inc = mycanvas.width / myaudio.duration; // display timeranges myaudio.addeventlistener('seeked', function() { for (i = 0; i < myaudio.buffered.length; i++) { var startx = myaudio.buffered.start(i) * inc; var
endx = myaudio.buffered.
end(i) * inc; var width =
endx - startx; context.fillrect(startx, 0, width, mycanvas.height); context.rect(startx, 0, width, mycanvas.height); context.stroke(); } }); } this works better with longer pieces of audio or video, but press play and click about the player progress bar and you should get something like this.
...And 3 more matches
HTML5 - Developer guides
this set is sometimes called html5 & fri
ends and often shortened to just html5.
... improvement in <iframe> using the sandbox and srcdoc attributes, authors can now be precise about the level of security and the wished r
endering of an <iframe> element.
... html5-compliant parser the parser, which turns the bytes of an html document into a dom, has been ext
ended and now precisely defines the behavior to use in all cases, even when faced with invalid html.
...And 3 more matches
Index - Developer guides
16 audio and video manipulation audio, canvas, examples, guide, html5, media, video, web audio api, webgl, developer recomm
endation the ability to read the pixel values from each frame of a video can be very useful.
...the html specification recomm
ends the use of the utf-8 encoding (which can represent all of unicode) and regardless of the encoding used requires web content to declare what encoding was used.
... 34 mobile-fri
endliness mobile, web development mobile fri
endliness can mean a multitude of things, dep
ending on who you’re talking to.
...And 3 more matches
The HTML autocomplete attribute - HTML: Hypertext Markup Language
if an <input>, <select> or <textarea> element has no autocomplete attribute, then browsers use the autocomplete attribute of the element's form owner, which is either the <form> element that the element is a desc
endant of, or the <form> whose id is specified by the form attribute of the element.
... in order to provide autocompletion, user-agents might require <input>/<select>/<textarea> elements to: have a name and/or id attribute be desc
endants of a <form> element the form to have a submit button values "off" the browser is not permitted to automatically enter or select a value for this field.
... "sex" a g
ender identity (such as "female", "fa'afafine", "male"), as freeform text without newlines.
...And 3 more matches
HTML attribute reference - HTML: Hypertext Markup Language
content <meta> a value associated with http-equiv or name dep
ending on the context.
... hidden global attribute prevents r
endering of given element, while keeping child elements, e.g.
... intrinsicsize <img> this attribute tells the browser to ignore the actual intrinsic size of the image and pret
end it’s the size specified in the attribute.
...And 3 more matches
<sup>: The Superscript element - HTML: Hypertext Markup Language
superscripts are usually r
endered with a raised baseline using smaller text.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 3 more matches
<var>: The Variable element - HTML: Hypertext Markup Language
it's typically presented using an italicized version of the current typeface, although that behavior is browser-dep
endent.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 3 more matches
accesskey - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the way to activate the accesskey dep
ends on the browser and its platform: windows linux mac firefox alt + shift + key on firefox 57 or newer: control + option + key or control + alt + key on firefox 14 or newer: control + alt + key on firefox 13 or older: control + key internet explorer alt + key alt + shift + key n/a edge n/a control + option + key control + option + shift + key google chrome alt...
... recomm
endation more realistic behavior described for what is implemented in reality.
...And 3 more matches
style - HTML: Hypertext Markup Language
note that it is recomm
ended for styles to be defined in a separate file or files.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'style' in that specification.
...And 3 more matches
tabindex - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... it accepts an integer as a value, with different results dep
ending on the integer's value: a negative value (usually tabindex="-1") means that the element is not reachable via sequential keyboard navigation, but could be focused with javascript or visually by clicking with the mouse.
... accessibility concerns avoid using the tabindex attribute in conjunction with non-interactive content to make something int
ended to be interactive focusable by keyboard input.
...And 3 more matches
title - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...some caution must be taken, as this means the following r
enders across two lines: html <p>newlines in <code>title</code> should be taken into account, like <abbr title="this is a multiline title">example</abbr>.</p> result title attribute inheritance if an element has no title attribute, then it inherits it from its parent node, which in turn may inherit it from its parent, and so on.
...e title attribute is highly problematic for: people using touch-only devices people navigating with keyboards people navigating with assistive technology such as screen readers or magnifiers people experiencing fine motor control impairment people with cognitive concerns this is due to inconsistent browser support, compounded by the additional assistive technology parsing of the browser-r
endered page.
...And 3 more matches
HTTP caching - HTTP
cache-control: no-store cache but revalidate a cache will s
end the request to the origin server for validation before releasing a cached copy.
... on the other hand, "private" indicates that the response is int
ended for a single user only and must not be stored by a shared cache.
...if so, the server returns a 304 (not modified) header without s
ending the body of the requested resource, saving some bandwidth.
...And 3 more matches
Connection management in HTTP/1.x - HTTP
these connections were short-lived: a new one created each time a request needed s
ending, and closed once the answer had been received.
...network latency and bandwidth affect performance when a request needs s
ending.
...the http pipelining model goes one step further, by s
ending several successive requests without even waiting for an answer, reducing much of the latency in the network.
...And 3 more matches
Range - HTTP
several parts can be requested with one range header at once, and the server may s
end back these ranges in a multipart document.
... if the server s
ends back ranges, it uses the 206 partial content for the response.
... header type request header forbidden header name no syntax range: <unit>=<range-start>- range: <unit>=<range-start>-<range-
end> range: <unit>=<range-start>-<range-
end>, <range-start>-<range-
end> range: <unit>=<range-start>-<range-
end>, <range-start>-<range-
end>, <range-start>-<range-
end> range: <unit>=-<suffix-length> directives <unit> the unit in which ranges are specified.
...And 3 more matches
Firefox user agent string reference - HTTP
the recomm
ended way of sniffing for gecko-based browsers (if you have to sniff for the browser engine instead of using feature detection) is by the presence of the "gecko" and "rv:" strings, since some other browsers include a "like gecko" token.
... focus version (r
endering engine) user agent string 1.0 (webview mobile) mozilla/5.0 (linux; android 7.0) applewebkit/537.36 (khtml, like gecko) version/4.0 focus/1.0 chrome/59.0.3029.83 mobile safari/537.36 1.0 (webview tablet) mozilla/5.0 (linux; android 7.0) applewebkit/537.36 (khtml, like gecko) version/4.0 focus/1.0 chrome/59.0.3029.83 safari/537.36 6.0 (geckoview) mozilla/...
... klar version (r
endering engine) user agent string 1.0 (webview) mozilla/5.0 (linux; android 7.0) applewebkit/537.36 (khtml, like gecko) version/4.0 klar/1.0 chrome/58.0.3029.83 mobile safari/537.36 4.1+ (webview) mozilla/5.0 (linux; android 7.0) applewebkit/537.36 (khtml, like gecko) version/4.0 focus/4.1 chrome/62.0.3029.83 mobile safari/537.36 6.0+ (geckoview) mozilla/5.0 (android 7.0; mobile; rv:62.0) gecko/62.0 firefox/62.0 focus for ios version 7 of focus for ios uses a user agent string with the f...
...And 3 more matches
Protocol upgrade mechanism - HTTP
upgrading http/1.1 connections the upgrade header field is used by clients to invite the server to switch to one of the listed protocols, in desc
ending preference order.
...this means that a typical request that includes upgrade would look something like: get /index.html http/1.1 host: www.example.com connection: upgrade upgrade: example/1, foo/2 other headers may be required dep
ending on the requested protocol; for example, websocket upgrades allow additional headers to configure details about the websocket connection as well as to offer a degree of security in opening the connection.
... if the server decides to upgrade the connection, it s
ends back a 101 switching protocols response status with an upgrade header that specifies the protocol(s) being switched to.
...And 3 more matches
CSS Houdini
houdini is a set of low-level apis that exposes parts of the css engine, giving developers the power to ext
end css by hooking into the styling and layout process of a browser’s r
endering engine.
...houdini code doesn't wait for that first r
endering cycle to be complete.
... rather, it is included in that first cycle — creating r
enderable, understandable styles.
...And 3 more matches
Numbers and dates - JavaScript
for example, the following code displays the number of days left in the current year: var today = new date(); var
endyear = new date(1995, 11, 31, 23, 59, 59, 999); // set day and month
endyear.setfullyear(today.getfullyear()); // set year to this year var msperday = 24 * 60 * 60 * 1000; // number of milliseconds per day var daysleft = (
endyear.gettime() - today.gettime()) / msperday; var daysleft = math.round(daysleft); //returns days left in the year this example creates a date object named today that contai...
...it then creates a date object named
endyear and sets the year to the current year.
... then, using the number of milliseconds per day, it computes the number of days between today and
endyear, using gettime and rounding to a whole number of days.
...And 3 more matches
Assertions - JavaScript
assertions include boundaries, which indicate the beginnings and
endings of lines and words, and other patterns indicating in some way that a match is possible (including look-ahead, look-behind, and conditional expressions).
... $ matches the
end of input.
... /oon\b/ matches the "oon" in "moon", because "oon" is the
end of the string, thus not followed by a word character.
...And 3 more matches
Array - JavaScript
since an array's length can change at any time, and data can be stored at non-contiguous locations in the array, javascript arrays are not guaranteed to be dense; this dep
ends on how the programmer chooses to use them.
... common operations create an array let fruits = ['apple', 'banana'] console.log(fruits.length) // 2 access an array item using the index position let first = fruits[0] // apple let last = fruits[fruits.length - 1] // banana loop over an array fruits.foreach(function(item, index, array) { console.log(item, index) }) // apple 0 // banana 1 add an item to the
end of an array let newlength = fruits.push('orange') // ["apple", "banana", "orange"] remove an item from the
end of an array let last = fruits.pop() // remove orange (from the
end) // ["apple", "banana"] remove an item from the beginning of an array let first = fruits.shift() // remove apple from the front // ["banana"] add an item to the beginning of an array let newlength = fruits.unshi...
... "mango"] remove items from an index position let vegetables = ['cabbage', 'turnip', 'radish', 'carrot'] console.log(vegetables) // ["cabbage", "turnip", "radish", "carrot"] let pos = 1 let n = 2 let removeditems = vegetables.splice(pos, n) // this is how to remove items, n defines the number of items to be removed, // starting at the index position specified by pos and progressing toward the
end of array.
...And 3 more matches
Intl.DateTimeFormat() constructor - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... ca cal
endar.
... cal
endar cal
endar.
...And 3 more matches
Object.setPrototypeOf() - JavaScript
in addition, the effects of altering inheritance are subtle and far-flung, and are not limited to simply the time spent in the object.setprototypeof(...) statement, but may ext
end to any code that has access to any object whose [[prototype]] has been altered.
... app
ending prototype chains a combination of object.getprototypeof() and object.prototype.__proto__ permits app
ending a whole prototype chain to a new prototype object: /** *** object.app
endchain(@object, @prototype) * * app
ends the first non-native prototype of a chain to a new prototype.
...* *** object.app
endchain(@object [, "@arg_name_1", "@arg_name_2", "@arg_name_3", "..."], "@function_body") *** object.app
endchain(@object [, "@arg_name_1, @arg_name_2, @arg_name_3, ..."], "@function_body") * * app
ends the first non-native prototype of a chain to the native function.prototype object, then app
ends a * new function(["@arg"(s)], "@function_body") to that chain.
...And 3 more matches
String.prototype.substr() - JavaScript
the substr() method returns a portion of the string, starting at the specified index and ext
ending for a given number of characters afterwards.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if start is a negative number, the index starts counting from the
end of the string.
...And 3 more matches
TypedArray.prototype.copyWithin() - JavaScript
the copy is taken from the index positions of the second and third arguments start and
end.
... the
end argument is optional and defaults to the length of the array.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 3 more matches
WebAssembly.Instance - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsinstancechrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0instance() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the fi...
...And 3 more matches
WebAssembly.instantiate() - JavaScript
if the operation fails, the promise rejects with a webassembly.compileerror, webassembly.linkerror, or webassembly.runtimeerror, dep
ending on the cause of the failure.
... if the operation fails, the promise rejects with a webassembly.compileerror, webassembly.linkerror, or webassembly.runtimeerror, dep
ending on the cause of the failure.
... second overload example the following example (see our index-compile.html demo on github, and view it live also) compiles the loaded simple.wasm byte code using the webassembly.compilestreaming() method and then s
ends it to a worker using postmessage().
...And 3 more matches
eval() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if you run eval() with a string that could be affected by a malicious party, you may
end up running malicious code on the user's machine with the permissions of your webpage / extension.
...instead, use the property accessors, which are much faster and safer: var obj = { a: 20, b: 30 }; var propname = getpropname(); // returns "a" or "b" var result = obj[ propname ]; // obj[ "a" ] is the same as obj.a you can even use this method to access desc
endant properties.
...And 3 more matches
yield - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the
end of the generator function is reached.
... in this case, execution of the generator
ends and an iteratorresult is returned to the caller in which the value is undefined and done is true.
...And 3 more matches
async function - JavaScript
if you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...await expressions susp
end progress through an async function, yielding control and subsequently resuming progress only when an awaited promise-based asynchronous operation is either fulfilled or rejected.
... the first line of the body of function foo is executed synchronously, with the await expression configured with the p
ending promise.
...And 3 more matches
<mmultiscripts> - MathML
the degree of a tensor dep
ends on the dimensionality of a representative array.
...prescripts are optional and are separated by the empty tag <mprescripts/> (only one <mprescripts /> element is allowed, otherwise you will get an duplicatemprescripts error in the error console and "invalid-markup" in your r
endering).
... examples using <mprescripts/> sample r
endering: r
endering in your browser: x d c b a <math> <mmultiscripts> <mi>x</mi> <!-- base expression --> <mi>d</mi> <!-- postsubscript --> <mi>c</mi> <!-- postsuperscript --> <mprescripts /> <mi>b</mi> <!-- presubscript --> <mi>a</mi> <!-- presuperscript --> </mmultiscripts> </math> using <none/> sample...
...And 3 more matches
Lazy loading - Web Performance
it's a way to shorten the length of the critical r
endering path, which translates into reduced page load times.
... one of the methods we can use to tackle this problem is to shorten the critical r
endering path length by lazy loading resources that are not critical for the first r
ender to happen.
...this enables s
ending the minimal code required to provide value upfront, improving page-load times.
...And 3 more matches
Understanding latency - Web Performance
latency can be measured one way, for example, the amount of time it takes to s
end a request for resources, or the length of the entire round-trip from the browser’s request for a resource to the moment when the requested resource arrives at the browser.
... network throttling to emulate the latency of a low bandwidth network, you can use developer tools and switch to a lower
end network connection.
...different browser developer tools have different preset options, the characteristics emulated include download speed, upload speed, and minimum latency, or the minimum amount of type it takes to s
end a packet of data.
...And 3 more matches
cx - SVG: Scalable Vector Graphics
radialgradient for <radialgradient>, cx defines the x-axis coordinate of the
end circle for the radial gradient.
... candidate recomm
endation definition as a geometry property scalable vector graphics (svg) 2the definition of 'cx' in that specification.
... candidate recomm
endation definition for svg2 paint servers.
...And 3 more matches
cy - SVG: Scalable Vector Graphics
radialgradient for <radialgradient>, cy defines the y-axis coordinate of the
end circle for the radial gradient.
... candidate recomm
endation definition as a geometry property scalable vector graphics (svg) 2the definition of 'cy' in that specification.
... candidate recomm
endation definition for svg2 paint servers.
...And 3 more matches
dx - SVG: Scalable Vector Graphics
candidate recomm
endation definition for <text> and <tspan> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dx' in that specification.
... recomm
endation initial definition for <feoffset> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dx' in that specification.
... recomm
endation initial definition for <altglyph> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dx' in that specification.
...And 3 more matches
dy - SVG: Scalable Vector Graphics
candidate recomm
endation definition for <text> and <tspan> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dy' in that specification.
... recomm
endation initial definition for <feoffset> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dy' in that specification.
... recomm
endation initial definition for <altglyph> scalable vector graphics (svg) 1.1 (second edition)the definition of 'dy' in that specification.
...And 3 more matches
externalResourcesRequired - SVG: Scalable Vector Graphics
the externalresourcesrequired attribute specifies whether referenced resources that are not part of the current document are required for proper r
endering of the given container or graphics element.
...in particular, if an element sets externalresourcesrequired="true", then all style sheets must be available since any style sheet might affect the r
endering of that element.
...instead, it is better to specify externalresourcesrequired="true" on those particular graphics elements or container elements which specifically need the availability of external resources in order to r
ender properly.
...And 3 more matches
font-family - SVG: Scalable Vector Graphics
the font-family attribute indicates which font family will be used to r
ender the text, specified as a prioritized list of font family names and/or generic family names.
...lns="http://www.w3.org/2000/svg"> <text y="20" font-family="arial, helvetica, sans-serif">sans serif</text> <text x="100" y="20" font-family="monospace">monospace</text> </svg> usage notes value [ <family-name> | <generic-family> ]#where <family-name> = <string> | <custom-ident>+<generic-family> = serif | sans-serif | cursive | fantasy | monospace default value dep
ends on user agent animatable yes for a description of the values, please refer to the css font-family property.
... candidate recomm
endation no significant change scalable vector graphics (svg) 1.1 (second edition)the definition of 'font-family' in that specification.
...And 3 more matches
in2 - SVG: Scalable Vector Graphics
three elements use this attribute: <febl
end>, <fecomposite> and <fedisplacementmap>.
... febl
end for <febl
end>, in2 defines the second input image to the bl
ending operation.
... working draft no change filter effects module level 1the definition of 'in2 for <febl
end>' in that specification.
...And 3 more matches
r - SVG: Scalable Vector Graphics
radialgradient for <radialgradient>, r defines the radius of the
end circle for the radial gradient.
... the gradient will be drawn such that the 100% gradient stop is mapped to the perimeter of this
end circle.
... candidate recomm
endation definition as a geometry property scalable vector graphics (svg) 2the definition of 'r' in that specification.
...And 3 more matches
stroke-dashoffset - SVG: Scalable Vector Graphics
the stroke-dashoffset attribute is a presentation attribute defining an offset on the r
endering of the associated dash array.
...line x1="0" y1="5" x2="30" y2="5" stroke="black" stroke-dasharray="3 1" stroke-dashoffset="3" /> <!-- the start of the dash array computation is pushed by 3 user units --> <line x1="0" y1="7" x2="30" y2="7" stroke="black" stroke-dasharray="3 1" stroke-dashoffset="-3" /> <!-- the start of the dash array computation is pulled by 1 user units which
ends up in the same r
endering as the previous example --> <line x1="0" y1="9" x2="30" y2="9" stroke="black" stroke-dasharray="3 1" stroke-dashoffset="1" /> <!-- the following red lines highlight the offset of the dash array for each line --> <path d="m0,5 h-3 m0,7 h3 m0,9 h-1" stroke="rgba(255,0,0,.5)" /> </svg> usage notes value <percentage> | <len...
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 3 more matches
stroke-linejoin - SVG: Scalable Vector Graphics
the arcs shape is formed by ext
ending the outer edges of the stroke at the join point with arcs that have the same curvature as the outer edges at the join point.
...the corner is formed by ext
ending the outer edges of the stroke at the tangents of the path segments until they intersect.
...the corner is formed by ext
ending the outer edges of the stroke at the tangents of the path segments until they intersect.
...And 3 more matches
vector-effect - SVG: Scalable Vector Graphics
the default r
endering behaviour is used which is to first fill the geometry of a shape with a specified paint, then stroke the outline with a specified paint.
...the resulting visual effect of this value is that the stroke width is not dep
endant on the transformations of the element (including non-uniform scaling and shear transformations) and zoom level.
... non-scaling-size this value specifies a special user coordinate system used by the element and its desc
endants.
...And 3 more matches
visibility - SVG: Scalable Vector Graphics
dep
ending on the value of attribute pointer-events, graphics elements which have their visibility attribute set to hidden still might receive events.
...though it is still part of the r
endering tree, i.e.
... it may receive pointer events dep
ending on the pointer-events attribute, may receive focus dep
ending on the tabindex attribute, contributes to bounding box calculations and clipping paths, and does affect text layout.
...And 3 more matches
<linearGradient> - SVG: Scalable Vector Graphics
value type: <url> ; default value: none; animatable: yes spreadmethod this attribute indicates how the gradient behaves if it starts or
ends inside the bounds of the shape containing the gradient.
... value type: <length> ; default value: 0%; animatable: yes x2 this attribute defines the x coordinate of the
ending point of the vector gradient along which the linear gradient is drawn.
... value type: <length> ; default value: 0%; animatable: yes y2 this attribute defines the y coordinate of the
ending point of the vector gradient along which the linear gradient is drawn.
...And 3 more matches
<switch> - SVG: Scalable Vector Graphics
the <switch> svg element evaluates any requiredfeatures, requiredextensions and systemlanguage attributes on its direct child elements in order, and then r
enders the first child where these attributes evaluate to true.
... other direct children will be bypassed and therefore not r
endered.
... if a child element is a container element, like <g>, then its subtree is also processed/r
endered or bypassed/not r
endered.
...And 3 more matches
<symbol> - SVG: Scalable Vector Graphics
documents that are rich in structure may be r
endered graphically, as speech, or as braille, and thus promote accessibility.
... value type: <length>|<percentage> ; default value: 0; animatable: yes global attributes core attributes most notably: id styling attributes class, style event attributes global event attributes, document element event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
...ntpermitted contentany number of the following elements, in any order:animation elementsdescriptive elementsshape elementsstructural elementsgradient elements<a>, <altglyphdef>, <clippath>, <color-profile>, <cursor>, <filter>, <font>, <font-face>, <foreignobject>, <image>, <marker>, <mask>, <pattern>, <script>, <style>, <switch>, <text>, <view> note: a <symbol> element itself is not meant to be r
endered.
...And 3 more matches
Fills and Strokes - SVG: Scalable Vector Graphics
this controls the shape of the
ends of lines.
... there are three possible values for stroke-linecap: butt closes the line off with a straight edge that's normal (at 90 degrees) to the direction of the stroke and crosses its
end.
... round produces a rounded effect on the
end of the stroke.
...And 3 more matches
Gradients in SVG - SVG: Scalable Vector Graphics
for instance, this one tells the gradient to start at the color red, change to transparent-black in the middle, and
end at the color blue.
... you can insert as many stop colors as you like to create a bl
end that's as beautiful or hideous as you need, but the offsets should always increase from 0% (or 0 if you want to drop the % sign) to 100% (or 1).
...the first of these defines a circle around which the gradient
ends.
...And 3 more matches
Introduction - SVG: Scalable Vector Graphics
whether or not to use it often dep
ends on your specific use case.
... flavors of svg since becoming a recomm
endation in 2003, the most recent "full" svg version is 1.1.
...the second edition of svg 1.1 became a recomm
endation in 2011.
...And 3 more matches
Index - XSLT: Extensible Stylesheet Language Transformations
2 common xslt errors xslt your server needs to s
end both the source and the stylesheet with a xml mime type, text/xml or application/xml.
...the example allows sorting the content multiple times, alternating between asc
ending and desc
ending order.
...using the xsltprocessor.getparameter() method, the code can figure whether to sort in asc
ending or desc
ending order.
...And 3 more matches
Communicating using "postMessage" - Archive of obsolete content
however, the context-menu module does not support port, so to s
end messages from a content script to the add-on via a context menu object, you must use message events.
... handling message events in the content script to s
end a message from a content script, you use the postmessage function of the global self object: self.postmessage(contentscriptmessage); this takes a single parameter, the message payload, which may be any json-serializable value.
... handling message events in the add-on script to s
end a message to a content script, use the worker's postmessage function.
...And 2 more matches
Classes and Inheritance - Archive of obsolete content
however, to fully appreciate how class works, and the problem it is supposed to solve, it is recomm
ended that you read the entire article.
...if the property is found on the prototype, the lookup succeeds, and javascript pret
ends that it found the property on the original object.
... another special property is ext
ends.
...And 2 more matches
request - Archive of obsolete content
headers object an unordered collection of name/value pairs representing headers to s
end with the request.
... content string,object the content to s
end to the server.
... for get and head requests, the query string (content) will be app
ended to the url.
...And 2 more matches
cfx - Archive of obsolete content
you can also control which tests are run: you can test dep
endent packages, filter the tests by name and run tests multiple times.
... for example, to pass the -jsconsole argument to firefox, which will launch the javascript error console, try the following: cfx run --binary-args -jsconsole to pass multiple arguments, or arguments containing spaces, quote them: cfx run --binary-args '-url "www.mozilla.org" -jsconsole' --dep
endencies load and run any tests that are included with modules that your package dep
ends on.
... for example: if your add-on dep
ends on modules from the sdk, then cfx will run the unit tests for the sdk's modules as well as yours.
...And 2 more matches
cfx to jpm - Archive of obsolete content
the sdk expects the latter format, and if the id in package.json doesn't contain "@", then cfx xpi will app
end "@jetpack" to the package.json field, and make that the add-on id.
... id handling with jpm when you create an xpi with jpm xpi: if the package.json does not include an id field, then the id written into the install.rdf is the value of the name field prep
ended with "@".
... what you need to do all this means that: if your package.json contains an id field, and its value does not contain "@", then you must app
end "@jetpack" to it when switching to jpm.
...And 2 more matches
File I/O - Archive of obsolete content
get("profd", components.interfaces.nsifile); // or using services.jsm and ci = components.interfaces var file = services.dirsvc.get("profd", ci.nsifile); // app
end the file name.
... file.app
end("data.txt"); // note: "file" is an object that implements nsifile.
...then you may use file.app
end("myfile.txt"); to make it point to myfile.txt inside that directory.
...And 2 more matches
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.app
endchild(body); body.app
endchild(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>.
... the <div> is returned, and it is never actually app
ended to the current page.
...for that matter, we're going to load our html document first: var request = xmlhttprequest(); request.open("get", "http://example.org/file.html", false); request.s
end(null); our next step is to create the document object that will represent the dom into which we'll insert our newly-retrieved html: var doc = document.implementation.createhtmldocument("example"); doc.documentelement.innerhtml = request.responsetext; after this any manipulation that we might want to do will be something as simple as the following: doc.body.textcontent = "this is inside the ...
...And 2 more matches
Displaying web content in an extension without security issues - Archive of obsolete content
if you open "chrome://foo/content/foo.xul" in the browser, it will open as a content document despite having ext
ended privileges.
...not giving privileges to documents that contain untrusted data the privileges that a document gets dep
end on where it comes from.
...so in the simplest case you would have: <iframe type="content" src="data:text/html,%3chtml%3e%3cbody%3e%3c/body%3e%3c/html%3e"/> but usually you don’t want to start with an empty document, you would rather want to load some template into the frame: var request = new xmlhttprequest(); request.open("get", "chrome://foo/content/template.html", false); request.s
end(null); frame.setattribute("src", "data:text/html," + encodeuricomponent(request.responsetext)); that way you can have the template in your extension but still strip it off all privileges when it is loaded in a frame.
...And 2 more matches
Jetpack Processes - Archive of obsolete content
messaging facilities that allow them to communicate with their parent chrome process are the only means by which they can be
endowed with any real power.
...privileged apis when script is evaluated in a jetpack process via a call to nsijetpack.evalscript(), the script's global scope is
endowed with the following privileged apis: s
endmessage(amessagename [, v1 [, v2 [, ...]]]) similar to nsijetpack.s
endmessage(), this function asynchronously s
ends a message to the chrome process.
... callmessage(amessagename [, v1 [, v2 [, ...]]]) this function is like s
endmessage() but s
ends the message synchronously.
...And 2 more matches
Adding Toolbars and Toolbar Buttons - Archive of obsolete content
toolbar buttons there are several types of buttons and elements you can add to a toolbar dep
ending on your needs.
...it is not too hard to come up with some graphics for the buttons, but it can be hard to make them bl
end in with firefox on all operating systems.
...if for some reason you want to override these styles (not recomm
ended), you'll need the following rule: -moz-appearance: none; -moz-appearance can be used in many cases where you want to strip the native look out of an element.
...And 2 more matches
Introduction - Archive of obsolete content
while most of it should still work for creating extensions in firefox 3 (and even firefox 2), it is strongly recomm
ended that you aim to support modern firefox versions, to encourage users to stay up to date with security fixes.
...it is only one part of the development landscape, but given that it's practically exclusive to mozilla, it t
ends to be used to identify all mozilla-related development.
... xulrunner xulrunner includes the gecko r
endering engine, the necko networking library, and several other components that provide os-indep
endent file management, accessibility, and localization, among others.
...And 2 more matches
Creating a dynamic status bar extension - Archive of obsolete content
download the sample update the install manifest replace all occurrences of the first sample's id, "status-bar-sample-1", with the new sample's id, "stockwatcher", and update the front
end metadata to describe our new extension.
...we
end up reloading data from each of the windows once in 10 minutes - fixing this by creating a js component responsible for communication with the server is a good idea for one of the future articles startup: function() { this.refreshinformation(); window.setinterval(this.refreshinformation, 10*60*1000); }, this starts by calling our refreshinformation() function, which is responsible for fetchin...
... httprequest = new xmlhttprequest(); httprequest.open('get', fullurl, true); httprequest.onload = inforeceived; httprequest.s
end(null); } the httprequest variable will contain an xmlhttprequest object.
...And 2 more matches
List of Mozilla-Based Applications - Archive of obsolete content
et applications my internet browser localized browser uses gecko myna application server javascript application server for java uses mozilla rhino nextcms (fr) cms nightingale music player community run effort to continue songbird support for linux olpc web browser browser oneteam jabber client op
endocument viewer viewer opengate's tools cd burner, file browser, and hardware diagnostic softwares opengate is the opensource side of the easyneuf project, “a free software computer, easy and preinstalled” open mashups development tool openoffice.org office suite uses nss openswan implementation of ipsec for linux uses nss ...
...xul and the mozilla framework are heavily used in the gui snapstick internet on tv article that talks about snapstick using firefox sogo groupware front-
end uses thunderbird code songbird music xulrunner application spicebird collaboration suite spiderape embedding tool uses mozilla spidermonkey splashtop web browser browser part of instant-on operating system sqlite-manager database manager standalone version of add-on stealthsurfer secure internet tools on usb k...
...1.8 preview sun java enterprise system server products uses nss sundial browser with advanced domain name technology based on firefox surfeasy private and secure web browsing sweet16 apple ii computer emulator uses spidermonkey as a scriptable debugger for software running in the emulator mozilla sunbird/mozilla lightning cal
endar tabpress authoring tool tal
end open studo data integration software seems to use xulrunner talking clipboard text to speech software read epub books, web pages, chm, pdf, ms word, rtf, rss feeds taskpool productivity telasocial kiosk app uses xulrunner telekast teleprompter tenfourfox br...
...And 2 more matches
Installing plugins to Gecko embedding browsers on Windows - Archive of obsolete content
for example, netscape 6.0 and 6.01 do not write any of these keys into the registry, and thus these keys are not available for plugin v
endors to parse for these two browsers.
...examples given for "product x.y" were using netscape 6 but other possible mozilla based browsers exist as well; all gecko-based browsers are encouraged to write these keys, so that plugin v
endors can write plugin installers that install correctly to all gecko-based browsers.
...examples given for "product x.y" were using netscape 6, but other possible mozilla based browsers exist as well; all gecko-based browsers are encouraged to write these keys, so that plugin v
endors can write a plugin installer that is able to find the information it needs across all gecko-based browsers.
...And 2 more matches
No Proxy For configuration - Archive of obsolete content
limitations a domain, including sub-domains domain suffix "mozilla.org" does not block domains that
end in the same string (amozilla.org) sub-domains domain suffix, starting with a dot ".mozilla.org" does not block the main domain (mozilla.org) a hostname (without domain) hostname-only (see problems below) "localhost" also blocks any possible domains that start with the entry ("www.otherdomain.localhost") a hostname (with domain) domain name "www.m...
...ozilla.org" does not block hostnames or domains that
end in the same string (other-www.mozilla.org) an ip address ip address "1.2.3.4" does not block hostnames that resolve to the ip address ("127.0.0.1" does not block "localhost") a network network w/ cidr block "10.0.0.0/8" does not block hostnames that resolve to the ip address range (10.0.0.0/8 is not "no proxy for intranet hostnames") optional - port-specific (optional) ":" + port number "<filter>:81" only black-lists port.
... communicator used "network.proxy.none" limitations no ipv6 support - the back
end stores ipv4 addresses as ipv6, but ipv6 formats are not supported.
...And 2 more matches
Developing New Mozilla Features - Archive of obsolete content
develop relationships with existing developers in the area of your feature if you want to add a big new feature to mail, sp
end some time helping the existing mail developers.
...we appreciate the attention and interest in mozilla, but the developers have to prioritize how they sp
end their time.
...it’s possible developers may not pay much attention to you because they believe your proposed feature is not a high priority, or is not wanted at all, or that you haven’t demonstrated that you understand the codebase and mozilla coding practices well enough for them to sp
end a lot of time with you.
...And 2 more matches
Anonymous Content - Archive of obsolete content
whenever an element is inserted or app
ended, all insertion points are checked following all the same rules that applied when first placing explicit children during anonymous content generation.
...child, desc
endant, and sibling selectors will match on any path of anonymous and explicit elements.
... as far as css is concerned, anonymous content nodes are children (or desc
endants) of the bound element, they are ancestors of explicit content, and they are siblings of the explicit content.
...And 2 more matches
Elements - Archive of obsolete content
"http://www.w3.org/1999/xhtml" xmlns:xul = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:svg = "http://www.w3.org/2000/svg" xmlns:xlink= "http://www.w3.org/1999/xlink"> binding <!entity % binding-content "(resources?,content?,implementation?,handlers?)"> <!element binding %binding-content;> <!attlist binding id id #required ext
ends cdata #implied display cdata #implied inheritstyle true #implied > the binding element describes a single xbl binding.
... ext
ends - the ext
ends attribute is used to specify the url of a binding that this binding inherits from (see inheritance of implementations).
...the 'display' attribute does not work unless the ext
ends attribute is set, see bug bug 119389.
...And 2 more matches
Install script template - Archive of obsolete content
s.html var component_file = "npmypluginscriptable.xpt"; var plugin_size = 2000; // (dll file) reserve a little extra so it is not required to update too often var component_size = 10; // (xpi file) reserve a little extra so it is not required to update too often var software_name="cult3d mozilla viewer"; // plids (http://mozilla.org/projects/plugins/plugin-identifier.html) are coined by v
endors.
... * * @param rootkey must be one of these two string values hkey_local_machine or hkey_current_user * @param plidid plid for plugins * @param dllabsolutepath the fully qualified path to the dll * @param xptabsolutepath the fully qualified path to the xpt * @param plugindescription a string describing the plugin * @param v
endor a string describing the v
endor * @param productname the name of this software * @param pluginversion version string of the plugin * @param mimetype mime type handled by the plugin plugins with more than one mime type might use an array * @param suffix suffix handled by plugin (e.g.
... .my files) * @param suffixdescription string describing suffix **/ function registerplid(rootkey, plidpath, plidid, dllabsolutepath, xptabsolutepath, plugindescription, v
endor, productname, pluginversion, mimetype, suffix, suffixdescription) { var myregstatus = 0; winreg = getwinregistry(); if (winreg == null) { logcomment("moz registerplid: winreg == null"); return winregisnullerror; } // which root to start from hklm, hkcu if (rootkey == hkey_local_machine) { logcomment("moz registerplid: rootkey=="+hkey_local_machine); winreg.setrootkey(winreg.hkey_local_machine); } else if (rootkey == hkey_current_user) { logcomment("moz registerplid: rootkey=="+hkey_current_user); winreg.setrootkey(winreg.hkey_current_user); } else { logcommen...
...And 2 more matches
XTech 2005 Presentations - Archive of obsolete content
web 1.6: a rope of sand - opening keynote, mike shaver mozilla e4x - br
endan eich "ecmascript for xml" (ecma-357), a new standard for writing and processing xml directly in javascript (ecma-262, iso-16262).
... e4x marries xml and javascript syntax, and ext
ends javascript to include namespaces, qualified names, and xml elements and lists.
... e4x also adds new javascript operators for filtering xml lists, and for enumerating xml children and desc
endants.
...And 2 more matches
Uploading and Downloading Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
...the exact method dep
ends on the type of upload that you wish to perform.
...the formdata object can then simply be passed to xmlhttprequest: function upload(posturl, fieldname, filepath) { var formdata = new formdata(); formdata.app
end(fieldname, new file(filepath)); var req = new xmlhttprequest(); req.open("post", posturl); req.onload = function(event) { alert(event.target.responsetext); }; req.s
end(formdata); } http put you can also upload a file using an http put operation.
...And 2 more matches
Sorting and filtering a custom tree view - Archive of obsolete content
cript type="application/javascript" src="sort.js"/> <hbox align="center" id="search-box"> <label accesskey="f" control="filter">filter</label> <textbox id="filter" oninput="inputfilter(event)" flex="1"/> <button id="clearfilter" oncommand="clearfilter()" label="clear" accesskey="c" disabled="true"/> </hbox> <tree id="tree" flex="1" persist="sortdirection sortresource" sortdirection="asc
ending" sortresource="description"> <treecols> <treecol id="name" label="name" flex="1" persist="width ordinal hidden" onclick="sort(this)" class="sortdirectionindicator" sortdirection="asc
ending"/> <splitter class="tree-splitter"/> <treecol id="description" label="description" flex="1" persist="width ordinal hidden" onclick="sort(this)" class="sortdirectionindicator"/> <splitter class=...
...this.getlevel = function(row){ return 0; }; this.getimagesrc = function(row,col){ return null; }; this.getrowproperties = function(row,props){}; this.getcellproperties = function(row,col,props){}; this.getcolumnproperties = function(colid,col,props){}; this.cycleheader = function(col, elem) {}; } function sort(column) { var columnname; var order = tree.getattribute("sortdirection") == "asc
ending" ?
...n.id; if (tree.getattribute("sortresource") == columnname) { order *= -1; } } else { columnname = tree.getattribute("sortresource"); } function columnsort(a, b) { if (prepareforcomparison(a[columnname]) > prepareforcomparison(b[columnname])) return 1 * order; if (prepareforcomparison(a[columnname]) < prepareforcomparison(b[columnname])) return -1 * order; //tie breaker: name asc
ending is the second level sort if (columnname != "name") { if (prepareforcomparison(a["name"]) > prepareforcomparison(b["name"])) return 1; if (prepareforcomparison(a["name"]) < prepareforcomparison(b["name"])) return -1; } return 0; } table.sort(columnsort); //setting these will make the sort option persist tree.setattribute("sortdirection", order == 1 ?
...And 2 more matches
Attribute Substitution - Archive of obsolete content
note that variable names must have a space after them as this is how the
end of variable is determined.
...<label value="?name" class="?g
ender^?nationality"/> the caret is considered a separator between variables, however it will not appear in the output.
... it can also be used to separate a variable with normal text: <label value="?name" class="?g
ender^german"/> these last two examples have been setting the class attribute on a label.
...And 2 more matches
Result Generation - Archive of obsolete content
eventually, you will
end up with a set of nodes you consider the
endpoints of your query.
...in xul template terminology, the starting point is called the container or reference point and the
endpoint is called the member.
...any starting point and
ending points will do.
...And 2 more matches
Commands - Archive of obsolete content
in addition, the menu commands would need to be enabled and disabled dep
ending on whether the focused element had selected text or not, and for paste operations, whether there is something suitable on the clipboard to paste.
...you should use them when the operation dep
ends on which element is focused.
...normally, you would only hook up elements that would s
end a command event.
...And 2 more matches
Creating Dialogs - Archive of obsolete content
creating a dialog the op
endialog() function is used to open a dialog, and is related to open().
...these differences will vary dep
ending on the platform the application is running on.
... in addition, the op
endialog() function can take additional arguments beyond the first three.
...And 2 more matches
Element Positioning - Archive of obsolete content
an example is shown below: example 1: source view <button label="ok" width="100" height="40"/> however, it is not recomm
ended that you do this.
...it will be drawn as if it ext
ends past the edge of the window.
... notice in the image that the text input has grown to ext
end to the full size of the window.
...And 2 more matches
Focus and Selection - Archive of obsolete content
we could ext
end this example to remove the text when the blur event occurs.
...if you use the same value for both parameters, the start and
end of the selection changes to the same position.
...tbox.setselectionrange(0,0); you can retrieve the current selection by using the selectionstart and selection
end properties.
...And 2 more matches
Skinning XUL Files by Hand - Archive of obsolete content
the chrome is everything in the front
end of an application.
...to keep your xul looking consistent and to avoid breaking skins altogether (when your styles have some dep
endency on a part of the global skin that changes, such as an image), use the style rules in the global skin by importing it into your stylesheet with the following instruction: @import url("chrome://global/skin/"); refer to the document writing skinnable xul and css for guidelines on how to make your skins fri
endly to the global skin, to xul, and to mozilla.
...in the next few sections, you will be importing this style information into a custom stylesheet and ext
ending it with new style rules for your xul.
...And 2 more matches
Tree Selection - Archive of obsolete content
you would then write a loop for the number of ranges, calling getrangeat() to get the actual indices of the start and
end of the range.
... getrangeat example var start = new object(); var
end = new object(); var numranges = tree.view.selection.getrangecount(); for (var t = 0; t < numranges; t++){ tree.view.selection.getrangeat(t,start,
end); for (var v = start.value; v <=
end.value; v++){ alert("item " + v + " is selected."); } } we create two objects called 'start' and '
end'.
...the getrangeat() function is called passing the range index and the start and
end objects.
...And 2 more matches
Trees and Templates - Archive of obsolete content
notice how it has been placed on the treeitem in the example, even though it is not a direct desc
endant of the rule element.
...you can sort either asc
ending or desc
ending on any column.
...three values are possible: asc
ending the data is displayed is asc
ending order.
...And 2 more matches
caption - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
datepicker - Archive of obsolete content
grid - a datepicker with a cal
endar grid for selecting a date.
... !!attention: there is also a datepicker in tb-cal
endar with differing definitions for members (value is a date there) the change event is fired whenever the date is changed.
... grid a datepicker that displays a cal
endar grid where one month is shown at a time.
...And 2 more matches
description - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
dialogheader - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
label - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
listbox - Archive of obsolete content
attributes disabled, disablekeynavigation, preference, rows, seltype, suppressonselect, tabindex, value properties accessibletype, currentindex, currentitem, disabled, disablekeynavigation, itemcount, listboxobject, selectedcount, selectedindex, selecteditem, selecteditems, seltype, suppressonselect, tabindex, value methods additemtoselection, app
enditem, clearselection, ensureelementisvisible, ensureindexisvisible, getindexoffirstvisiblerow, getindexofitem, getitematindex, getnumberofvisiblerows, getrowcount, getselecteditem, insertitemat, invertselection, movebyoffset, removeitemat, removeitemfromselection, scrolltoindex, selectall, selectitem, selectitemrange, timedselect, toggleitemselection examples <listbox id="thelist"> <listite...
...", price: "$3,500 - $4,600"}, {gem: "emerald", price: "$700 - 4,250"}, {gem: "blue sapphire", price: "$3,400 - $4,500"}, {gem: "diamond", price: "$5,600 - $16,000"} ]; for (var i = 0; i < gems.length; i++) { var row = document.createelement('listitem'); var cell = document.createelement('listcell'); cell.setattribute('label', gems[i].gem); row.app
endchild(cell); cell = document.createelement('listcell'); cell.setattribute('label', gems[i].price ); row.app
endchild(cell); thelist.app
endchild(row); } attributes disabled type: boolean indicates whether the element is disabled or not.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...And 2 more matches
listcell - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
listitem - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
menuseparator - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
notificationbox - Archive of obsolete content
properties currentnotification, allnotifications, notificationshidden methods app
endnotification, getnotificationwithvalue, removeallnotifications, removecurrentnotification, removenotification, removetransientnotifications, attributes inherited from xul element align, allowevents, allownegativeassertions, class, coalesceduplicatearcs, collapsed, container, containment, context, contextmenu, datasources, dir, empty, equalsize, flags, flex, height, hidden, id, insertafter, ...
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...(), haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata app
endnotification( label , value , image , priority , buttons, eventcallback ) return type: element create a new notification and display it.
...And 2 more matches
radio - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
<statusbarpanel> - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
...And 2 more matches
tree - Archive of obsolete content
in this situation, a content view (which implements the interface nsitreecontentview) which is a more specialized type of view, uses the treeitem elements and their desc
endants to determine the data to display in the tree.
... onselect, rows, seltype, statedatasource, tabindex, treelines properties accessibletype, builderview, columns, contentview, currentindex, disablekeynavigation, disabled, editingcolumn, editingrow, enablecolumndrag, firstordinalcolumn, inputfield, seltype, selstyle, tabindex, treeboxobject, view examples a tree with several columns <tree flex="1" rows="2"> <treecols> <treecol id="s
ender" label="s
ender" flex="1"/> <treecol id="subject" label="subject" flex="2"/> </treecols> <treechildren> <treeitem> <treerow> <treecell label="joe@somewhere.com"/> <treecell label="top secret plans"/> </treerow> </treeitem> <treeitem> <treerow> <treecell label="mel@whereever.com"/> <treecell label="let's do lunch"/> </tr...
... treeboxobject type: nsitreeboxobject the box object is responsible for r
endering the tree on the window.
...And 2 more matches
window - Archive of obsolete content
sablefastfind, drawintitlebar, fullscreenbutton, height, hidechrome, id, lightweightthemes, lightweightthemesfooter, screenx, screeny, sizemode, title, width, windowtype examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <!-- run this example using copy & paste in this live xul editor: https://github.com/km-200/xul --> <!-- extremely recomm
ended to keep this css include!!
...this value may be -1 to use the default margin for that side on the current platform, 0 to have no system border (that is, to ext
end the client area to the edge of the window), or a value greater than zero to indicate how much less than the default default width you wish the margin on that side to be.
... disablefastfindtype: booleanput disablefastfind="true" on the root element of a xul document, which is int
ended to be loaded in a tab, to disable the find bar for the tab with this document.
...And 2 more matches
XULRunner tips - Archive of obsolete content
.dialog.progress.chrome", "chrome://mozapps/content/extensions/extensions.xul?type=extensions"); pref("xpinstall.dialog.progress.type.skin", "extension:manager-themes"); pref("xpinstall.dialog.progress.type.chrome", "extension:manager-extensions"); pref("extensions.update.enabled", true); pref("extensions.update.interval", 86400); pref("extensions.dss.enabled", false); pref("extensions.dss.switchp
ending", false); pref("extensions.ignoremtimechanges", false); pref("extensions.logging.enabled", false); pref("general.skins.selectedskin", "classic/1.0"); // nb these point at amo pref("extensions.update.url", "chrome://mozapps/locale/extensions/extensions.properties"); pref("extensions.getmoreextensionsurl", "chrome://mozapps/locale/extensions/extensions.properties"); pref("extensions.getmoretheme...
...the product name, v
endor, and logo).
... some xulrunner components (in particular, the extension manager) dep
end on branding, in the sense that they expect to find certain strings in chrome://branding/locale/brand.dtd and chrome://branding/locale/brand.properties.
...And 2 more matches
Extentsions FAQ - Archive of obsolete content
option #3 install status buttons 1.0 <https://addons.mozilla.org/firefox/1272/> "lets you put toolbar buttons at either
end of the status-bar.
... the problem with most js frameworks is that they bootstrap by dynamically app
ending script elements, which doesn't work in xul, last i checked.
... could someone write an extension that zaps the google analytics cookie, the urchin cookie, switches gmail and google cal
ender to https?
...And 2 more matches
2006-10-13 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - october 6 - october 13, 2006 announcements sunbird and lightning 0.3rc2 available matthew willis announced the second release candidate builds for sunbird and lightning 0.3 are released.
...test importing and exporting sunbird cal
endars to/from other cal
endar applications.
...discussion about the ability to list and search all the events in a cal
endar.
...And 2 more matches
NPEvent - Archive of obsolete content
syntax microsoft windows typedef struct _npevent { uint16 event; uint32 wparam; uint32 lparam; } npevent; mac os typedef eventrecord npevent; type eventrecord = record { what: integer; message: longint; when: longint; where: point; modifiers: integer;
end; xwindows typedef xevent npevent; fields npevent on microsoft windows the data structure has the following fields: event one of the following event types: wm_paint wm_lbuttondown wm_lbuttonup wm_lbuttondblclk wm_rbuttondown wm_rbuttonup wm_rbuttondblclk wm_mbuttondown wm_mbuttonup wm_mbuttondblclk wm_mousemove wm_keyup wm_keydown wm_setcursor wm_setfocus wm_killfocus for inf...
...wparam 32 bit field for the windows event parameter; parameter value dep
ends upon event type.
... lparam 32 bit field for the windows event parameter; parameter value dep
ends upon event type.
...And 2 more matches
Threats - Archive of obsolete content
many threats against data and resources are possible because of mistakes—either bugs in operating system and applications that create exploitable vulnerabilities, or errors made by
end users and administrators.
...information passes to a person who poses as the int
ended recipient.
...a person can pret
end to be someone else.
...And 2 more matches
The Basics of Web Services - Archive of obsolete content
web services exchange data from a server to a client, using an xml format to s
end requests, so both the server and the client can understand each other.
... a better way to understand a web service is to compare it to a html form communication with a server side script (such as php or asp) to post and s
end data.
... both web services and forms s
end and receive requests.
...And 2 more matches
Common Firefox theme issues and solutions - Archive of obsolete content
once the off
ending rule is found, it should be deleted and manual styling used.
...the solution usually is to app
end :not ([mode="text"]) to those style rules.
...this issue is fixed by adding the following css instructions to the file browser/preferences/aboutpermissions.css: .site-favicon { height: 16px; width: 16px; -moz-margin-
end: 4px; list-style-image: url("chrome://mozapps/skin/places/defaultfavicon.png"); } web developer tools web developer toolbar {to be added} web console web console buttons do not change appearance on the web console (tools > web developer > web console), the toolbar buttons on the left-hand side do not change their appearance between their toggled on and toggled off status as a result it is...
...And 2 more matches
Making sure your theme works with RTL locales - Archive of obsolete content
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 r
endered left-to-right or right-to-left: :-moz-locale-dir(ltr) matches if the user interface is being r
endered left to right.
... :-moz-locale-dir(rtl) matches if the user interface is being r
endered right to left.
... example toolbar[iconsize="large"][mode="icons"] #back-button { -moz-image-region: rect(0px 396px 34px 360px); } toolbar[iconsize="large"][mode="icons"] #back-button:-moz-locale-dir(rtl) { -moz-image-region: rect(0px 516px 34px 480px); } this specifies the default, left-to-right version of the button, then offers an override if the user's interface is being r
endered in right-to-left mode.
...And 2 more matches
Windows Media in Netscape - Archive of obsolete content
for example if (window.activexobject) { // internet explorer only script } server-side detection using user-agent strings netscape 7.1's user agent string on windows has the general pattern: mozilla/5.0 (windows; u; <em>operating system version</em>; <em>language</em>; rv:1.4) gecko/20030624 netscape/7.1 (ax<em>[;optional comments]</em>) the "v
endor comment" (ax) following the "v
endor version" netscape/7.1 is an indicator that the browser supports the windows media player activex control.
... for example on windows xp, netscape 7.1's user agent string may be: mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.4) gecko/20030624 netscape/7.1 (ax) if the client was customized by a third party, additional information may be present in the "v
endor comment" area of the user agent string.
..." value="stop" onclick="shutmediadown()"> <p>this example shows a minimally-functional player <script> <!-- function startmediaup () { document.player.url = "preludesteel.wma"; document.player.controls.play(); } function shutmediadown () { document.player.controls.stop(); } --> </script> more extensive examples of working cross-browser code can be found in the examples section at the
end.
...And 2 more matches
Building up a basic demo with the PlayCanvas engine - Game development
we will try putting together a simple demo first — a cube r
endered on the screen.
... geometry now the scene is properly r
endering we can start adding 3d shapes to it.
...let's move the cube 2 units to the left to make space for some fri
ends — add the following line just below the previous code: box.translate(-2, 0, 0); now let's add a new shape — how about a cylinder?
...And 2 more matches
Visual-js game engine - Game development
socket.io.js - http://socket.io/download/ ( also implemented intro build.js ) webgl2 based on : copyright (c) 2014 tappali ekanathan keestu (keestu@gmail.com) gnu general public license obj loader : https://github.com/frenchtoast747/webgl-obj-loader textures download from http://textures.com more texture downloads http://www.textures4photoshop.com/ female body v3.bl
end this file has been released by andrescuccaro under the following license: creative commons attribution 3.0 about gui for windows (canvas2d part only) : windows gui application version 1.0 (using visual-js 0.9 lib) important : you will need net 4.5.2 minimum also redistribution pack for c++ how to start project ?
...see video explanation : if you use editor.js to visual create game object method , you must start ***node build_from_editor_to_visual_js_file.js*** on the
end of work.
...build folder is full v
endor nature.
...And 2 more matches
Backgrounds and borders - Learn web development
a background-color ext
ends underneath the content and padding box of the element.
... sizing the background image in the example above, we have a large image that has
ended up being cropped as it is larger than the element it is a background of.
...in this case, part of the image is likely to
end up outside the box.
...And 2 more matches
Handling different text directions - Learn web development
these physical dimensions map very neatly to content that is viewed horizontally, and by default the web t
ends to support left-to-right languages (e.g.
...instead they will talk about start and
end along with this idea of inline and block.
...the border-bottom property maps to border-block-
end, which is the border at the
end of the block dimension.
...And 2 more matches
Overflowing content - Learn web development
you might wonder why css works in such a messy way, displaying content outside of its int
ended container.
...this offers the advantage of keeping the layout consistent, instead of scrollbars appearing or disappearing, dep
ending upon the amount of content in the container.
... you can also scroll on the x axis using overflow-x, although this is not a recomm
ended way to accommodate long words!
...And 2 more matches
CSS layout - Learn web development
looking to become a front-
end web developer?
...at the
end of the lessons is an assessment to help you check your understanding of layout methods, by laying out a webpage.
...media queries are a key part of responsive web design, as they allow you to create different layouts dep
ending on the size of the viewport, but they can also be used to detect other things about the environment your site is running on, for example whether the user is using a touchscreen rather than a mouse.
...And 2 more matches
What is CSS? - Learn web development
css properties have different allowable values, dep
ending on which property is being specified.
...this group is made of representatives of browser v
endors and other companies who have an interest in css.
... there are also other people, known as invited experts, who act as indep
endent voices; they are not linked to a member organization.
...And 2 more matches
Styling links - Learn web development
this is because if the real links were included, clicking on them would break the examples (you'd
end up with an error, or a page loaded in the embedded example that you couldn't get back from.) # just links to the current page.
...two points to note here are: the underline has been created using border-bottom, not text-decoration — some people prefer this because the former has better styling options than the latter, and is drawn a bit lower, so doesn't cut across the desc
enders of the word being underlined (e.g.
...queryselector(".html-input"); var cssinput = document.queryselector(".css-input"); var reset = document.getelementbyid("reset"); var htmlcode = htmlinput.value; var csscode = cssinput.value; var output = document.queryselector(".output"); var solution = document.getelementbyid("solution"); var styleelem = document.createelement('style'); var headelem = document.queryselector('head'); headelem.app
endchild(styleelem); function drawoutput() { output.innerhtml = htmlinput.value; styleelem.textcontent = cssinput.value; } reset.addeventlistener("click", function() { htmlinput.value = htmlcode; cssinput.value = csscode; drawoutput(); }); solution.addeventlistener("click", function() { htmlinput.value = htmlcode; cssinput.value = 'p {\n font-size: 1.2rem;\n font-family: sans-serif...
...And 2 more matches
How does the Internet work? - Learn web development
to s
end a message to computer b, computer a must s
end the message to the router, which in turn forwards the message to computer b and makes sure the message is not delivered to computer c.
...there are other networks out there: your fri
ends, your neighbors, anyone can have their own network of computers.
...the next step is to s
end the messages from our network to the network we want to reach.
...And 2 more matches
Responsive images - Learn web development
doing so can waste bandwidth; in particular, mobile users don't want to waste bandwidth by downloading a large image int
ended for desktop, when a small image would do for their device.
... ideally, you would have multiple resolutions available and serve the appropriate size dep
ending upon the device accessing the data on the website.
...we want to display identical image content, just larger or smaller dep
ending on the device — this is the situation we have with the second content image in our example.
...And 2 more matches
Video and Audio APIs - Learn web development
if you downloaded our examples repo, you'll find it in javascript/apis/video-audio/start/ at this point, if you load the html you should see a perfectly normal html5 video player, with the native controls r
endered.
... the <video> element contains two <source> elements so that different formats can be loaded dep
ending on the browser viewing the site.
...add the following addeventlistener() lines below the previous one you added: stop.addeventlistener('click', stopmedia); media.addeventlistener('
ended', stopmedia); the click event is obvious — we want to stop the video by running our stopmedia() function when the stop button is clicked.
...And 2 more matches
Handling text — strings in JavaScript - Learn web development
if the browser can see where a string starts, but can't find the
end of the string, as indicated by the 2nd quote, it complains with an error (with "unterminated string literal").
...the following will error, as it confuses the browser as to where the string
ends: let bigmouth = 'i've got no right to take my place...'; this leads us very nicely into our next subject.
... the fourth one includes uses a ternary operator to check whether the score is above a certain mark and print a pass or fail message dep
ending on the result.
...And 2 more matches
Object building practice - Learn web development
the last two parameters specify the start and
end number of degrees around the circle that the arc is drawn between.
...of the canvas, to avoid drawing errors random(0 + size,width - size), random(0 + size,height - size), random(-7,7), random(-7,7), 'rgb(' + random(0,255) + ',' + random(0,255) + ',' + random(0,255) +')', size ); balls.push(ball); } the while loop creates a new instance of our ball() using random values generated with our random() function, then push()es it onto the
end of our balls array, but only while the number of balls in the array is less than 25.
...dep
ending on how much processing power your computer/browser has, specifying several thousand balls might slow down the animation rather a lot!
...And 2 more matches
Object prototypes - Learn web development
in this example, we have defined a constructor function, like so: function person(first, last, age, g
ender, interests) { // property and method definitions this.name = { 'first': first, 'last' : last }; this.age = age; this.g
ender = g
ender; //...see link in summary above for full definition } we have then created an object instance like this: let person1 = new person('bob', 'smith', 32, 'male', ['music', 'skiing']); if you type "person1." into your javascript console, you sho...
...uld see the browser try to auto-complete this with the member names available on this object: in this list, you will see the members defined on person1's constructor — person() — name, age, g
ender, interests, bio, and greeting.
... a clever trick is that you can put parentheses onto the
end of the constructor property (containing any required parameters) to create another object instance from that constructor.
...And 2 more matches
Multimedia: Images - Learn web development
many javascript libraries can implement this for you, such as lazysizes, and browser v
endors are working on a native lazyload attribute that is currently in the experimental phase.
... the most optimal format the optimal file format typically dep
ends on the character of the image.
...progressive jpegs, in contrast to normal jpegs, r
ender progressively (hence the name), meaning the user sees a low-resolution version that gains clarity as the image downloads, rather than the image loading at full resolution top-to-bottom or even only r
endering once completely downloaded.
...And 2 more matches
What is web performance? - Learn web development
this includes the following major areas: reducing overall load time: how long does it take the files required to r
ender the web site to download on to the user's computer?
... this t
ends to be affected by latency, how big your files are, how many files there are, and other factors besides.
... how content is r
endered to effectively understand web performance, the issues behind it, and the major topic areas we mentioned above, you really should understand some specifics about how browsers work.
...And 2 more matches
Styling Vue components with CSS - Learn web development
for installation, and to use some of the more advanced features of vue (like single file components or r
ender functions), you'll need a terminal with node + npm installed.
...put[type="text"] { border-radius: 0; } body { width: 100%; max-width: 68rem; margin: 0 auto; font: 1.6rem/1.25 "helvetica neue", helvetica, arial, sans-serif; background-color: #f5f5f5; color: #4d4d4d; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; } @media screen and (min-width: 620px) { body { font-size: 1.9rem; line-height: 1.31579; } } /*
end resets*/ next, in your src/main.js file, import the reset.css file like so: import './assets/reset.css'; this will cause the file to get picked up during the build step and automatically added to our site.
...p: rect(1px, 1px, 1px, 1px); clip-path: rect(1px, 1px, 1px, 1px); white-space: nowrap; } [class*="stack"] > * { margin-top: 0; margin-bottom: 0; } .stack-small > * + * { margin-top: 1.25rem; } .stack-large > * + * { margin-top: 2.5rem; } @media screen and (min-width: 550px) { .stack-small > * + * { margin-top: 1.4rem; } .stack-large > * + * { margin-top: 2.8rem; } } /*
end global styles */ #app { background: #fff; margin: 2rem 0 4rem 0; padding: 1rem; padding-top: 0; position: relative; box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 2.5rem 5rem 0 rgba(0, 0, 0, 0.1); } @media screen and (min-width: 550px) { #app { padding: 4rem; } } #app > * { max-width: 50rem; margin-left: auto; margin-right: auto; } #app > form { max-width: 100%; } #app ...
...And 2 more matches
Configuring Build Options
(it is possible to manually call configure with command-line options, but this is not recomm
ended).
... setting the mozconfig path: export mozconfig=$home/mozilla/mozconfig-firefox calling the file .mozconfig (with a leading dot) is also supported, but this is not recomm
ended because it may make the file harder to find.
... choose one of the following options to add to your mozconfig file: browser (firefox) ac_add_options --enable-application=browser note: this is the default mail (thunderbird) ac_add_options --enable-application=comm/mail mozilla suite (seamonkey) ac_add_options --enable-application=suite cal
endar (lightning extension, uses thunderbird) ac_add_options --enable-application=comm/mail ac_add_options --enable-cal
endar selecting build options the build options you choose dep
ends on what application you are building and what you will be using the build for.
...And 2 more matches
Makefile - variables
global_deps a list of common dep
endencies (makefile.in, autoconf.mk) that will force rebuilding.
... tier build order dep
endencies - subdirectories for make to traverse prior to building current.
... sdk_headers makefile generation description no_makefile_rule [p
ending] inhibit makefile.in deps that would allow $obj/makefile to be generated.
...And 2 more matches
Creating Custom Events That Can Pass Data
for example, if you want firefox to perform an action whenever something happens (i.e., something other than the standard mouse/keyboard events) and, dep
ending on the data passed along with this event, you want firefox to react differently.
...you know never know what dep
ends on that enum you modified keep your stuff organized.
... you need to make the following two modifications: around line 1000: ns_define_classinfo_data({truncated name}, nsdomgenericsh, dom_default_scriptable_flags) around line 2900: dom_classinfo_map_begin({truncated name}, nsidom{truncatedname}) dom_classinfo_map_entry(nsidom{truncated name}) dom_classinfo_event_map_entries dom_classinfo_map_
end remember, {truncated name} is the same as above.
...And 2 more matches
Frame script loading and lifetime
for example, from bootstrap.js: services.mm.addmessagelistener( 'my-addon-id', { receivemessage: function() { console.log('incoming message from frame script:', amsg.data); } }, true // must set this argument to true, otherwise s
ending message from framescript will not work during and after the unload event on the contentmessagemanager triggers ); then in your frame script, listen for the unload event of the message manager (which is the global this), and s
ending a message.
... if you did not set the third argument to true in bootstrap.js on services.mm.addmessagelistener, s
ending this message during, and after, the unloading event will do nothing.
... var gcontentframemessagemanager = this; addeventlistener('unload', function(aevent) { if (aevent.target == gcontentframemessagemanager) { s
endasyncmessage('my-addon-id', 'framescript-died'); // if you did not set third argument of `services.mm.addmessagelistener` to `true`, then this will fail to s
end a message } }, false); note about unload during uninstallation/upgrade when your add-on is uninstalled, or disabled, you should: cancel it, if you have used allowdelayedload, by calling removedelayedframescript; ensuring the frame script is not loaded into any new tabs.
...And 2 more matches
Performance
do some work on the window } function dosomething(message) { result = helper(content, message.data) s
endasyncmessage("my-addon:response-from-child", {something: result}) } addmessagelistener("my-addon:request-from-parent", dosomething) why is this bad?
...do some work on the window } function dosomething(message) { frameglobal = message.target result = helper(frameglobal.content, message.data) frameglobal.s
endasyncmessage("my-addon:response-from-child", {something: result}) } function addframe(frameglobal) { frameglobal.addmessagelistener("my-addon:request-from-parent", dosomething) } javascript modules are per-process singletons and thus all their objects are only initialized once, which makes them suitable for stateless callbacks.
...ents other observers and services should be registered in a process script or jsm instead load frame scripts on demand bad: // addon.js services.mm.loadframescript("framescript.js", /*delayed:*/ true) // stuff communicating with the framescript // framescript.js function onlyonceinabluemoon() { // we only need this during a total solar eclipse while goat blood rains from the sky s
endasyncmessage('my-addon:paragraph-count', {num: content.document.queryselectorall('p').length}) } addmessagelistener("my-addon:request-from-parent", onlyonceinabluemoon) better: // addon.js function ontoolbarbutton(event) { let tabmm = gbrowser.mcurrentbrowser.frameloader.messagemanager; let button = event.target; let callback = (message) => { tabmm.removemessagelistener("my-addon:para...
...And 2 more matches
Browser API
browser api interfaces to support the requirement of a browser <iframe>, the htmliframeelement dom interface has been ext
ended with new methods that give the <iframe> some super powers.
... htmliframeelement.s
endmouseevent() s
ends a mouseevent to the <iframe>'s content.
... htmliframeelement.getstructureddata() retrieves any structured microdata (and hcard and hcal
endar microformat data) contained in the html loaded in the browser <iframe> and returns it as json.
...And 2 more matches
Gecko's "Almost Standards" Mode
as of mozilla 1.0.1 and 1.1 beta, there is a new r
endering mode referred to as "almost standards" mode.
... "almost standards" r
endering mode is exactly the same as "standards" mode in all details save one, where it works like "quirks" mode: the height calculations for line boxes and some of the inline elements in them.
...this means that sliced-images-in-tables layouts are less likely to fall apart in gecko-based browsers based on the r
endering engine found in mozilla 1.0.1 or later when in either "quirks" or "almost standards" mode.
...And 2 more matches
InstallListener
method overview void onnewinstall(in addoninstall install) void ondownloadstarted(in addoninstall install) void ondownloadprogress(in addoninstall install) void ondownload
ended(in addoninstall install) void ondownloadcancelled(in addoninstall install) void ondownloadfailed(in addoninstall install) void oninstallstarted(in addoninstall install) void oninstall
ended(in addoninstall install, in addon addon) void oninstallcancelled(in addoninstall install) void oninstallfailed(in addoninstall install) void onex...
... void ondownloadprogress( in addoninstall install ) parameters install the addoninstall representing the install ondownload
ended() called when downloading completes successfully for an add-on install.
... void ondownload
ended( in addoninstall install ) parameters install the addoninstall representing the install ondownloadcancelled() called when downloading is cancelled.
...And 2 more matches
AsyncShutdown.jsm
for instance, at the
end of phase profilebeforechange, no service is permitted to write to the profile directory (with the exception of telemetry).
... consequently, if any service has requested i/o to the profile directory before or during phase profilebeforechange, the system must be informed that these requests need to be completed before the
end of phase profilebeforechange.
...// do whatever must be done before the
end of phase profilebeforechange return promise; }, function info() { let status = ...
...And 2 more matches
FileUtils.jsm
); void closesafefileoutputstream(nsifileoutputstream stream); constants constant value description mode_rdonly 0x01 corresponds to the pr_rdonly parameter to pr_open mode_wronly 0x02 corresponds to the pr_wronly parameter to pr_open mode_create 0x08 corresponds to the pr_create_file parameter to pr_open mode_app
end 0x10 corresponds to the pr_app
end parameter to pr_open mode_truncate 0x20 corresponds to the pr_truncate parameter to pr_open perms_file 0644 default permissions when creating files.
... note: 'safe' and 'atomic' file output streams will never app
end; they will always overwrite an existing file.
... starting in gecko 38.0, passing mode_app
end without mode_truncate will throw an exception.
...And 2 more matches
Promise.jsm
while you may still import this module from the above paths, the recomm
ended way for loading it is through the add-on sdk loader.
...internally, a promise can be in one of three states: p
ending, when the final value is not available yet.
...the method returns a new promise that, in turn, is fulfilled or rejected dep
ending on the state of the original promise and on the behavior of the callbacks.
...And 2 more matches
Sqlite.jsm
the value typically
ends with .sqlite.
... executecached() is recomm
ended for statements that will be executed many times.
... execute() is recomm
ended for statements that will be executed seldomly or once.
...And 2 more matches
Release phase
dep
ending on which branch you work on, the url of your repository might look like this: http://hg.mozilla.org/releases/l10n-central/x-testing if you followed the koala or plain text approach, you probably already have a local clone of the repository.
...with the hg push command you can s
end the changesets to the remote server.
... mercurial will connect to the remote repository, authenticate through ssh and s
end the changesets.
...And 2 more matches
Localization formats
there are 4 main approaches to web l10n with regards to the choice of technology used for localization logic: html/php .lang gettext (.po) wiki (tbd) the choice of the filetype dep
ends on a couple of factors: how much content is there to be localized?
...you may choose to present just the html for localization: we give an html file which lists several pieces of content like, <h1>getting started</h1> and the localizer translates to <h1>débuter avec firefox</h1> the localizer then submits the translated html or php back to us by either checking in changes to svn or s
ending us a patch that pascal checks in.
....lang files provide some features that differentiate it from gettext: .lang is not dep
endent on php/.po library, so if our webdev team sets up a site without gettext support, we still have .lang.
...And 2 more matches
Mozilla Style System
in one half (the back
end) are the sources of specified style data, and in the other half (the front
end) is the code that turns the specified values into computed values.
...the methods on nsistyleruleprocessor allow the front
end to ask the back
ends for the style data that applies to a given element or pseudo-element, in the form of style rules.
... 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.
...And 2 more matches
Mozilla Style System Documentation
in css, some of the style data for an element dep
ends on the style data for that element's parent.
... likewise, some of the style data for a pseudo-element dep
ends on the data for the pseudo-elements parent element.
... thus we create a style context tree so that the style contexts can find their ancestors and their desc
endants easily.
...And 2 more matches
DMD
visit about:memory and click the dmd button (dep
ending on how old your build is, it might be labelled "save" or "analyze reports" or "dmd").
... (linux only) you can s
end signal 34 to the firefox process, e.g.
...(if you are familiar with the recomm
ended "--es env0" method for setting environment variables when launching fennec, note that you cannot use this method here because those are processed too late in the startup process.
...And 2 more matches
Performance
documentation reporting a performance problem a user fri
endly guide to reporting a performance problem.
... best practices for front-
end engineers tips for reducing impacts on browser performance in front-
end code.
...the "leaks" tool is not recomm
ended for use with spidermonkey or firefox, because it gets confused by tagged pointers and thinks objects have leaked when they have not (see bug 390944).
...And 2 more matches
Phishing: a short definition
a relatively simple, yet effective, phishing scheme is s
ending an email with a fake invoice of a person’s favorite shopping site.
... this email will usually contain a link pret
ending to lead to the original service, but in reality, taking the victim to an attacker-controlled website.
... web browser v
endors too, are interested in protecting their users from phishing.
...And 2 more matches
Research and prep
productization is the process of determining a user's choice of default search engines, content and protocol handlers (rss readers, web mail and web cal
endar), bookmarks, and links to recomm
ended sites on the in-product pages as it relates to their locale.
...we believe that localization teams are in the best position to provide recomm
endations on what local providers we can use for web services because you're in the market, work in the language, and know your users.
... this is, therefore, meant to be a guideline for how you should be formulating your recomm
endations.
...And 2 more matches
L20n Javascript API
this array (with defaultlocale app
ended to it if it is not already present) will be used to negotiate the fallback chain for the user.
... the ctxdata is an object which ext
ends the context data per key and per level of hierarchy.
... in other words, the following two calls: ctx.updatedata({ user: { name: "bob" } }); ctx.updatedata({ user: { g
ender: "masculine" } }); will make the internally-stored context data look like this: { "user" : { "name": "bob", "g
ender": "masculine" } } ctx.getsync(id: string, ctxdata: object?) retrieve a string value of an entity called id.
...And 2 more matches
NSPR Poll Method
for pr_recv, you should pass pr_poll_read as the in_flags argument to the poll method for pr_s
end, you should pass pr_poll_write as the in_flags argument to the poll method out_flags [output argument] if an i/o layer is ready to satisfy the i/o request defined by in_flags without involving the underlying network transport, its poll method sets the corresponding event in *out_flags on return.
... new_flags = fd->methods->poll(fd, pr_poll_read, &out_flags); if you are going to call pr_s
end, pass pr_poll_write as the in_flags argument.
... new_flags = fd->methods->poll(fd, pr_poll_write, &out_flags); if you are interested in calling both pr_recv and pr_s
end on the same file descriptor, make two separate calls to the poll method, one with pr_poll_read as in_flags and the other with pr_poll_write as in_flags, so that you know what events at the network transport layer pr_poll_read and pr_poll_write are mapped to, respectively.
...And 2 more matches
PR_Accept
syntax #include <prio.h> prfiledesc* pr_accept( prfiledesc *fd, prnetaddr *addr, printervaltime timeout); parameters the function has the following parameters: fd a pointer to a prfiledesc object representing the r
endezvous socket on which the caller is willing to accept new connections.
... description the socket fd is a r
endezvous socket that has been bound to an address with pr_bind and is listening for connections after a call to pr_listen.
... pr_accept accepts the first connection from the queue of p
ending connections and creates a new socket for the newly accepted connection.
...And 2 more matches
PR_CreatePipe
creates an anonymous pipe and retrieves file descriptors for the read and write
ends of the pipe.
...on return, this parameter contains the file descriptor for the read
end of the pipe.
...on return, this parameter contains the file descriptor for the write
end of the pipe.
...And 2 more matches
PR_Listen
backlog the maximum length of the queue of p
ending connections.
... description pr_listen turns the specified socket into a r
endezvous socket.
... it creates a queue for p
ending connections and starts to listen for connection requests on the socket.
...And 2 more matches
Encrypt Decrypt MAC Keys As Session Objects
ude #include #include #include #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin aeskey ckaid-----" #define enckey_trailer "-----
end aeskey ckaid-----" #define mackey_header "-----begin mackey ckaid-----" #define mackey_trailer "-----
end mackey ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-...
...----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c "); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20s specify db directory path\n\n", "-d "); fprintf(stderr, ...
... * loop until eof(input) * read a buffer of plaintext from input file, * mac it, app
end the mac to the plaintext * encrypt it using cbc, using previously created iv, * store the last block of ciphertext as the new iv, * write the cipher text to intermediate file * close files * report success */ secstatus rv; prfiledesc *infile; prfiledesc *headerfile; prfiledesc *encfile; unsigned ch...
...And 2 more matches
Encrypt and decrypt MAC using token
ude #include #include #include #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin aeskey ckaid-----" #define enckey_trailer "-----
end aeskey ckaid-----" #define mackey_header "-----begin mackey ckaid-----" #define mackey_trailer "-----
end mackey ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-...
...----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c "); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20s specify db directory path\n\n", "-d "); fprintf(stderr, ...
... * loop until eof(input) * read a buffer of plaintext from input file, * mac it, app
end the mac to the plaintext * encrypt it using cbc, using previously created iv, * store the last block of ciphertext as the new iv, * write the cipher text to intermediate file * close files * report success */ secstatus rv; prfiledesc *infile; prfiledesc *headerfile; prfiledesc *encfile; unsigned ch...
...And 2 more matches
NSS FAQ
since leading accelerator v
endors such as chrysalis-it, ncipher, and rainbow technologies also support this interface, nss-enabled applications can support a wide variety of hardware accelerators.
...applications that use the pkcs #11 interface provided by nss will therefore support smart cards from leading v
endors such as activecard, litronic, safenet, and secureid technologies that also support the pkcs #11 interface.
...mozilla strongly recomm
ends that multithreaded applications use the nspr or native os threading model.
...And 2 more matches
NSS_3.12_release_notes.html
_unknown_aia_location_type sec_error_bad_http_response sec_error_bad_ldap_response sec_error_failed_to_encode_data sec_error_bad_info_access_location sec_error_libpkix_internal new mechanism flags (see secmod.h) public_mech_aes_flag public_mech_sha256_flag public_mech_sha512_flag public_mech_camellia_flag new oids (see secoidt.h) new ec signature oids sec_oid_ansix962_ecdsa_signature_recomm
ended_digest sec_oid_ansix962_ecdsa_signature_specified_digest sec_oid_ansix962_ecdsa_sha224_signature sec_oid_ansix962_ecdsa_sha256_signature sec_oid_ansix962_ecdsa_sha384_signature sec_oid_ansix962_ecdsa_sha512_signature more id-ce and id-pe oids from rfc 3280 sec_oid_x509_hold_instruction_code sec_oid_x509_delta_crl_indicator sec_oid_x509_issuing_distribution_point sec_oid_x509_cert_issuer sec_o...
...bug 429388: vfychain.main leaks memory bug 396044: warning: usage of uninitialized variable in ckfw/object.c(174) bug 396045: warning: usage of uninitialized variable in ckfw/mechanism.c(719) bug 401986: mac os x leopard build failure in legacydb bug 325805: diff considers mozilla/security/nss/cmd/pk11util/scripts/pkey a binary file bug 385151: remove the link time dep
endency from nss to softoken bug 387892: add entrust root ca certificate(s) to nss bug 433386: when system clock is off by more than two days, oscp check fails, can result in crash if user tries to view certificate [[@ secitem_compareitem_util] [[@ memcmp] bug 396256: certutil and pp do not print all the generalnames in a crldp extension bug 398019: correct confusing and erroneous comments in der_asc...
...bug 401610: shared db fails on iopr tests bug 388120: build error due to sec_begin_protos / sec_
end_protos are undefined bug 415264: make security use of new nspr rotate macros bug 317052: lib/base/whatnspr.c is obsolete bug 317323: set nspr31_lib_prefix to empty explicitly for win95 and wince builds bug 320336: secitem_allocitem returns a non-null pointer if the allocation of its 'data' buffer fails bug 327529: can't pass 0 as an unnamed null pointer argument to cert_createrdn bug 334683: extr...
...And 2 more matches
NSS 3.35 release notes
note: in this release, support for new rsa_pss_pss_shax signature schemes have been disabled;
end-entity certificates with rsa-pss keys will still be used to produce signatures, but they will use the rsa_pss_rsae_shax codepoints.
... if the server s
ends a helloretryrequest, it is possible to discard the server socket, and make a new socket to handle any subsequent clienthello.
... several experimental apis were added in support of tls 1.3 features: tls servers are able to s
end session tickets to clients on demand, using the experimental ssl_s
endsessionticket function.
...And 2 more matches
Enc Dec MAC Output Public Key as CSR
lude #include #include #include #include #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define default_key_bits 1024 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin wrapped enckey-----" #define enckey_trailer "-----
end wrapped enckey-----" #define mackey_header "-----begin wrapped mackey-----" #define mackey_trailer "-----
end wrapped mackey-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----be...
...gin mac-----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" #define lab_header "-----begin key label-----" #define lab_trailer "-----
end key label-----" #define pubkey_header "-----begin pub key -----" #define pubkey_trailer "-----
end pub key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----
end new certificate request-----" typedef enum { gen_csr, encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4, pubkey = 5, lab = 6 } headertype; /* this is conditionalized because port_errortostri...
... */ #ifndef port_errortostring #ifndef sec_error_base #define sec_error_base (-0x2000) #define port_errortostring(err) pr_errortostring((err), pr_language_i_default) #
endif #
endif /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -s -r -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'g' for generating rsa keypair for wrapping\n\n", "g"); fprintf(stderr, "%-20s specify 'e' for encrypt operation\n\n", ...
...And 2 more matches
Encrypt Decrypt_MAC_Using Token
ude #include #include #include #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin aeskey ckaid-----" #define enckey_trailer "-----
end aeskey ckaid-----" #define mackey_header "-----begin mackey ckaid-----" #define mackey_trailer "-----
end mackey ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-...
...----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit.
... * loop until eof(input) * read a buffer of plaintext from input file, * mac it, app
end the mac to the plaintext * encrypt it using cbc, using previously created iv, * store the last block of ciphertext as the new iv, * write the cipher text to intermediate file * close files * report success */ secstatus rv; prfiledesc *infile; prfiledesc *headerfile; prfiledesc *encfile; unsigned ch...
...And 2 more matches
NSS Sample Code Sample_3_Basic Encryption and MACing
ude <prtypes.h> #include <plstr.h> /* nss headers */ #include <keyhi.h> #include <pk11priv.h> /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin aeskey ckaid-----" #define enckey_trailer "-----
end aeskey ckaid-----" #define mackey_header "-----begin mackey ckaid-----" #define mackey_trailer "-----
end mackey ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-...
...----" #define mac_trailer "-----
end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----
end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4 } headertype; /* print a usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c <a|b> -d <dbdirpath> [-z <noisefilename>] " "[-p <dbpwd> | -f <dbpwdfile>] -i <ipfilename> -o <opfilename>\n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c <a|b>"); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20...
... * loop until eof(input) * read a buffer of plaintext from input file * mac it, app
end the mac to the plaintext * encrypt it using cbc, using previously created iv * store the last block of ciphertext as the new iv * write the cipher text to intermediate file * close files * report success */ secstatus rv; prfiledesc *infile; prfiledesc *headerfile; prfiledesc *encfile; unsigned char...
...And 2 more matches
EncDecMAC using token object - sample 3
*/ /* nspr headers */ #include #include #include #include #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----
end cipher-----" #define enckey_header "-----begin aeskey ckaid-----" #define enckey_trailer "-----
end aeskey ckaid-----" #define mackey_header "-----begin mackey ckaid-----" #define mackey_trailer "-----
end mackey ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----
end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----
end mac-----" #define pad_header...
... "-----begin pad-----" #define pad_trailer "-----
end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { symkey = 0, mackey = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c "); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20s specify db directory path\n\n", "-d "); fprintf(stderr, "%-20s specify db password [optional]\n\n", "-p "); fprintf(stderr, "%-20s specify db password file [optional]\n\n", "-f "); fprintf(stderr, "%-20s specify noise file name [optional]\n\n", "-z "); fprintf(stderr, "%-21s specify a...
...* loop until eof(input) * read a buffer of plaintext from input file, * mac it, app
end the mac to the plaintext * encrypt it using cbc, using previously created iv, * store the last block of ciphertext as the new iv, * write the cipher text to intermediate file * close files * report success */ secstatus rv; prfiledesc *infile; prfiledesc *headerfile; prfiledesc *encfile; unsigned char *enckeyid = (unsigned char *) "encrypt key"; unsigned char *mackeyid = (unsigned char *) "mac key...
...And 2 more matches
PKCS11 FAQ
if the token that has your private keys doesn't also do symmetric operations, for example, it's likely that the internal token will
end up doing the symmetric operations.
... this dep
ends on the application.
... pkcs #11 sessions are cryptographic session states, indep
endent of threads.
...And 2 more matches
NSS functions
refgetdefault mxr 3.2 and later ssl_cipherprefset mxr 3.2 and later ssl_cipherprefsetdefault mxr 3.2 and later ssl_clearsessioncache mxr 3.2 and later ssl_configmpserversidcache mxr 3.2 and later ssl_configsecureserver mxr 3.2 and later ssl_configserversessionidcache mxr 3.2 and later ssl_datap
ending mxr 3.2 and later ssl_forcehandshake mxr 3.2 and later ssl_forcehandshakewithtimeout mxr 3.11.4 and later ssl_getchannelinfo mxr 3.4 and later ssl_getciphersuiteinfo mxr 3.4 and later ssl_getclientauthdatahook mxr 3.2 and later ssl_getmaxservercachelocks mxr 3.4 and later ssl_getsessionid ...
...ivatekeyinfoandreturnkey mxr 3.4 and later pk11_importpublickey mxr 3.4 and later pk11_importsymkeywithflags mxr 3.4 and later pk11_initpin mxr 3.2 and later pk11_isfips mxr 3.2 and later pk11_isdisabled mxr 3.4 and later pk11_isfri
endly mxr 3.2 and later pk11_ishw mxr 3.2 and later pk11_isinternal mxr 3.2 and later pk11_ispresent mxr 3.2 and later pk11_isreadonly mxr 3.2 and later pk11_isremovable mxr 3.12 and later pk11_ivfromparam mxr 3.2 and late...
...9 and later dsau_encodedersig mxr 3.2 and later dsau_encodedersigwithlen mxr 3.9 and later hash_begin mxr 3.4 and later hash_clone mxr 3.10 and later hash_create mxr 3.4 and later hash_destroy mxr 3.4 and later hash_
end mxr 3.4 and later hash_gethashobject mxr 3.2 and later hash_gethashobjectbyoidtag mxr 3.8 and later hash_gethashtypebyoidtag mxr 3.8 and later hash_gettype mxr 3.12 and later hash_hashbuf mxr 3.10 and later hash_resultlen mxr...
...And 2 more matches
NSS tools : pk12util
changing the names of the certificate and key databases is not recomm
ended.
... pk12util -l p12file [-h tokenname] [-r] [-d [sql:]directory] [-p dbprefix] [-k slotpasswordfile|-k slotpassword] [-w p12filepasswordfile|-w p12filepassword] for example, this prints the default ascii output: # pk12util -l certs.p12 enter password for pkcs12 file: key(shrouded): fri
endly name: thawte freemail member's thawte consulting (pty) ltd.
...each certificate is written to a sequentially-number file, beginning with file0001.der and continuing through file000n.der, incrementing the number for every certificate: # pk12util -l test.p12 -r enter password for pkcs12 file: key(shrouded): fri
endly name: thawte freemail member's thawte consulting (pty) ltd.
...And 2 more matches
sslerr.html
this can be due to a misconfiguration at either
end.
... ssl_error_tx_record_too_long -12262 "ssl attempted to s
end a record that exceeded the maximum permissible length." this error should never occur.
... ssl_error_close_notify_alert -12230 "ssl peer has closed this connection." the local socket received an ssl3 alert record from the remote peer, reporting that the remote peer has chosen to
end the connection.
...And 2 more matches
NSS Tools modutil
changing the names of the certificate and key databases is not recomm
ended.
...the following mechanisms are currently available: rsa, dsa, rc2, rc4, rc5, des, dh, fortezza, sha1, md5, md2, random (for random number generation), and fri
endly (meaning certificates are publicly readable).
... dsa: 0x00000002 rc2: 0x00000004 rc4: 0x00000008 des: 0x00000010 dh: 0x00000020 fortezza: 0x00000040 rc5: 0x00000080 sha1: 0x00000100 md5: 0x00000200 md2: 0x00000400 random: 0x08000000 fri
endly: 0x10000000 own_pw_defaults: 0x20000000 disable: 0x40000000 cipherenableflags specifies ciphers that this module provides but netscape communicator does not, so that communicator can enable them.
...And 2 more matches
NSS tools : pk12util
changing the names of the certificate and key databases is not recomm
ended.
... pk12util -l p12file [-h tokenname] [-r] [-d [sql:]directory] [-p dbprefix] [-k slotpasswordfile|-k slotpassword] [-w p12filepasswordfile|-w p12filepassword] for example, this prints the default ascii output: # pk12util -l certs.p12 enter password for pkcs12 file: key(shrouded): fri
endly name: thawte freemail member's thawte consulting (pty) ltd.
...each certificate is written to a sequentially-number file, beginning with file0001.der and continuing through file000n.der, incrementing the number for every certificate: # pk12util -l test.p12 -r enter password for pkcs12 file: key(shrouded): fri
endly name: thawte freemail member's thawte consulting (pty) ltd.
...And 2 more matches
NSS tools : signtool
when testing is finished and you are ready to disitribute your software, you should obtain an object-signing certificate from one of two kinds of sources: * an indep
endent certificate authority (ca) that authenticates your identity and charges you a fee.
... you typically get a certificate from an indep
endent ca if you want to sign software that will be distributed over the internet.
... the command file format entries in a netscape signing tool command file have this general format: keyword=value everything before the = sign on a single line is a keyword, and everything from the = sign to the
end of line is a value.
...And 2 more matches
Rhino scopes and contexts
it's important to understand that a scope is indep
endent of the context that created it.
...in general, variables are looked up by starting at the current variable object (which is different dep
ending on what code is being executed in the program), traversing its prototype chain, and then traversing the parent chain.
...when we start executing f, the scope chain will start with the function's activation object and will
end with the top-level scope (see diagram below).
...And 2 more matches
Future directions
for the near future, we do not int
end to provide a stable api, because too many things are changing.
... the public api is gradually moving from jsapi.h and jsfri
endapi.h into header files in js/public.
...for these features: do not add v
endor prefixes.
...And 2 more matches
GCIntegration - SpiderMonkey Redirect 1
this page is int
ended to explain the changes that are happening, with a focus on how they will affect gecko code that uses jsapi.
...at the
end of the gc, any reachable object must have been newly allocated or else reachable at the beginning, since objects can never go from unreachable to reachable.
... the
end result is that all reachable objects are marked.
...And 2 more matches
Statistics API
if a filename is given, data is app
ended to that file.
...mponents.utils.import('resource://gre/modules/services.jsm'); function observer(subject, topic, json) { var data = json.parse(json); // process the data } prefs.set("javascript.options.mem.notify", true); services.obs.addobserver(observer, "garbage-collection-statistics", false); the toplevel json object contains these fields: timestamp: integer (microseconds) - time at which the gc
ended, measured from epoch.
... note: this is the sum of all the slice durations, not
end time - start time.
...And 2 more matches
Tracing JIT
recording mode is temporary -- ideally it only lasts as long as it takes to record a single iteration of a loop in the interpreter -- and can
end in a number of ways.
...this process is called deep aborting the susp
ended recorders.
... the monitor inspects the side exit and, dep
ending on the exit condition, reconstructs a certain number of interpreter frames and flushes a certain set of writes back to the spidermonkey heap.
...And 2 more matches
JSErrorReport
linebuf is a pointer to a user-defined buffer into which js copies the off
ending line of the script.
... tokenptr is a pointer into linebuf that identifies the precise location line of the problem within the off
ending line.
... uclinebuf is a pointer to a user-defined buffer into which js copies the unicode (original) version of the off
ending line of script.
...And 2 more matches
JS_AddFinalizeCallback
callback syntax typedef enum jsfinalizestatus { jsfinalize_group_start, jsfinalize_group_
end, jsfinalize_collection_
end } jsfinalizestatus; typedef void (* jsfinalizecallback)(jsfreeop *fop, jsfinalizestatus status, bool iscompartment, void *data); name type description fop jsfreeop * a pointer to an instance of jsfreeop.
...the collector will not yield to the mutator before calling the callback with jsfinalize_group_
end status.
... jsfinalize_group_
end called when preparing to sweep a group of compartments.
...And 2 more matches
Parser API
example: > var expr = reflect.parse("obj.foo + 42").body[0].expression > expr.left.property ({loc:null, type:"identifier", name:"foo"}) > expr.right ({loc:{source:null, start:{line:1, column:10},
end:{line:1, column:12}}, type:"literal", value:42}) it is also available since firefox 7; it can be imported into the global object via: components.utils.import("resource://gre/modules/reflect.jsm") or into a specified object via: components.utils.import("resource://gre/modules/reflect.jsm", obj) built-in objects whether in spidermonkey shell or firefox (after importing), the global singlet...
...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...
... interface xml
endtag <: xml { type: "xml
endtag"; contents: [ xml ]; } an xml
end tag.
...And 2 more matches
SpiderMonkey 1.8.5
support for ext
ended class methods (in particular, jsequalityop) has been removed.
...this is not a bug, and, any embedding which dep
ends upon deterministic finalization is fatally flawed.
...jsext
endedclass jsext
endedclass has been removed from the api entirely.
...And 2 more matches
Setting up the Gecko SDK
in this app
endix, we set up the windows gecko sdk in c:\gecko-sdk\.
... we also link against a number of libraries in the object/library modules line: nspr4.lib plds4.lib plc4.lib embedstring.lib xpcomglue.lib both of these settings are shown below: the last change you need to make to set up the gecko sdk in your project is to change the "use run-time library" setting to "multithreaded dll." since this change is configuration dep
endent, you must make set the release configuration run-time library to the release multithreaded dll runtime and the debug configuration to the debug multithreaded dll runtime (this needs clarification): after making these changes, press ok.
... this allows you to created the component without s
ending any extra dlls set path=%path%;d:\projects\xulrunner-sdk\sdk\bin;d:\projects\xulrunner-sdk\bin this tells the command prompt where to find the gecko tools, importantly (xpidl, regxpcom, and gmake).
...And 2 more matches
How to build a binary XPCOM component using Visual Studio
you could try to use a different v
endor's compiler, but you are going to need to build the sdk from source code.
...then make the following tweaks: add "..\gecko-sdk\include" to additional include directories add "..\gecko-sdk\lib" to additional library directories add "nspr4.lib xpcom.lib xpcomglue_s.lib" to additional dep
endencies add "xp_win;xp_win32″ to preprocessor definitions turn off precompiled headers (just to keep it simple) use a custom build step for the xpcom idl file (spawns xpidl-build.bat to process the idl with mozilla toolset, not midl) vc++ express project: xpcom-test.zip note: the project uses xpcom_glue.
... it also uses frozen linkage (dep
endent on xpcom).
...And 2 more matches
Observer Notifications
prep
end "service," to the contract id in the category registration to be invoked via getservice() instead of createinstance().
...the data is a string containing a fully qualified url to the main target’s websocket
endpoint.
... if you're using a message manager to communicate with a script that may be running in a different process, you might need to know when the message manager has disconnected from the other
end of the conversation, so you can stop s
ending it messages or expecting to receive messages.
...And 2 more matches
operator+=
« xpcom api reference summary this operator+= is a shortcut for the app
end family of functions.
... self_type& operator+=( const self_type& astring ); parameters astring [in] a nsacstring to app
end to this string.
... self_type& operator+=( const char_type* adata ); parameters adata [in] a raw character array to app
end to this string.
...And 2 more matches
operator=
« xpcom api reference summary this operator= is a shortcut for the app
end family of functions.
... self_type& operator+=( const self_type& astring ); parameters astring [in] a nsastring to app
end to this string.
... self_type& operator=( const char_type* adata ); parameters adata [in] a raw character array to app
end to this string.
...And 2 more matches
nsAString
endreading the
endreading function returns a const char_type pointer to the element just beyond the last element of the string's internal buffer.
... app
end the app
end family of functions app
ends a value to the
end of a string's internal buffer.
... operator+= this operator is a shortcut for the app
end family of functions.
...And 2 more matches
mozIStorageConnection
tefunction afunction); mozistorageasyncstatement createasyncstatement(in autf8string asqlstatement); void createfunction(in autf8string afunctionname, in long anumarguments, in mozistoragefunction afunction); mozistoragestatement createstatement(in autf8string asqlstatement); void createtable(in string atablename, in string atableschema); mozistoragep
endingstatement executeasync([array, size_is(anumstatements)] in mozistoragebasestatement astatements, in unsigned long anumstatements, [optional] in mozistoragestatementcallback acallback ); void executesimplesql(in autf8string asqlstatement); boolean indexexists(in autf8string aindexname); void preload(); obsolete since gecko 1.9 void removefunction(in autf8stri...
... methods asyncclose() asynchronously closes a database connection, allowing all p
ending asynchronous statements to complete first.
... note: due to a bug in sqlite, if you use the shared cache (by calling mozistorageservice.op
endatabase()), the cloned connection's access privileges will be the same as the original connection, regardless of the value you specify for the areadonly parameter.
...And 2 more matches
mozIStorageVacuumParticipant
method overview boolean onbeginvacuum(); void on
endvacuum(in boolean asucceeded); attributes attribute type description databaseconnection mozistorageconnection a connection to the database file to be vacuumed.
...the recomm
ended value is mozistorageconnection::default_page_size.
...once you receive this notification, you should avoid using the database until on
endvacuum() is called.
...And 2 more matches
nsIAppShell
ng starvationdelay); void getnativeevent(in prboolref arealevent, in voidptrref aevent); obsolete since gecko 1.9 void listentoeventqueue(in nsieventqueue aqueue, in prbool alisten); obsolete since gecko 1.9 void resumenative(); void run(); void runinstablestate(in nsirunnable arunnable); void spindown(); obsolete since gecko 1.9 void spinup(); obsolete since gecko 1.9 void susp
endnative(); attributes attribute type description eventloopnestinglevel unsigned long the current event loop nesting level.
...calls to susp
endnative() and resumenative may be nested.
...susp
endnative() susp
ends the use of additional platform-specific methods (besides the nsiappshell->run() event loop) to run gecko events on the main application thread.
...And 2 more matches
nsIAppShellService
up(in nsicmdlineservice acmdlineservice, in boolean caninteract); obsolete since gecko 1.8 void ensure1window(in nsicmdlineservice acmdlineservice); obsolete since gecko 1.8 void enterlastwindowclosingsurvivalarea(); obsolete since gecko 1.8 void exitlastwindowclosingsurvivalarea(); obsolete since gecko 1.8 void gethiddenwindowandjscontext(out nsidomwindow ahidd
endomwindow, out jscontext ajscontext); native code only!
... hidd
endomwindow nsidomwindow return the (singleton) application hidden window, automatically created and maintained by this appshellservice.
...this is useful if you'd like to subsequently call op
endialog on the hidden window.
...And 2 more matches
nsIAutoCompleteInput
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview acstring getsearchat(in unsigned long index); void onsearchbegin(); void onsearchcomplete(); boolean ontextentered(); boolean ontextreverted(); void selecttextrange(in long startindex, in long
endindex); attributes attribute type description completedefaultindex boolean if a search result has its defaultindex set, this will optionally try to complete the text in the textbox to the entire text of the result at the default index as the user types.
... selection
end long the
ending index of the current selection in the text field.
...onsearchcomplete() called when the search
ends successfully.
...And 2 more matches
nsICookieService
dep
ending on the data value, either an nsicookie2 interface pointer representing the cookie object that changed, or an nsiarray of nsicookie2 objects.
...this parameter may be null, but it is strongly recomm
ended that a non-null value be provided to ensure that the cookie privacy preferences are honored.
...this parameter may be null, but it is strongly recomm
ended that a non-null value be provided to ensure that the cookie privacy preferences are honored.
...And 2 more matches
nsIDOMHTMLTimeRanges
each time range represented by an nsidomhtmltimeranges object has an index number; you call the start() and
end() methods to obtain the start and
end times of each range, specifying the index number of the range to look up.
... last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsisupports method overview float start(in unsigned long index); float
end(in unsigned long index); attributes attribute type description length unsigned long the number of ranges represented by the nsidomhtmltimeranges object.
... methods
end() returns the time offset to the
end of the specified time range.
...And 2 more matches
nsIDOMMozNetworkStatsManager
you can test for the presence of the service as follows, for example: if ("moznetworkstats" in navigator) { /* networkstats is available */ } else { alert("i'm sorry, but networkstats services are not supported."); } method overview nsidomdomrequest getsamples(in nsisupports network, in jsval start, in jsval
end, [optional] in jsval options /* networkstatsgetoptions */); nsidomdomrequest addalarm(in nsisupports network, in long threshold, [optional] in jsval options /* networkstatsalarmoptions */); nsidomdomrequest getallalarms([optional] in nsisupports network); nsidomdomrequest removea...
... nsidomdomrequest getsamples(in nsisupports network, in jsval start, in jsval
end, [optional] in jsval options /* networkstatsgetoptions */); parameters network the origin of the data.
...
end a date object representing the
end of data measurement.
...And 2 more matches
nsIDragService
method overview void
enddragsession( in prbool adonedrag ) ; void dragmoved(in long ax, in long ay); native code only!
...
enddragsession() tells the drag service to
end a drag session.
... void
enddragsession( in prbool adonedrag ); parameters adonedrag if adonedrag is true, the drag has finished, otherwise the drag has just left the window.
...And 2 more matches
nsIEditorIMESupport
obsolete since gecko 2.0 void
endcomposition(); obsolete since gecko 2.0 void forcecomposition
end(); void getpreferredimestate(out unsigned long astate); native code only!
...void begincomposition( in nstexteventreplyptr areply ); parameters areply
endcomposition() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) handles the
end of inline input composition.
... void
endcomposition(); parameters none.
...And 2 more matches
nsIEffectiveTLDService
it is not recomm
ended to use this interface for determining whether a given string "is a domain name".
...dep
ends who you ask - for some people it is, others not.
...dep
ends on the age of the copy of the psl you are working with.
...And 2 more matches
nsIFrameMessageManager
you should use nsimessagelistenermanager or nsimessages
ender instead.
... method overview void addmessagelistener(in astring amessage, in nsiframemessagelistener alistener, [optional] in boolean listenwhenclosed); void removemessagelistener(in astring amessage, in nsiframemessagelistener alistener); void s
endasyncmessage(in astring amessage, in astring json); methods addmessagelistener() adds a message listener to the local frame.
... s
endasyncmessage() asynchronously s
ends a message to the listeners.
...And 2 more matches
nsIHttpChannelInternal
using features exposed by this interface is not recomm
ended, as it will change in unpredictable ways.
...this may throw an ns_error_not_available exception if accessed when the channel's
endpoints haven't been determined yet, or any time the nsihttpactivityobserver.isactive attribute is false.
...this may throw an ns_error_not_available exception if accessed when the channel's
endpoints haven't been determined yet, or any time the nsihttpactivityobserver.isactive attribute is false.
...And 2 more matches
nsIMacDockSupport
per/there.is.only.xul', 'menuitem'); macmenuitem.setattribute('label', 'show most recent window'); macmenuitem.setattribute('id', 'mymacmenuitem'); macmenuitem.addeventlistener('command', function(){ var docksupport = cc['@mozilla.org/widget/macdocksupport;1'].getservice(ci.nsimacdocksupport); docksupport.activateapplication(true); services.wm.getmostrecentwindow(null).focus() }) macmenu.app
endchild(macmenuitem); var mainpopupset = win.document.getelementbyid('mainpopupset'); mainpopupset.app
endchild(macmenu); let dockmenuelement = macmenu; //document.getelementbyid("menu_mac_dockmenu");66 let nativemenu = cc["@mozilla.org/widget/standalonenativemenu;1"].createinstance(ci.nsistandalonenativemenu); console.log('dockmenuelement:', dockmenuelement); nativemenu.init(dockmenuelement); doc...
...therefore, if you would like to add or remove items to the menu it is recomm
ended to manipulate the default menu item which is on the hidden window of firefox.
... note: the hidden window of firefox (services.appshel.hidd
endomwindow) loads on browser startup, so if you would like to access it on startup of the browser make sure to check and wait for the window to be loaded.
...And 2 more matches
nsIMutableArray
method overview void app
endelement(in nsisupports element, in boolean weak); void clear(); void insertelementat(in nsisupports element, in unsigned long index, in boolean weak); void removeelementat(in unsigned long index); void replaceelementat(in nsisupports element, in unsigned long index, in boolean weak); methods app
endelement() app
end an element at the
end of the array.
... void app
endelement( in nsisupports element, in boolean weak ); parameters element the element to app
end.
...if the position is equal to the current length of the array, the new element is app
ended.
...And 2 more matches
nsINavBookmarkObserver
66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamonkey 2.18) method overview void onbeforeitemremoved(in long long aitemid, in unsigned short aitemtype, in long long aparentid, in acstring aguid, in acstring aparentguid); obsolete since gecko 21.0 void onbeginupdatebatch(); void on
endupdatebatch(); void onfolderadded(in print64 folder, in print64 parent, in print32 index); obsolete since gecko 1.9 void onfolderchanged(in print64 folder, in acstring property); obsolete since gecko 1.9 void onfoldermoved(in print64 folder, in print64 oldparent, in print32 oldindex, in print64 newparent, in print32 newindex); obsolete since gecko 1.9 void onfol...
...other notifications will be sent during the batch change, but the observer is guaranteed that on
endupdatebatch() will be called at the completion of changes.
...on
endupdatebatch() this method notifies this observer that a batch transaction has
ended.
...And 2 more matches
nsINavHistoryObserver
method overview void onbeforedeleteuri(in nsiuri auri, in acstring aguid); obsolete since gecko 21.0 void onbeginupdatebatch(); void onclearhistory(); void ondeleteuri(in nsiuri auri, in acstring aguid); void ondeletevisits(in nsiuri auri, in prtime avisittime, in acstring aguid); void on
endupdatebatch(); void onpagechanged(in nsiuri auri, in unsigned long awhat, in astring avalue); void onpageexpired(in nsiuri auri, in prtime avisittime, in boolean awholeentry); obsolete since gecko 2.0 void ontitlechanged(in nsiuri auri, in astring apagetitle); void onvisit(in nsiuri auri, in long long avisitid, in prtime atime, in long long asessionid, in long l...
...you should avoid doing any heavy-duty processing until on
endupdatebatch() is called.
...notes the removepagesbyhost() and removepagesbytimeframe() functions call beginupdatebatch() and
endupdatebatch() rather than onclearhistory() or ondeleteuri().
...And 2 more matches
nsIPushSubscription
dom/interfaces/push/nsipushservice.idlscriptable includes information needed to s
end a push message to privileged code.
...s
ending a post request to this url routes the message to the instance of firefox that created the subscription.
... method overview void getkey(in domstring name, [optional] out uint32_t keylen, [array, size_is(keylen), retval] out uint8_t key); bool quotaapplies(); bool isexpired(); attributes attribute type description
endpoint domstring the subscription url.
...And 2 more matches
nsITaskbarPreviewController
dep
ending on whether the controller is connected to an nsitaskbartabpreview or nsitaskbarwindowpreview, only certain methods and attributes need to be implemented.
... method overview boolean drawpreview(in nsidomcanvasr
enderingcontext2d ctx); boolean drawthumbnail(in nsidomcanvasr
enderingcontext2d ctx, in unsigned long width, in unsigned long height); boolean onactivate(); void onclick(in nsitaskbarpreviewbutton button); void onclose(); attributes attribute type description height unsigned long the height in pixels of the preview image.
... methods drawpreview() invoked by nsitaskbarpreview when it needs to r
ender the preview.
...And 2 more matches
nsITelemetry
canrecordext
ended boolean a flag indicating if telemetry is allowed to record ext
ended data.
... returns false if the user has not opted into "ext
ended telemetry" on the release channel, when the user has explicitly opted out of telemetry on nightly/aurora/beta or if manually set to false during tests.
...does not indicate whether telemetry will s
end any data.
...And 2 more matches
nsITransactionManager
inherits from: nsisupports last changed in gecko 1.7 method overview void addlistener(in nsitransactionlistener alistener); void beginbatch(); void clear(); void dotransaction(in nsitransaction atransaction); void
endbatch(); nsitransactionlist getredolist(); nsitransactionlist getundolist(); nsitransaction peekredostack(); nsitransaction peekundostack(); void redotransaction(); void removelistener(in nsitransactionlistener alistener); void undotransaction(); attributes attribute type description maxtransactioncount long sets the maximum number of transaction items the transaction manager will maintain at any...
... beginbatch() turns on the transaction manager's batch mode, forcing all transactions executed by the transaction manager's dotransaction() method to be aggregated together until
endbatch() is called.
... this mode allows an application to execute and group together several indep
endent transactions so they can be undone with a single call to undotransaction().
...And 2 more matches
XPCOM Interface Reference
amemoziasyncfaviconsmoziasynchistorymozicoloranalyzermozijssubscriptloadermozipersonaldictionarymoziplaceinfomoziplacesautocompletemoziregistrymozirepresentativecolorcallbackmozispellcheckingenginemozistorageaggregatefunctionmozistorageasyncstatementmozistoragebindingparamsmozistoragebindingparamsarraymozistoragecompletioncallbackmozistorageconnectionmozistorageerrormozistoragefunctionmozistoragep
endingstatementmozistorageprogresshandlermozistorageresultsetmozistoragerowmozistorageservicemozistoragestatementmozistoragestatementcallbackmozistoragestatementparamsmozistoragestatementrowmozistoragestatementwrappermozistoragevacuumparticipantmozistoragevaluearraymozitxttohtmlconvmozithirdpartyutilmozivisitinfomozivisitinfocallbackmozivisitstatuscallbacknsiabcardnsiaboutmodulensiabstractworkernsiac...
...nsiconverterinputstreamnsiconverteroutputstreamnsicookiensicookie2nsicookieacceptdialognsicookieconsentnsicookiemanagernsicookiemanager2nsicookiepermissionnsicookiepromptservicensicookieservicensicookiestoragensicrashreporternsicryptohmacnsicryptohashnsicurrentcharsetlistenernsicyclecollectorlistenernsidbchangelistenernsidbfolderinfonsidnslistenernsidnsrecordnsidnsrequestnsidnsservicensidomcanvasr
enderingcontext2dnsidomchromewindownsidomclientrectnsidomdesktopnotificationnsidomdesktopnotificationcenternsidomelementnsidomeventnsidomeventgroupnsidomeventlistenernsidomeventtargetnsidomfilensidomfileerrornsidomfileexceptionnsidomfilelistnsidomfilereadernsidomfontfacensidomfontfacelistnsidomgeogeolocationnsidomgeopositionnsidomgeopositionaddressnsidomgeopositioncallbacknsidomgeopositioncoordsnsido...
...eservicensilogininfonsiloginmanagernsiloginmanagercryptonsiloginmanageriemigrationhelpernsiloginmanagerprompternsiloginmanagerstoragensiloginmetainfonsimimeinputstreamnsimacdocksupportnsimarkupdocumentviewernsimemorynsimemorymultireporternsimemorymultireportercallbacknsimemoryreporternsimemoryreportermanagernsimenuboxobjectnsimessagebroadcasternsimessagelistenernsimessagelistenermanagernsimessages
endernsimessagewakeupservicensimessengernsimicrosummarynsimicrosummarygeneratornsimicrosummaryobservernsimicrosummaryservicensimicrosummarysetnsimimeconverternsimimeheadersnsimodulensimsgaccountnsimsgaccountmanagerextensionnsimsgcompfieldsnsimsgcustomcolumnhandlernsimsgdbhdrnsimsgdbviewnsimsgdbviewcommandupdaternsimsgdatabasensimsgfilternsimsgfiltercustomactionnsimsgfilterlistnsimsgfoldernsimsgheader...
...And 2 more matches
Performance
mozstorage uses sqlite as the database back
end.
...some operations require walking this queue to see what operations have been p
ending, and they will be slower.
...in the past, it flushed the cache at the
end of a transaction (by default).
...And 2 more matches
Storage
opening a connection javascript example of opening my_db_file_name.sqlite in the profile directory: components.utils.import("resource://gre/modules/services.jsm"); components.utils.import("resource://gre/modules/fileutils.jsm"); let file = fileutils.getfile("profd", ["my_db_file_name.sqlite"]); let dbconn = services.storage.op
endatabase(file); // will also create the file if it does not exist likewise, the c++ would look like this: nscomptr<nsifile> dbfile; rv = ns_getspecialdirectory(ns_app_user_profile_50_dir, getter_addrefs(dbfile)); ns_ensure_success(rv, rv); rv = dbfile->app
end(ns_literal_string("my_db_file_name.sqlite")); ns_ensure_success(rv, rv); nscomptr<mozistorageservice> dbservic...
...e = do_getservice(moz_storage_service_contractid, &rv); ns_ensure_success(rv, rv); nscomptr<mozistorageconnection> dbconn; rv = dbservice->op
endatabase(dbfile, getter_addrefs(dbconn)); ns_ensure_success(rv, rv); note: moz_storage_service_contractid is defined in storage/build/mozstoragecid.h.
... warning: it may be tempting to give your database a name
ending in '.sdb' for sqlite database, but this is not recomm
ended.
...And 2 more matches
Reference Manual
getter_doesnt_addref had complex ramifications that
ended up making nscomptrs either bigger or slower than raw xpcom interface pointers.
...even if you don't follow these suggestions, your nscomptr code may still
end up smaller, or at worst only negligibly bulkier than the raw pointer version.
... see code bloat [long, summary at top] for details, though the recomm
endations from that document are re-iterated here.
...And 2 more matches
Weak reference
after all, the observable must s
end messages to each observer, notifying it of the appropriate state changes.
...this technique can significantly simplify certain relationships, and you should consider it when an owning reference is inappropriate, but where a raw pointer might
end up dangling.
...the weak reference doesn't artificially ext
end the life of the observer, and yet, it can never dangle.
...And 2 more matches
XPCOM
to this
end, there exist xpcom interfaces to read and write registry data.
...since binary components are linked against a single gecko sdk, a dep
endency to a particular version of gecko is created.
...however, such decoders relied on servers s
ending correct mime types; images sent with incorrect mime types would not be correctly displayed.xpcom gluethe xpcom glue is a static library which component developers and embedders can link against.
...And 2 more matches
Autoconfiguration in Thunderbird
in many cases, people should be able to download and install thunderbird, enter their real name, email address and password in the account setup wizard and have a fully functioning mail client and get and s
end their mail as securely as possible.
... mechanisms thunderbird gets the server settings via different means, each of which is int
ended for different cases: ispdb the ispdb is a central database, currently hosted by the thunderbird project, but free to use for any client.
...this is mainly int
ended for companies who install thunderbird on their employees' computers and want to enable easy account setup without having to set up a configuration server.
...And 2 more matches
Add to iPhoto
ndation.init(); carbon.init(); appservices.init(); // download the image var filepath = this.downloadimage(src); var mutablearray = corefoundation.cfarraycreatemutable(null, 1, corefoundation.kcftypearraycallbacks.address()); if (mutablearray) { var url = corefoundation.cfurlcreatefromfilesystemrepresentation(null, filepath, filepath.length, false); corefoundation.cfarrayapp
endvalue(mutablearray, url); corefoundation.cfrelease(url); // call launch services to open iphoto and deliver the image var ref = new carbon.struct_fsref; var appparams = appservices.struct_lsapplicationparameters(0, 1, ref.address(), null, null, null, null); var appstr = "file:///applications/iphoto.app"; var appstrcf = corefoundation.cfstringcreatewithcharacters(null, ap...
... the array is then built by using cfarrayapp
endvalue() to add the new cfurl to the array.
... if that fails, we display an error; otherwise, we cast the cfmutablearrayref into a cfarrayref by calling ctypes.cast(), then call lsopenurlswithrole() to actually s
end the image to iphoto.
...And 2 more matches
Plugin Roadmap for Firefox - Plugins
the last remaining npapi plugin, adobe flash, has announced an
end-of-life plan.
...firefox ext
ended support release 52 will continue to support non-flash plugins until early 2018.
...adobe will stop shipping security updates for flash at the
end of 2020.
...And 2 more matches
Debugger.Frame - Firefox Developer Tools
what constitutes “a small amount of progress” varies dep
ending on the implementation, but it is fine-grained enough to implement useful “step” and “next” behavior.
...(in the terms used by the ecmascript specification, the variableenvironment of the execution context for the eval code is the variableenvironment of the execution context that this frame represents.) if implementation restrictions prevent spidermonkey from ext
ending this frame’s environment as requested, this call throws an error exception.
... evalwithbindings(code,bindings, [options]) like eval, but evaluatecode in the environment of this frame, ext
ended with bindings from the objectbindings.
...And 2 more matches
All keyboard shortcuts - Firefox Developer Tools
because access keys are locale-dep
endent, they're not documented in this page.
...
end end end expand currently selected node right arrow right arrow right arrow collapse currently selected node left arrow left arrow left arrow (when a node is selected) move inside the node so you can start stepping through attributes.
... command windows macos linux scroll to start of console output (only if the command line is empty) home home home scroll to
end of console output (only if the command line is empty)
end end end page up through console output page up page up page up page down through console output page down page down page down go backward through command history up arrow up arrow up arrow go forward through command history down arrow down arrow down arrow ...
...And 2 more matches
Responsive Design Mode - Firefox Developer Tools
on the right
end of the screen, three buttons allow you to: camera button - take a screenshot settings button - opens the rdm settings menu close button - closes rdm mode and returns to regular browsing the settings menu includes the following commands: left-align viewport - when checked moves the rdm viewport to the left side of the browser window show user agent - when checked displays the user age...
...for example: developer toolbox with rdm you can show or hide the developer tools toolbox indep
endently of toggling responsive design mode itself: while responsive design mode is enabled, you can continue browsing as you normally would in the resized content area.
...select a device, and responsive design mode sets the following properties to match the selected device: screen size device pixel ratio (the ratio of device physical pixels to device-indep
endent pixels) touch event simulation additionally, firefox sets the user-agent http request header to identify itself as the default browser on the selected device.
...And 2 more matches
CSS Object Model (CSSOM) - Web APIs
le 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 ext
ended by the cssom-related specifications: document, window, element, htmlelement, htmlimageelement, range, mouseevent, and svgelement.
... managing screen orientation specifications specification status comment css typed om level 1 working draft css painting api level 1 working draft ext
ended the css interface with the paintworklet static property.
... css object model (cssom) working draft ext
ended the css interface and provides the base for the modern cssom specification.
...And 2 more matches
ChildNode.after() - Web APIs
examples inserting an element var parent = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); var span = document.createelement("span"); child.after(span); console.log(parent.outerhtml); // "<div><p></p><span></span></div>" inserting text var parent = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); child.after("text"); console.log(parent.outerhtml); // "<div><p></p>text</div>" inserting an element and text var parent...
... = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); var span = document.createelement("span"); child.after(span, "text"); console.log(parent.outerhtml); // "<div><p></p><span></span>text</div>" childnode.after() is unscopable the after() method is not scoped into the with statement.
...) { return; } object.defineproperty(item, 'after', { configurable: true, enumerable: true, writable: true, value: function after() { var argarr = array.prototype.slice.call(arguments), docfrag = document.createdocumentfragment(); argarr.foreach(function (argitem) { var isnode = argitem instanceof node; docfrag.app
endchild(isnode ?
...And 2 more matches
Client.postMessage() - Web APIs
the postmessage() method of the client interface allows a service worker to s
end a message to a client (a window, worker, or sharedworker).
... syntax client.postmessage(message[, transfer]); client.postmessage(message[, { transfer }]); parameters message the message to s
end to the client.
...the ownership of these objects is given to the destination side and they are no longer usable on the s
ending side.
...And 2 more matches
Constraint validation API - Web APIs
extensions to other interfaces the constraint validation api ext
ends 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 obje...
...others may be barred from constraint validation dep
ending on specific conditions.
...try again!'); } }); the example r
enders like so: in brief: we check the valid state of the input element every time its value is changed by running the checkvalidity() method via the input event handler.
...And 2 more matches
DOMHighResTimeStamp - Web APIs
reduced time precision to offer protection against timing attacks and fingerprinting, the precision of time stamps might get rounded dep
ending on browser settings.
... recomm
endation stricter definitions of interfaces and types.
... recomm
endation initial definition.
...And 2 more matches
DataTransfer.clearData() - Web APIs
ntloaded', function () { // select html elements var draggable = document.getelementbyid('source'); var dropable = document.getelementbyid('target'); var status = document.getelementbyid('status'); var data = document.getelementbyid('data'); var dropped = false; // register event handlers draggable.addeventlistener('dragstart', dragstarthandler); draggable.addeventlistener('drag
end', drag
endhandler); dropable.addeventlistener('dragover', dragoverhandler); dropable.addeventlistener('dragleave', dragleavehandler); dropable.addeventlistener('drop', drophandler); function dragstarthandler (event) { status.innerhtml = 'drag in process'; // change target element's border to signify drag has started event.currenttarget.style.border = '1px dashed blue'; /...
... event.datatransfer.cleardata(); // set the drag's format and data (use event target's id for data) event.datatransfer.setdata('text/plain', event.target.id); data.innerhtml = event.datatransfer.getdata('text/plain'); } function drag
endhandler (event) { if (!dropped) { status.innerhtml = 'drag canceled'; } data.innerhtml = event.datatransfer.getdata('text/plain') || 'empty'; // change border to signify drag is no longer in process event.currenttarget.style.border = '1px solid black'; if (dropped) { // remove all event listeners draggable.removeeventlistener('dragstart', dragstarthandler); draggable.removeevent...
...listener('drag
end', drag
endhandler); dropable.removeeventlistener('dragover', dragoverhandler); dropable.removeeventlistener('dragleave', dragleavehandler); dropable.removeeventlistener('drop', drophandler); } } function dragoverhandler (event) { status.innerhtml = 'drop available'; event.preventdefault(); } function dragleavehandler (event) { status.innerhtml = 'drag in process (drop was available)'; event.preventdefault(); } function drophandler (event) { dropped = true; status.innerhtml = 'drop done'; event.preventdefault(); // get data linked to event format « text » var _data = event.datatransfer.getdata('text/plain'); var element = document.getelementbyid(_data); // app
end drag source element to eve...
...And 2 more matches
DataTransferItem.webkitGetAsEntry() - Web APIs
let dropzone = document.getelementbyid("dropzone"); let listing = document.getelementbyid("listing"); function scanfiles(item, container) { let elem = document.createelement("li"); elem.innerhtml = item.name; container.app
endchild(elem); if (item.isdirectory) { let directoryreader = item.createreader(); let directorycontainer = document.createelement("ul"); container.app
endchild(directorycontainer); directoryreader.readentries(function(entries) { entries.foreach(function(entry) { scanfiles(entry, directorycontainer); }); }); } } scanfiles() begins by creating a new <li...
...> element to represent the item being scanned, inserts the name of the item into it as its text content, and then app
ends it to the container.
...then a new <ul> is created and app
ended to the parent list; this will contain the directory's contents in the next level down in the list's hierarchy.
...And 2 more matches
DedicatedWorkerGlobalScope.postMessage() - Web APIs
the postmessage() method of the dedicatedworkerglobalscope interface s
ends a message to the main thread that spawned it.
... this accepts a single parameter, which is the data to s
end to the worker.
... the main scope that spawned the worker can s
end back information to the thread that spawned it using the worker.postmessage method.
...And 2 more matches
DirectoryReaderSync - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetdirectoryreadersync non-standardchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support 79prefixed full support 79prefixed prefixed implemented with the v
endor prefix: webkitfirefox no support noie no support noopera no support nosafari no supp...
...ort nowebview android full support 37prefixed full support 37prefixed prefixed implemented with the v
endor prefix: webkitchrome android full support 18prefixed full support 18prefixed prefixed implemented with the v
endor prefix: webkitfirefox android no support noopera android no support nosafari ios no support nosamsung internet android full support 1.0prefixed full support ...
...And 2 more matches
Document.cookie - Web APIs
;max-age=max-age-in-seconds (e.g., 60*60*24*365 or 31536000 for a year) ;expires=date-in-gmtstring-format if neither expires nor max-age specified it will expire at the
end of session.
... ;samesite samesite prevents the browser from s
ending this cookie along with cross-site requests.
... the lax value value will s
end the cookie for all same-site requests and top-level navigation get requests.
...And 2 more matches
Introduction to the DOM - Web APIs
many browsers ext
end the standard, so care must be exercised when using them on the web where documents may be accessed by various browsers with different doms.
...the page content is stored in the dom and may be accessed and manipulated via javascript, so that we may write this approximative equation: api = dom + javascript the dom was designed to be indep
endent of any particular programming language, making the structural representation of the document available from a single, consistent api.
... element, and then adds the h1 to the tree for this document: <html> <head> <script> // run this function when the document is loaded window.onload = function() { // create a couple of elements in an otherwise empty html page const heading = document.createelement("h1"); const heading_text = document.createtextnode("big head!"); heading.app
endchild(heading_text); document.body.app
endchild(heading); } </script> </head> <body> </body> </html> fundamental data types this reference tries to describe the various objects and types in simple terms.
...And 2 more matches
EffectTiming.direction - Web APIs
the direction property of the web animations api dictionary effecttiming indicates an animation's playback direction along its timeline, as well as its behavior when it reaches the
end of an iteration element.animate(), keyframeeffectreadonly(), and keyframeeffect() all accept an object of timing properties including direction.
... syntax var timingproperties = { direction: "normal" | "reverse" | "alternate" | "alternate-reverse" }; timingproperties.direction = "normal" | "reverse" | "alternate" | "alternate-reverse"; value a domstring which specifies the direction in which the animation should play as well as what to do when the playback reaches the
end of the animation sequence in the current direction.
... it can take one of the following values, with the default being "normal": "normal" the animation runs forwards, from beginning to
end, in the way we experience the flow of time.
...And 2 more matches
Element.getAnimations() - Web APIs
it can optionally return animation objects for desc
endant elements too.
... syntax const animations = element.getanimations(options); parameters options optional an options object containing the following property: subtree a boolean value which, if true, causes animations that target desc
endants of element to be returned as well.
... this includes animations that target any css pseudo-elements attached to element or one of its desc
endents.
...And 2 more matches
Element.innerHTML - Web APIs
syntax const content = element.innerhtml; element.innerhtml = htmlstring; value a domstring containing the html serialization of the element's desc
endants.
... setting the value of innerhtml removes all of the element's desc
endants and replaces them with nodes constructed by parsing the html given in the string htmlstring.
... reading the html contents of an element reading innerhtml causes the user agent to serialize the html or xml fragment comprised of the element's desc
endants.
...And 2 more matches
Element.insertAdjacentHTML() - Web APIs
'before
end': just inside the element, after its last child.
... 'after
end': after the element itself.
... visualization of position names <!-- beforebegin --> <p> <!-- afterbegin --> foo <!-- before
end --> </p> <!-- after
end --> note: the beforebegin and after
end positions work only if the node is in the dom tree and has a parent element.
...And 2 more matches
Element.querySelector() - Web APIs
the queryselector() method of the element interface returns the first element that is a desc
endant of the element on which it is invoked that matches the specified group of selectors.
... syntax element = baseelement.queryselector(selectors); parameters selectors a group of selectors to match the desc
endant elements of the element baseelement against; this must be valid css syntax, or a syntaxerror exception will occur.
... return value the first desc
endant element of baseelement which matches the specified group of selectors.
...And 2 more matches
EventSource - Web APIs
an eventsource instance opens a persistent connection to an http server, which s
ends events in text/event-stream format.
...that makes them an excellent choice when there's no need to s
end data from the client to the server in message form.
... additionally, the event source itself may s
end messages with an event field, which will create ad-hoc events keyed to that value.
...And 2 more matches
File.webkitRelativePath - Web APIs
"filelist" webkitdirectory multiple /> <ul id="listing"></ul> javascript content document.getelementbyid("filepicker").addeventlistener("change", function(event) { let output = document.getelementbyid("listing"); let files = event.target.files; for (let i=0; i<files.length; i++) { let item = document.createelement("li"); item.innerhtml = files[i].webkitrelativepath; output.app
endchild(item); }; }, false); result specifications specification status comment file and directory entries apithe definition of 'webkitrelativepath' in that specification.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetwebkitrelativepathchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support 13firefox full support 49ie no support noopera no support nosafari full support 11.1webview android full support yeschrome android ...
...And 2 more matches
FileEntrySync - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetfileentrysync non-standardchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support ≤79prefixed full support ≤79prefixed prefixed implemented with the v
endor prefix: webkitfirefox no support noie no support noopera no support nosafari no supp...
...ort nowebview android full support 37prefixed full support 37prefixed prefixed implemented with the v
endor prefix: webkitchrome android full support 18prefixed full support 18prefixed prefixed implemented with the v
endor prefix: webkitfirefox android no support noopera android no support nosafari ios no support nosamsung internet android full support 1.0prefixed full support ...
...And 2 more matches
FileException - Web APIs
it ext
ends the fileexception interface described in file writer and adds several new error codes.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetfileexception deprecatednon-standardchrome no support 13 — 29prefixed no support 13 — 29prefixed prefixed implemented with the v
endor prefix: webkitedge no support nofirefox no support noie no support noopera no support nosafari no support nowebview android no support nochrome android no support ...
...And 2 more matches
FileSystem - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...e full support 7alternate name full support 7alternate name alternate name uses the non-standard name: domfilesystemedge full support ≤18prefixed notes full support ≤18prefixed notes prefixed implemented with the v
endor prefix: webkitnotes edge only supports this api in drag-and-drop scenarios using the the datatransferitem.webkitgetasentry() method.
...s (such as when you use an <input> element with the htmlinputelement.webkitdirectory attribute.firefox full support 50ie no support noopera full support 15prefixed full support 15prefixed prefixed implemented with the v
endor prefix: webkitsafari full support 11.1webview android full support ≤37alternate name full support ≤37alternate name alternate name uses the non-standard name: domfilesystemchrome android full support 18alternate ...
...And 2 more matches
FileSystemDirectoryEntry - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...experimentalchrome full support 8alternate name full support 8alternate name alternate name uses the non-standard name: directoryentryedge full support 79prefixed full support 79prefixed prefixed implemented with the v
endor prefix: webkitfirefox full support 50ie no support noopera full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitsafari full support ...
... full support 50opera android no support nosafari ios full support 11.3samsung internet android full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitcreatereader experimentalchrome full support 13edge full support 79firefox full support 50ie no support noopera no support nosafari full suppo...
...And 2 more matches
FileSystemDirectoryReader.readEntries() - Web APIs
let dropzone = document.getelementbyid("dropzone"); let listing = document.getelementbyid("listing"); function scanfiles(item, container) { let elem = document.createelement("li"); elem.innerhtml = item.name; container.app
endchild(elem); if (item.isdirectory) { let directoryreader = item.createreader(); let directorycontainer = document.createelement("ul"); container.app
endchild(directorycontainer); directoryreader.readentries(function(entries) { entries.foreach(function(entry) { scanfiles(entry, directorycontainer); }); }); } } scanfiles() begins by creating a new <li...
...> element to represent the item being scanned, inserts the name of the item into it as its text content, and then app
ends it to the container.
...then a new <ul> is created and app
ended to the parent list; this will contain the directory's contents in the next level down in the list's hierarchy.
...And 2 more matches
FileSystemDirectoryReader - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤18alternate name alternate name uses the non-standard name: webkitdirectoryreaderfirefox full support 50ie no support noopera full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitsafari full support 11.1webview android full support ≤37alternate name full support ≤37alternate name alternate name uses the non-standard name: directoryreaderchrome android full support 18alternat...
... full support 50opera android no support nosafari ios full support 11.3samsung internet android full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitreadentries deprecatednon-standardchrome full support 8edge ?
...And 2 more matches
Using the Gamepad API - Web APIs
performing such checks t
ends to involve using the gamepad object in conjunction with an animation loop (e.g., requestanimationframe), where developers want to make decisions for the current frame based on the state of the gamepad or gamepads.
...this is not strictly specified, but in firefox it will contain three pieces of information separated by dashes (-): two 4-digit hexadecimal strings containing the usb v
endor and product id of the controller, and the name of the controller as provided by the driver.
... this information is int
ended to allow you to find a mapping for the controls on the device as well as display useful feedback to the user.
...And 2 more matches
HTMLButtonElement - Web APIs
if the button is a desc
endant of a form element, then this attribute is the id of that form element.
... if the button is not a desc
endant of a form element, then the attribute can be the id of any form element in the same document it is related to, or the null value if none matches.
... recomm
endation the menu attribute and type="menu" value have been removed.
...And 2 more matches
HTMLCanvasElement - Web APIs
the purpose of mozprintcallback is to obtain a higher resolution r
endering of the canvas at the resolution of the printer being used.
...calling getcontext with "2d" returns a canvasr
enderingcontext2d object, whereas calling it with "webgl" (or "experimental-webgl") returns a webglr
enderingcontext object.
... webglcontextcreationerror fired if the user agent is unable to create a webglr
enderingcontext or webgl2r
enderingcontext context.
...And 2 more matches
HTMLElement: transitioncancel event - Web APIs
ass="message"></div> .transition { width: 100px; height: 100px; background: rgba(255,0,0,1); transition-property: transform background; transition-duration: 2s; transition-delay: 2s; } .transition:hover { transform: rotate(90deg); background: rgba(255,0,0,0); } to this, we'll add some javascript to indicate that the transitionstart, transitionrun, transitioncancel and transition
end events fire.
... in this example, to cancel the transition, stop hovering over the transitioning box before the transition
ends.
... for the transition
end event to fire, stay hovered over the transition until the transition
ends.
...And 2 more matches
HTMLFormElement - Web APIs
this returns an htmlformcontrolscollection listing all of the form's user data entry elements, both those which are desc
endants of the <form> and those which are made members of the form using their form attributes.
... <input name="elements"> will r
ender the form’s elements collection inaccessible.
... examples creating a new form element, modifying its attributes, then submitting it: const f = document.createelement("form"); // create a form document.body.app
endchild(f); // add it to the document body f.action = "/cgi-bin/some.cgi"; // add action and method attributes f.method = "post"; f.submit(); // call the form's submit() method extract information from a <form> element and set some of its attributes: <form name="forma" action="/cgi-bin/test" method="post"> <p>press "info" for form details, or "...
...And 2 more matches
HTMLImageElement.decode() - Web APIs
the decode() method of the htmlimageelement interface returns a promise that resolves when the image is decoded and it is safe to app
end the image to the dom.
... this can be used to initiate loading of the image prior to attaching it to an element in the dom (or adding it to the dom as a new element), so that the image can be r
endered immediately upon being added to the dom.
... this, in turn, prevents the r
endering of the next frame after adding the image to the dom from causing a delay while the image loads.
...And 2 more matches
HTMLImageElement.height - Web APIs
the height property of the htmlimageelement interface indicates the height at which the image is drawn, in css pixels if the image is being drawn or r
endered to any visual medium such as the screen or a printer; otherwise, it's the natural, pixel density corrected height of the image.
...the terms in which the height is defined dep
ends on whether the image is being r
endered to a visual medium or not.
... if the image is being r
endered to a visual medium such as a screen or printer, the height is expressed in css pixels.
...And 2 more matches
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 r
endered to any visual medium such as the screen or a printer; otherwise, it's the natural, pixel density corrected width of the image.
...the terms in which the width is defined dep
ends on whether the image is being r
endered to a visual medium or not.
... if the image is being r
endered to a visual medium such as a screen or printer, the width is expressed in css pixels.
...And 2 more matches
HTMLInputElement.setRangeText() - Web APIs
syntax element.setrangetext(replacement); element.setrangetext(replacement, start,
end [, selectmode]); parameters replacement the string to insert.
...
end optional the 0-based index of the character after the last character to replace.
... defaults to the current selection
end value (the
end of the user's current selection).
...And 2 more matches
IDBRequest.source - Web APIs
recomm
endation indexed database api draftthe definition of 'source' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBRequest.transaction - Web APIs
recomm
endation indexed database api draftthe definition of 'transaction' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBTransaction.objectStore() - Web APIs
recomm
endation indexed database api draftthe definition of 'objectstore()' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBTransaction.onabort - Web APIs
recomm
endation indexed database api draftthe definition of 'onabort' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBTransaction.oncomplete - Web APIs
recomm
endation indexed database api draftthe definition of 'oncomplete' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBTransaction.onerror - Web APIs
recomm
endation indexed database api draftthe definition of 'onerror' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
IDBVersionChangeRequest - Web APIs
the new way to do it is to use the idbop
endbrequest interface which has now the onblocked handler and the newly needed onupgradeneeded one.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetidbversionchangerequest deprecatednon-standardchrome no support 12 — 23prefixed no support 12 — 23prefixed prefixed implemented with the v
endor prefix: webkitedge ?
...And 2 more matches
Basic concepts - Web APIs
indexeddb is useful for applications that store a large amount of data (for example, a catalog of dvds in a l
ending library) and applications that don't need persistent internet connectivity to work (for example, mail clients, to-do lists, and notepads).
...the result property is particularly magical, as it can be many different things, dep
ending on how the request was generated (for example, an idbcursor instance, or the key for a value that you just inserted into the database).
...records within an object store are sorted according to the keys in an asc
ending order.
...And 2 more matches
MediaSource - Web APIs
mediasource.readystate read only returns an enum representing the state of the current mediasource, whether it is not currently attached to a media element (closed), attached and ready to receive sourcebuffer objects (open), or attached but the stream has been
ended via mediasource.
endofstream() (
ended.) mediasource.duration gets and sets the duration of the current media being presented.
... mediasource.onsource
ended the event handler for the source
ended event.
... mediasource.
endofstream() signals the
end of the stream.
...And 2 more matches
Metadata - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetmetadata experimentalnon-standardchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support ≤79prefixed full support ≤79prefixed prefixed implemented with the v
endor prefix: webkitfirefox no support noie no support noopera no support nosafari ...
...no support nowebview android no support nochrome android full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitfirefox android no support noopera android no support nosafari ios no support nosamsung internet android full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitmodificationtime experimentalnon-standardchrome ...
...And 2 more matches
Navigation Timing API - Web APIs
examples calculate the total page load time to compute the total amount of time it took to load the page, you can use the following code: const perfdata = window.performance.timing; const pageloadtime = perfdata.loadevent
end - perfdata.navigationstart; this subtracts the time at which navigation began (navigationstart) from the time at which the load event handler returns (loadevent
end).
... calculate request response time you can calculate the time elapsed between the beginning of a request and the completion of getting the response using code like this: const connecttime = perfdata.response
end - perfdata.requeststart; here, the time at which the request was initiated (requeststart).
... from the time at which the response was finished being received (response
end).
...And 2 more matches
OES_texture_float - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext
ended methods this extension ext
ends webglr
enderingcontext.teximage2d() and webglr
enderingcontext.texsubimage2d(): the type parameter now accepts gl.float.
...if you set the magnification or minification filter in the webglr
enderingcontext.texparameter() method to one of gl.linear, gl.linear_mipmap_nearest, gl.nearest_mipmap_linear, or gl.linear_mipmap_linear, and use floating-point textures, the texture will be marked as incomplete.
...And 2 more matches
OES_texture_half_float - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext
ended methods this extension ext
ends webglr
enderingcontext.teximage2d() and webglr
enderingcontext.texsubimage2d(): the type parameter now accepts ext.half_float_oes.
...if you set the magnification or minification filter in the webglr
enderingcontext.texparameter() method to one of gl.linear, gl.linear_mipmap_nearest, gl.nearest_mipmap_linear, or gl.linear_mipmap_linear, and use half floating-point textures, the texture will be marked as incomplete.
...And 2 more matches
OVR_multiview2 - Web APIs
the ovr_multiview2 extension is part of the webgl api and adds support for r
endering into multiple views simultaneously.
... for more information, see also: multiview on webxr three.js multiview demo multiview in babylon.js optimizing virtual reality: understanding multiview multiview webgl r
endering for oculus browser 6.0+ webgl extensions are available using the webglr
enderingcontext.getextension() method.
... availability: support dep
ends on the system's graphics driver (windows+angle and android are supported; windows+gl, mac, linux are not supported).
...And 2 more matches
Path2D - Web APIs
the path2d interface of the canvas 2d api is used to declare a path that can then be used on a canvasr
enderingcontext2d object.
... the path methods of the canvasr
enderingcontext2d interface are also present on this interface, which gives you the convenience of being able to retain and replay your path whenever desired.
...the first two points are control points and the third one is the
end point.
...And 2 more matches
Using the Payment Request API - Web APIs
customizing the payment button one useful technique to employ is customizing the payment request button dep
ending on whether users can make payments.
... in the following snippet we do just this — dep
ending on whether the user can make a fast payment or needs to add payment credentials first, the title of the checkout button changes between "fast checkout with w3c" and "setup w3c checkout".
... recomm
ending a payment app when user has no apps if you select to pay with the bobpay demo payment provider on this merchant page, it tries to call paymentrequest.show(), while intercepting the notsupportederr exception.
...And 2 more matches
performance.measure() - Web APIs
when measuring between two marks, there is a start mark and
end mark, respectively.
... duration - set to a domhighrestimestamp that is the duration of the measure (typically, the
end mark timestamp minus the start mark timestamp).
... syntax performance.measure(name); performance.measure(name, startmark); performance.measure(name, startmark,
endmark); performance.measure(name, undefined,
endmark); arguments name a domstring representing the name of the measure.
...And 2 more matches
PublicKeyCredentialCreationOptions.user - Web APIs
syntax useraccount = publickeycredentialcreationoptions.user properties displayname a domstring which is human readable and int
ended for display.
...this is not int
ended to store the login of the user (see name below).
..."jdoe@example.com").this property is int
ended for display and may be use to distinguish different account with the same displayname.
...And 2 more matches
PushManager.unregister() - Web APIs
the unregister() method was used to ask the system to unregister and delete the specified
endpoint.
... syntax var request = navigator.push.unregister(push
endpoint); properties push
endpoint a push
endpoint to be unregistered.
... if the method call is successful, the request's result will be a pushregistration object representing the
endpoint that has been unregistered.
...And 2 more matches
Push API - Web APIs
the resulting pushsubscription includes all the information that the application needs to s
end a push message: an
endpoint and the encryption key needed for s
ending data.
... the
endpoint for the subscription is a unique capability url: knowledge of the
endpoint is all that is necessary to s
end a message to your application.
... the
endpoint url therefore needs to be kept secret, or other applications might be able to s
end push messages to your application.
...And 2 more matches
RTCConfiguration - Web APIs
if the remote
endpoint is bundle-aware, all media tracks and data channels are bundled onto a single transport at the completion of negotiation, regardless of policy used, and any superfluous transports that were created initially are closed at that point.
...if the remote
endpoint is not bundle-aware, then each of these dtls transports then handles all the communication for one type of data.
...if the remote
endpoint is not bundle-aware, everything is negotiated on these separate dtls transports.
...And 2 more matches
RTCDtlsTransport.state - Web APIs
examples this example presents a function, tallys
enders(), which iterates over an rtcpeerconnection's rtcrtps
enders, tallying up how many of them are in various states.
... the function returns an object containing properties whose values indicate how many of the s
enders are in each state.
...*/ function tallys
enders(pc) { let results = { transportmissing: 0, connectionp
ending: 0, connected: 0, closed: 0, failed: 0, unknown: 0 }; let s
enderlist = pc.gets
enders(); s
enderlist.foreach(s
ender => { let transport = s
ender.transport; if (!transport) { results.transportmissing++; } else { switch(transport.state) { case "new": case "connecting": results.connectionp
ending++; break; case "connected": results.connected++; break; case "closed": results.closed++; break; case "failed": results.failed++; break; default: results.unknow...
...And 2 more matches
RTCIceCandidatePair.local - Web APIs
the local property of the rtcicecandidatepair dictionary specifies the rtcicecandidate which describes the configuration of the local
end of a viable webrtc connection.
... syntax localcandidate = rtcicecandidatepair.local; value an rtcicecandidate which describes the configuration of the local
end of a viable pair of ice candidates.
... var candidatepair = pc.gets
enders()[0].transport.transport.getselectedcandidatepair(); var localcandidate = candidatepair.local; the rtcicetransport is found by getting the list of rtcrtps
ender objects for the rtcpeerconnection pc.
...And 2 more matches
RTCIceCandidatePair.remote - Web APIs
the remote property of the rtcicecandidatepair dictionary specifies the rtcicecandidate describing the configuration of the remote
end of a viable webrtc connection.
... syntax remotecandidate = rtcicecandidatepair.remote; value an rtcicecandidate which describes the configuration of the remote
end of a viable pair of ice candidates.
... var candidatepair = pc.gets
enders()[0].transport.transport.getselectedcandidatepair(); var remotecandidate = candidatepair.remote; the rtcicetransport is found by getting the list of rtcrtps
ender objects for the rtcpeerconnection pc.
...And 2 more matches
RTCIceCandidatePair - Web APIs
the rtcicecandidatepair dictionary describes a pair of ice candidates which together comprise a description of a viable connection between two webrtc
endpoints.
... properties local an rtcicecandidate describing the configuration of the local
end of the connection.
... remote the rtcicecandidate describing the configuration of the remote
end of the connection.
...And 2 more matches
RTCIceTransport.getSelectedCandidatePair() - Web APIs
the rtcicetransport method getselectedcandidatepair() returns an rtcicecandidatepair object containing the current best-choice pair of ice candidates describing the configuration of the
endpoints of the transport.
... return value a rtcicecandidatepair object describing the configurations of the currently-selected candidate pair's two
endpoints.
... local describes the configuration of the local
end of the connection, while remote describes the remote peer's configuration.
...And 2 more matches
RTCIceTransport: selectedcandidatepairchange event - Web APIs
a selectedcandidatepairchange event is sent to an rtcicetransport when the ice agent selects a new pair of candidates that describe the
endpoints of a viable connection.
... the pair of candidates is in turn described by an rtcicecandidatepair object which contains one rtcicecandidate representing the local
end of the connection, and another representing the remote
end of the connection.
... let icetransport = pc.gets
enders[0].transport.icetransport; let localprotoelem = document.getelementbyid("local-protocol"); let remoteprotoelem = document.getelementbyid("remote-protocol"); icetransport.addeventlistener("selectedcandidatepairchange", ev => { let pair = icetransport.getselectedcandidatepair(); localprotoelem.innertext = pair.local.protocol.touppercase(); remoteprotoelem.innertext = pair.remote.protocol.
...And 2 more matches
RTCPeerConnection.currentLocalDescription - Web APIs
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 rtcpeerconnection finished negotiating and connecting to a remote peer.
...for details on what exactly happens and why the change isn't necessarily instantaneous, see p
ending and current descriptions in webrtc connectivity.
... unlike rtcpeerconnection.localdescription, this value represents the actual current state of the local
end of the connection; localdescription may specify a description which the connection is currently in the process of switching over to.
...And 2 more matches
RTCPeerConnection.currentRemoteDescription - Web APIs
the read-only property rtcpeerconnection.currentremotedescription returns an rtcsessiondescription object describing the remote
end of the connection as it was most recently successfully negotiated since the last time the rtcpeerconnection finished negotiating and connecting to a remote peer.
...for details on what exactly happens and why the change isn't necessarily instantaneous, see p
ending and current descriptions in webrtc connectivity.
... unlike rtcpeerconnection.remotedescription, this value represents the actual current state of the local
end of the connection; remotedescription may specify a description which the connection is currently in the process of switching over to.
...And 2 more matches
RTCPeerConnection: negotiationneeded event - Web APIs
its role is to create an sdp offer and s
end it through the signaling channel to the remote peer.
... pc.addeventlistener("negotiationneeded", ev => { pc.createoffer() .then(offer => return pc.setlocaldescription(offer)) .then(() => s
endsignalingmessage({ type: "video-offer", sdp: pc.localdescription })) .catch(err => { /* handle error */ ); }, false); after creating the offer, the local
end is configured by calling rtcpeerconnection.setlocaldescription(); then a signaling message is created and sent to the remote peer through the signaling server, to share that offer with the other peer.
... the other peer should recognize this message and follow up by creating its own rtcpeerconnection, setting the remote description with setremotedescription(), and then creating an answer to s
end back to the offering peer.
...And 2 more matches
RTCPeerConnection.onicecandidate - Web APIs
this lets the ice agent perform negotiation with the remote peer without the browser itself needing to know any specifics about the technology being used for signaling; simply implement this method to use whatever messaging technology you choose to s
end the ice candidate to the remote peer.
...you don't need to watch for this explicitly; instead, if you need to sense the
end of signaling, you should watch for a icegatheringstatechange event indicating that the ice negotiation has transitioned to the complete state.
... example the example below, which is based on the code from the article signaling and video calling, sets up a handler for icecandidate events to s
end the candidates to the remote peer.
...And 2 more matches
RTCPeerConnection.setLocalDescription() - Web APIs
this description specifies the properties of the local
end of the connection, including the media format.
... syntax apromise = rtcpeerconnection.setlocaldescription(sessiondescription); pc.setlocaldescription(sessiondescription, successcallback, errorcallback); parameters sessiondescription optional an rtcsessiondescriptioninit or rtcsessiondescription which specifies the configuration to be applied to the local
end of the connection.
...see p
ending and current descriptions in webrtc connectivity for more details on this process.
...And 2 more matches
RTCRtpCapabilities - Web APIs
the rtcrtpcapabilities dictionary is a data type used to describe the capabilities of an rtcrtps
ender or rtcrtpreceiver in response to a call to the rtcrtps
ender.getcapabilities() or rtcrtpreceiver.getcapabilities() static functions, both of which return an array of rtcrtpcapabilities objects.
... properties codecs an array of rtcrtpcodeccapability objects, each describing one of the codecs supported by the rtcrtps
ender or rtcrtpreceiver.
...those components are: red (redundant audio data) the media type of an red entry may vary due to there being several versions of it, but it will
end with red, such as video/red or video/fwdred.
...And 2 more matches
RTCRtpStreamStats.nackCount - Web APIs
the nackcount property of the rtcrtpstreamstats dictionary is a numeric value indicating the number of times the receiver sent a nack packet to the s
ender.
... a nack (negative acknowledgement, also called "generic nack") packet tells the s
ender that one or more of the rtp packets it sent were lost in transport.
... syntax var nackcount = rtcrtpstreamstats.nackcount; value an integer value indicating how many times the receiver sent a nack packet to the s
ender after detecting that one or more packets were lost during transport.
...And 2 more matches
RTCRtpStreamStats.sliCount - Web APIs
the slicount property of the rtcrtpstreamstats dictionary indicates how many slice loss indication (sli) packets were received by the s
ender.
... syntax var slicount = rtcrtpstreamstats.slicount; value an unsigned long integer indicating the number of sli packets the s
ender received from the receiver due to lost runs of macroblocks.
... note: this value is sent by the s
ender to the receiver and is only present for video media.
...And 2 more matches
RTCRtpTransceiver.setCodecPreferences() - Web APIs
that means that either the associated rtcrtps
ender or the rtcrtpreceiver needs to support every codec in the list.
... to determine which codecs are supported by the transceiver, call the s
ender's getcapabilities() and the receiver's getcapabilities() methods and get the codecs list from the results of each.
... the following code snippet demonstrates how to get both the list of codecs supported by the transceiver's rtcrtps
ender and rtcrtpreceiver.
...And 2 more matches
Range.setStart() - Web APIs
setting the start point below (lower in the document) the
end point will result in a collapsed range with the start and
end points both set to the specified start position.
... examples highlight part of an element this example uses the range.setstart() and range.set
end() methods to add part of an address to a range.
...main st.<br> dodge city, ks<br> 67801<br> usa</p> <hr> <p>nodes in the original address:</p> <ol id="log"></ol> javascript const address = document.getelementbyid('address'); const log = document.getelementbyid('log'); // log info address.childnodes.foreach(node => { const li = document.createelement('li'); li.textcontent = `${node.nodename}, ${node.nodevalue}`; log.app
endchild(li); }); // highlight the street and city const startoffset = 2; // start at third node: 101 e.
...And 2 more matches
ReadableStreamDefaultReader.read() - Web APIs
return value a promise, which fulfills/rejects with a result dep
ending on the state of the stream.
... examples example 1 - simple example this example shows the basic api usage, but doesn't try to deal with complications like stream chunks not
ending on line boundaries for example.
...current chunk = ' + chunk; list2.app
endchild(listitem); result += chunk; // read some more, and call this function again return reader.read().then(processtext); }); } example 2 - handling text line by line this example shows how you might fetch a text file and handle it as a stream of text lines.
...And 2 more matches
Request.credentials - Web APIs
the credentials read-only property of the request interface indicates whether the user agent should s
end cookies from the other domain in the case of cross-origin requests.
... syntax var mycred = request.credentials; value a requestcredentials dictionary value indicating whether the user agent should s
end cookies from the other domain in the case of cross-origin requests.
... possible values are: omit: never s
end or receive cookies.
...And 2 more matches
SVGAElement.target - Web APIs
this property is used when there are multiple possible targets for the
ending resource, like when the parent document is a mlti-frame html or xhtml document.
... syntax mylink.target = 'value'; value an svganimatedstring indicating the
ending resource target that opens the document when the link is activated.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
SVGLengthList - Web APIs
terface 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 app
enditem(in svglength 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.
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in svglength newitem) svglength inserts a new item at the
end of the list.
...And 2 more matches
SVGNumberList - Web APIs
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 app
enditem(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.
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in svgnumber newitem) svgnumber inserts a new item at the
end of the list.
...And 2 more matches
SVGRect - Web APIs
="1" y="1" width="75" height="50" fill="#f4f7f8" 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">svgrect</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties svgrect.x the exact effect of this coordinate dep
ends on each element.
... svgrect.y the exact effect of this coordinate dep
ends on each element.if the attribute is not specified, the effect is as if a value of 0 were specified.
...a value of zero disables r
endering of the element svgrect.height this represents the height of the rectangle.a value that is negative results to an error.a value of zero disables r
endering of the element.
...And 2 more matches
Screen.lockOrientation() - Web APIs
the normal position is device dep
endant.
...the normal position is device dep
endant.
...the normal position is device dep
endant.
...And 2 more matches
Sensor APIs - Web APIs
the actual reading frequency dep
ends device hardware and consequently may be less than requested.
... specifications specification status comment generic sensor api candidate recomm
endation initial definition.
... accelerometer candidate recomm
endation defines accelerometer and linearaccerationsensor.
...And 2 more matches
Using readable streams - Web APIs
const stream = new readablestream({ start(controller) { interval = setinterval(() => { let string = randomchars(); // add the string to the stream controller.enqueue(string); // show it on the screen let listitem = document.createelement('li'); listitem.textcontent = string; list1.app
endchild(listitem); }, 1000); button.addeventlistener('click', function() { clearinterval(interval); readstream(); controller.close(); }) }, pull(controller) { // we don't really need a pull in this example }, cancel() { // this is called if the reader cancels, // so we should stop generating strings clearinterval(interval); } }); in the readst...
...ream() function itself, we lock a reader to the stream using readablestream.getreader(), then follow the same kind of pattern we saw earlier — reading each chunk with read(), checking whether done is true and then
ending the process if so, and reading the next chunk and processing it if not, before running the read() method again.
...current chunk = ' + chunk; list2.app
endchild(listitem); result += chunk; // read some more, and call this function again return reader.read().then(processtext); }); } closing and cancelling streams we’ve already shown examples of using readablestreamdefaultcontroller.close() to close a reader.
...And 2 more matches
TransformStream - Web APIs
properties transformstream.readable read only the readable
end of a transformstream.
... transformstream.writable read only the writable
end of a transformstream.
...hunk.every(value => typeof value === 'number')) controller.enqueue(new uint8array(chunk)) else if ('function' === typeof chunk.valueof && chunk.valueof() !== chunk) this.transform(chunk.valueof(), controller) // hack else if ('tojson' in chunk) this.transform(json.stringify(chunk), controller) break case 'symbol': controller.error("cannot s
end a symbol as a chunk part") break case 'undefined': controller.error("cannot s
end undefined as a chunk part") default: controller.enqueue(this.textencoder.encode(string(chunk))) break }, flush() { /* do any destructor work here */ } } class anytou8stream ext
ends transformstream { constructor() { super({...transformcontent, textencoder: new tex...
...And 2 more matches
USBAlternateInterface - Web APIs
an interface includes one or more alternate settings which can configure a set of
endpoints based on the operating mode of the device.
...a value of 0xff indicates a v
endor-defined interface.
...the meaning of this value dep
ends on the interfaceclass field.
...And 2 more matches
USBDevice.controlTransferOut() - Web APIs
the available options are: requesttype: must be one of three values specifying whether the tranfer is "standard" (common to all usb devices) "class" (common to an industry-standard class of devices) or "v
endor".
... recipient: specifices the target of the transfer on the device, one of "device", "interface", "
endpoint", or "other".
... request: a v
endor-specific command.
...And 2 more matches
VTTCue() - Web APIs
syntax vttcue = new vttcue(starttime,
endtime, text); parameters starttime this is a double representing the initial text track cue start time.
...
endtime this is a double representing the
ending time for this text track cue.
...given the example cue mentioned under starttime, the value of
endtime would be 65.5.
...And 2 more matches
Hello vertex attributes - Web APIs
« previousnext » this webgl example demonstrates how to combine shader programming and user interaction by s
ending user input to the shader using vertex attributes.
... hello world program in glsl how to s
end input to a shader program by saving data in gpu memory.
... <p>first encounter with attributes and s
ending data to gpu.
...And 2 more matches
Getting started with WebGL - Web APIs
next » webgl enables web content to use an api based on opengl es 2.0 to perform 2d and 3d r
endering in an html canvas in browsers that support it without the use of plug-ins.
...it's assumed that you already have an understanding of the mathematics involved in 3d graphics, and this article doesn't pret
end to try to teach you 3d graphics concepts itself.
... preparing to r
ender in 3d the first thing you need in order to use webgl for r
endering is a canvas.
...And 2 more matches
Lifetime of a WebRTC session - Web APIs
this is like trying to mail a package to your fri
end michelle by labeling it “michelle” and dropping it in a mailbox when you don't know her address.
... signaling signaling is the process of s
ending control information between two devices to determine the communication protocols, channels, media codecs and formats, and method of data transfer, as well as any required routing information.
... in order to exchange signaling information, you can choose to s
end json objects back and forth over a websocket connection, or you could use xmpp or sip over an appropriate channel, or you could use xmlhttprequest over https with polling, or any other combination of technologies you can come up with.
...And 2 more matches
Using bounded reference spaces - Web APIs
each vertex in the array has a y coordinate of 0 since the entire boundary is defined at floor level, ext
ending upward to the ceiling or indefinitely.
... spacetype = null; function onsessionstarted(session) { xrsession = session; spacetype = "bounded-floor"; xrsession.requestreferencespace(spacetype) .then(onrefspacecreated) .catch(() => { spacetype = "local-floor"; xrsession.requestreferencespace(spacetype) .then(onrefspacecreated) .catch(handleerror); }); } function onrefspacecreated(refspace) { xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl) }); // now set up matrices, create a secondary reference space to // transform the viewer's pose, and so forth.
...however, the floor level will be simulated by choosing and emulating the floor level and shifting the view upward by a fixed amount in order to ensure that the scene's contents r
ender in the right place.
...And 2 more matches
Basic concepts behind Web Audio API - Web APIs
audio nodes are linked via their inputs and outputs, forming a chain that starts with one or more sources, goes through one or more nodes, then
ends up at a destination.
... establish connections from the audio sources through zero or more effects, eventually
ending at the chosen destination.
...sample frames are very useful, because they are indep
endent of the number of channels, and represent time, in a useful way for doing precise audio manipulation.
...And 2 more matches
Obsolete features - Web APIs
in ie, it r
endered the links bar.
... personalbar obsolete since gecko 76 if this feature is on, then the new secondary window r
enders the personal toolbar in netscape 6.x, netscape 7.x and mozilla browser.
... it r
enders the bookmarks toolbar in firefox.
...And 2 more matches
Window.requestFileSystem() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetrequestfilesystem experimentalnon-standardchrome full support 13prefixed full support 13prefixed prefixed implemented with the v
endor prefix: webkitedge full support ≤18prefixed full support ≤18prefixed prefixed implemented with the v
endor prefix: webkitfirefox no support noie no support noopera no support nosafari ...
... no support nowebview android full support 37prefixed full support 37prefixed prefixed implemented with the v
endor prefix: webkitchrome android full support yesprefixed full support yesprefixed prefixed implemented with the v
endor prefix: webkitfirefox android no support noopera android no support nosafari ios no support nosamsung internet android full support yesprefixed full support...
...And 2 more matches
WritableStream - Web APIs
it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
...And 2 more matches
HTML in XMLHttpRequest - Web APIs
usage retrieving an html resource as a dom using xmlhttprequest works just like retrieving an xml resource as a dom using xmlhttprequest, except you can't use the synchronous mode and you have to explicitly request a document by assigning the string "document" to the responsetype property of the xmlhttprequest object after calling open() but before calling s
end().
... var xhr = new xmlhttprequest(); xhr.onload = function() { console.log(this.responsexml.title); } xhr.open("get", "file.html"); xhr.responsetype = "document"; xhr.s
end(); feature detection method 1 this method relies on the "force async" nature of the feature.
...second, you have to actually fetch a test document over http, because testing with a data: url would
end up testing data: url support at the same time.
...And 2 more matches
XRInputSource.targetRayMode - Web APIs
the target ray ext
ends from the hand (or the object in the hand) in the targeted direction.
... usage notes the input source's targetrayspace indicates the position and orientation of the target ray, and can be used to determine where to r
ender the ray.
... for each such input, this example looks for inputs whose targetraymode is tracked-pointer, indicating that the input is in fact int
ended to represent a targeting device rather than a gazing device, screen tap, or mouse click.
...And 2 more matches
XRInputSource.targetRaySpace - Web APIs
the exact meaning of this space varies, however, dep
ending on the mode: every gaze input (targetraymode value of gaze), shares the same xrspace object as their target ray space, since the gaze input comes from the viewer's head.
... to determine the position and orientation of the target ray while r
endering a frame, pass it into the xrframe method getpose() method, then use the returned xrpose object's transform to gather the spatial information you need.
... for each such input, this example looks for inputs whose targetraymode is tracked-pointer, indicating that the input is in fact int
ended to represent a targeting device rather than a gazing device, screen tap, or mouse click.
...And 2 more matches
XRInputSourceEvent - Web APIs
this frame may have been r
endered in the past rather than being a current frame.
... event types select sent to an xrsession when the s
ending input source has fully completed a primary action.
... select
end sent to an xrsession when an ongoing primary action
ends, or when an input source with an ongoing primary action has been disconnected from the system.
...And 2 more matches
XRSession: selectstart event - Web APIs
bubbles yes cancelable no interface xrinputsourceevent event handler property onselectstart for details on how the selectstart, select, and select
end events work, and how you should react to them, see primary actions in inputs and input sources.
... examples the following example uses addeventlistener() to establish handlers for the selection events: selectstart, select
end, and select.
... the select
end event results in a mystoptracking() function being called with the object being dragged and the final target ray pose's transform.
...And 2 more matches
XRSession: squeezestart event - Web APIs
bubbles yes cancelable no interface xrinputsourceevent event handler property onsqueezestart for details on how the squeezestart, squeeze, and squeeze
end events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
... examples the following example uses addeventlistener() to establish handlers for the squeezeion events: squeezestart, squeeze
end, and squeeze.
... the squeeze
end event results in a mystoptracking() function being called with the object being dragged and the final target ray pose's transform.
...And 2 more matches
XRTargetRayMode - Web APIs
the style of the ray is generally up to you, as is the method for indicating the
endpoint of the ray.
...the target ray ext
ends from the hand (or the object in the hand) in the targeted direction.
... for each such input, this example looks for inputs whose targetraymode is tracked-pointer, indicating that the input is in fact int
ended to represent a targeting device rather than a gazing device, screen tap, or mouse click.
...And 2 more matches
XRViewerPose.views - Web APIs
the read-only xrviewerpose property views returns an array which contains every xrview which must be r
endered in order to fully represent the scene from the viewpoint defined by the viewer pose.
... stereo views require two views to r
ender properly, with the left eye's view having its eye set to the string left and the right eye's view a value of right.
... examples in this example—part of the code to r
ender an xrframe, getviewerpose() is called to get an xrviewerpose using the same reference space the code is using as its base reference space.
...And 2 more matches
XRWebGLLayer.framebuffer - Web APIs
the read-only xrwebgllayer property framebuffer is an opaque webglframebuffer which is used to buffer the r
endered image if the xr compositor is being used.
... syntax let framebuffer = xrwebgllayer.framebuffer; value a webglframebuffer object representing the framebuffer into which the 3d scene is being r
endered, or null if the xr compositor is disabled for the session.
...calling functions such as framebuffertexture2d(), framebufferr
enderbuffer(), deleteframebuffer(), or getframebufferattachmentparameter() on an opaque framebuffer results in the webgl error invalid_operation (0x0502).
...And 2 more matches
XRWebGLLayer.getViewport() - Web APIs
the xrwebgllayer interface's getviewport() method returns the xrviewport that should be used to r
ender the specified xrview into the webgl layer.
... for webxr devices which use a single framebuffer for both the left and right eyes, the returned viewport represents the region of the framebuffer into which the scene should be r
endered for the eye represented by the view.
... example this example demonstrates in part what the callback for the requestanimationframe() function might look like, using getviewport() to get the viewport so that drawing can be constrained to the area set aside for the eye whose viewpoint is currently being r
endered.
...And 2 more matches
XSL Transformations in Mozilla FAQ - Web APIs
to find out which mime type your server s
ends, look at page info, use extensions like livehttpheaders or a download manager like wget.
...it (afaict) serializes and parses the output to generate what it actually r
enders.
... mozilla in contrast r
enders exactly the result of your transformation.
...And 2 more matches
ARIA live regions - Accessibility
html <fieldset> <leg
end>planet information</leg
end> <label for="planetsselect">planet:</label> <select id="planetsselect" aria-controls="planetinfo"> <option value="">select a planet…</option> <option value="mercury">mercury</option> <option value="venus">venus</option> <option value="earth">earth</option> <option value="mars">mars</option> </select> <button id="r
enderplanetinfobutton"...
...in english, mars carries a name of the roman god of war, and is often referred to as the "red planet".' } }; function r
enderplanetinfo(planet) { const planettitle = document.queryselector('#planettitle'); const planetdescription = document.queryselector('#planetdescription'); if (planet in planets_info) { planettitle.textcontent = planets_info[planet].title; planetdescription.textcontent = planets_info[planet].description; } else { planettitle.textcontent = 'no planet selected'; planetdescrip...
...tion.textcontent = 'select a planet to view its description'; } } const r
enderplanetinfobutton = document.queryselector('#r
enderplanetinfobutton'); r
enderplanetinfobutton.addeventlistener('click', event => { const planetsselect = document.queryselector('#planetsselect'); const selectedplanet = planetsselect.options[planetsselect.selectedindex].value; r
enderplanetinfo(selectedplanet); }); as the user selects a new planet, the information in the live region will be announced.
...And 2 more matches
ARIA annotations - Accessibility
for example: <p id="description-id">an ext
ended text description of some kind...</p> <div aria-describedby="description-id"> <!-- some kind of ui feature that needs an accessible description --> </div> aria-details is appropriate when linking to descriptions or annotations that are a bit more complex — rather than a simple text string, it might contain multiple bits of semantic information: <div id="detail-id"> <h2>a heading</h2> ...
... <p>an ext
ended text description of some kind…</p> <p><time datetime="...">a timestamp</time></p> </div> <div aria-details="detail-id"> <!-- some kind of ui feature that needs an accessible description --> </div> this difference really becomes apparent when you get to how the content is actually interpreted in the accessibility layer, and read out by screenreaders.
...</p> <div id="comment-source">suggested by chris, <time datetime="2019-03-30t19:29">march 30 2019, 19:29</time></div> browsers t
end to provide a default black strikethrough for deletions, and a black underline for insertions, but you’ll probably want to use some more interesting styling of your own, for example: ins, [role="insertion"] { color: #0c0; text-decoration: underline; } del, [role="deletion"] { color: red; text-decoration: line-through; } ins, [role="insertion"], del, [role="deletion"] { text-decorati...
...And 2 more matches
ARIA: timer role - Accessibility
the timer role indicates to assistive technologies that an element is a numerical counter listing the amount of elapsed time from a starting point or the remaining time until an
end point.
...while the value does not necessarily need to be machine parsable, it should continuously update at regular intervals unless the timer is paused or reaches its
end-point.
... required javascript features keypress used to handle keyboard input and control the focus click, touch handle as appropriate for your widget as well changing attribute values aria-activedesc
endant is used to manage the focus inside the application container.
...And 2 more matches
ARIA: form role - Accessibility
examples <div role="form" id="s
end-comment" aria-label="add a comment"> <label for="username">username</label> <input id="username" name="username" autocomplete="nickname" autocorrect="off" type="text"> <label for="email">email</label> <input id="email" name="email" autocomplete="email" autocapitalize="off" autocorrect="off" spellcheck="false" type="text"> <label for="comment">comment</label> <textarea id="comment" n...
...ame="comment"></textarea> <input value="comment" type="submit"> </div> it is recomm
ended to use <form> instead.
... <form id="s
end-comment" aria-label="add a comment"> ....
...And 2 more matches
ARIA: tab role - Accessibility
tab tabs.foreach(tab => { tab.addeventlistener("click", changetabs); }); // enable arrow navigation between tabs in the tab list let tabfocus = 0; tablist.addeventlistener("keydown", e => { // move right if (e.keycode === 39 || e.keycode === 37) { tabs[tabfocus].setattribute("tabindex", -1); if (e.keycode === 39) { tabfocus++; // if we're at the
end, go to the start if (tabfocus >= tabs.length) { tabfocus = 0; } // move left } else if (e.keycode === 37) { tabfocus--; // if we're at the start, move to the
end if (tabfocus < 0) { tabfocus = tabs.length - 1; } } tabs[tabfocus].setattribute("tabindex", 0); tabs[tabfocus].focus(); } }); }); ...
...se)); // set this tab as selected target.setattribute("aria-selected", true); // hide all tab panels grandparent .queryselectorall('[role="tabpanel"]') .foreach(p => p.setattribute("hidden", true)); // show the selected panel grandparent.parentnode .queryselector(`#${target.getattribute("aria-controls")}`) .removeattribute("hidden"); } best practices it is recomm
ended to use a button element with the role tab for their built-in functional and accessible features instead, as opposed to needing to add them yourself.
... for controlling tab key functionality for elements with the role tab, it is recomm
ended to set all non-active elements to tabindex=-1, and to set the active element to tabindex=0.
...And 2 more matches
Understanding the Web Content Accessibility Guidelines - Accessibility
this set of articles provides quick explanations to help you understand the steps that need to be taken to conform to the recomm
endations outlined in the w3c web content accessibility guidelines 2.0 or 2.1 (or just wcag, for the purposes of this writing).
...for this reason, we have summarised the practical steps you need to take to satisfy the different recomm
endations, with further links to more details where required.
... wcag 2.1 was published as an official recomm
endation on 05 june 2018.
...And 2 more matches
:host-context() - CSS: Cascading Style Sheets
one typical use of this is with a desc
endant selector expression — for example h1 — to select only instances of the custom element that are inside an <h1>.
... /* selects a shadow root host, only if it is a desc
endant of the selector argument given */ :host-context(h1) { font-weight: bold; } :host-context(main article) { font-weight: bold; } /* changes paragraph text color from black to white when a .dark-theme class is applied to the document body */ p { color: #000; } :host-context(body.dark-theme) p { color: #fff; } syntax :host-context( <compound-selector-list> )where <compound-selector-list> = <compound-selector>#where <compound-selector> = [ <type-selector>?
...>example</context-span></a></h1> inside the element's constructor, we create style and span elements, fill the span with the content of the custom element, and fill the style element with some css rules: let style = document.createelement('style'); let span = document.createelement('span'); span.textcontent = this.textcontent; const shadowroot = this.attachshadow({mode: 'open'}); shadowroot.app
endchild(style); shadowroot.app
endchild(span); style.textcontent = 'span:hover { text-decoration: underline; }' + ':host-context(h1) { font-style: italic; }' + ':host-context(h1):after { content: " - no links in headers!" }' + ':host-context(article, aside) { color: gray; }' + ':host(.footer) { color : red; }' + ...
...And 2 more matches
:read-only - CSS: Cascading Style Sheets
input:-moz-read-only, textarea:-moz-read-only, input:read-only, textarea:read-only { border: 0; box-shadow: none; background-color: white; } textarea:-moz-read-write, textarea:read-write { box-shadow: inset 1px 1px 3px #ccc; border-radius: 5px; } you can find the full source code at readonly-confirmation.html; this r
enders like so: styling read-only non-form controls this selector doesn't just select <input>/<textarea> elements — it will select any element that cannot be edited by the user.
... recomm
endation defines the semantics regarding html and constraint validation.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
:read-write - CSS: Cascading Style Sheets
input:-moz-read-only, textarea:-moz-read-only, input:read-only, textarea:read-only { border: 0; box-shadow: none; background-color: white; } textarea:-moz-read-write, textarea:read-write { box-shadow: inset 1px 1px 3px #ccc; border-radius: 5px; } you can find the full source code at readonly-confirmation.html; this r
enders like so: styling read-write non-form controls this selector doesn't just select <input>/<textarea> elements — it will select any element that can be edited by the user, such as a <p> element with contenteditable set on it.
... recomm
endation defines the semantics regarding html and constraint validation.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...And 2 more matches
@media - CSS: Cascading Style Sheets
print int
ended for paged material and documents viewed on a screen in print preview mode.
... (please see paged media for information about formatting issues that are specific to these formats.) screen int
ended primarily for screens.
... speech int
ended for speech synthesizers.
...And 2 more matches
Mastering margin collapsing - CSS: Cascading Style Sheets
no content separating parent and desc
endants if there is no border, padding, inline part, block formatting context created, or clearance to separate the margin-top of a block from the margin-top of one or more of its desc
endant blocks; or no border, padding, inline content, height, min-height, or max-height to separate the margin-bottom of a block from the margin-bottom of one or more of its desc
endant blocks, then those margins collap...
...the collapsed margin
ends up outside the parent.
... these rules apply even to margins that are zero, so the margin of a desc
endant
ends up outside its parent (according to the rules above) whether or not the parent's margin is zero.
...And 2 more matches
Auto-placement in CSS Grid Layout - CSS: Cascading Style Sheets
i do this with the grid-column-
end and grid-row-
end properties and setting the value of this to span 2.
... what this means is that the start line of the item will be set by auto-placement, and the
end line will span two tracks.
... <div>one</div> <div>two</div> <div>three</div> <div>four</div> <div>five</div> <div>six</div> <div>seven</div> <div>eight</div> <div>nine</div> <div>ten</div> <div>eleven</div> <div>twelve</div> </div> .wrapper { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 100px; grid-gap: 10px; } .wrapper div:nth-child(4n+1) { grid-column-
end: span 2; grid-row-
end: span 2; background-color: #ffa94d; } .wrapper div:nth-child(2) { grid-column: 3; grid-row: 2 / 4; } .wrapper div:nth-child(5) { grid-column: 1 / 3; grid-row: 1 / 3; } filling in the gaps so far, other than items we have specifically placed, grid is always progressing forward and keeping items in dom order.
...And 2 more matches
CSS Images - CSS: Cascading Style Sheets
reference properties image-orientation image-r
endering image-resolution object-fit object-position functions linear-gradient() radial-gradient() repeating-linear-gradient() repeating-radial-gradient() conic-gradient() repeating-conic-gradient() url() element() image() cross-fade() data types <gradient> <image> guides using css gradients presents a specific type of css images, gradients, and how to create and use these.
... specifications specification status comment css images module level 4 working draft added image-resolution, conic-gradient(), and image() css images module level 3 candidate recomm
endation added image-orientation, image-r
endering, object-fit and object-position compatibility standardthe definition of 'css gradients' in that specification.
... candidate recomm
endation css level 2 (revision 1)the definition of '<uri>' in that specification.
...And 2 more matches
CSS Logical Properties and Values - CSS: Cascading Style Sheets
the physical meaning of these terms dep
ends on the writing mode.
... block dimension the dimension perp
endicular to the flow of text within a line, i.e., the vertical dimension in horizontal writing modes, and the horizontal dimension in vertical writing modes.
... reference properties for sizing block-size inline-size max-block-size max-inline-size min-block-size min-inline-size properties for margins, borders and padding border-block border-block-color border-block-
end border-block-
end-color border-block-
end-style border-block-
end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-block-style border-block-width border-color (logical keyword) border-inline border-inline-color border-inline-
end border-inline-
end-color border-inline-
end-style border-inline-
end-width border-inline-start bor...
...And 2 more matches
Understanding CSS z-index - CSS: Cascading Style Sheets
in this case, there is a single r
endering flow, and all elements are aware of the space taken by others.
... the z-index attribute lets you adjust the order of the layering of objects when r
endering content.
... (from css 2.1 section 9.9.1 - layered presentation) this means that css style rules allow you to position boxes on layers in addition to the normal r
endering layer (layer 0).
...And 2 more matches
Animatable CSS properties - CSS: Cascading Style Sheets
-outline-radius-bottomleft -moz-outline-radius-bottomright -moz-outline-radius-topleft -moz-outline-radius-topright -webkit-line-clamp -webkit-text-fill-color -webkit-text-stroke -webkit-text-stroke-color all backdrop-filter background background-color background-position background-size block-size border border-block-
end border-block-
end-color border-block-
end-width border-block-start border-block-start-color border-block-start-width border-bottom border-bottom-color border-bottom-left-radius border-bottom-right-radius border-bottom-width border-color border-
end-
end-radius border-
end-start-radius border-image-outset border-image-slice ...
... border-image-width border-inline-
end border-inline-
end-color border-inline-
end-width border-inline-start border-inline-start-color border-inline-start-width border-left border-left-color border-left-width border-radius border-right border-right-color border-right-width border-start-
end-radius border-start-start-radius border-top border-top-color border-top-left-radius border-top-right-radius border-top-width border-width bottom box-shadow caret-color clip clip-path color column-count column-gap column-rule column-rule-color column-rule-width column-width columns filter flex flex-basis flex-grow flex-...
...shrink font font-size font-size-adjust font-stretch font-variation-settings font-weight gap grid-column-gap grid-gap grid-row-gap grid-template-columns grid-template-rows height inline-size inset inset-block inset-block-
end inset-block-start inset-inline inset-inline-
end inset-inline-start left letter-spacing line-clamp line-height margin margin-block-
end margin-block-start margin-bottom margin-inline-
end margin-inline-start margin-left margin-right margin-top mask mask-border mask-position mask-size max-block-size max-height max-inline-size max-lines max-width min-block-size ...
...And 2 more matches
Pseudo-classes - CSS: Cascading Style Sheets
html5 recomm
endation copies the relevant section from the canonical (whatwg) html spec.
... css basic user interface module level 3 recomm
endation defined :default, :valid, :invalid, :in-range, :out-of-range, :required, :optional, :read-only and :read-write, but without the associated semantic meaning.
... selectors level 3 recomm
endation defined :target, :root, :nth-child(), :nth-last-of-child(), :nth-of-type(), :nth-last-of-type(), :last-child, :first-of-type, :last-of-type, :only-child, :only-of-type, :empty and :not().
...And 2 more matches
background-repeat - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... by default, the repeated images are clipped to the size of the element, but they can be scaled to fit (using round) or evenly distributed from
end to
end (using space).
... candidate recomm
endation adds support for multiple background images, the two-value syntax allowing distinct repetition behavior for the horizontal and vertical directions, the space and round keywords, and for backgrounds on inline-level elements by precisely defining the background painting area.
...And 2 more matches
border-color - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... each side can be set individually using border-top-color, border-right-color, border-bottom-color, and border-left-color; or using the writing mode-aware border-block-start-color, border-block-
end-color, border-inline-start-color, and border-inline-
end-color.
... candidate recomm
endation the transparent keyword has been removed as it is now a part of the <color> data type.
...And 2 more matches
border-image-source - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...And 2 more matches
border-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... dashed displays a series of short square-
ended dashes or line segments.
... candidate recomm
endation no change.
...And 2 more matches
list-style-type - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation redefines css2.1 counters.
... ext
ends the syntax to support @counter-style rules.
...And 2 more matches
margin-block-start - CSS: Cascading Style Sheets
the margin-block-start css property defines the logical block start margin of an element, which maps to a physical margin dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...ute length */ margin-block-start: 1em; /* relative to the text size */ margin-block-start: 5%; /* relative to the nearest block container's width */ /* keyword values */ margin-block-start: auto; /* global values */ margin-block-start: inherit; margin-block-start: initial; margin-block-start: unset; it corresponds to the margin-top, margin-right, margin-bottom, or margin-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...And 2 more matches
margin-inline-start - CSS: Cascading Style Sheets
the margin-inline-start css property defines the logical inline start margin of an element, which maps to a physical margin dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the margin-top, margin-right, margin-bottom, or margin-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...And 2 more matches
margin-inline - CSS: Cascading Style Sheets
the margin-inline css shorthand property is a shorthand property that defines both the logical inline start and
end margins of an element, which maps to physical margins dep
ending on the element's writing mode, directionality, and text orientation.
... /* <length> values */ margin-inline: 10px 20px; /* an absolute length */ margin-inline: 1em 2em; /* relative to the text size */ margin-inline: 5% 2%; /* relative to the nearest block container's width */ margin-inline: 10px; /* sets both start and
end values */ /* keyword values */ margin-inline: auto; /* global values */ margin-inline: inherit; margin-inline: initial; margin-inline: unset; this property corresponds to the margin-top and margin-bottom, or margin-right, and margin-left properties, dep
ending on the values defined for writing-mode, direction, and text-orientation.
... constituent properties this property is a shorthand for the following css properties: margin-inline-
end margin-inline-start syntax values the margin-inline property takes the same values as the margin-left property.
...And 2 more matches
<number> - CSS: Cascading Style Sheets
syntax the syntax of <number> ext
ends the syntax of <integer>.
...followed by one or more decimal digits, and may be app
ended to an integer.
... candidate recomm
endation no significant change.
...And 2 more matches
repeat() - CSS: Cascading Style Sheets
/* <track-repeat> values */ repeat(4, 1fr) repeat(4, [col-start] 250px [col-
end]) repeat(4, [col-start] 60% [col-
end]) repeat(4, [col-start] 1fr [col-
end]) repeat(4, [col-start] min-content [col-
end]) repeat(4, [col-start] max-content [col-
end]) repeat(4, [col-start] auto [col-
end]) repeat(4, [col-start] minmax(100px, 1fr) [col-
end]) repeat(4, [col-start] fit-content(200px) [col-
end]) repeat(4, 10px [col-start] 30% [col-middle] auto [col-
end]) repeat(4, [col-start] min-content [col-middle] max-content [col...
...-
end]) /* <auto-repeat> values */ repeat(auto-fill, 250px) repeat(auto-fit, 250px) repeat(auto-fill, [col-start] 250px [col-
end]) repeat(auto-fit, [col-start] 250px [col-
end]) repeat(auto-fill, [col-start] minmax(100px, 1fr) [col-
end]) repeat(auto-fill, 10px [col-start] 30% [col-middle] 400px [col-
end]) /* <fixed-repeat> values */ repeat(4, 250px) repeat(4, [col-start] 250px [col-
end]) repeat(4, [col-start] 60% [col-
end]) repeat(4, [col-start] minmax(100px, 1fr) [col-
end]) repeat(4, [col-start] fit-content(200px) [col-
end]) repeat(4, 10px [col-start] 30% [col-middle] 400px [col-
end]) syntax values <length> a positive integer length.
...if the size of the grid container dep
ends on the size of its tracks, then the <percentage> must be treated as auto.
...And 2 more matches
shape-image-threshold - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...saepe optio accusamus doloribus sint facilis itaque ab nulla, dolor molestiae assum
enda cum sit placeat adipisci, libero quae nihil porro debitis laboriosam inventore animi impedit nostrum nesciunt quisquam expedita!
... dolores consectetur iure atque a mollitia dicta repudiandae illum exercitationem aliquam repell
endus ipsum porro modi, id nemo elig
endi, architecto ratione quibusdam iusto nisi soluta?
...And 2 more matches
shape-outside - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...And 2 more matches
text-align-last - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* keyword values */ text-align-last: auto; text-align-last: start; text-align-last:
end; text-align-last: left; text-align-last: right; text-align-last: center; text-align-last: justify; /* global values */ text-align-last: inherit; text-align-last: initial; text-align-last: unset; values auto the affected line is aligned per the value of text-align, unless text-align is justify, in which case the effect is the same as setting text-align-last to start.
...
end the same as right if direction is left-to-right and left if direction is right-to-left.
...And 2 more matches
url() - CSS: Cascading Style Sheets
dep
ending on the property for which it is a value, the resource sought can be an image, font, or a stylesheet.
...in css level 2, the definition of url() was ext
ended to describe any uri, including urns.
... candidate recomm
endation no significant change from css level 2 (revision 1).
...And 2 more matches
vertical-align - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... line-relative values the following values vertically align the element relative to the entire line: top aligns the top of the element and its desc
endants with the top of the entire line.
... bottom aligns the bottom of the element and its desc
endants with the bottom of the entire line.
...And 2 more matches
Adding captions and subtitles to HTML5 video - Developer guides
this example uses an excerpt from the sintel open movie, created by the bl
ender foundation.
... captions versus subtitles captions and subtitles are not the same thing: they have significantly different audiences, and convey different information, and it is recomm
ended that you read up on the differences if you are not sure what they are.
... video providers (such as the bl
ender foundation) provide captions and subtitles in a text format with their videos, but they're usually in the subrip text (srt) format.
...And 2 more matches
Overview of events and handlers - Developer guides
events and event handling become central to web programming with the addition of the language to browsers, accompanying a switch in the r
endering architecture of browsers from fetch and load page r
endering to event driven, reflow based, page r
endering.
...with the change to dynamic page r
endering, browsers loop continuously between processing, drawing, presenting content, and waiting for some new event trigger.
...the innovation of the dynamic approach allows for a page to be partially r
endered even when the browser has not finished retrieving all resources; this approach also allows for event driven actions, which javascript leverages.
...And 2 more matches
Using HTML sections and outlines - Developer guides
they are int
ended to enhance the limited semantics of earlier versions of html, which included only the <div> tag as a generic mechanism for grouping related content.
...it is important for developers to use these semantic elements in line with their int
ended purposes.
...despite its name, the footer is not necessarily positioned at the
end of a page or section.
...And 2 more matches
User input and controls - Developer guides
this article provides recomm
endations for managing user input and implementing controls in open web apps, along with faqs, real-world examples, and links to further information for anyone needing more detailed information on the underlying technologies.
... recomm
endations available input mechanisms dep
end 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.
... the following is a set of recomm
endations and best practices for using such tools in open web apps.
...And 2 more matches
Writing forward-compatible websites - Developer guides
what this means is that any time you access a global variable in an event handler content attribute, including calling any function declared globally, you can
end up with a name collision if a specification adds a new dom property to elements or documents which has the same name as your function or variable, and a browser implements it.
...so app
ending a script that dep
ends on non-strict-mode behavior to a strict-mode script will cause things to break.
... avoid dep
ending on cutting-edge nonstandard features even if the feature is prefixed, using it could be dangerous: as the specification evolves the browser's prefixed implementation can likewise change to track the specification.
...And 2 more matches
HTML attribute: multiple - HTML: Hypertext Markup Language
valid for the email and file input types and the <select>, the manner by which the user opts for multiple values dep
ends on the form control.
... dep
ending on the type, the form control may have a different appearance if the multiple attribute is set.
...see the <form> element and s
ending form data for more information.
...And 2 more matches
<address>: The Contact Address element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
... <address> you can contact author at <a href="http://www.somedomain.com/contact"> www.somedomain.com</a>.<br> if you see any bugs, please <a href="mailto:webmaster@somedomain.com"> contact webmaster</a>.<br> you may also want to visit us:<br> mozilla foundation<br> 331 e evelyn ave<br> mountain view, ca 94041<br> usa </address> result although it r
enders text with the same default styling as the <i> or <em> elements, it is more appropriate to use <address> when dealing with contact information, as it conveys additional semantic information.
...And 2 more matches
<code>: The Inline Code element - HTML: Hypertext Markup Language
the html <code> element displays its contents styled in a fashion int
ended to indicate that the text is a short fragment of computer code.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<dt>: The Description Term element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content flow content, but with no <header>, <footer>, sectioning content or heading content desc
endants.
...the
end tag may be omitted if this element is immediately followed by another <dt> or a <dd> element, or if there is no more content in the parent element.
...And 2 more matches
<em>: The Emphasis element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...(the title of a work, such as the name of a book or movie, should use <cite>.) this means the right one to use dep
ends on the situation.
...And 2 more matches
<input type="month"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... dep
ending on what browser you are using, you might find that months outside the specified range might not be selectable in the month picker (e.g.
...the first is a native month input, and the other is a pair of <select> elements that allow choosing a month and year indep
endently, for compatibility with browsers that don't yet support <input type="month">.
...And 2 more matches
<input type="reset"> - HTML: Hypertext Markup Language
<input> elements of type "reset" are r
endered as buttons, with a default click event handler that resets all of the inputs in the form to their initial values.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... <input type="reset" value="reset the form"> if you don't specify a value, you get an button with the default label (typically "reset," but this will vary dep
ending on the user agent): <input type="reset"> using reset buttons <input type="reset"> buttons are used to reset forms.
...And 2 more matches
<input type="url"> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... value a domstring representing a url, or empty events change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, readonly, required and size idl attributes list, value, selection
end, selectiondirection methods select(), setrangetext() and setselectionrange().
...since character widths vary, this may or may not be exact and should not be relied upon to be so; the resulting input may be narrower or wider than the specified number of characters, dep
ending on the characters and the font (font settings in use).
...And 2 more matches
<ins> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
... ins::before, ins::after { clip-path: inset(100%); clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; } ins::before { content: " [insertion start] "; } ins::after { content: " [insertion
end] "; } some people who use screen readers deliberately disable announcing content that creates extra verbosity.
...And 2 more matches
<li> - HTML: Hypertext Markup Language
in ordered lists, they are usually displayed with an asc
ending counter on the left, such as a number or letter.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission the
end tag can be omitted if the list item is immediately followed by another <li> element, or if there is no more content in its parent element.
...And 2 more matches
<listing> - HTML: Hypertext Markup Language
summary the html listing element (<listing>) r
enders text between the start and
end tags without interpreting the html in between and using a monospaced font.
... the html 2 standard recomm
ended that lines shouldn't be broken when not greater than 132 characters.
...even more it is obsoleted in html5 and may be r
endered by conforming user-agents as the <pre> element, which will interpret the internal html!
...And 2 more matches
<nav>: The Navigation Section element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...<nav> is int
ended only for major block of navigation links; typically the <footer> element often has a list of links that don't need to be in a <nav> element.
...And 2 more matches
<noscript> - HTML: Hypertext Markup Language
permitted content when scripting is disabled and when it is a desc
endant of the <head> element: in any order, zero or more <link> elements, zero or more <style> elements, and zero or more <meta> elements.
... when scripting is disabled and when it isn't a desc
endant of the <head> element: any transparent content, but no <noscript> element must be among its desc
endants.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<ol>: The Ordered List element - HTML: Hypertext Markup Language
the html <ol> element represents an ordered list of items — typically r
endered as a numbered list.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<option>: The HTML Option element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the
end tag is optional if this element is immediately followed by another <option> element or an <optgroup>, or if the parent element has no more content.
...if the <option> element is the desc
endant of a <select> element whose multiple attribute is not set, only one single <option> of this <select> element may have the selected attribute.
...And 2 more matches
<p>: The Paragraph element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the
end tag may be omitted if the <p> element is immediately followed by an <address>, <article>, <aside>, <blockquote>, <div>, <dl>, <fieldset>, <footer>, <form>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <header>, <hr>, <menu>, <nav>, <ol>, <pre>, <section>, <table>, <ul> or another <p> element, or if there is no more content in the parent element and the parent element is not an <a> element.
...this is often used to take up less space, such as to save paper in print.</p> <p>writing that is int
ended to be edited, such as school papers and rough drafts, uses both blank lines and indentation for separation.
...And 2 more matches
<pre>: The Preformatted Text element - HTML: Hypertext Markup Language
the text is typically r
endered using a non-proportional ("monospace") font.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<rb>: The Ruby Base element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission the
end tag can be omitted if the element is immediately followed by an <rt>, <rtc>, or <rp> element or another <rb> element, or if there is no more content in the parent element.
...the browser can then fill in the full element in the r
endered version.
...And 2 more matches
<s> - HTML: Hypertext Markup Language
the html <s> element r
enders text with a strikethrough, or a line through it.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<samp>: The Sample Output element - HTML: Hypertext Markup Language
its contents are typically r
endered using the browser's default monospaced font (such as courier or lucida console).
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<section>: The Generic Section element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...note that a <section> element must not be a desc
endant of an <address> element.
...And 2 more matches
<select>: The HTML Select element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... usage notes selecting multiple options on a desktop computer, there are a number of ways to select multiple options in a <select> element with a multiple attribute: mouse users can hold the ctrl, command, or shift keys (dep
ending on what makes sense for your operating system) and then click multiple options to select/deselect them.
... tag omission none, both the starting and
ending tag are mandatory.
...And 2 more matches
<source>: The Media or Image Source element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission it must have a start tag, but must not have an
end tag.
... media media query of the resource's int
ended media; this should be used only in a <picture> element.
...And 2 more matches
<tt>: The Teletype Text element (obsolete) - HTML: Hypertext Markup Language
this element was created for the purpose of r
endering text as it would be displayed on a fixed-width display such as a teletype, text-only screen, or line printer.
... tag omission none, both the starting and
ending tag are mandatory.
...��if the browser permits you to do so, which it isn't required to do—using css: css tt { font-family: "lucida console", "menlo", "monaco", "courier", monospace; } html <p>enter the following at the telnet command prompt: <code>set localecho</code><br /> the telnet client should display: <tt>local echo is on</tt></p> result usage notes the <tt> element is, by default, r
endered using the browser's default non-proportional font.
...And 2 more matches
<wbr> - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... permitted content empty tag omission it is an empty element; it must have a start tag, but must not have an
end tag.
...to make a hyphen appear only at the
end of a line, use the soft hyphen character entity (­) instead.
...And 2 more matches
dir - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... as the directionality of the text is semantically related to its content and not to its presentation, it is recomm
ended that web developers use this attribute instead of the related css properties when possible.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'dir' in that specification.
...And 2 more matches
hidden - HTML: Hypertext Markup Language
browsers won't r
ender elements with the hidden attribute set.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... hidden elements shouldn't be linked from non-hidden elements, and elements that are desc
endants of a hidden element are still active, which means that script elements can still execute and form elements can still submit.
...And 2 more matches
lang - HTML: Hypertext Markup Language
the default value of lang is unknown, therefore it is recomm
ended to always specify this attribute with the appropriate value.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'lang' in that specification.
...And 2 more matches
HTML: Hypertext Markup Language
looking to become a front-
end web developer?
...registering and logging in, s
ending feedback, buying products, and more.
... this module gets you started with creating the client-side/front-
end parts of forms.
...And 2 more matches
Content-Security-Policy-Report-Only - HTTP
content-security-policy-report-only: default-src https:; report-uri /csp-violation-report-
endpoint/ if you still want to receive reporting, but also want to enforce a policy, use the content-security-policy header with the report-uri directive.
... content-security-policy: default-src https:; report-uri /csp-violation-report-
endpoint/ violation report syntax the report json object contains the following data: blocked-uri the uri of the resource that was blocked from loading by the content security policy.
... disposition either "enforce" or "report" dep
ending on whether the content-security-policy header or the content-security-policy-report-only header is used.
...And 2 more matches
X-Frame-Options - HTTP
the x-frame-options http response header can be used to indicate whether or not a browser should be allowed to r
ender a page in a <frame>, <iframe>, <embed> or <object>.
...the spec leaves it up to browser v
endors to decide whether this option applies to the top level, the parent, or the whole chain, although it is argued that the option is not very useful unless all ancestors are also in the same origin (see bug 725490).
... configuring apache to configure apache to s
end the x-frame-options header for all pages, add this to your site's configuration: header always set x-frame-options "sameorigin" to configure apache to set the x-frame-options deny, add this to your site's configuration: header set x-frame-options "deny" configuring nginx to configure nginx to s
end the x-frame-options header, add this either to your http, server or location configuration: ...
...And 2 more matches
HTTP Public Key Pinning (HPKP) - HTTP
extracting the base64 encoded public key information note: while the example below shows how to set a pin on a server certificate, it is recomm
ended to place the pin on the intermediate certificate of the ca that issued the server certificate, to ease certificates renewals and rotations.
...this header only s
ends reports to the report-uri specified in the header and does still allow browsers to connect to the webserver even if the pinning is violated.
... setting up your webserver to include the hpkp header the concrete steps necessary to deliver the hpkp header dep
end on the web server you use.
...And 2 more matches
HTTP range requests - HTTP
http range requests allow to s
end only a portion of an http message from a server to a client.
...some sites also explicitly s
end "none" as a value, indicating no support.
...the "-h" option will app
end a header line to the request, which in this case is the range header requesting the first 1024 bytes.
...And 2 more matches
Grammar and types - JavaScript
ecmascript also has rules for automatic insertion of semicolons (asi) to
end statements.
...this syntax can be used to declare both local and global variables, dep
ending on the execution context.
...the following example creates the fish array: let fish = ['lion', , 'angel']; this array has two elements with values and one empty element: fish[0] is "lion" fish[1] is undefined fish[2] is "angel" if you include a trailing comma at the
end of the list of elements, the comma is ignored.
...And 2 more matches
Using Promises - JavaScript
error propagation you might recall seeing failurecallback three times in the pyramid of doom earlier, compared to only once at the
end of the promise chain: dosomething() .then(result => dosomethingelse(result)) .then(newresult => dothirdthing(newresult)) .then(finalresult => console.log(`got the final result: ${finalresult}`)) .catch(failurecallback); if there's an exception, the browser will look down the chain for .catch() handlers or onrejected.
...result3) */ timing to avoid surprises, functions passed to then() will never be called synchronously, even with an already-resolved promise: promise.resolve().then(() => console.log(2)); console.log(1); // 1, 2 instead of running immediately, the passed-in function is put on a microtask queue, which means it runs later when the queue is emptied at the
end of the current run of the javascript event loop, i.e.
...as a consequence, the chain is broken, or rather, we have two indep
endent chains racing.
...And 2 more matches
constructor - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if your class is a base class, the default constructor is empty: constructor() {} if your class is a derived class, the default constructor calls the parent constructor, passing along any arguments that were provided: constructor(...args) { super(...args); } that enables code like this to work: class validationerror ext
ends error { printcustomermessage() { return `validation failed :-( (details: ${this.message})`; } } try { throw new validationerror("not a valid phone number"); } catch (error) { if (error instanceof validationerror) { console.log(error.name); // this is error instead of validationerror!
...for example: class validationerror ext
ends error { constructor(message) { super(message); // call parent class constructor this.name = 'validationerror'; this.code = '42'; } printcustomermessage() { return `validation failed :-( (details: ${this.message}, code: ${this.code})`; } } try { throw new validationerror("not a valid phone number"); } catch (error) { if (error instanceof validationerror) { c...
...And 2 more matches
Array.prototype.push() - JavaScript
the push() method adds one or more elements to the
end of an array and returns the new length of the array.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax arr.push([element1[, ...[, elementn]]]) parameters elementn the element(s) to add to the
end of the array.
...And 2 more matches
DataView.prototype.getBigInt64() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getbigint64(byteoffset [, little
endian]) parameters byteoffset the offset, in bytes, from the start of the view to read the data from.
... little
endian optional indicates whether the 64-bit int is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getBigUint64() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getbiguint64(byteoffset [, little
endian]) parameters byteoffset the offset, in bytes, from the start of the view to read the data from.
... little
endian optional indicates whether the 64-bit int is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getFloat32() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getfloat32(byteoffset [, little
endian]) parameters byteoffset the offset, in byte, from the start of the view where to read the data.
... little
endian optional indicates whether the 32-bit float is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getFloat64() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getfloat64(byteoffset [, little
endian]) parameters byteoffset the offset, in byte, from the start of the view where to read the data.
... little
endian optional indicates whether the 64-bit float is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getInt16() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getint16(byteoffset [, little
endian]) parameters byteoffset the offset, in byte, from the start of the view where to read the data.
... little
endian optional indicates whether the 16-bit int is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getInt32() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getint32(byteoffset [, little
endian]) parameters byteoffset the offset, in bytes, from the start of the view where to read the data.
... little
endian optional indicates whether the 32-bit int is stored in little- or big-
endian format.
...And 2 more matches
DataView.prototype.getUint16() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax dataview.getuint16(byteoffset [, little
endian]) parameters byteoffset the offset, in byte, from the start of the view where to read the data.
... little
endian optional indicates whether the 16-bit int is stored in little- or big-
endian format.
...And 2 more matches
Promise.all() - JavaScript
if you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... a p
ending promise in all other cases.
...it is typically used when there are multiple asynchronous tasks that are dep
endent on one another to complete successfully, as it does not wait and will reject immediately upon any of the input promises rejecting.
...And 2 more matches
Promise.race() - JavaScript
if you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... return value a p
ending promise that asynchronously yields the value of the first promise in the given iterable to fulfill or reject.
... if the iterable passed is empty, the promise returned will be forever p
ending.
...And 2 more matches
String.prototype.replace() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... (the exact number of arguments dep
ends on whether the first argument is a regexp object—and, if so, how many parenthesized submatches it specifies.) the following example will set newstring to 'abc - 12345 - #$*%': function replacer(match, p1, p2, p3, offset, string) { // p1 is nondigits, p2 digits, and p3 non-alphanumerics return [p1, p2, p3].join(' - '); } let newstring = 'abc12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, repl...
...the fahrenheit degree should be a number
ending with "f".
...And 2 more matches
Symbol.match - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...for example, the methods string.prototype.startswith(), string.prototype.
endswith() and string.prototype.includes(), check if their first argument is a regular expression and will throw a typeerror if they are.
... now, if the match symbol is set to false (or a falsy value), it indicates that the object is not int
ended to be used as a regular expression object.
...And 2 more matches
WebAssembly.CompileError - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...androidfirefox for androidopera for androidsafari on iossamsung internetnode.jscompileerrorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0compileerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in th...
...And 2 more matches
WebAssembly.LinkError - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...or androidfirefox for androidopera for androidsafari on iossamsung internetnode.jslinkerrorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0linkerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the f...
...And 2 more matches
WebAssembly.RuntimeError - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsruntimeerrorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0runtimeerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in th...
...And 2 more matches
for...in - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... deleted, added, or modified properties a for...in loop iterates over the properties of an object in an arbitrary order (see the delete operator for more on why one cannot dep
end on the seeming orderliness of iteration, at least in a cross-browser setting).
... because the order of iteration is implementation-dep
endent, iterating over an array may not visit elements in a consistent order.
...And 2 more matches
MathML attribute reference - MathML
columnspan <mtd> a non-negative integer value that indicates over how many table columns the cell ext
ends.
... display <math> specifies the r
endering mode.
... lquote <ms> the opening quote character (dep
ends on dir) to enclose the content.
...And 2 more matches
<mrow> - MathML
this element r
enders as a horizontal row containing its arguments.
...proper grouping helps the r
endering of the expression in several ways: it can improve the display by possibly affecting spacing.
... it simplifies the interpretation of the expression by automated systems such as computer algebra systems and audio r
enderers.
...And 2 more matches
<semantics> - MathML
the rules of determining the visible child in a <semantics> element are the following: if no rule other rule applies: by default only the first child is r
endered, which is supposed to be presentation markup.
... if the first child is a presentation mathml element other than <annotation> or <annotation-xml>, r
ender the first child.
... if no presentation mathml is found, r
ender the first <annotation> or <annotation-xml> child element of <semantics>.
...And 2 more matches
Performance Monitoring: RUM vs synthetic monitoring - Web Performance
rum is generally best suited for understanding long-term tr
ends whereas synthetic monitoring is very well suited to regression testing and mitigating shorter-term performance issues during development.
...synthetic monitoring involves deploying scripts to simulate the path an
end user might take through a web application, reporting back the performance the simulator experiences.
...rum helps identify how an application is being used, including the geographic distribution of users and the impact of that distribution on the
end user experience.
...And 2 more matches
Progressive loading - Progressive web apps (PWAs)
r
ender-blocking resources bundling is a problem, because the browser has to load the html, css, and javascript before it can paint their r
endered results onto the screen.
... to fix that we can, for example, add defer to javascript files: <script src="app.js" defer></script> they will be downloaded and executed after the document itself has been parsed, so it won't block r
endering the html structure.
... we r
ender the images with a blur at the beginning, so a transition to the sharp one can be achieved: article img[data-src] { filter: blur(0.2em); } article img { filter: blur(0em); transition: filter 0.5s; } this will remove the blur effect within half a second, which looks good enough for the "loading" effect.
...And 2 more matches
Graphic design for responsive sites - Progressive web apps (PWAs)
this really dep
ends on what target devices you have to support, how complex the graphics need to be, and how much interactivity your graphics require.
... serving images selectively via css in general, you will use mostly the same graphical assets for different layouts in a responsive design, but you may well include slightly different ones dep
endant on context.
... css media queries allow us to serve different css rules dep
endant on viewport dimensions, and you should consider using mobile first media queries where possible.
...And 2 more matches
Mobile first - Progressive web apps (PWAs)
if you are using mechanisms like feature detection and matchmedia to conditionally load scripting functionality dep
ending on viewport size, feature support, etc., you should just load the very basics that pretty much all browsers will need first, then progressively enhance browsers higher up the food chain.
...this puts the content first at the top of the page and means that when the user has reached the
end of a page, they have a signpost giving them an idea of where to go next.
...when they are not supported, the <html> tag looks like this: <html class=" js no-rgba no-multiplebgs"> when these are present, we can serve alternative styling rules to provide sensible fallbacks using desc
endant selectors — see the following in my code.
...And 2 more matches
SVG Conditional Processing Attributes - SVG: Scalable Vector Graphics
the svg conditional processing attributes are all the attributes that can be specified on some svg elements to control whether or not the element on which it appears should be r
endered.
... externalresourcesrequired requiredextensions requiredfeatures systemlanguage attributes externalresourcesrequired deprecated since svg 2 if set to true, it indicates that the browser must wait for all the external resources necessary to r
ender that element to be loaded before processing the associated element.
... value: false|true; animatable: no requiredextensions list all the browser specific capabilities that must be supported by the borwser to be allowed to r
ender the associated element.
...And 2 more matches
clip-path - SVG: Scalable Vector Graphics
" clip-path="circle() view-box" /> </svg> usage notes value <url> | [ <basic-shape> || <geometry-box> ] | none default value none animatable yes <geometry-box> an extra information to tell how a <basic-shape> is applied to an element: fill-box indicates to use the object bounding box; stroke-box indicates to use the object bounding box ext
ended with the stroke; view-box indicates to use the nearest svg viewport as the reference box.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specifications specification status comment css masking module level 1the definition of 'clip-path' in that specification.
...And 2 more matches
color-interpolation - SVG: Scalable Vector Graphics
when a child element is bl
ended into a background, the value of the color-interpolation property on the child determines the type of bl
ending, not the value of the color-interpolation on the parent.
... candidate recomm
endation no significant change scalable vector graphics (svg) 1.1 (second edition)the definition of 'color-interpolation' in that specification.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
color - SVG: Scalable Vector Graphics
usage notes value <color> | inherit default value dep
ends on user agent animatable yes example html, body, svg { height: 100%; } <svg viewbox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <g color="green"> <rect width="50" height="50" fill="currentcolor" /> <circle r="25" cx="70" cy="70" stroke="currentcolor" fill="none" stroke-width="5" /> </g> </svg> specifications specification status comm...
... candidate recomm
endation removed the restriction to which elements it applies.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
direction - SVG: Scalable Vector Graphics
it defines the start and
end points of a line of text as used by the text-anchor and inline-size properties.
... it applies only to glyphs oriented perp
endicular to the inline-base direction, which includes the usual case of horizontally-oriented latin or arabic text and the case of narrow-cell latin or arabic characters rotated 90 degrees clockwise relative to a top-to-bottom inline-base direction.
... proposed recomm
endation definition in css scalable vector graphics (svg) 2the definition of 'direction' in that specification.
...And 2 more matches
fill - SVG: Scalable Vector Graphics
candidate recomm
endation definition for shapes and texts.
... recomm
endation initial definition for animations scalable vector graphics (svg) 1.1 (second edition)the definition of 'fill' in that specification.
... recomm
endation initial definition for shapes and texts browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
font-style - SVG: Scalable Vector Graphics
the font-style attribute specifies whether the text is to be r
endered using a normal, italic, or oblique face.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'font-style' in that specification.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
font-weight - SVG: Scalable Vector Graphics
the font-weight attribute refers to the boldness or lightness of the glyphs used to r
ender the text, relative to other fonts in the same font family.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'font-weight' in that specification.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
in - SVG: Scalable Vector Graphics
fourteen elements are using this attribute: <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <fegaussianblur>, <femergenode>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile> usage notes value sourcegraphic | sourcealpha | backgroundimage | backgroundalpha | fillpaint | strokepaint | <filter-primitive-reference> default va...
... workaround for backgroundimage instead of using in="backgroundimage", we need to import one of the images to bl
end inside the filter itself, using an <feimage> element.
...--> <febl
end in="backgroundimage" in2="sourcegraphic" mode="multiply"/> </filter> </defs> <image xlink:href="https://developer.mozilla.org/files/6457/mdn_logo_only_color.png" x="10%" y="10%" width="80%" height="80%"/> <circle cx="50%" cy="40%" r="40%" fill="#c00" style="filter:url(#backgroundmultiply);" /> </svg> <svg style="width:200px; height:200px; display: inline;" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <defs> <filter id="imagemultiply"> <!-- this is a workaroun...
...And 2 more matches
orient - SVG: Scalable Vector Graphics
orient="auto-start-reverse"> <path d="m 0 0 l 10 5 l 0 10 z" /> </marker> <marker id="dataarrow" viewbox="0 0 10 10" refx="5" refy="5" markerwidth="6" markerheight="6" orient="-65deg"> <path d="m 0 0 l 10 5 l 0 10 z" fill="red" /> </marker> </defs> <polyline points="10,10 10,90 90,90" fill="none" stroke="black" marker-start="url(#arrow)" marker-
end="url(#arrow)" /> <polyline points="15,80 29,50 43,60 57,30 71,40 85,15" fill="none" stroke="grey" marker-start="url(#dataarrow)" marker-mid="url(#dataarrow)" marker-
end="url(#dataarrow)" /> </svg> usage notes value auto | auto-start-reverse | <angle> | <number> default value 0 animatable yes (non-additive) auto this value indicates...
... note: this allows a single arrowhead marker to be defined that can be used for both the start and
end of a path, i.e.
... which points outwards from both
ends.
...And 2 more matches
path - SVG: Scalable Vector Graphics
the path attribute has two different meanings, either it defines a text path along which the characters of a text are r
endered, or a motion path along which a referenced element is animated.
... textpath for <textpath>, path defines the path onto which the glyphs of a <text> element will be r
endered.
...this means that the text within the <textpath> element does not r
ender or contribute to the bounding box of the <text> element.
...And 2 more matches
requiredExtensions - SVG: Scalable Vector Graphics
if all of the given extensions are supported, then the attribute evaluates to true; otherwise, the current element and its children are skipped and thus will not be r
endered.
...if the attribute is used in other situations, then it represents a simple switch on the given element whether to r
ender the element or not.
...it is thus recomm
ended to include a "catch-all" choice at the
end of such a <switch> which is acceptable in all cases.
...And 2 more matches
spreadMethod - SVG: Scalable Vector Graphics
candidate recomm
endation no change scalable vector graphics (svg) 2the definition of 'spreadmethod for <lineargradient>' in that specification.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'spreadmethod for <radialgradient>' in that specification.
... recomm
endation initial definition for <radialgradient> scalable vector graphics (svg) 1.1 (second edition)the definition of 'spreadmethod for <lineargradient>' in that specification.
...And 2 more matches
stroke-miterlimit - SVG: Scalable Vector Graphics
0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3 m1,19 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3 m1,29 l7,-3 l7,3 m2,0 l3.5,-3 l3.5,3 m2,0 l2,-3 l2,3 m2,0 l0.75,-3 l0.75,3 m2,0 l0.5,-3 l0.5,3" /> </svg> when two line segments meet at a sharp angle and miter joins have been specified for stroke-linejoin, it is possible for the miter to ext
end far beyond the thickness of the line stroking the path.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specification specification status comment scalable vector graphics (svg) 2the definition of 'stroke-miterlimit' in that specification.
...And 2 more matches
to - SVG: Scalable Vector Graphics
ght: 100%; } <svg viewbox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"> <rect x="10" y="10" width="100" height="100"> <animate attributetype="xml" attributename="width" fill="freeze" from="100" to="150" dur="3s"/> </rect> </svg> animate, animatecolor, animatemotion, animatetransform for <animate>, <animatecolor>, <animatemotion>, and <animatetransform>, to specifies the
ending value of the animation.
... value <value> default value none animatable no the exact value type for this attribute dep
end on the value of the attribute that will be animated.
... value <value> default value none animatable no the exact value type for this attribute dep
end on the value of the attribute that will be animated.
...And 2 more matches
values - SVG: Scalable Vector Graphics
the values attribute has different meanings, dep
ending upon the context where itʼs used, either it defines a sequence of values used over the course of an animation, or itʼs a list of numbers for a color matrix, which is interpreted differently dep
ending on the type of color change to be performed.
... fecolormatrix for the <fecolormatrix> element, values is a list of numbers interpreted differently dep
ending on the value of the type attribute.
... value <list-of-numbers> default value if type="matrix", identity matrix, if type="saturate", 1, resulting in identity matrix, if type="huerotate", 0, resulting in identity matrix animatable yes <list-of-numbers> the value is a list of numbers, which is interpreted differently dep
ending on the value of the type attribute: for type="matrix", values is a list of 20 matrix values (a00 a01 a02 a03 a04 a10 a11 ...
...And 2 more matches
writing-mode - SVG: Scalable Vector Graphics
proposed recomm
endation definition in css writing modes 3 scalable vector graphics (svg) 2the definition of 'writing-mode' in that specification.
... candidate recomm
endation mainly refers to the definition in css writing modes 3 and defines a mapping between the deprecated svg 1.1 values and the new values.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
...And 2 more matches
<a> - SVG: Scalable Vector Graphics
for a more widely-supported feature addressing the same use cases, see navigator.s
endbeacon().
... value type: <list-of-urls> ; default value: none; animatable: no referrerpolicy which referrer to s
end when fetching the url.
... yes global attributes core attributes most notably: id, lang, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, document element event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility xlink attributes most notably: xlink:title aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-bu...
...And 2 more matches
<cursor> - SVG: Scalable Vector Graphics
the <cursor> svg element can be used to define a platform-indep
endent custom cursor.
... a recomm
ended approach for defining a platform-indep
endent custom cursor is to create a png image and define a cursor element that references the png image and identifies the exact position within the image which is the pointer position (i.e., the hot spot).
... the png format is recomm
ended because it supports the ability to define a transparency mask via an alpha channel.
...And 2 more matches
<image> - SVG: Scalable Vector Graphics
width: the width the image r
enders at.
... height: the height the image r
enders at.
... example basic r
endering of a png image in svg: svg <svg width="200" height="200" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <image href="https://mdn.mozillademos.org/files/6457/mdn_logo_only_color.png" height="200" width="200"/> </svg> result specifications specification status comment scalable vector graphics (svg) 2the definition of '<image>' in that specification.
...And 2 more matches
<line> - SVG: Scalable Vector Graphics
value type: <length>|<percentage>|<number> ; default value: 0; animatable: yes x2 defines the x-axis coordinate of the line
ending point.
... value type: <length>|<percentage>|<number> ; default value: 0; animatable: yes y2 defines the y-axis coordinate of the line
ending point.
...umber> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
...And 2 more matches
<marker> - SVG: Scalable Vector Graphics
markers are attached to shapes using the marker-start, marker-mid, and marker-
end properties.
... /> </marker> <!-- simple dot marker definition --> <marker id="dot" viewbox="0 0 10 10" refx="5" refy="5" markerwidth="5" markerheight="5"> <circle cx="5" cy="5" r="5" fill="red" /> </marker> </defs> <!-- coordinate axes with a arrowhead in both direction --> <polyline points="10,10 10,90 90,90" fill="none" stroke="black" marker-start="url(#arrow)" marker-
end="url(#arrow)" /> <!-- data line with polymarkers --> <polyline points="15,80 29,50 43,60 57,30 71,40 85,15" fill="none" stroke="grey" marker-start="url(#dot)" marker-mid="url(#dot)" marker-
end="url(#dot)" /> </svg> attributes markerheight this attribute defines the height of the marker viewport.
... value type: <list-of-numbers> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
...And 2 more matches
Certificate Transparency - Web security
newly issued certificates are 'logged' to publicly run, often indep
endent ct logs which maintain an app
end-only, cryptographically assured record of issued tls certificates.
...browser v
endors and root store maintainers are also empowered to make more informed decisions regarding problematic cas that they may decide to distrust.
...the label of the root node therefore dep
ends on all other nodes in the tree.
...And 2 more matches
Transport Layer Security - Web security
the security of any connection using transport layer security (tls) is heavily dep
endent upon the cipher suites and security parameters selected.
...the mozilla opsec guide to tls configurations provides more information on recomm
ended configurations.
... to assist you in configuring your site, mozilla provides a helpful tls configuration generator that will generate configuration files for the following web servers: apache nginx lighttpd haproxy amazon web services cloudformation elastic load balancer using the configurator is a recomm
ended way to create the configuration to meet your needs; then copy and paste it into the appropriate file on your server and restart the server to pick up the changes.
...And 2 more matches
Types of attacks - Web security
the victim then retrieves this malicious script from the server when the browser s
ends a request for data.
...for
endpoints that require a post request, it's possible to programmatically trigger a <form> submit (perhaps in an invisible <iframe>) when the page is loaded: <form action="https://bank.example.com/withdraw" method="post"> <input type="hidden" name="account" value="bob"> <input type="hidden" name="amount" value="1000000"> <input type="hidden" name="for" value="mallory"> </form> <script>window.ad...
...deventlistener('domcontentloaded', (e) => { document.queryselector('form').submit(); }</script> there are a few techniques that should be used to prevent this from happening: get
endpoints should be idempotent—actions that enact a change and do not simply retrieve data should require s
ending a post (or other http method) request.
...And 2 more matches
Web security
this secure connection allows clients to be sure that they are connected with the int
ended server, and to exchange sensitive data.
...newly issued certificates are 'logged' to publicly run, often indep
endent ct logs which maintain an app
end-only, cryptographically assured record of issued tls certificates.
... redirection with 301 and 302 response codes to be written data security using http cookies an http cookie (web cookie, browser cookie) is a small piece of data that a server s
ends to the user's web browser.
...And 2 more matches
context-menu - Archive of obsolete content
selectorcontext will match if the menu is invoked on the node specified or any desc
endant of that node, but the "context" event handler is passed the actual node on which the menu was invoked.
....on('click', function (node, data) {" + " console.log('clicked: ' + node.nodename);" + "});"; var cm = require("sdk/context-menu"); cm.item({ label: "body context", context: cm.selectorcontext("body"), contentscript: script }); this add-on creates a context-menu item that uses selectorcontext to display the item whenever the context menu is activated on any desc
endant of the <body> element.
... methods additem(item) app
ends a menu item to the
end of the menu.
...if the item is already contained in this menu it will just be moved to the
end of the menu.
system - Archive of obsolete content
tem.architecture); // compiler used to build host application console.log("compiler = " + system.compiler); // host application build identifier console.log("build = " + system.build); // host application uuid console.log("id = " + system.id); // host application name console.log("name = " + system.name); // host application version console.log("version = " + system.version); // host application v
endor console.log("v
endor = " + system.v
endor); // host application profile directory console.log("profile directory = " + system.pathfor("profd")); quit the host application to quit the host application, use the exit() function.
...this has traditionally been in the form "{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}" but for some applications it may be in the form "appname@v
endor.tld".
... var system = require("sdk/system"); console.log("xulrunner version = " + system.platformversion); v
endor the name of the host application's v
endor, for example: "mozilla".
... var system = require("sdk/system"); console.log("v
endor = " + system.v
endor); ...
remote/child - Archive of obsolete content
communicating with the parent process to communicate with the parent process, the process, frames, and frame objects in sdk/remote/child have a port object that you can use to receive messages from, and s
end messages to, code in the parent.
... properties port an event emitter that s
ends and receives events from the main process.
... properties port an event emitter that s
ends and receives events from every frame in this process.
... properties port an event emitter that can be used to s
end and receive frame specific events to and from code in the main process.
Storing annotations - Archive of obsolete content
.find('.url').bind('click', function(event) { event.stoppropagation(); event.preventdefault(); self.postmessage(storedannotation.url); }); annotationhtml.find('.selection-text') .text(storedannotation.anchortext); annotationhtml.find('.annotation-text') .text(storedannotation.annotationtext); annotationlist.app
end(annotationhtml); }); }); it builds the dom for the panel from the array of annotations it is given.
...so the content script binds a click handler to the links which will s
end the url to the add-on.
... when the panel is shown we s
end it the array of stored annotations.
... when the panel s
ends us a url we use the tabs module to open it in a new tab.
Modifying Web Pages Based on URL - Archive of obsolete content
communicating with the content script your add-on script and content scripts can't directly access each other's variables or call each other's functions, but they can s
end each other messages.
... to s
end a message from one side to the other, s
ender calls port.emit() and receiver listens using port.on().
...self.port.on("replacepage", function(message) { document.body.innerhtml = "<h1>" + message + "</h1>"; }); in the add-on script, we'll s
end the content script a message inside onattach.
... // import the page-mod api var pagemod = require("sdk/page-mod"); // import the self api var self = require("sdk/self"); // create a page-mod // it will run a script whenever a ".org" url is loaded // the script replaces the page contents with a message pagemod.pagemod({ include: "*.org", contentscriptfile: self.data.url("my-script.js"), // s
end the content script a message inside onattach onattach: function(worker) { worker.port.emit("replacepage", "page matches ruleset"); } }); the replacepage message isn't a built-in message: it's a message defined by the add-on in the port.emit() call.
Modifying the Page Hosted by a Tab - Archive of obsolete content
l: "load several scripts", icon: "./icon-16.png", onclick: function () { tabs.activetab.attach({ contentscriptfile: [self.data.url('first.js'), self.data.url('second.js')] }); } }); communicating with the content scripts your add-on script and content scripts can't directly access each other's variables or call each other's functions, but they can s
end each other messages.
... to s
end a message from one side to the other, s
ender calls port.emit() and receiver listens using port.on().
... in the add-on script, tab.attach() returns a worker object containing the port property you use to s
end messages to the content script.
... the content script now needs to look like this: // "self" is a global object in content scripts // listen for a "drawborder" self.port.on("drawborder", function(color) { document.body.style.border = "5px solid " + color; }); in the add-on script, we'll s
end the content script a "drawborder" message using the object returned from attach(): var self = require("sdk/self"); var tabs = require("sdk/tabs"); var button = require("sdk/ui/button/action").actionbutton({ id: "style-tab", label: "style tab", icon: "./icon-16.png", onclick: function() { var worker = tabs.activetab.attach({ contentscriptfile: self.data.url("my-script.js") }); worker.port.emit("drawborder", "red"); ...
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.queryinterface(components.interfaces.nsiinterfacerequestor) .getinterface(components.interfaces.nsidomwindowutils); utils.s
endmouseevent("mousedown", 10, 10, 0, 1, 0); utils.s
endmouseevent("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.getselection(); // |window| object is implied; i.e., window.content.getselection() or: getbrowserselection(); // |window| object ...
... addeventlistener("blur", function(e) {onblurinput(e);}, false); } } function onfocusinput(focusevent) { focusedcontrol = focusevent.originaltarget; } function onblurinput(blurevent) { focusedcontrol = null; } or var element = document.commanddispatcher.focusedelement; inserting text at the cursor function inserttext(element, snippet) { var selection
end = element.selectionstart + snippet.length; var currentvalue = element.value; var beforetext = currentvalue.substring(0, element.selectionstart); var aftertext = currentvalue.substring(element.selection
end, currentvalue.length); element.value = beforetext + snippet + aftertext; element.focus(); //put the cursor after the inserted text element.setselectionrange(selection
end, select...
...ion
end); } inserttext(document.getelementbyid("example"), "the text to be inserted"); disabling javascript programmatically // disable js in the currently active tab from the context of browser.xul gbrowser.docshell.allowjavascript = false; if this isn't your browser, you should save the value and restore it when finished.
...stream;1"].getservice(ci.nsiscriptableinputstream); var channel = gioservice.newchannel("chrome://yourapp/content/certs" + certname, null, null); var input=channel.open(); scriptablestream.init(input); var certfile=scriptablestream.read(input.available()); scriptablestream.close(); input.close(); var begincert = "-----begin certificate-----"; var
endcert = "-----
end certificate-----"; certfile = certfile.replace(/[\r\n]/g, ""); var begin = certfile.indexof(begincert); var
end = certfile.indexof(
endcert); var cert = certfile.substring(begin + begincert.length,
end); certdb.addcertfrombase64(cert, certtrust, ""); }, classdescription: "certificate service", contractid: "@mozilla.org/certs-service;2", ...
Rosetta - Archive of obsolete content
|*| http://www.gnu.org/licenses/gpl-3.0.html |*| |*| syntax: |*| |*| rosetta.app
endcompiler([ "text/x-csrc", "text/x-c" ], yourcompiler); |*| \*/ var rosetta = new (function () { function createscript (oscript, oxhr200) { var smimetype = oscript.getattribute("type").tolowercase(), obaton = document.createcomment(" the previous code has been automatically translated from \"" + smimetype + "\" to \"text/ecmascript\".
... function reqerror (oerror) { throw new urierror("the script " + oerror.target.src + " is not accessible."); } function reqsuccess () { createscript(this.refscript, this); } function getsource (oscript) { var oreq = new xmlhttprequest(); oreq.onload = reqsuccess; oreq.onerror = reqerror; oreq.refscript = oscript; oreq.open("get", oscript.src, true); oreq.s
end(null); } function parsescript (oscript) { if (oscript.hasattribute("type") && !rignoremimes.test(oscript.getattribute("type").tolowercase())) { oscript.hasattribute("src") ?
...t); } } function parsedocument () { for ( var ascripts = document.getelementsbytagname("script"), nidx = 0; nidx < ascripts.length; parsescript(ascripts[nidx++]) ); } var odicts = {}, rignoremimes = /^\s*(?:text\/javascript|text\/ecmascript)\s*$/; this.translatescript = parsescript; this.translateall = parsedocument; this.app
endcompiler = function (vmimetypes, fcompiler) { if (arguments.length < 2) { throw new typeerror("rosetta.app
endcompiler() \u2013 not enough arguments"); } if (typeof fcompiler !== "function") { throw new typeerror("rosetta.app
endcompiler() \u2013 second argument must be a function"); } if (!array.isarray(vmimetypes)) { odicts[(vmimetypes).tostring()] = fcompi...
...*/ return "alert(\"here you have the c code to be compiled to ecmascript:\\n\\n\" + " + json.stringify(scsrc) + ");"; } rosetta.app
endcompiler([ "text/x-csrc", "text/x-c" ], createecmasrc); })(); note: creating a compiler from scratch can be a very difficult task.
Extension Etiquette - Archive of obsolete content
other ui elements in general, toolbar items are very useful to
end users because they can be removed or added to various toolbars as necessary.
...these often include areas such as: object prototypes, such as string.prototype, which are often ext
ended to add methods to native objects.
... general dep
endencies requiring a user to download another extension in order to use yours isn't nice.
... avoid the dep
endency on other extensions, especially extensions that you didn't develop.
Chapter 2: Technologies used in developing extensions - Archive of obsolete content
as the "extensible" part of xml implies, elements from various xml-based languages such as xhtml and svg can be interspersed in one another as a means to ext
end the language.
...the gecko r
endering engine handles nearly all of css level 2 and some of css level 3.
... javascript is a prototype-based object-oriented language, and as shown in listing 3, also permits indep
endent class definitions.
... listing 4: an example manipulation using the dom var bar = document.getelementbyid('toolbar'); bar.removechild(bar.childnodes[1]); bar.app
endchild(document.createelement('button')); bar.lastchild.setattribute('label', 'hello!'); « previousnext » ...
JavaScript Object Management - Archive of obsolete content
notice the way we s
end callback functions as parameters, and the use of an alternate reference for this which we always name that.
...all of your scripts and objects are replicated for each window, and they work indep
endently from each other.
...since entities t
end to be used all throughout an application, we think that having those classes defined at the module level is the best approach.
... jsm is the best solution to handle objects that are window-indep
endent.
Security best practices in extensions - Archive of obsolete content
this document is int
ended as a guide for developers to promote best practices in securing your extension.
...other items are recomm
endations.
... the privileges that a document gets also dep
end on where it comes from.
...there are ways to get around the content/chrome security barrier, if for example, you want a web page to s
end a notification to the add-on (or vice versa).
Tabbed browser - Archive of obsolete content
here, i found that "interfacerequestor.getinterface(components.interfaces.nsiloadcontext);" worked fine, so im thinking in ff26 it doesnt use asubject.loadgroup.notificationcallbacks anymore, but im not sure } catch (ex2) { loadcontext = null; //this is a problem i dont know why it would get here } } /*
end do not edit here*/ /*start - do all your edits below here*/ var url = ohttp.uri.spec; //can get url without needing loadcontext if (loadcontext) { var contentwindow = loadcontext.associatedwindow; //this is the html window of the page that just loaded //adomwindow this is the firefox window holding the tab var ado...
...e tab xul element, the one found in the tab strip of the firefox window, atab.linkedbrowser is same as browser var above //can stylize tab like atab.style.backgroundcolor = 'blue'; //can stylize the tab like atab.style.fontcolor = 'red'; var browser = atab.linkedbrowser; //this is the browser within the tab //this is what the example in the previous section gives //
end getting other useful stuff } else { components.utils.reporterror('exception: load context not found!!'); //this is likely no big deal as the channel proably has no associated window, ie: the channel was loading some resource.
... but if its an ajax call you may
end up here } } } }; here's a cleaner example of the same thing: cu.import('resource://gre/modules/services.jsm'); var httprequestobserver = { observe: function (subject, topic, data) { var httpchannel, requesturl; if (topic == "http-on-modify-request") { httpchannel = subject.queryinterface(ci.nsihttpchannel); requesturl = httpchannel.uri.spec; var newrequesturl, i; if (/someurl/.test(requesturl)) { var goodies = loadcontextgoodies(httpchannel); if (goodies) { httpchannel.cancel(cr.ns_binding_aborted); goodies.contentwindow.location = self.data.url('pages/test.html'); } else ...
...op); //this is the clickable tab xul element, the one found in the tab strip of the firefox window, atab.linkedbrowser is same as browser var above //can stylize tab like atab.style.backgroundcolor = 'blue'; //can stylize the tab like atab.style.fontcolor = 'red'; var browser = atab.linkedbrowser; //this is the browser within the tab //this is where the example in the previous section
ends return { adomwindow: adomwindow, gbrowser: gbrowser, atab: atab, browser: browser, contentwindow: contentwindow }; } } //
end loadcontext stuff } ...
Add-ons - Archive of obsolete content
extensions use a directory structure which can provide chrome, components, and other files to ext
end the functionality of an xul program.
... interaction between privileged and non-privileged pages an easy way to s
end data from a web page to an extension is by using custom dom events.
... security best practices in extensions this document is int
ended as a guide for developers to promote best practices in securing your extension.
...other items are recomm
endations.
Defining Cross-Browser Tooltips - Archive of obsolete content
learn how to define "tooltips" in a cross-browser, standards-fri
endly way.
...values of the title attribute may be r
endered by user agents in a variety of ways.
... the solution the most obvious solution is to use the alt and title attributes for their int
ended purposes, instead of adhering to their historical misuses.
... recomm
endations use the title attribute (instead of alt) to ensure desired tooltip behavior in multiple browsers.
Bookmark Keywords - Archive of obsolete content
however, the two should not be a case-sensitive match-- that is, if your keyword is av, then your title should be "av" or "av" or anything besides "av." (see bugzilla entry 119201 for details.) since this bookmark is int
ended to look up bugzilla entries, we'll call it "bz," as shown in figure 3.
...switch to the "location:" field and go all the way to the
end.
...you should
end up with the result shown in figure 4, without the red highlighting.
... the %s is a little flag that means "insert user input here." it doesn't have to go at the
end of the location field-- it can be anywhere inside the field.
Compiling The npruntime Sample Plugin in Visual Studio - Archive of obsolete content
general decisions filename of dll must start with "np" (not "ns") and
ends with ".dll" (i wasted hours on this - repeatedly) mimetype reflects the data type handled by the plugin.
...to reflect your plugin remove the function npp_getjavaclass from npp_gate.cpp build rename the resulting dll so that the filename starts with "np" and
ends with ".dll" (or "32.dll"?
...in fact, all win32 api functions dealing with character strings can be added an 'a' to the
end to avoid unicode cast errors.
... feel free to app
end here your issues fixes if the above guide helped you.
Drag and Drop JavaScript Wrapper - Archive of obsolete content
the library also dep
ends on another script library, which you should also include, usually at the top of your xul file.
...if you want to s
end more then one data object, (for example multiple files) you must use an transferdataset as follows: var textobserver = { ondragstart: function (event) { var txt1 = 'hello'; var txt2 = 'there'; transferdata.data = new transferdataset(); var tmp = new transferdata(); tmp.adddataforflavour("text/unicode",txt1); transferdata.data.push(tmp); new transferdata(); tmp.
...var textobserver = { getsupportedflavours : function () { var flavours = new flavourset(); flavours.app
endflavour("text/unicode"); return flavours; } } the flavours list contains only one flavour, which is 'text/unicode'.
...for example, for files: var textobserver = { getsupportedflavours : function () { var flavours = new flavourset(); flavours.app
endflavour("application/x-moz-file","nsifile"); flavours.app
endflavour("text/unicode"); return flavours; } } the ondragover function defines what happens when an object is dragged over.
JavaScript crypto - Archive of obsolete content
handling smart card events web sites can make themselves more smartcard fri
endly by listening for smartcard insertion and removal events.
...ed certificate copy in the local certificate database) the public keys, wrapped encryption private key, and text string from the script (possibly containing naming or enrollment info) are signed by the user signed blob is returned to the script script submits signed blob and any other necessary info to the ca/ra ca/ra verifies signature on signed blob ca/ra validates identity of user ca/ra s
ends wrapped encryption private key to kra kra s
ends escrow verification back to ca ca creates and signs certificates ca s
ends certificates back to the user (importusercertificates) typical use the ca's enrollment page could look something like this: <!doctype html> <h2>request a cert</h2> <form name="reqform" method="post" action="http://your.ra.site.org"> <p><input type=hidden name=cert_requ...
...est value=""> <p>name: <input type=text name=name value=""> <p>password: <input type=password name="password" value=""> <p><input type=submit name="s
end" value="submit"> </form> <script> /* the following values could be filled in by the server cgi */ var authenticator = "server_magic"; var keytransportcert = null; var crmfobject = null; var form = document.forms[0]; function validate() { // generate keys for nsm.
... libraryfullpath the filename of the library prep
ended with its full path.
LIR - Archive of obsolete content
5 allocp pointer allocate stack space (result is an address) 6 reti void return an int 7 retq void 64 bit return a quad 8 retd void return a double 9 livei void ext
end live range of an int 10 liveq void 64 bit ext
end live range of a quad 11 lived void ext
end live range of a double 12 file void source filename for debug symbols 13 line void source line number for debug symbols 14 comment void a comment shown, on its own line, in lir dumps 15 not in use load 16 not in us...
...e 17 ldc2i integer load char and sign-ext
end to an int 18 lds2i integer load short and sign-ext
end to an int 19 lduc2ui integer load unsigned char and zero-ext
end to an unsigned int 20 ldus2ui integer load unsigned short and zero-ext
end to an unsigned int 21 ldi integer load int 22 ldq quad 64 bit load quad 23 ldd double load double 24 ldf2d double load float and ext
end to a double store 25 sti2c void store int truncated to char 26 sti2s void store int truncated to short 27 sti void store int 28 stq void 64 bit store quad 29 std void store double 30 std2f void store double as a float (losin...
...the back-
ends cannot generate code for it.it's used in tracemonkey briefly but is always demoted to a lir_modl or converted to a function call before nanojit has to do anything serious with it.
... 105 cmovi integer conditional move int 106 cmovq quad 64 bit conditional move quad 107 cmovd double conditional move double conversions 108 i2q quad 64 bit sign-ext
end int to quad 109 ui2uq quad 64 bit zero-ext
end unsigned int to unsigned quad 110 q2i integer 64 bit truncate quad to int (removes the high 32 bits) 111 i2d double convert int to double 112 ui2d double convert unsigned int to double 113 d2i integer convert double to int (no exceptions raised) 114 dasq quad 64 bit interpret the bits of a double as a quad 115 qasd double 64 bit interpret the bits of a quad as a double overflow arithmetic 116 addxovi integer add int and exit...
Nanojit - Archive of obsolete content
tracemonkey) use nanojit as their back
end.
... #include <stdio.h> #include <stdint.h> #include "jsapi.h" #include "jstracer.h" #include "nanojit.h" using namespace nanojit; const uint32_t cache_size_log2 = 20; static avmplus::gc gc = avmplus::gc(); static avmplus::avmcore core = avmplus::avmcore(); int main() { logcontrol lc; #ifdef debug lc.lcbits = lc_readlir | lc_assembly; #else lc.lcbits = 0; #
endif // set up the basic nanojit objects.
...ocator(); codealloc *codealloc = new codealloc(); assembler *assm = new (&gc) assembler(*codealloc, *alloc, &core, &lc); fragmento *fragmento = new (&gc) fragmento(&core, &lc, cache_size_log2, codealloc); lirbuffer *buf = new (*alloc) lirbuffer(*alloc); #ifdef debug fragmento->labels = new (*alloc) labelmap(*alloc, &lc); buf->names = new (*alloc) lirnamemap(*alloc, fragmento->labels); #
endif // create a fragment to hold some native code.
... it won't be reached, but there's // an assertion in nanojit that trips if a fragment doesn't
end with // a guard (a bug in nanojit).
New Security Model for Web Services - Archive of obsolete content
more-complex access lists could be created to try to establish, with finer granularity, which domains are to be accessible or permitted from which other domains, but this requires extensive management which at best is quite error-prone for the
end user and easily opens holes in a firewall that do not directly hurt the user who reconfigured his browser to try to access some external service but hurts the owners of other services behind the firewall.
... delegation with mixed ownership indep
endent owners of subdirectories cannot grant web script access to these subdirectories without getting the owner of the root directory to post a delegating access file.
...on the other hand, perhaps it is not so bad, since it permits indep
endent management in domains where the top level owner may not care about providing access to web services.
... please s
end me some feedback on this proposal see also mozilla web services security model - documentation of what is currently implemented ...
The life of an HTML HTTP request - Archive of obsolete content
nsicontent::app
endchild() is used to build the content tree but app
endchild takes a "anotify" argument that marks if it should notify the document about the content model changes or not.
... this argument is always pr_false when the content sink calls app
endchild.
...these get passed references to the presentation context and a r
endering context to do the drawing on.
... the r
endering context implementation is a native class (nsgtkr
enderingcontext on unix) that knows how to draw in a window.
Learn XPI Installer Scripting by Example - Archive of obsolete content
= add_dirs_and_files; register_files; if (err==success) { performinstall() }; else { cancelinstall() }; } as you can see in the code listing, the verification process at the top is on lines 1 to 18; the file addition process, here part of the main installation block, is on lines 24 to 41; the registration part of the main installation block is on lines 42-58; and the execution at the
end of the main block is on lines 59 to 71.
... if you choose not to register the installed software or do the verifications at the front
end of the installation, then at a minimum, the install scripts mustinitialize, add the files to be installed, and execute.
...in the example above, all of the contents of the "bin" directory in the archive are queued for installation, and the target of that installation (when the installation is actually begun with a call to performinstall at the
end), is the communicatorfolder directory defined at line 22 as "program." "program" is one of a short list of keywords that can be used in place of full path names in methods such as addfile.
... ext
ending the example what does all this mean to you?
crop - Archive of obsolete content
end the text will be cropped on its right side in left-to-right text locales, and the right side in right-to-left locales.
... center the text will be cropped in the middle, showing both the start and
end of the text normally.
...the side dep
ends on the css text alignment.
... dep
ending on the platform and theme being used, some elements will have set a maximum width so they will always appear cropped.
panel.flip - Archive of obsolete content
« xul reference home flip type: string normally, when a popup opens near the edge of the screen, it flips over to open on the opposite side of the anchor, so that it doesn't ext
end off the screen.
... a sliding panel will have the start (or
end) position ext
ended such that the panel can be the requested size, meaning the arrow will no longer be at the start (or
end) of the panel - i.e., the arrow will appear to have been slid along the panel to ensure the arrow is still pointing at the anchor.
... in this image, the panel has flip="slide" and has a width which is greater than the distance from the anchor to the right of the screen (or window), so the panel ext
ends past the left of the anchor, and the arrow slides towards the middle of the panel such that it is still aligned with the anchor.
... without flip="slide", the panel would have had its width truncated and the panel would not ext
end to the left of the anchor.
textbox.type - Archive of obsolete content
search a textbox int
ended for searching.
... xbl-specific note beware that if you create an xbl binding for a textbox, you need to use the appropriate ext
ends attribute and changing type attribute on the tree won't have effect.
...if you have <binding id="input" ext
ends="chrome://global/content/bindings/autocomplete.xml#autocomplete" >, then the textbox will have autocomplete type, regardless of tree's 'type' attribute.
... use <binding ext
ends="chrome://global/content/bindings/textbox.xml#textbox" > for ordinary textbox.
Moving, Copying and Deleting Files - Archive of obsolete content
file and stream guide: [ nsiscriptableio | accessing files | getting file information | reading from files | writing to files | moving, copying and deleting files | uploading and downloading files | working with directories ] important note: the pages from the file and stream guide use the io object (nsiscriptableio), which was not available in any released version of the platform (p
ending some fixes).
... var file = io.newfile("home", "importantdata"); var destination = io.newfile("desktop", ""); destination.app
end("backups"); file.copyto(destination, ""); this example copies an item called 'importantdata' into a directory called 'backups' within the desktop directory.
... nsifile.app
end() is used to retrieve the 'backups' subdirectory.
...for more information about nsifile.app
end(), see working with directories.
RDF Modifications - Archive of obsolete content
the rdf observer also has two methods onbeginupdatebatch and on
endupdatebatch.
...when changing the datasource, the changes are surrounded by begin and
end batch calls.
... then, rather than notify on every change, the datasource will s
end one notification when the changes are finished.
...if the predicate was different, the builder would come to the
end of the statements and could just stop there.
XML Templates - Archive of obsolete content
for this and the following examples, we are going to use the following xml document containing a list of people: <people> <person name="napoleon bonaparte" g
ender="male"/> <person name="cleopatra" g
ender="female"/> <person name="julius caesar" g
ender="male"/> <person name="ferdinand magellan" g
ender="male"/> <person name="laura secord" g
ender="female"/> </people> xml query syntax the query syntax is fairly simple for xml datasources.
... <vbox datasources="people.xml" ref="*" querytype="xml"> <template> <query expr="person"/> <action> <hbox uri="?" align="center"> <button label="?name"/> <label value="?g
ender"/> </hbox> </action> </template> </vbox> note how two attributes are substituted here, the label on the button and the value on the label.
... <query expr="person[@g
ender='female']"/> as long as the expression returns one or more nodes, it can be used in an query expression.
... <people id="famouspeople" xmlns=""> <person name="napoleon bonaparte" g
ender="male"/> <person name="cleopatra" g
ender="female"/> <person name="julius caesar" g
ender="male"/> <person name="ferdinand magellan" g
ender="male"/> <person name="laura secord" g
ender="female"/> </people> <listbox datasources="#famouspeople" ref="*" querytype="xml"> <template> <query expr="person"/> <action> <listitem uri="?" label="?name"/> </action> </template> </listbox> here, an a...
SeaMonkey - making custom toolbar (SM ver. 1.x) - Archive of obsolete content
it is one very long line
ending in path—make sure that you get all of it: components.classes["@mozilla.org/file/directory_service;1"].getservice( components.interfaces.nsiproperties).get("achrom", components.interfaces.nsifile).path in the javascript console window, paste the code in the field near the top.
... edit the file: installed-chrome.txt at the
end of the file, add the following line.
... <!-- composer --> <rdf:li> <rdf:seq about="chrome://editor/content/editor.xul"> <rdf:li>chrome://custombutton/content/button.xul</rdf:li> </rdf:seq> </rdf:li> <!-- chat --> <rdf:li> <rdf:seq about="chrome://chatzilla/content/chatzilla.xul"> <rdf:li>chrome://custombutton/content/button.xul</rdf:li> </rdf:seq> </rdf:li> <!-- cal
endar --> <rdf:li> <rdf:seq about="chrome://cal
endar/content/cal
endar.xul"> <rdf:li>chrome://custombutton/content/button.xul</rdf:li> </rdf:seq> </rdf:li> </rdf:seq> </rdf:rdf> optionally customize the file by changing the displayname, description and author attributes.
...custom-button-1" position="18"/> </toolbar> <!-- chat --> <menubar id="mainmenu"> <menu id="custom-menu" position="4" label="custom" accesskey="c"> <menupopup> <menuitem id="custom-item-1" label="custom item 1" accesskey="1" tooltiptext="my custom menu item" oncommand="custombutton[1]()" /> </menupopup> </menu> </menubar> <!-- cal
endar --> <toolbar id="cal
endar-bar"> <toolbarbutton id="custom-button-1" position="10"/> </toolbar> <!-- button details --> <toolbarbutton id="custom-button-1" label="custom" tooltiptext="my custom toolbar button" oncommand="custombutton[1]()" class="toolbarbutton-1 custombutton" /> </overlay> optionally customize the file by changing the label, accesskey and tooltiptext attrib...
Box Objects - Archive of obsolete content
there is also a corresponding css property -moz-box-orient which may be used instead, dep
ending on the situation.
...it will appear at the
end of the row since the other buttons have an ordinal of 1.
... if you press the second button, its ordinal will increase by one and will be moved to the
end of the row.
...if you then press the button labeled one again, its ordinal will increase to 3 and will move to the
end.
More Event Handlers - Archive of obsolete content
dep
ending on how you attach the event listener to an element, there are different ways of doing this.
...what will happen dep
ends on the event and the type of element.
...this is because the mousemove events occur at intervals dep
ending on the speed at which the mouse moves and the mouse is usually moved some distance past the border by the time the next event fires.
... obviously, it would be much too inefficient to s
end a mousemove event for every pixel the mouse is moved.
Open and Save Dialogs - Archive of obsolete content
to add filters, call the app
endfilters() function to set the file types that you wish to have displayed.
... fp.app
endfilters(nsifilepicker.filterhtml | nsifilepicker.filterimages); fp.app
endfilters(nsifilepicker.filtertext | nsifilepicker.filterall); the first example will add filters for html and for image files.
...if you would like to filter for custom files, you can use the app
endfilter() function to do this: fp.app
endfilter("all files" ,"*.*"); fp.app
endfilter("audio files (*.wav, *.mp3)","*.wav; *.mp3"); this line will add a filter for wave and mp3 audio files.
...you can call app
endfilter as many times as necessary to add additional filters.
Trees - Archive of obsolete content
of course, this is indep
endant of the performance of the view object itself.
...the following tags are used: treeitem this contains a single parent row and all its desc
endants.
...there might be multiple columns, such as the s
ender and the subject.
... example tree with treechildren example 2 : source view <tree flex="1"> <treecols> <treecol id="s
ender" label="s
ender" flex="1"/> <treecol id="subject" label="subject" flex="2"/> </treecols> <treechildren> <treeitem> <treerow> <treecell label="joe@somewhere.com"/> <treecell label="top secret plans"/> </treerow> </treeitem> <treeitem> <treerow> <treecell label="mel@whereever.com"/> <treecell label="let's do lunch"/> </treerow> </treeitem> </treechildren> </tree> as can be seen in the image, the tree has been created with two rows of data.
XUL Structure - Archive of obsolete content
the mozilla r
endering engine takes the content in the form of html source and transforms it into a document tree.
...ensure that your web server is configured to s
end xul files with the content type of application/vnd.mozilla.xul+xml (eg with php header('content-type: application/vnd.mozilla.xul+xml');).
... to summarize the points made above: mozilla r
enders both html and xul using the same underlying engine and uses css to specify their presentation.
...the xul part remains the same but the skin part changes indep
endently.
XUL Accesskey FAQ and Policies - Archive of obsolete content
avoid: letters with desc
enders, such as p, g, q, or y.
... letters next to a letter with a desc
ender.
...look for dep
endencies of bug 129179 (the xul accesskey hookup meta bug), or look for bugs with "accesskey" or "mnemonic" in the summary, or look for dialogs where there are no elements with underlined letters.
... file bugs under the keyboard navigation component, and make meta bug 129179 dep
endent on them.
XUL Coding Style Guidelines - Archive of obsolete content
to make xul files easy to read and maintain, localization fri
endly, and portable across user agents, we need to have a set of coding style guidelines to ensure our objectives are achievable.
...while some of the guidelines are recomm
ended practices, the others are mandatory.
...other guidelines mentioned in xhtml 1.1 recomm
endation.
...xul localizability issues xhtml 1.1 recomm
endation namespaces in xml extensible markup language (xml) 1.0 euro sign the unicode standard®, version 2.1 "xml applications" by frank boumphrey.
radiogroup - Archive of obsolete content
the radio buttons may either direct children of the radiogroup or desc
endants.
... attributes disabled, focused, preference, tabindex, value properties accessibletype, disabled, focuseditem, itemcount, selectedindex, selecteditem, tabindex, value methods app
enditem, checkadjacentelement, getindexofitem, getitematindex, insertitemat, removeitemat examples <radiogroup> <radio id="orange" label="red"/> <radio id="violet" label="green" selected="true"/> <radio id="yellow" label="blue"/> </radiogroup> attributes disabled type: boolean indicates whether the element is disabled or not.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata app
enditem( label, value ) return type: element creates a new item and adds it to the
end of the existing list of items.
richlistbox - Archive of obsolete content
attributes disabled, disablekeynavigation, preference, seltype, suppressonselect, tabindex, value properties accessibletype, currentindex, currentitem, disabled, disablekeynavigation, itemcount, scrollboxobject, selectedcount, selectedindex, selecteditem, selecteditems, seltype, suppressonselect, tabindex, value methods additemtoselection, app
enditem, clearselection, ensureelementisvisible, ensureindexisvisible, getindexoffirstvisiblerow, getindexofitem, getitematindex, getnumberofvisiblerows, getrowcount, getselecteditem, insertitemat, invertselection, movebyoffset, removeitemat, removeitemfromselection, scrolltoindex, selectall, selectitem, selectitemrange, timedselect, toggleitemselection examples <richlistbox> <richlistitem> ...
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
... app
enditem( label, value ) return type: element creates a new item and adds it to the
end of the existing list of items.
... selectitemrange( startitem,
enditem ) return type: no return value selects the items between the two items given as arguments, including the start and
end items.
scrollbox - Archive of obsolete content
it is int
ended to be used when an application wants to be able to adjust the scroll position itself.
...if their container doesn't give enough room to hold them (geometrically) what happens dep
ends on the enclosing elements; often the content is just clipped off on the bottom or right (dep
ending on what's too big to fit).
...for the most part, the horizontal and vertical scrollbars will indep
endently handle too-tall and too-wide cases, but each scroll bar takes up additional width and so the appearance of one scroll bar can trigger the other one if it's close to the edge anyway.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
splitter - Archive of obsolete content
open the content either before or after the splitter, dep
ending on the value of the collapsed attribute, is currently displayed.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
... tree-splitter this splitter is int
ended to be used in tree columns (in-between treecol elements).
...> <splitter class="tree-splitter"/> <treecol id="id" label="id" flex="1"/> <splitter class="tree-splitter"/> <treecol id="date" label="date" flex="1"/> <splitter class="tree-splitter"/> </treecols> <treechildren/> </tree> splitter resizing and overflow the degree to which a splitter will resize a box, and what happens during the resize and after the limit is reached, dep
ends on the height (or width) specified for the box as an attribute or in css, the min-height (or min-width), the intrinsic height of the box contents, and the presence or absence of a collapse attribute on the splitter.
toolbar - Archive of obsolete content
the chromeclass-toolbar class may be used to create a toolbar where its visibility dep
ends 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.
...this introduces a potential compatibility problem for extensions that dep
end on being able to identify all possible toolbar items by looking in the toolbarpalette.
...otherwise, if the beforepermanent argument is false, the new item is added to the
end of the toolbar.
... inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
MacFAQ - Archive of obsolete content
to do this, type: xulrunner-bin --install-app /path/to/appdir note the path to your application must
end with the directory containing application.ini; you should not reference application.ini in this command.
... this command will place a copy of your application in /applications/(v
endor)/(name) , where (v
endor) is the v
endor field in your application.ini and (name) is the name field.
... opening your application for ordinary work, you can just navigate via finder to /applications/(v
endor)/(name).app and open the application.
... for command-line work, you would call on: /applications/(v
endor)/(name).app/contents/macos/xulrunner ui notes menus to enable your application quit command to work with the application menu (the one to the right of the blue apple), you need to give your quit menu item an id of "menu_filequititem".
Using SOAP in XULRunner 1.9 - Archive of obsolete content
though jquery is listed as a dep
endency, it can be worked around easily.
...soapclient.js saxmlutils.js making a soap call var url = 'http://example.com/soap/'; var ns = 'http://example.com/soap/namespace'; var method = 'foo'; var params = { 'foo': 'bar', 'baz': 'bang' }; var callback = function(obj) { components.utils.reporterror(obj.tosource()); }; soapclient.proxy = url; var body = new soapobject(method); body.ns = ns; for (var k in params) { body.app
endchild(new soapobject(k).val(params[k])); } var req = new soaprequest(url, body); req.action = ns + '#' + method; soapclient.s
endrequest(req, callback); diff between jqsoapclient.js and sasoapclient.js 42c42 < var jsout = $.xmltojson(xdata.responsexml); --- > var jsout = xmlobjectifier.xmltojson(xdata.responsexml); 46,60c46,62 < $.ajax({ < type: "post", < url: soapclient.prox...
...y, < datatype: "xml", < processdata: false, < data: content, < complete: getresponse, < contenttype: soapclient.contenttype + "; charset=\"" + soapclient.charset + "\"", < befores
end: function(req) { < req.setrequestheader("method", "post"); < req.setrequestheader("content-length", soapclient.contentlength); < req.setrequestheader("soapserver", soapclient.soapserver); < req.setrequestheader("soapaction", soapreq.action); < } < }); --- > var xhr = new xmlhttprequest(); > xhr.mozbackgroundrequest = true; > xhr.open('post', soapclient.proxy, true); > xhr.onreadystatechange = function() { > if (4 != xhr.readystate) { return; } > getresponse(xhr); > }; > var headers = { > 'method': 'post', > 'content-...
...type': soapclient.contenttype + '; charset="' + > soapclient.charset + '"', > 'content-length': soapclient.contentlength, > 'soapserver': soapclient.soapserver, > 'soapaction': soapreq.action > }; > for (var h in headers) { xhr.setrequestheader(h, headers[h]); } > xhr.s
end(content); ...
application/http-index-format specification - Archive of obsolete content
this data is not int
ended for display to the
end user and is only meant as a comment to make the file format clear to a human interpreter.
...this data is int
ended for the
end user of the file format data if there is one.
...this data is int
ended for the
end user of the file format data if there is one.
... do not present to the
end-user 100: 101: the files in this directory are put forth for public 101: consumption and the provider make no guarentee as 101: as to the functionality of the data or programs 101: presented.
2006-09-29 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - september 22 - september 29, 2006 announcements lightning and sunbird 0.3 rc1 test day!
... updated l10n status for sunbird 0.3 release according to simon paquet, we now have a full l10n comparison on the trunk between en-us and all locales with a cal
endar localization.
... details are available for cal
endar only and for cal
endar and core.
...27 status meeting cancelled most of the mozilla cal
endar participants were unavailable during sept.
2006-11-24 - Archive of obsolete content
luke wants to know if compiling xulrunner with a static crt is better or worse than compiling with the mscvr80.dll dep
endency.
... announcements svg build dep
endency on cairo gfx on 11/22 november 21st: t rowley announced that: he will be landing his patch that starts the process of switching svg over to thebes (bug 354866).
... if you build dep
endencies with non-default toolkit or on a non tier-1 platform you'll need to disable svg in your mozconfig.
... gecko 1.9 intl r
endering peformance november 20th: boris zbarskyannounced that: we need to create an intl performance page set or multiple intl performance page sets and run at least the pageload tests for all of these pagesets, and preferably also some sort of dhtml tests using pages of the different types.
2006-12-01 - Archive of obsolete content
firefox's use of this code has been removed but the windows dde shell integration code has been kept so that 3rd party apps dep
ending on this code can stay working.
... discussion november 29th gecko 1.9/gran paradiso status meeting other than annoucing the meeting, this thread discusses where else can info about what happens at the meetings be found (since the ag
enda often seems bare).
... meetings november 29th gecko 1.9/gran paradiso status meeting: (ag
enda).
... november 27 weekly project status meeting: (ag
enda) ...
2006-11-10 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - november 3 - november 10, 2006 announcements cal
endar-qa team announces november 14th testday cal
endar-qa team celebrate some new functionality of cal
endar.
... cal
endar:improving the cal
endar views discussion about improving the layout of cal
endar.
... next steps for 24 hours view discussion about the improving of some features of cal
endar ex.
... configurable start/
end hours, optimal size of grid boxes in 24 hours view.
2006-11-17 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - november 10 - november 17, 2006 announcements no meeting for this week.
... discussions itip and imip new designs for s
ending invitations available for comment discussion about the new interface designs for itip.
... webdav server a discussion related to remote cal
endar modifications.
... cal
endar xpcom component discussion about a debug error of additem function from calical
endar.
2006-11-24 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - november 17 - november 24, 2006 announcements no meeting for this week.
... discussions about functions that display the events/tasks of the cal
endars in month view.
... proposal for (wcap) cal
endar subscription a proposal shows a possible integration into lightning.
... treating cal
endars as tags discussions concerning about the layout of cal
endar list in lightning/sunbird.
SAX - Archive of obsolete content
set the handlers handlers are user-defined objects implementing sax handler interfaces, dep
ending on what kind of information they need to get from the parser.
... an example implementation of the most commonly used content handler: function print(s) { dump(s + "\n"); } xmlreader.contenthandler = { // nsisaxcontenthandler startdocument: function() { print("startdocument"); },
enddocument: function() { print("
enddocument"); }, startelement: function(uri, localname, qname, /*nsisaxattributes*/ attributes) { var attrs = []; for(var i=0; i<attributes.length; i++) { attrs.push(attributes.getqname(i) + "='" + attributes.getvalue(i) + "'"); } print("startelement: namespace='" + uri + "', localname='" + localname + "', qn...
...ame='" + qname + "', attributes={" + attrs.join(",") + "}"); },
endelement: function(uri, localname, qname) { print("
endelement: namespace='" + uri + "', localname='" + localname + "', qname='" + qname + "'"); }, characters: function(value) { print("characters: " + value); }, processinginstruction: function(target, data) { print("processinginstruction: target='" + target + "', data='" + data + "'"); }, ignorablewhitespace: function(whitespace) { // don't care }, startprefixmapping: function(prefix, uri) { // don't care },
endprefixmapping: function(prefix) { // don't care }, // nsisupports queryinterface: function(iid) { if(!iid.equals(components.interfaces.nsisupports) && !iid.equals(compone...
...below is an example of parsing from a string: xmlreader.parsefromstring("<f:a xmlns:f='g' d='1'><bbq/></f:a>", "text/xml"); this call results in the following output (assuming the content handler from the example above is used): startdocument startelement: namespace='g', localname='a', qname='f:a', attributes={d='1'} startelement: namespace='', localname='bbq', qname='bbq', attributes={}
endelement: namespace='', localname='bbq', qname='bbq'
endelement: namespace='g', localname='a', qname='f:a'
enddocument ...
Encryption and Decryption - Archive of obsolete content
encryption is the process of transforming information so it is unintelligible to anyone but the int
ended recipient.
...a person with an unauthorized symmetric key not only can decrypt messages sent with that key, but can encrypt new messages and s
end them as if they came from one of the two parties who were originally using the key.
...in general, to s
end encrypted data to someone, you encrypt the data with that person's public key, and the person receiving the encrypted data decrypts it with the corresponding private key.
...however, it's possible to use public-key encryption to s
end a symmetric key, which can then be used to encrypt additional data.
TCP/IP Security - Archive of obsolete content
the lowest layer s
ends the accumulated data through the physical network; the data is then passed up through the layers to its destination.
... this layer s
ends and receives data for particular applications, such as domain name system (dns), hypertext transfer protocol (http), and simple mail transfer protocol (smtp).
... dep
ending on how ssl is implemented and configured, it can provide any combination of the following types of protection: confidentiality.
... each ssl
endpoint can confirm the identity of the other ssl
endpoint with which it wishes to communicate, ensuring that the network traffic and data is being sent from the expected host.
Building a Theme - Archive of obsolete content
browser to chrome/browser/ communicator to chrome/communicator/ you should
end up with this directory structure: <ext path>/ /install.rdf /chrome.manifest /chrome/ browser/ communicator/ global/ mozapps/ after this, it would be a good idea to read the article setting up extension development environment and follow the directions there.
...--> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minversion>29.0</em:minversion> <em:maxversion>39.*</em:maxversion> </description> </em:targetapplication> <!-- front
end metadata --> <em:name>my theme</em:name> <em:internalname>sample</em:internalname> <em:description>a test extension</em:description> <em:creator>your name here</em:creator> <em:homepageurl>http://www.example.com/</em:homepageurl> </description> </rdf> sample@example.net - the id of the extension.
...in windows, you can do this easily by selecting all the files and subfolders in your extension folder, right click and choose "s
end to -> compressed (zipped) folder".
...it is highly recomm
ended that you use mozilla add-ons to distribute your themes!
Using IO Timeout And Interrupt On NT - Archive of obsolete content
due to a limitation of the present implementation of nspr io on nt, programs must follow the following guideline: if a thread calls an nspr io function on a file descriptor and the io function fails with <tt>pr_io_timeout_error</tt> or <tt>pr_p
ending_interrupt_error</tt>, the file descriptor must be closed before the thread exits.
...if the thread gets interrupted by another thread's <tt>pr_interrupt()</tt> call, the io function returns with <tt>pr_p
ending_interrupt_error</tt>.
...in this case, the error is <tt>pr_p
ending_interrupt_error</tt>.
...suppose the file descriptor is int
ended to be used for the life time of the process, for example, the logging file, this is really not acceptable.
Using the W3C DOM - Archive of obsolete content
see the w3c dom 2 recomm
endation, css2 ext
ended interface.
... dom level 2: parseint(elemref.style.left, 10) ie5+: elemref.style.pixeltop dom level 2: parseint(elemref.style.top, 10) ie5+: elemref.style.pixelleft = x; elemref.style.pixeltop = y; dom level 2: elemref.style.left = x + "px"; elemref.style.top = y + "px"; w3c dom2 reflection of an element's css properties keep in mind that according to the w3c recomm
endation, the values returned by the style property of an element reflect static settings in the element's style attribute only, not the total "computed style" that includes any inherited style settings from parent elements.
...conversely, if you want to set the element's inline style settings for left and top, make sure to construct a string that includes the unit (such as "140px") by app
ending the unit string to the integer value.
...tbyid("dynatext"); // detect whether the browser supports textcontent or innertext if (typeof spanel.textcontent == 'string') { spanel.textcontent = 'some gall'; } else if (typeof spanel.innertext == 'string') { spanel.innertext = 'some gall'; // if neither are supported, use other dom methods } else { while (spanel.firstchild) { spanel.removechild(spanel.firstchild); } spanel.app
endchild(document.createtextnode('some gall')); } </script> </body> the first part of the code gets a reference to the element.
Using workers in extensions - Archive of obsolete content
every 10 minutes, it calls xmlhttprequest, and, when the results are received, s
ends an event back to the main thread with the received data.
...!"; } var fullurl = "http://quote.yahoo.com/d/quotes.csv?f=sl1d1t1c1ohgv&e=.csv&s=" + symbol; function inforeceived() { var output = httprequest.responsetext; if (output) { postmessage(output.trim()); } httprequest = null; } var httprequest = new xmlhttprequest(); httprequest.open("get", fullurl, true); httprequest.onload = inforeceived; httprequest.s
end(null); } setinterval(function() { refreshinformation(); }, 10*60*1000); onmessage = function(event) { if (event.data) { symbol = event.data.touppercase(); } refreshinformation(); } when the worker thread is started, the main body of this code (in lines 26-35) is executed.
... line 22 s
ends a message to the ticker thread to tell it what symbol to monitor.
... observe: function(subject, topic, data) { if (topic != "nspref:changed") { return; } switch(data) { case "symbol": this.tickersymbol = this.prefs.getcharpref("symbol").touppercase(); this.worker.postmessage(this.tickersymbol); break; } }, the key here is line 10, which s
ends the new ticker symbol to monitor to the ticker thread by calling its postmessage() method.
-ms-wrap-flow - Archive of obsolete content
start inline flow content can wrap on the start edge of the exclusion area but must leave empty the area after the
end edge of the exclusion area.
...
end inline flow content can wrap after the
end edge of the exclusion area but must leave empty the area before the start edge of the exclusion area.
... clear inline flow content can only wrap on top and bottom of the exclusion and must leave empty the areas to the start and
end edges of the exclusion box.
... formal syntax auto | both | start |
end | maximum | clear specifications not part of any specification.
Debug.write - Archive of obsolete content
the debug.write function s
ends strings to the script debugger.
..., strn optional strings to s
end to the script debugger.
... remarks the debug.write function s
ends strings to the immediate window of a script debugger at run time.
...the only difference is that the debug.writeln function s
ends a newline character after the strings are sent.
Debug.writeln - Archive of obsolete content
the debug.writeln function s
ends strings to the script debugger, followed by a newline character.
..., strn optional strings to s
end to the script debugger.
... remarks the debug.writeln function s
ends strings, followed by a newline character, to the immediate window of the microsoft script debugger at run time.
...the only difference is that the debug.write function does not s
end a newline character after s
ending the strings.
@if - Archive of obsolete content
the @if statement conditionally executes a group of statements, dep
ending on the value of an expression.
... syntax @if ( condition1 ) text1 [@elif ( condition2 ) text2] [@else text3] @
end parameters text1 optional text to be parsed if condition1 is true.
... example the following example illustrates the use of the @if...@elif...@else...@
end statement.
... /*@cc_on @*/ /*@ document.write("javascript version: " + @_jscript_version + "."); document.write("<br />"); @if (@_win32) document.write("running on a 32-bit version of windows."); @elif (@_win16) document.write("running on a 16-bit version of windows."); @else document.write("running on a different operating system."); @
end @*/ requirements supported in all versions of internet explorer, but not in windows 8.x store apps.
background-size - Archive of obsolete content
but i'm not able and willing sp
ending time for this.
...given the fact that this reference has serious shortcomings in many places and few contributors, i think sp
ending much time here is not effective.
...<body>'s background ext
ends per css spec to <html>.
... i tried locating the part of the spec about <body>'s background ext
ending to <html> but it didn't seem to be explicitly mentioned in the cascading and inheritance section and both the background-image and border-image say 'inherited: no'.
Reference - Archive of obsolete content
can have inherited private variables: function myclass(){ var property = 5; this.tellme = function(){ return property; } } function myotherclass(){ myclass.apply( this ); } var o = new myotherclass; alert( o.tellme() ); //alerts 5 as you'd expect — the preceding comment was added by psygnisfive (talk – contribs) on 22:23, 4 december 2006 terminology we need a terminology app
endix.
...br
endan just mentioned one obscure one here: https://bugzilla.mozilla.org/show_bu...?id=310993#c20 --maian 22:46, 5 october 2005 (pdt) section title capitalization there's an inconsistency in the capitalization of section titles.
...i have to go through them again this week
end to fix up some stuff anyhow.
...everything in javascript is desc
ended from object, including functions.
XForms Input Element - Archive of obsolete content
(xhtml/xul) datepicker - used to represent data of type xsd:date (xhtml/xul) cal
endar - used to represent data of type xsd:date when appearance attribute also has the value 'full' (xhtml/xul) month list - used to represent data of type xsd:gmonth (xhtml only) days list - used to represent data of type xsd:gday (xhtml only) number field - used to represent data of numeric type (fx 3.0 only, xul only) more detail about each of these widgets follows below.
...it consists of a text field for direct user input next to a button that when activated will 'drop down' a cal
ender widget that the user can also interact with (xhtml/xul).
... specific handling of attributes incremental - if "true", the bound instance node will be updated on each character typed by the user or when the user clicks on a date from the cal
endar widget.
... cal
endar a form author may notice a xforms input element represented by a cal
endar widget in the mozilla xforms processor if the control meets the following criteria (xhtml/xul).
Choosing Standards Compliance Over Proprietary Practices - Archive of obsolete content
the
end result, however, is having a process in place that maximizes the organization's investment.
...by instilling a set of global goals and standards into an organizational infrastructure, an organization is ensuring its
end users the ability to interact, function, view, and process information consistently as they transition from one device to the next.
...adopting standards will not only help an organizations
end users enjoy a cross application experience; organizations will help themselves by giving development and quality assurance engineers the tools to become better equipped and flexible.
...following proprietary de facto standards leaves an organization vulnerable and open to obsolescence when the owner of the de facto changes focus or direction, or abandons the de facto altogether and r
enders the standard stagnate.
Issues Arising From Arbitrary-Element hover - Archive of obsolete content
the most reliable fix is to add the anchor element to the selectors, like this: a:hover {color: red;} a.nav:hover {color: red;} in an attempt to avoid causing problems for legacy documents, browsers based on mozilla 1.0 and later (netscape 7+) include code that causes bare pseudo-classes to be restricted only to links if the document is r
endered in "quirks" mode.
... in browsers based on the engine found in mozilla 1.3b and later, this quirk is ext
ended to cover selectors that combine a bare class selector with the :hover pseudo-class (see bug 169078 for details).
...although authors may int
end the selector a:hover to apply only to hyperlinks, it will also apply to named anchors, since the selector merely states that any a element which is in a hover state will be styled.
... recomm
endation to avoid unexpected problems, authors are strongly encouraged to include element names in dynamic-state pseudo-classes that are meant to be applied to hyperlinks.
Using the DOM File API in chrome code - Extensions
in bootstrap scope, this must be imported in like so: cu.importglobalproperties( [ "file" ] ) accessing a file by hard-coded pathname to reference a file by its path, you can simply use a string literal: var file = file.createfromfilename("path/to/some/file"); cross platform note: however using hard-coded paths raises cross platform issues since it uses a platform-dep
endent path separator (here "/").
... in the xul/mozilla platform there isn't sadly an equivalent to java file.pathseparator (the system-dep
endent path-separator character).
...instead, use the nsifile::app
end() method as explained in the next section.
...you can do so like this: var dsfile = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.interfaces.nsiproperties) .get("profd", components.interfaces.nsifile); dsfile.app
end("myfilename.txt"); var file = file.createfromnsifile(dsfile); this uses the directory service to locate the profile directory (with the location key "profd", see below for more details), then app
ends the name of the file we want to work with by calling nsifile.app
end().
Examples - Game development
monster madness a webgl and asm.js-based multiplayer online shooter, developed by nom nom games and tr
endy entertainment.
... animation physics 3d r
endering of terrain and cars, using ammo.js for the physics calculations.
... digital fireworks animated firework effects r
endered on canvas.
... massive assault tech demo r
endered archipelago with futuristic military vehicles.
Explaining basic 3D theory - Game development
r
endering pipeline the r
endering pipeline is the process by which images are prepared and output onto the screen.
... the graphics r
endering pipeline takes the 3d objects built from primitives described using vertices, applies processing, calculates the fragments and r
enders them on the 2d screen as pixels.
... the last step is viewport transformation, which involves outputting everything for the next step in the r
endering pipeline.
...applying textures onto objects during the fragment processing stage of the r
endering pipeline allows us to adjust it by wrapping and filtering it if necessary.
Building up a basic demo with A-Frame - Game development
the
end result is 3d web experiences, which are vr-enabled by default.
...add a new <script> element at the
end of the <body> element, just after the <a-scene> element, then add the following javascript code inside it: var scene = document.queryselector('a-scene'); var cylinder = document.createelement('a-cylinder'); cylinder.setattribute('color', '#ff9500'); cylinder.setattribute('height', '2'); cylinder.setattribute('radius', '0.75'); cylinder.setattribute('position', '3 1 0'); scene.app
endchild(cylinde...
...add this code at the
end of the <script> tag: var t = 0; function r
ender() { t += 0.01; requestanimationframe(r
ender); cylinder.setattribute('position', '3 '+(math.sin(t*2)+1)+' 0'); } r
ender(); we're using the r
ender() function to update the cylinder's position on every frame.
... conclusion everything is r
endered properly and animating — congratulations on building your first a-frame scene!
The score - Game development
having a score can also make the game more interesting — you can try to beat your own highscore, or your fri
end's.
...var scoretext; var score = 0; adding score text to the game display now add this line at the
end of the create() function: scoretext = game.add.text(5, 5, 'points: 0', { font: '18px arial', fill: '#0095dd' }); the text() method can take four parameters: the x and y coordinates to draw the text at.
... the actual text that will be r
endered.
... the font style to r
ender the text with.
HTML - MDN Web Docs Glossary: Definitions of Web-related terms
in 1996, the w3c took over the html work and published the html 3.2 recomm
endation a year later.
... at that time, the w3c nearly abandoned html in favor of xhtml, prompting the founding of an indep
endent group called whatwg in 2004.
...each tag begins and
ends with angle brackets (<>).
... you can ext
end html tags with attributes, which provide additional information affecting how the browser interprets the element: an html file is normally saved with an .htm or .html extension, served by a web server, and can be r
endered by any web browser.
TCP handshake - MDN Web Docs Glossary: Definitions of Web-related terms
the host, generally the browser, s
ends a tcp synchronize packet to the server.
... the server receives the syn and s
ends back a synchronize-acknowledgement.
... the host receives the server's syn-ack and s
ends an acknowledge.
...the connection can be terminated indep
endently by each side of the connection via a four-way handshake.
TCP slow start - MDN Web Docs Glossary: Definitions of Web-related terms
the server s
ends data in tcp packets, the user's client then confirms delivery by returning acknoledgements, or acks.
... the connection has a limited capacity dep
ending on hardware and network conditions.
... if the server s
ends too many packets too quickly, they will be dropped.
...congestion control algorithms use this flow of sent packets and acks to determine a s
end rate.
MDN Web Docs Glossary: Definitions of Web-related terms
domain sharding dominator dos attack dtls (datagram transport layer security) dtmf (dual-tone multi-frequency signaling) dynamic programming language dynamic typing e ecma ecmascript effective connection type element empty element encapsulation encryption
endianness engine entity entity header event exception expando f fallback alignment falsy favicon fetch directive fetch metadata request header firefox os firewall first contentful paint first cpu idle first input delay first interact...
... page load time page prediction parameter parent object parse parser pdf perceived performance percent-encoding php pixel placeholder names plaintext png polyfill polymorphism pop3 port prefetch preflight request prer
ender presto primitive privileged privileged code progressive enhancement progressive web apps promise property property (css) property (javascript) protocol prototype prototype-based programming proxy server pseudo-class pseudo-element pseudocode ...
... public-key cryptography python q quality values quaternion quic r rail random number generator raster image rdf real user monitoring (rum) recursion reference reflow regular expression r
endering engine repo reporting directive request header resource timing response header responsive web design rest rgb ril robots.txt round trip time (rtt) routers rss rtcp (rtp control protocol) rtf rtl (right to left) rtp (real-time transport protocol) and srtp (secure rtp) rtsp: real-ti...
... trident truthy ttl turn type type coercion type conversion u udp (user datagram protocol) ui undefined unicode uri url urn usenet user agent utf-8 ux v validator value variable v
endor prefix viewport visual viewport voip w w3c wai wcag web performance web server web standards webassembly webdav webextensions webgl webidl webkit webm webp webrtc websockets webvtt whatwg ...
Debugging CSS - Learn web development
this will help if you are seeing different r
endering between multiple browsers.
... in the r
endered dom the browser may have corrected some badly-written html for you.
...the html tree in your devtools shows exactly what the browser is r
endering at any given time, so it gives you an insight into what is really going on.
... in the instance that your problem is actually a bug in a browser, then a reduced test case can also be used to file a bug report with the relevant browser v
endor (e.g.
Organizing your CSS - Learn web development
typically they t
end to result in more verbose use of css than you might have if you wrote and optimised every selector to a custom set of rules for that project.
...then we'd add an additional class to deal with those tiny differences, thus ext
ending that styling in specific ways.
... build systems for css another way to organise css is to take advantage of some of the tooling that is available for front-
end developers, which allows you to take a slightly more programmatic approach to writing css.
... $base-color: #c6538c; .alert { border: 1px solid $base-color; } once compiled to css, you would
end up with the following css in the final stylesheet.
Combinators - Learn web development
desc
endant combinator the desc
endant combinator — typically represented by a single space ( ) character — combines two selectors such that elements matched by the second selector are selected if they have an ancestor (parent, parent's parent, parent's parent's parent, etc) element matching the first selector.
... selectors that utilize a desc
endant combinator are called desc
endant selectors.
...desc
endent elements further down the hierarchy don't match.
... if you remove the > that designates this as a child combinator, you
end up with a desc
endant selector and all <li> elements will get a red border.
Type, class, and ID selectors - Learn web development
the universal selector the universal selector is indicated by an asterisk (*) and selects everything in the document (or inside the parent element if it is being chained together with another element and a desc
endant combinator).
...for example, if i wanted to select the first child of any desc
endant element of <article> , no matter what element it was, and make it bold, i could use the :first-child selector, which we will learn more about in the lesson on pseudo-classes and pseudo-elements, as a desc
endant selector along with the <article> element selector: article :first-child { } this could be confused however with article:first-child, which will select any <article> element that is...
...it is selecting any element which is the first-child of any desc
endant element of <article>: article *:first-child { } although both do the same thing, the readability is significantly improved.
...we do this by using the type selector for the element i want to target, with the class app
ended using a dot, with no white space in between.
How CSS is structured - Learn web development
p { color: red; } p { color: blue; } however, in the case of our earlier example with the conflict between the class selector and the element selector, the class prevails, r
endering red paragraph text.
...an example would be the calc() function, which can do simple math within css: <div class="outer"><div class="box">the inner box is 90% - 30px.</div></div> .outer { border: 5px solid black; } .box { padding: 10px; width: calc(90% - 30px); background-color: rebeccapurple; color: white; } this r
enders as: a function consists of the function name, and parentheses to enclose the values for the function.
... css comments begin with /* and
end with */.
... in the example below, each declaration (and rule start/
end) has its own line.
Learn to style HTML using CSS - Learn web development
looking to become a front-
end web developer?
...we recomm
end that you work through our introduction to html module first.
... in that module, you will learn about: css, starting with the introduction to css module more advanced html modules javascript, and how to use it to add dynamic functionality to web pages once you understand the fundamentals of html, we recomm
end that you learn html and css at the same time, moving back and forth between the two topics.
... it is recomm
ended that you work through getting started with the web before proceeding with this topic.
HTML basics - Learn web development
this states where the element
ends — in this case where the paragraph
ends.
... note: simple attribute values that don't contain ascii whitespace (or any of the characters " ' ` = < > ) can remain unquoted, but it is recomm
ended that you quote all attribute values, as it makes the code more consistent and understandable.
...after making a link, click it to make sure it is s
ending you where you wanted it to.
... conclusion if you have followed all the instructions in this article, you should
end up with a page that looks like the one below (you can also view it here): if you get stuck, you can always compare your work with our finished example code on github.
Installing basic software - Learn web development
office document editors are not suitable for this use, as they rely on hidden elements that interfere with the r
endering engines used by web browsers.
...a library t
ends to be an existing javascript or css file that provides ready-rolled functionality for you to make use of in your code.
... a framework t
end to take this idea further, offering a complete system with some custom syntaxes for you to write a web app on top of.
...we recomm
end starting with visual studio code, which is a free editor, that offers live previews and code hints.
What’s in the head? Metadata in HTML - Learn web development
for example, your page could handle english and japanese just fine: if you set your character encoding to iso-8859-1, for example (the character set for the latin alphabet), your page r
endering may appear all messed up: note: some browsers (e.g.
... chrome) automatically fix incorrect encodings, so dep
ending on what browser you use, you may not see this problem anyway.
...you may see (dep
ending on the browser) favicons displayed in the browser tab containing each open page, and next to bookmarked pages in the bookmarks panel.
... summary that marks the
end of our quickfire tour of the html head — there's a lot more you can do in here, but an exhaustive tour would be boring and confusing at this stage, and we just wanted to give you an idea of the most common things you'll find in there for now!
Introduction to events - Learn web development
in the case of the web, events are fired inside the browser window, and t
end to be attached to a specific item that resides in it — this might be a single element, set of elements, the html document loaded in the current tab, or the entire browser window.
... const buttons = document.queryselectorall('button'); for (let i = 0; i < buttons.length; i++) { buttons[i].onclick = bgchange; } note that another option here would be to use the foreach() built-in method available on nodelist objects: buttons.foreach(function(button) { button.onclick = bgchange; }); note: separating your programming logic from your content also makes your site more fri
endly to search engines.
...when the w3c decided to try to standardize the behavior and reach a consensus, they
ended up with this system that included both, which is the one modern browsers implemented.
... you've reached the
end of this article, but can you remember the most important information?
Storing the information you need — Variables - Learn web development
it would
end up looking something like this: let name = prompt('what is your name?'); if (name === 'adam') { alert('hello adam, nice to see you!'); } else if (name === 'alan') { alert('hello alan, nice to see you!'); } else if (name === 'bella') { alert('hello bella, nice to see you!'); } else if (name === 'bianca') { alert('hello bianca, nice to see you!'); } else if (name === 'chris') { alert('h...
... note: in javascript, all code instructions should
end with a semi-colon (;) — your code may work correctly for single lines, but probably won't when you are writing multiple lines of code together.
... for these reasons and more, we recomm
end that you use let as much as possible in your code, rather than var.
... you've reached the
end of this article, but can you remember the most important information?
Web performance - Learn web development
learning pathway while knowing html, css, and javascript is needed for implementing many web performance improvement recomm
endations, knowing how to build applications is not a necessary pre-condition for understanding and measuring web performance.
... we do however recomm
end that before you work through this module, you at least get a basic idea of web development by working through our getting started with the web module.
...this article introduces the components of performance, from web page loading and r
endering, including how your content makes it into your users browser to be viewed, to what groups of people we need to consider when thinking about performance, how do users perceive performance?
... javascript performance best practices javascript, when used properly, can allow for interactive and immersive web experiences — or it can significantly harm download time, r
ender time, in-app performance, battery life, and user experience.
Learning area release notes - Learn web development
june 2020 our front-
end web developer learning pathway is officially launched!
... check it out for an opinionated pathway to follow for learning front-
end development!
... also see our hacks post — introducing the mdn web docs front-
end developer learning pathway — for more information about the rationale behind it.
... in the following modules: css building blocks javascript first steps javascript building blocks introducing javascript objects january 2020 the html forms module has been significantly updated: it has been retitled web forms, and moved out of the html topic area to recognise that it covers more than just html form elements — it also covers styling, validation, the basics of how to s
end data and process it on the server, and more besides.
Server-side website programming - Learn web development
in the modern world of web development, learning about server-side development is highly recomm
ended.
... learning pathway getting started with server-side programming is usually easier than client-side development, because dynamic websites t
end to perform a lot of very similar operations (retrieving data from a database and displaying it in a page, validating user-entered data and saving it in a database, checking user permissions and logging users in, etc.), and are constructed using web frameworks that make these and other common web server operations easy.
...similarly, expertise in client-side coding is not required, but a basic knowledge will help you work better with the developers creating your client-side web "front
end".
...we recomm
end that you first read the following topics: what is a web server what software do i need to build a website?
Beginning our React todo list - Learn web development
inherit; font-size: 100%; line-height: 1.15; margin: 0; } button, input { overflow: visible; } input[type="text"] { border-radius: 0; } body { width: 100%; max-width: 68rem; margin: 0 auto; font: 1.6rem/1.25 arial, sans-serif; background-color: #f5f5f5; color: #4d4d4d; } @media screen and (min-width: 620px) { body { font-size: 1.9rem; line-height: 1.31579; } } /*
end resets*/ /* global styles */ .form-group > input[type="text"] { display: inline-block; margin-top: 0.4rem; } .btn { padding: 0.8rem 1rem 0.7rem; border: 0.2rem solid #4d4d4d; cursor: pointer; text-transform: capitalize; } .btn.toggle-btn { border-width: 1px; border-color: #d3d3d3; } .btn.toggle-btn[aria-pressed="true"] { text-decoration: underline; border-color: #4d4d4d; } .bt...
...ect(1px, 1px, 1px, 1px); white-space: nowrap; } [class*="stack"] > * { margin-top: 0; margin-bottom: 0; } .stack-small > * + * { margin-top: 1.25rem; } .stack-large > * + * { margin-top: 2.5rem; } @media screen and (min-width: 550px) { .stack-small > * + * { margin-top: 1.4rem; } .stack-large > * + * { margin-top: 2.8rem; } } .stack-exception { margin-top: 1.2rem; } /*
end global styles */ .todoapp { background: #fff; margin: 2rem 0 4rem 0; padding: 1rem; position: relative; box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 2.5rem 5rem 0 rgba(0, 0, 0, 0.1); } @media screen and (min-width: 550px) { .todoapp { padding: 4rem; } } .todoapp > * { max-width: 50rem; margin-left: auto; margin-right: auto; } .todoapp > form { max-width: 100%; } .todoap...
... previous overview: client-side javascript frameworks next in this module introduction to client-side frameworks framework main features react getting started with react beginning our react todo list componentizing our react app react interactivity: events and state react interactivity: editing, filtering, conditional r
endering accessibility in react react resources ember getting started with ember ember app structure and componentization ember interactivity: events, classes and state ember interactivity: footer functionality, conditional r
endering routing in ember ember resources and troubleshooting vue getting started with vue creating our first vue component ren...
...dering a list of vue components adding a new todo form: vue events, methods, and models styling vue components with css using vue computed properties vue conditional r
endering: editing existing todos focus management with vue refs vue resources svelte getting started with svelte starting our svelte todo list app dynamic behavior in svelte: working with variables and props componentizing our svelte app advanced svelte: reactivity, lifecycle, accessibility working with svelte stores typescript support in svelte deployment and next steps ...
Git and GitHub - Learn web development
looking to become a front-
end web developer?
...dep
ending on how you like to work, you could use a git gui client (we'd recomm
end github desktop, sourcetree or git kraken) or just stick to using a terminal window.
... in fact, it is probably useful for you to get to know at least the basics of git terminal commands, even if you int
end to use a gui.
...however, it is recomm
ended that you know some coding so that you have reasonable computer literacy, and some code to store in your repositories!
Tools and testing - Learn web development
note: we have referenced a number of tools in this topic, not because we
endorse them or think they are the best, but because we know they work and have good industry support.
... looking to become a front-
end web developer?
... understanding client-side javascript frameworks javascript frameworks are an essential part of modern front-
end web development, providing developers with tried and tested tools for building scalable, interactive web applications.
... many modern companies use frameworks as a standard part of their tooling, so many front-
end development jobs now require framework experience.
Accessibility and Mozilla
in fact, the same keyboard commands are still available, so users can become comfortable and productive right away.accessibility information for core gecko developersboth
end users and developers are invited for discussion on the live irc channel at irc.mozilla.org/#accessibility.
... gecko info for windows accessibility v
endorsplease contact the mozilla accessibility community.information for assistive technology v
endorsboth
end users and developers are invited for discussion on the live irc channel at irc.mozilla.org/#accessibility.
... since this is a worldwide effort, there is always a good chance to find someone to chat with there, day or night.information for external developers dealing with accessibilityboth
end users and developers are invited for discussion on the live irc channel at irc.mozilla.org/#accessibility.
...software that r
enders web content.
Index
found 689 pages: # page tags and summary 1 add-ons add-ons, extension, extensions, landing, mozilla add-ons allow developers to ext
end and modify the functionality of firefox.
... 680 resources for publishers add-ons, extensions, distribution, publication now your add-on is published on amo, check out the following resources: 681 retiring your extension extensions, webextension,
end-of-life, publication there may be occasions where you want to retire one of your extensions.
...some build processes r
ender extension code difficult to read.
...in this case, when you upload your extension to amo, you will need to provide your source code and instructions for building that source code, where build processes r
ender your extension’s code hard to read.
A bird's-eye view of the Mozilla framework
when an html, xml, svg or other type of document is loaded, the nglayout engine (also known as gecko) parses the contents into a dom tree, and handles the layout and r
endering of the document pages.
... the nglayout engine also parses xul ui controls into a dom tree and handles r
endering of the ui.
... in the diagram above, each horizontal line ext
ending from an object and terminated by an open circle indicates an interface to the object.
...the xpidl interface description is indep
endent of the programming language used to implement the object itself.
Creating a Language Pack
let's unpack it $ make unpack again, for 64-bit mac, app
end moz_pkg_platform=mac to this command.
... at the
end of the process, you should see the following success message.
...it's now time to repackage the en-us binary with $ make installers-x-testing locale_mergedir=$(pwd)/mergedir again, for 64-bit mac, app
end moz_pkg_platform=mac to this command.
... $ make merge-x-testing locale_mergedir=$(pwd)/mergedir $ make installers-x-testing locale_mergedir=$(pwd)/mergedir at the
end of the process, you should see the following success message.
HTTP logging
note: the generated log file uses unix-style line
endings.
... this is accomplished by splitting the log into up to 4 separate files (their filenames have a numbered extension, .0, .1, .2, .3) the logging back
end cycles the files it writes to, while ensuring that the sum of these files’ sizes will never go over the specified limit.
... note 2: rotate doesn’t support app
end.
... the app
end module specified is then ignored.
Simple Sunbird build
# get the source hg clone http://hg.mozilla.org/comm-central/ cd comm-central python client.py checkout # setup a basic .mozconfig file echo 'ac_add_options --enable-application=cal
endar' > .mozconfig # let's build sunbird...
...mk_add_options moz_objdir=@topsrcdir@/objdir-sb-debug ac_add_options --enable-application=cal
endar ac_add_options --enable-debug ac_add_options --disable-optimize running sunbird the sunbird executable can be found in objdir-sb-release/mozilla/dist/bin/ (on mac, objdir-sb-release/dist/cal
endar.app/contents/macos/).
... building sunbird and lightning if you've set up you build environment as above, then all you need to do is: echo 'ac_add_options --enable-cal
endar' >> .mozconfig or just add the ac_add_options --enable-cal
endar line to your .mozconfig with your favourite editor.
...building just lightning after you have completed a full build, if you would like to rebuild lightning you don't need to go through the whole build process: # enter the cal
endar directory in the object-directory cd src/../objdir-sb-release/cal
endar # make the lightning extension make -c lightning references general build documentation comm-central ...
Index
141 index firefox, index, mozilla found 168 pages: 142 linux compatibility matrix the following table lists the available library versions for the mozilla.org-distributed firefox builds dep
endencies, and/or to build firefox.
...you can find details about profiles on mozilla's
end-user support site.
... 168 performance best practices for firefox front-
end engineers best practices, developing firefox, developing mozilla, firefox, front-
end, mozilla, performance this guide will help firefox developers working on front-
end code produce code which is as performant as possible—not just on its own, but in terms of its impact on other parts of firefox.
... 172 security best practices for firefox front-
end engineers best practices, developing firefox, developing mozilla, firefox, front-
end, mozilla, performance this article will help firefox developers understand the security controls in place and avoid common pitfalls when developing front-
end code for firefox.
Multiple Firefox profiles
you can find details about profiles on mozilla's
end-user support site.
...the release channel is recomm
ended for most users, as it is the "official release" channel.
... for example, if firefox is installed in the recomm
ended location, you would enter /applications/firefox.app/contents/macos/firefox.
...you will want to, for sure, add the -no-remote part to the
end of the command field, so that you could run multiple instances at the same time.
Limitations of chrome scripts
observers in the chrome process dep
ending on the topic, you need to register observers in either the chrome process or in a frame script.
... there is a shim that will forward these two topics to the chrome process, s
ending cpows as the asubject argument.
...for example: addeventlistener("load", handler, true) // for example if you need to contact the chrome process when that happens, s
end it a message.
... if an add-on wants to use a jsm to share state in this way, it's best to load the jsm in the chrome process, and have frame scripts store and access the jsm's state by s
ending messages to the chrome process using the message manager.
Process scripts
but if you register it in a frame script, and the frame script is loaded more than once, you'll register the content policy more than once, which probably isn't what you int
end.
...}); the process script's global is a child process message manager, which enables the process script to receive messages from the chrome side, and to s
end messages to the chrome side: // process-script.js if (services.appinfo.processtype == services.appinfo.process_type_content) { dump("welcome to the process script in a content process"); } else { dump("welcome to the process script in the main process"); } // message is sent using contentprocessmessagemanager s
endasyncmessage("hello"); in this example, the dump() statement will run once in...
...if you do, you must call removedelayedprocessscript() when your extension is disabled or removed the message-passing apis are the same: s
endasyncmessage() is available in both directions, while s
endsyncmessage() is available from content to chrome only process scripts are system-privileged, and have access to the components object.
...rieving its content message manager, as follows: function contentmmfromcontentwindow(window) { let tree = window.queryinterface(ci.nsiinterfacerequestor).getinterface(ci.nsidocshelltreeitem); let top = tree.sametyperoottreeitem; let iface = queryinterface(ci.nsidocshell).queryinterface(ci.nsiinterfacerequestor); return iface.getinterface(ci.nsicontentframemessagemanager); } this is int
ended for unprivileged pages running in a content process.
Tracking Protection
most obviously, it means that when tracking protection is enabled: content served from third-party trackers will not be visible to users your site won't be able to use third-party advertising or analytics services that engage in tracking more subtly, if other parts of your site dep
end on trackers being loaded, then these parts will also be broken when tracking protection is enabled.
... for example, you should not use google analytics in the following way: <a href="http://www.example.com" onclick="tracklink('http://www.example.com', event);"> visit example.com </a> <script> function tracklink(url,event) { event.preventdefault(); ga('s
end', 'event', 'outbound', 'click', url, { 'transport': 'beacon', 'hitcallback': function() { document.location = url; } }); } </script> instead, you should account for the case when google analytics is missing by checking to see if the ga object has initialized: <a href="http://www.example.com" onclick="tracklink('http://www.example.com', event);"> visit example.com </a>...
... <script> function tracklink(url,event) { event.preventdefault(); if (window.ga && ga.loaded) { ga('s
end', 'event', 'outbound', 'click', url, { 'transport': 'beacon', 'hitcallback': function() { document.location = url; } }); } else { document.location = url; } } </script> more information about this technique is available at google analytics, privacy, and event tracking.
... note: dep
ending on a third party in this way is not a good practice anyway, because then your site can be broken if the third party is slow or unavailable, or if the tracker has been blocked by an add-on.
Firefox
with broad compatibility, the latest in web technologies, and powerful development tools, firefox is a great choice for both web developers and
end users.
... linux compatibility matrixthe following table lists the available library versions for the mozilla.org-distributed firefox builds dep
endencies, and/or to build firefox.multiple firefox profilesa profile in firefox is the collection of settings, customizations, add-ons, and other personalizations that a user has made or installed into their copy of firefox.
... you can find details about profiles on mozilla's
end-user support site.performance best practices for firefox front-
end engineersthis guide will help firefox developers working on front-
end code produce code which is as performant as possible—not just on its own, but in terms of its impact on other parts of firefox.
... 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 visit.
Roll your own browser: An embedding how-to
activex control: an activex control allowing for embedding the gecko layout engine.obsolete since gecko 7.0 llmozlib & ubrowser: a static library that allows you to embed gecko and r
ender pages to memory.
...camino uses cocoazilla, a variant of fizzilla that consists of a unix back
end wed to a cocoa front
end.
... browserg!: a java application that uses webclient for html r
endering and surfing capabilities.
... if you find any missing item, please s
end me an email.
Gecko Keypress Event
gecko 1.9 key handling changed significantly after beta 5 (bug 359638, bug 429510 and the bugs on which they dep
end).
... the accel key dep
ends on the platform.
... the charcode value dep
ends on the state of capslock and numlock (except they are currently ignored if alt (option) is down on mac - see bug 432953).
...the pairs of characters that might be on the same key dep
end on the keyboard layout.
Script security
gecko has an additional problem, though: while its core is written in c++, the front-
end code is written in javascript.
... having the browser front
end in javascript has benefits: it can be much quicker to develop in javascript than in c++, and contributors do not need to learn c++.
...from the point of view of chrome code, the script security model in gecko is int
ended to provide that help to make writing secure, system-privileged javascript a realistic expectation.
... (a is the start of the arrow, and b is the
end.) computing a wrapper the following diagram shows the factors that determine the kind of wrapper that compartment a would get when trying to access an object in compartment b.
Implementing Download Resuming
the front-
end code can then notify the user of this, and offer to resume the download.
... note: in versions of firefox prior to 3.0 alpha 7, nsiwebbrowserpersist cannot app
end to existing files (as opposed to overwriting them), and is therefore not usable for this task (see bug 129921).
...the front-
end may want to offer the user to get the new file from scratch in such a case.
...here, too, the front-
end may want to offer downloading the entire file from scratch.
Introduction to Layout in Mozilla
overview basic data flow key data structures detailed walk-through incrementalism future tech-talks wrap-up, q&a basic data flow source document arrives via network apis incrementally “pumped” through the single-threaded layout engine parse, compute style, r
ender; repeat css used for r
endering all content content theoretically separate from “presentation” key data structures content node elements, attributes, leaves dom frame rectangular formatting primitive geometric information [0..n] per content node 2nd thru nth are “continuations” style context non-geometric information may be shared by adjacent frames reference counted, owned by frame ...
...rser 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, app
endchildto, removechildat frame construction content sink uses nsidocument interface to notify of Δs in content model contentapp
ended, contentinserted, contentremoved presshell is registered as document observer receives contentapp
ended, etc.
...(tables, blocks, xul boxes) reflow “global” reflows initial, resize, style-change processed immediately via presshell method incremental reflows targeted at a specific frame dirty, content-changed, style-changed, user-defined nshtmlreflowcommand object encapsulates info queued and processed asynchronously, nsipressshell::app
endreflowcommand, processreflowcommands incremental reflow recursively desc
end to target recovering reflow state child rs.reason set to incremental incremental reflow process reflow “normally” at target frame child rs.reason set based on rc’s type incremental reflow propagate damage to frames later “in the flow” incremental reflow mul...
...processed asynchronously via os expose event native expose event dispatched to widget; widget delegates to the view manager view manager paints views back-to-front, invoking presshell’s paint method presshell::paint walks from the view to the frame; invokes nsiframe::paint for each layer incrementalism single-threaded simple (no locking) can’t leave event queue unatt
ended content construction unwinds “at will” parser and content sink do some buffering content sink has “notification limits” efficiency vs.
Mozilla Content Localized in Your Language
reference material can be find here cal
endar cal
endar view: which date is considered the first day of the week, sunday or monday?
... is lunar cal
endar observed?
... other regional cal
endar observed?
... g
ender are there exceptions to standard g
ender conventions within your language?
Localizing without a specialized tool
dep
ending on your case, you can do it in one of the following ways: if no localization exists yet, create an empty folder and create a mercurial repository in it: $ mkdir x-testing $ cd x-testing $ hg init if there is a bitbucket repository with localization files, you can pull from it.
... $ hg clone http://bitbucket.org/mozillal10n/x-testing if there is an hg.mozilla.org repository with localization files, you can pull from it too: $ hg clone http://hg.mozilla.org/releases/l10n-mozilla-1.9.2/x-testing eventually, you should
end up with a folder hierarchy described above in the folder structure section.
...<!entity cmd_enginemanager.label "manage search engines..."> <!entity search
endcap.label "search"> save the file.
...recomm
ended order of localization for recomm
ended order of localization, refer to the localization "phase list" which provides a very rough guide on where to start and in what order to proceed through translation.
gettext
consider the following code snippet: <?php $num = 1; printf(ngettext("%d user likes this.", "%d users like this.", $num), $num); ?> dep
ending on the value of the $num variable, this code will either use the singular ("user likes) or the plural ("users like") form of the string.
... the string definition in the messages.po file will look like this: #: file.php:3 #, php-format msgid "%d user likes this." msgid_plural "%d users like this." msgstr[0] "" msgstr[1] "" dep
ending on the localizer's target language and its rules for creating plural forms, there might be another field for translation, e.g.
...gettext will return one of the msgstrs, dep
ending on the number passed to the gettext function in the code ($num in the above example).
...using context with msgctxt dep
ending on context in which it is used, one english string might require two or more different translations.
MathML Torture Test
mathml torture test html content <p> r
ender mathematics with: <select name="mathfont" id="mathfont"> <option value="default" selected="selected">default fonts</option> <option value="asana">asana</option> <option value="cambria">cambria</option> <option value="dejavu">dejavu</option> <option value="latinmodern">latin modern</option> <option value="libertinus">libertinus</option> <option value="lucidabright">lucida bright</option> <option value="minion">minion</option> <option value="stixtwo">stix two</option> <option value="texgyrebonum">tex gyre bonum</option> <option value="texgyrepagella">tex gyre pagella</option> <option value="texgyreschola">tex gyre schola</option> <option value="texgyretermes">tex gyre termes</option> ...
... <option value="xits">xits</option> </select> <br/> </p> <table> <tr> <td></td> <th scope="col">as r
endered by tex</th> <th scope="col">as r
endered by your browser</th></tr> <tr> <td>1</td> <td><img src="https://udn.realityripple.com/samples/45/d5a0dbbca3.png" width="38" height="22" alt="texbook, 16.2-16.3" /></td> <td> <math display="block"> <mrow> <msup> <mi>x</mi> <mn>2</mn> </msup> <msup> <mi>y</mi> <mn>2</mn> </msup> </mrow> </math> </td></tr> <tr> <td>2</td> <td><img src="https://udn.realityripple.com/samples/b8/da4a50ea34.png" width="30" height="17" alt="texbook, 16.2-16.3" /></td> <td> <math display="bl...
...it compares the r
endering by the xetex engine using the default latin modern math font against the mathml r
endering by your browser using the default math font, or an alternative opentype math fonts.
... to get the best r
endering, be sure to have appropriate mathematical fonts installed on your system and to use a browser with opentype math support such as gecko 31.0 (firefox 31.0 / thunderbird 31.0 / seamonkey 2.28) or higher.
Investigating leaks using DMD heap scan mode
dmd heap scan mode is int
ended to be used to investigate leaks of cycle collected (cced) objects.
... the particular steps given below are int
ended for the case where the leaked object is alive all the way through shutdown.
...$logdir should
end in a path separator.
... if there are multiple files, you'll
end up with one that looks like cc-edges.$pid.log and one or more that look like cc-edges.$pid-$n.log for various values of $n.
Power profiling overview
in the context of computing, a fully-charged mobile device battery (as found in a laptop or smartphone) holds a certain amount of energy, and the speed at which that stored energy is depleted dep
ends on the power consumption of the mobile device.
... that in turn dep
ends on the software running on the device.
... the fraction of time that a package or core sp
ends in an idle c-state is called the c-state residency.
...dram is indep
endent of the other three domains.
L20n HTML Bindings
download l20n with html bindings we maintain a repository with l20n optimized for production use: one file (~110kb) one file, minified (~35kb) it's recomm
ended to include the l20n.js file as the last script in the head element.
... <script type="application/l10n-data+json"> { "newnotifications": 3, "user": { "name": "jane", "g
ender": "feminine" } } </script> this data will be available context-wide to all localized strings.
... for instance, a string could use the information about the user's g
ender to provide two variants of the translation, like in the example below.
... <invited[$user.g
ender] { feminine: "{{ $user.name }} has invited you to her circles.", masculine: "{{ $user.name }} has invited you to his circles.", *unknown: "{{ $user.name }} has invited you to their circles." }> based on the context data defined above, this will produce: jane has invited you to her circles.
NSPR build instructions
although nsprpub is a subdirectory under mozilla, nspr is indep
endent of the mozilla client source tree.
... if the os v
endor provides a compiler (for example, sun and hp), nspr uses that compiler instead of gcc by default.
... these two options can actually be used indep
endently, but it's not recomm
ended.
...we recomm
end most applications use the "win95" configuration.
Date and Time
nspr represents time in two ways, absolute time and clock/cal
endar time.
... clock/cal
endar time, used for human interfaces, represents time in the familiar year, month, day, hour, minute, second components.
...the nspr data type for clock/cal
endar time, called an exploded time, has the time zone information in it, so that its corresponding point in absolute time is uniquely specified.
... pr_msec_per_sec pr_usec_per_sec pr_nsec_per_sec pr_usec_per_msec pr_nsec_per_msec types and constants types and constants defined for nspr dates and times are: prtime prtimeparameters prexplodedtime time parameter callback functions in some geographic locations, use of daylight saving time (dst) and the rule for determining the dates on which dst starts and
ends have changed a few times.
NSPR Error Handling
pr_p
ending_interrupt_error the operation terminated because another thread has interrupted it with pr_interrupt.
... pr_io_p
ending_error an i/o operation has been attempted on a file descriptor that is currently busy with another operation.
... pr_
end_of_file_error unexpectedly encountered
end of file (mac os only).
... pr_max_error placeholder for the
end of the list.
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_s
endbuffersize, pr_sockopt_iptimetolive, pr_sockopt_iptypeofservice, pr_sockopt_addmember, pr_sockopt_dropmember, pr_sockopt_mcastinterface, 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_linger time to linger on close if data is present in the socket s
end buffer.
... pr_sockopt_s
endbuffersize s
end buffer size.
...don't delay s
end to coalesce packets.
PRSocketOptionData
syntax #include <prio.h> typedef struct prsocketoptiondata { prsockoption option; union { pruintn ip_ttl; pruintn mcast_ttl; pruintn tos; prbool non_blocking; prbool reuse_addr; prbool keep_alive; prbool mcast_loopback; prbool no_delay; prsize max_segment; prsize recv_buffer_size; prsize s
end_buffer_size; prlinger linger; prmcastrequest add_member; prmcastrequest drop_member; prnetaddr mcast_if; } value; } prsocketoptiondata; fields the structure has the following fields: ip_ttl ip time-to-live.
...don't delay s
end to coalesce packets.
... s
end_buffer_size s
end buffer size.
... linger time to linger on close if data are present in socket s
end buffer.
PR_Shutdown
pr_shutdown_s
end.
... further s
ends will be disallowed.
...further s
ends and receives will be disallowed.
... description the prshutdownhow enumeration is defined as follows: typedef enum prshutdownhow{ pr_shutdown_rcv = 0, pr_shutdown_s
end = 1, pr_shutdown_both = 2 } prshutdownhow; ...
NSS 3.12.4 release notes
currently nss 3.12.4 is in the "review p
ending" state in the fips 140-2 pre-validation list at http://csrc.nist.gov/groups/stm/cmvp/documents/140-1/140inprocess.pdf added crl distribution point support (see cert.h).
...matches one character \ will escape a special character $ matches the
end of the string bracketed expressions: [abc] matches one occurence of a, b, or c.
...bug 470500: firefox 3.1b2 crash report [[@ nssutil3.dll@0x34c0 ] bug 482742: enable building util indep
endently of the rest of nss bug 483653: unable to build certutil.exe for fennec/wince bug 485145: miscellaneous crashes in signtool on windows bug 485155: nss_enable_pkix_verify=1 causes sec_error_unknown_issuer errors bug 485527: rename the _x86_ macro in lib/freebl bug 485658: vfychain -p reports revoked cert bug 485745: modify fipstest.c to support cavs 7.1 drbg testing bug 486304: cert7.db/cert8.
...db corruption when importing a large certificate (>64k) bug 486405: allocator mismatches in pk12util.c bug 486537: disable execstack in freebl x86_64 builds on linux bug 486698: facilitate the building of major components indep
endently and in a chain manner by downstream distributions bug 486999: calling ssl_setsockpeerid a second time leaks the previous value bug 487007: make lib/jar conform to nss coding style bug 487162: ckfw/capi build failure on windows bug 487239: nssutil.rc doesn't compile on wince bug 487254: sftkmod.c uses posix file io functions on wince bug 487255: sdb.c uses posix file io functions on wince bug 487487: cert_nametoascii reports !invalid ava!
NSS 3.21 release notes
new in nss 3.21 new functionality certutil now supports a --rename option to change a nickname (bug 1142209) tls ext
ended master secret extension (rfc 7627) is supported (bug 1117022) new info functions added for use during mid-handshake callbacks (bug 1084669) new functions in nss.h nss_optionset - sets nss global options nss_optionget - gets the current value of nss global options in secmod.h secmod_createmoduleex - create a new secmodmodule structure from module name string, module p...
...nge in sslerr.h ssl_error_rx_short_dtls_read - error code for failure to include a complete dtls record in a udp packet ssl_error_no_supported_signature_algorithm - error code for when no valid signature and hash algorithm is available ssl_error_unsupported_signature_algorithm - error code for when an unsupported signature and hash algorithm is configured ssl_error_missing_ext
ended_master_secret - error code for when the ext
ended master secret is missing after having been negotiated ssl_error_unexpected_ext
ended_master_secret - error code for receiving an ext
ended master secret when previously not negotiated in sslt.h ssl_enable_ext
ended_master_secret - configuration to enable the tls ext
ended master secret extension (rfc 7627) ssl_preinfo_version - used...
...= tc trustcenter universal ca iii sha1 fingerprint: 96:56:cd:7b:57:96:98:95:d0:e1:41:46:68:06:fb:b8:c6:11:06:87 cn = a-trust-nqual-03 sha-1 fingerprint: d3:c0:63:f2:19:ed:07:3e:34:ad:5d:75:0b:32:76:29:ff:d5:9a:f2 cn = usertrust legacy secure server ca sha-1 fingerprint: 7c:2f:91:e2:bb:96:68:a9:c6:f6:bd:10:19:2c:6b:52:5a:1b:ba:48 fri
endly name: digital signature trust co.
... global ca 1 sha-1 fingerprint: 81:96:8b:3a:ef:1c:dc:70:f5:fa:32:69:c2:92:a3:63:5b:d1:23:d3 fri
endly name: digital signature trust co.
NSS 3.56 release notes
notable changes in nss 3.56 nspr dep
endency updated to 4.28.
... bug 1588941 - s
end empty certificate message when scheme selection fails.
... bug 1659814 - fix interop.sh failures with newer tls-interop commit and dep
endencies.
... bug 1656519 - update nspr dep
endency to 4.28.
Utilities for nss samples
*/ typedef struct { enum { pw_none = 0, /* no password */ pw_fromfile = 1, /* password stored in a file */ pw_plaintext = 2 /* plain-text password passed in buffer */ /* pw_external = 3 */ } source; char *data; /* dep
ending on source this can be the actual * password or the file to read it from */ } secupwdata; /* * printasascii */ extern void printasascii(prfiledesc* out, const unsigned char *data, unsigned int len); /* * printashex */ extern void printashex(prfiledesc* out, const unsigned char *data, unsigned int len); /* * getdigit */ extern int getdigit(char c); /* * hextobuf */ extern i...
... int rsize); /* * filetoitem */ extern secstatus filetoitem(secitem *dst, prfiledesc *src); /* * seedfromnoisefile */ extern secstatus seedfromnoisefile(const char *noisefilename); /* * filesize */ extern long filesize(const char* filename); /* * readderfromfile */ extern secstatus readderfromfile(secitem *der, const char *infilename, prbool ascii); #
endif /* _util_h */ util.c /* this source code form is subject to the terms of the mozilla public * license, v.
...truct termios tio; tcgetattr(fd, &tio); tio.c_lflag &= ~echo; tcsetattr(fd, tcsaflush, &tio); } } /* * echoon */ static void echoon(int fd) { if (isatty(fd)) { struct termios tio; tcgetattr(fd, &tio); tio.c_lflag |= echo; tcsetattr(fd, tcsaflush, &tio); } } /* * checkpassword */ prbool checkpassword(char *cp) { int len; char *
end; len = port_strlen(cp); if (len < 8) { return pr_false; }
end = cp + len; while (cp <
end) { unsigned char ch = *cp++; if (!((ch >= 'a') && (ch <= 'z')) && !((ch >= 'a') && (ch <= 'z'))) { return pr_true; } } return pr_false; } /* * getpassword */ char* getpassword(file *input, file *output, char *prompt, ...
... } /* check for headers and trailers and remove them */ if ((body = strstr(asc, "-----begin")) != null) { char *trailer = null; asc = body; body = port_strchr(body, '\n'); if (!body) body = port_strchr(asc, '\r'); /* maybe this is a mac file */ if (body) trailer = strstr(++body, "-----
end"); if (trailer != null) { *trailer = '\0'; } else { pr_fprintf(pr_stderr, "input has header but no trailer\n"); port_free(filedata.data); rv = secfailure; goto cleanup; } } else { body = asc; } /* convert to binary */ rv = atob_convertas...
nss tech note7
at present 1024 bit and 2048 bit rsa keys are the most common and recomm
ended.
... if you are really trying to s
end a key, you should use pk11_pubwrapsymkey().
... if you are trying to just s
end data, use pk11_pubencryptpkcs1.
... "the same length as the rsa modulus with an initial octet of 0" and "one octet shorter without that initial octet" are exactly the same thing because the formatted block is treated as a big-
endian big integer by the rsa algorithm.
NSPR functions
pr_geterror pr_seterror cal
endar time nss certificate verification functions take a prtime parameter that specifies the time instant at which the validity of the certificate should verified.
... pr_now interval time the nspr socket i/o functions pr_recv and pr_s
end (used by the nss ssl functions) take a printervaltime timeout parameter.
... printervaltime has an abstract, platform-dep
endent time unit.
... pr_read pr_write pr_recv pr_s
end pr_getsocketoption pr_setsocketoption pr_shutdown pr_close ...
NSS_3.12.3_release_notes.html
most of these changes should cause no problems for nss users, but in some cases, some customers' software, hardware and/or certificates may be dep
endent on the old behaviors, and may have difficulty with the new behaviors.
... nss_use_decoded_cka_ec_point boolean (any non-empty value to enable) tells nss to s
end ec key points across the pkcs#11 interface in the non-standard unencoded format that was used by default before nss 3.12.3.
...backwards compatibility (wildcards) bug 334678: prng_fips1861.c redefines the macro bsize on hp-ux bug 335016: mpp_pprime (miller-rabin probabilistic primality test) may choose 0 or 1 as the random integer bug 347037: make shlibsign dep
end on the softoken only bug 371522: auto-update of crls stops after first update bug 380784: pk11mode in non fips mode failed.
... bug 426413: audit messages need distinct types bug 438870: free freebl hashing code of dep
endencies on nspr and libutil bug 439115: db merge allows nickname conflicts in merged db bug 439199: sse2 instructions for bignum are not implemented on windows 32-bit bug 441321: tolerate incorrect encoding of dsa signatures in ssl 3.0 handshakes bug 444404: libpkix reports unknown issuer for nearly all certificate errors bug 452391: certutil -k incorrectly reports ec private key as an orphan bug 453234: support for seed cipher suites to tls rfc4010 bug 453364: improve pk11_cipherop error reporting (was: pk1...
Necko walkthrough
but the interface for clients of necko is important to consider: s
end request uri helps creates channel setup channel (headers, request data, response callback...) channel->asyncopen.
... note: nsconnectionentry has a single nshttpconnectioninfo object attached, a p
ending queue of nshttptransactions, and 3 arrays for connections: active nshttpconnections idle nshttpconnections nshalfopensockets nshttpconnectionmgr::trydispatchtransaction there is a series of decisions about whether dispatchtransaction is called, along with good code comments: best to read the code for more detail.
... nshttpconnectionmgr::dispatchtransaction nshttpconnectionmgr::dispatchabstracttransaction the transaction is given an indirect reference to the connection (for use later, when the socket has received data from the far
end).
... nshttpconnection::oninputstreamready nshttpconnection::onsocketreadable nshttptransaction::writesegments nshttpconnection::onwritesegment passes bytes from msocketin->read to the transaction's pipe nspipeoutputstream::writesegments nspipe::advancewritecursor nspipeinputstream::oninputreadable so now the response is hitting the other
end of the pipe, saying it has bytes to read nspipeevents::notifyinputready puts the callback object into an nspipeevents object.
Scripting Java
js> t = new java.lang.thread(r) thread[thread-2,5,main] js> t.start() js> running the final js prompt and the output from the new thread may appear in either order, dep
ending on thread scheduling.
...this approach has its limitations: it's not possible to implement multiple interfaces, nor can we ext
end non-abstract classes.
... the syntax of the javaadapter constructor is: new javaadapter(javaintforclass, [javaintf, ..., javaintf,] javascriptobject) here javaintforclass is an interface to implement or a class to ext
end and javaintf are aditional interfaces to implement.
...the class provides additional importpackage() and importclass() global functions for scripts but their extensive usage has t
endency to pollute the global name space with names of java classes and prevents loaded classes from garbage collection.
Shumway
this article will help you understand shumway — mozilla's open standards-based flash r
enderer — and what it means for the community of developers currently creating the adobe flash platform.
... the whats and whys of shumway shumway is a r
enderer for adobe flash built entirely in web standards (javascript, webgl, and others).
... bugzilla is int
ended for problems with integrating shumway into firefox.
...
end-users and less involved developers may report issues by hovering over "shumway" within flash content, clicking "report problems", and filling the form.
JIT Optimization Strategies
note: this page is an in-progress documentation of jit optimization strategies planned to support the "jit coach" feature int
ended for inclusion in firefox developer tools.
... this page has two int
ended uses: 1.
...
end getprop_innerize attempts to optimize a situation where a property access of the form window.prop can be directly translated into a property access on the inner global object.
...
end setprop_inlinecache this is the worst-case scenario for a property access optimization.
JSClass.flags
if the global object does not have this flag, then scripts may cause nonstandard behavior by replacing standard constructors or prototypes (such as function.prototype.) objects that can
end up with the wrong prototype object, if this flag is not present, include: arguments objects (ecma 262-3 §10.1.8 specifies "the original object prototype"), function objects (ecma 262-3 §13.2 specifies "the original function prototype"), and objects created by many standard constructors (ecma 262-3 §15.4.2.1 and others).
... jsclass_is_ext
ended obsolete since jsapi 17indicates that this jsclass is really a jsext
endedclass.
...this is recomm
ended for all new code that needs custom marking.
... see also bug 527805 - removed jsclass_share_all_properties bug 571789 - removed jsclass_is_ext
ended bug 638291 - removed jsclass_mark_is_trace bug 641025 - added jsclass_implements_barriers bug 702507 - removed jsclass_construct_prototype bug 758913 - removed jsclass_new_resolve_gets_start bug 766447 - added jsclass_is_domjsclass bug 792108 - added jsclass_emulates_undefined bug 993026 - removed jsclass_new_resolve bug 1097267 - removed jsclass_new_enumerate ...
JS_InitClass
fs jsfunctionspec * either null or a pointer to the first element of an array of jsfunctionspecs, terminated by js_fs_
end.
...(this is the nearest javascript equivalent of public static member variables in c++ or public static fields in java.) static_fs jsfunctionspec * either null or a pointer to the first element of an array of jsfunctionspecs, terminated by js_fs_
end.
... warning: if the class is a jsext
endedclass, make sure that the additional reserved fields at the
end of the jsext
endedclass are null.
... jsext
endedclass structs should usually be global, and in this case the compiler automatically initializes these fields to null.
SpiderMonkey 1.8.7
this is not a bug, and, any embedding which dep
ends upon deterministic finalization is fatally flawed.
...jsext
endedclass jsext
endedclass has been removed from the api entirely.
... jsautorequest jsautosusp
endrequest jsautocheckrequest jsautoentercompartment js::anchor<> js::call obsolete apis js_clearnewbornroots js_enterlocalrootscope js_leavelocalrootscope js_leavelocalrootscopewithresult js_forgetlocalroot js_newgrowablestring deleted apis js_getscopechain use js_getglobalforscopechain api changes operation callback js_setoperationcallback was introduced in js 1.8.0, replacing the b...
... ?= /path/to/js-config uname_system = $(shell uname -s) jsapi_ldflags = $(shell $(js_config) --libs) ifeq ($(uname_system),darwin) jsapi_ldflags := $(filter -l%,$(jsapi_ldflags)) $(filter -l%,$(jsapi_ldflags))\ $(filter -%_namespace,$(jsapi_ldflags))\ $(filter -wl%,$(jsapi_ldflags)) jsapi_ldflags := $(filter-out $(mozjs_install_name_opt),$(jsapi_ldflags))
endif jsapi_ldflags := $(filter-out %libffi.a,$(jsapi_ldflags)) ldflags += $(jsapi_ldflags) future direction the spidermonkey 1.8.5 source release includes an experimental library versioning scheme.
SpiderMonkey 1.8
in spidermonkey 1.8.1 they will be removed and replaced with a new set of apis (js_getsecuritycallbacks and fri
ends, bug 451729).
... new macros js_fs, js_fn, and js_fs_
end are recomm
ended for populating jsfunctionspec arrays.
... js_alreadyhasownproperty and fri
ends are new functions for examining an object without triggering resolve hooks.
... there are two new jsext
endedclass hooks, jsext
endedclass.iteratorobject and jsext
endedclass.wrappedobject.
SpiderMonkey 24
get it here mozilla-esr24 if the download url is outdate you will find it in "firefox ext
ended support release 24" package on hg release platform support spidermonkey 24 is supported on all the platforms where firefox 24 runs.
... the extension eventually became an evolutionary dead
end, as tc39 chose not to incorporate it into ecmascript proper.
... it is recomm
ended that you embed a separate xml parser, or include an xml parsing implementation written in javascript, as an alternative.
... in the meantime moz_custom_stdint_h is int
ended to function as a bridge to always using the standard header.
Shell global objects
the added functions and their behavior are experimental: don't dep
end upon them unless you're willing to update your code if these experimental apis change underneath you.
...dep
ending on truthiness, you should continue to wait for compilation to happen or stop execution.
...in gecko, this s
ends a memory pressure notification, which can free up some memory.
... verifyprebarriers() start or
end a run of the pre-write barrier verifier.
Gecko object attributes
object attributes are relevant for the entire subtree of the object they are on, unless they are overridden by a desc
endent with the same object attribute.
... sort if "asc
ending" or "desc
ending", then child items within the container are currently sorted as indicated.
... applied to role_cell hypertext attributes formatting "block" if the object uses block formatting, and thus starts on a new line and
ends with a hard line break that is not visible in the actual text.
... margin-right specifies how much horizontal space there will be after the
end of each line of content in a text accessible (see the css margin-right property).
An Overview of XPCOM
the goal of xpcom is to allow different pieces of software to be developed and built indep
endently of one another.
... xpcom is the means of accessing gecko library functionality and embedding or ext
ending gecko.
... this book focuses on the latter - ext
ending gecko - but the fundamental ideas in the book will be important to developers embedding gecko as well.
...currently you can write components in c, c++, or javascript (and sometimes python or java, dep
ending on the state of the respective bindings), and there are efforts underway to build xpcom bindings for ruby and perl as well.
Introduction to XPCOM for the DOM
i recomm
end that book to all the beginners out there.
...you do not, however, need to know all the hairy details, if you just int
end to read the code or to work with the existing framework.
...i had to use the second solution: nscomptr<nsicontent> content = getter_addrefs(ns_static_cast(nsicontent*, this)); // or, if you want to do the refcounting yourself, nsicontent *content = ns_static_cast(nsicontent*, this); the second form should be used with care, and is recomm
ended only for advanced xpcom'ers.
...i recomm
end building distclean.
Components.utils.importGlobalProperties
this function is not int
ended for sandboxes but for system-privileged scopes.
...knowing that, we can just get a valid blob by importing a known module that has the objects, such as services.jsm const {blob, file, services} = cu.import("resource://gre/modules/services.jsm", {}); reference: stackoverflow :: use blob on firefox add-on hidd
endomwindow the hidden domwindow has all of these objects automatically imported.
... the downside of using hidd
endomwindow is that on startup of firefox, the hidd
endomwindow objects cannot be accessed until it is fully loaded.
... var domfile = services.appshell.hidd
endomwindow.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); ...
nsACString
endreading the
endreading function returns a const char_type pointer to the element just beyond the last element of the string's internal buffer.
... app
end the app
end family of functions app
ends a value to the
end of a string's internal buffer.
... operator+= this operator is a shortcut for the app
end family of functions.
...the character encoding in use for a particular nsacstring instance dep
ends on the context in which it is used.
operator=
self_type& operator=( const self_type& astring ); parameters astring [in] a nsembedcstring to app
end to this string.
... self_type& operator=( const abstract_string_type& astring ); parameters astring [in] a nsacstring to app
end to this string.
... self_type& operator=( const char_type* adata ); parameters adata [in] a raw character array to app
end to this string.
... self_type& operator=( char_type achar ); parameters achar [in] a character to app
end to this string.
operator=
self_type& operator=( const self_type& astring ); parameters astring [in] a nsembedstring to app
end to this string.
... self_type& operator=( const abstract_string_type& astring ); parameters astring [in] a nsastring to app
end to this string.
... self_type& operator=( const char_type* adata ); parameters adata [in] a raw character array to app
end to this string.
... self_type& operator=( char_type achar ); parameters achar [in] a character to app
end to this string.
mozITXTToHTMLConv
d 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 a
endpos) wstring scanhtml(in wstring text, in unsigned long whattodo) wstring scantxt(in wstring text, in unsigned long whattodo) constants conversion control attributes these bits allow you to control the conversion of text into html.
... findurlinplaintext() returns the start and
end offsets of the first url found in a substring.
... void findurlinplaintext( in wstring text, in long alength, in long apos, out long astartpos, out long a
endpos ); parameters text the string to scan for the presence of a url.
... a
endpos on return, indicates the offset to the last character of the first found url, or -1 if no url was found.
nsIAccessibleTreeCache
last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview nsiaccessible getcachedtreeitemaccessible(in long arow, in nsitreecolumn acolumn); void invalidatecache(in long arow, in long acount); void treeviewchanged(); void treeviewinvalidated(in long astartrow, in long a
endrow, in long astartcol, in long a
endcol); methods getcachedtreeitemaccessible() returns the tree item from the cache for the cell in the specified row and column; the nsiaccessible is created if it doesn't already exist in the cache.
...void treeviewinvalidated( in long astartrow, in long a
endrow, in long astartcol, in long a
endcol ); parameters astartrow row index invalidation starts from.
... a
endrow row index invalidation
ends, -1 means the last row index.
...a
endcol column index invalidation
ends, -1 means the last column index.
nsIContentFrameMessageManager
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsisyncmessages
ender this interface provides the environment for scripts that are loaded into content frames using the nsiframescriptloader interface.
... it enables these scripts to receive messages from the chrome process and s
end messages back to the chrome process.
... frame scripts can s
end either synchronous or asynchronous messages to the chrome process: for details on these messaging apis see the documentation for the nsicontentframemessagemanager's parent classes nsisyncmessages
ender and nsimessages
ender.
... examples once you obtain the conten frame messge manager, you can s
end messages to listeners who registered with services.mm.addmessagelistener get content message manager from browser this could would run in a nsidomwindow scope.
nsIContentSecurityPolicy
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean permitsancestry(in nsidocshell docshell); void refinepolicy(in astring policystring, in nsiuri selfuri); void scanrequestdata(in nsihttpchannel achannel); void s
endreports(in astring blockeduri, in astring violateddirective); short shouldload(in unsigned long acontenttype, in nsiuri acontentlocation, in nsiuri arequestorigin, in nsisupports acontext, in acstring amimetypeguess, in nsisupports aextra); short shouldprocess(in unsigned long acontenttype, in nsiuri acontentlocation, in nsiuri arequestorigin, in nsisupports acontext, in acstring amimetype, in...
... reportonlymode boolean when set to true, content load-blocking and fail-closed are disabled: content security policy will only s
end reports, and not modify behavior.
...void scanrequestdata( in nsihttpchannel achannel ); parameters achannel s
endreports() manually triggers violation report s
ending given a uri and reason.
...void s
endreports( in astring blockeduri, in astring violateddirective ); parameters blockeduri the uri that violated the policy.
nsIDOMElement
getelementsbytagname() get all desc
endants of a tag name.
... nsidomnodelist getelementsbytagname( in domstring name ); parameters name tag name return value a nsidomnodelist containg all the desc
endants of this tag name.
... getelementsbytagnamens() get all desc
endants of a tag name in a given namespace.
... nsidomnodelist getelementsbytagnamens( in domstring namespaceuri, in domstring localname ); parameters namespaceuri namespace uri localname tag name return value a nsidomnodelist containg all the desc
endants of this tag name.
nsIDownloadProgressListener
d long astateflags, in nsresult astatus, in nsidownload adownload); void onstatuschange(in nsiwebprogress awebprogress, in nsirequest arequest, in nsresult astatus, in wstring amessage, in nsidownload adownload); obsolete since gecko 1.9.1 attributes attribute type description document nsidomdocument document the document of the download manager front
end.
...the received status message is int
ended to be displayed visibly to the user.
...in such a situation no further event handlers are called and the stop flag is set; if there are more p
ending downloads in such a situation not yet started they never start.
... amessage a user-readable status message int
ended to be displayed visibly on the screen.
nsIEditor
t); transaction methods void dotransaction(in nsitransaction txn); void enableundo(in boolean enable); void undo(in unsigned long count); void canundo(out boolean isenabled, out boolean canundo); void redo(in unsigned long count); void canredo(out boolean isenabled, out boolean canredo); void begintransaction(); void
endtransaction(); void beginplaceholdertransaction(in nsiatom name); void
endplaceholdertransaction(); boolean shouldtxnsetselection(); void setshouldtxnsetselection(in boolean should); inline spellchecking methods nsiinlinespellchecker getinlinespellchecker(in boolean autocreate); void syncrealtimespell(); void setspellcheckuser...
...override(in boolean enable); clipboard methods void cut(); boolean cancut(); void copy(); boolean cancopy(); void paste(in long aselectiontype); boolean canpaste(in long aselectiontype); selection methods void selectall(); void beginningofdocument(); void
endofdocument(); drag/drop methods boolean candrag(in nsidomevent aevent); void dodrag(in nsidomevent aevent); void insertfromdrop(in nsidomevent aevent); node manipulation methods void setattribute(in nsidomelement aelement, in astring attributestr,in astring attvalue); boolean getattributevalue(in nsidomelement aelement, in astring attributestr, out astring resultvalue); ...
...outputlflinebreak = 1024, outputnoscriptcontent = 2048, // outputnoframescontent = 4096, outputnoformattinginpre = 8192, // outputencodebasicentities=16384, outputencodelatin1entities=32768, // outputencodehtmlentities=65536, outputpersistnbsp=131072 editorapi.outputtostring('text/html', 2); editorapi.outputtostring('text/plain', 4); // output the body tag, body children and the html
end tag (</html>).
...bugunittests(out long outnumtests, out long outnumtestsfailed); [notxpcom] boolean ismodifiablenode(in nsidomnode anode); constants load flags constant value description enone 0 enext 1 eprevious 2 enextword 3 epreviousword 4 etobeginningofline 5 eto
endofline 6 attributes attribute type description contentsmimetype string the mime type of the document.
nsIEditorMailSupport
insertascitedquotation() insert a string as quoted text (whose representation is dep
endent on the editor type), replacing the selected text (if any), including, if possible, a "cite" attribute.
...insertasquotation() insert a string as quoted text (whose representation is dep
endent on the editor type), replacing the selected text (if any).
...void inserttextwithquotations( in domstring astringtoinsert ); parameters astringtoinsert the string to be inserted pasteascitedquotation() paste a string as quoted text, whose representation is dep
endent on the editor type, replacing the selected text (if any) void pasteascitedquotation( in astring acitation, in long aselectiontype ); parameters acitation the "mid" url of the source message.
... pasteasquotation() paste the text in the os clipboard at the cursor position, as a quotation (whose representation is dep
endent on the editor type), replacing the selected text (if any).
nsIFocusManager
if the current focusedwindow is a desc
endant of awindow, sets the current focusedwindow to awindow.
... adeep if true, then child frames are traversed and the return value may be the element within a child desc
endant window that is focused.
... afocusedwindow will be set to the currently focused desc
endant window of awindow, or to awindow if adeep is false.
...if no element is focused, focus the first focusable element within the document (or the last focusable element if atype is movefocus_
end).
nsIInstallLocation
.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); boolean itemismanagedindep
endently(in astring id); void removefile(in nsifile file); nsifile stagefile(in nsifile file, in astring id); attributes attribute type description canaccess boolean whether or not the user can write to the install location with the current access privileges.
...itemismanagedindep
endently() determines whether or not an item's resources are managed by the extension system or by some other user or process.
...boolean itemismanagedindep
endently( in astring id ); parameters id the guid of the item.
... return value true if the item's resources are managed indep
endently of the extension system, false otherwise.
nsIJSON
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 pret
end they can be and ignore that issue.
... this method is int
ended for use only by code processing legacy data.
... this method is int
ended for use only by code processing legacy data.
... this method is int
ended for use only by code processing legacy data.
nsIMsgMessageService
aurl); void openattachment(in string acontenttype, in string afilename, in string aurl, in string amessageuri, in nsisupports adisplayconsumer, in nsimsgwindow amsgwindow, in nsiurllistener aurllistener); void savemessagetodisk(in string amessageuri, in nsifilespec afile, in boolean ageneratedummyenvelope, in nsiurllistener aurllistener, out nsiuri aurl, in boolean canonicalline
ending, in nsimsgwindow amsgwindow); void geturlforuri(in string amessageuri, out nsiuri aurl, in nsimsgwindow amsgwindow); void displaymessageforprinting(in string amessageuri, in nsisupports adisplayconsumer, in nsimsgwindow amsgwindow, in nsiurllistener aurllistener, out nsiuri aurl); void search(in nsimsgsearchsession asearchsession, in nsimsgwindow amsgwindow, in nsims...
... void savemessagetodisk(in string amessageuri, in nsifilespec afile, in boolean ageneratedummyenvelope, in nsiurllistener aurllistener, out nsiuri aurl, in boolean canonicalline
ending, in nsimsgwindow amsgwindow); parameters amessageuri url representing the message to spool out to disk.
...set to true if you want the message app
ended at the
end of the file.
... canonicalline
ending amsgwindow nsimsgwindow for progress and status feedback return values aurl the new nsiuri of the saved message.
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.
...method overview void selectfolder(in acstring folderuri); void selectmessage(in acstring messageuri); void clearmsgpane(); methods selectfolder() this method is called by the back
end to change the folder displayed in the message window.
... selectmessage() this method is called by the back
end to change the displayed message.
... clearmsgpane() this method is called by the back
end when it wants to clear the message pane, for instance if you select the group header .
nsISmsService
dom/sms/interfaces/nsismsservice.idlscriptable used to s
end 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 s
ender, in domstring receiver, in domstring body, in jsval timestamp, in bool read ); unsigned short getnumberofmessagesfortext(in domstring text); boolean hassupport(); void s
end(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 s
ender, in domstring receiver, i...
... s
ender a domstring with the name of the s
ender.
... s
end() void s
end( in domstring number, in domstring message, in long requestid, in unsigned long long processid optional ); parameters number a domstring with a telephone number to s
end to.
nsISocketTransport
it provides methods to open blocking or non-blocking, buffered or unbuffered streams between two
end-point in a ip based network.
... status_connecting_to 0x804b0007 status_connected_to 0x804b0004 status_s
ending_to 0x804b0005 status_waiting_for 0x804b000a status_receiving_from 0x804b0006 connection flags values for the connectionflags attribute constant value description bypass_cache 0 when making a new connection bypass_cache will force the necko dns cache entry to...
...for example, an ssl connection would not s
end any client-certificates if this flag is set.
...native code only!getselfaddr returns the ip address of the initiating
end.
nsIWebNavigation
set with care, since setting incorrectly can cause us to assume that nothing was actually loaded in this object if the load
ends up being handled by an external application.
...this includes both active network loads and p
ending meta-refreshes.
...this includes animated images, plugins and p
ending javascript timeouts.
... postdata if the uri corresponds to a http request, then this stream is app
ended directly to the http request headers.
nsIWindowMediator
constants constant value description zleveltop 1 s
end window to top.
... zlevelbottom 2 s
end window to bottom.
...zleveltop s
end the window to the top window, zlevelbottom to the bottom.
...zleveltop s
end the window to the top window, zlevelbottom to the bottom.
nsIZipWriter
if azipentry does not
end with "/" then it will be added.
...(a forward slash is '/') detail: this azipentry is very important, this example demonstrates its usage: var zw = cc['@mozilla.org/zipwriter;1'].createinstance(ci.nsizipwriter); var myzipfile = fu.file('c:\\myzipfile.zip'); //this file will be creatd in c drive var pr = {pr_rdonly: 0x01, pr_wronly: 0x02, pr_rdwr: 0x04, pr_create_file: 0x08, pr_app
end: 0x10, pr_truncate: 0x20, pr_sync: 0x40, pr_excl: 0x80}; zw.open(xpi, pr.pr_wronly | pr.pr_create_file | pr.pr_truncate); //xpi file is created if not there, if it is there it is truncated/deleted var filetoaddtozip = fileutils.file('c:\\add this file.txt'); var saveinzipas = 'blah.txt'; zw.addentryfile(saveinzipas, ci.nsizipwriter.compression_none, filetoaddtozip, false); in the above example...
... example adding a comment to a zip file var zipwriter = components.constructor("@mozilla.org/zipwriter;1", "nsizipwriter"); var zipw = new zipwriter(); zipw.open(myzipfilepath, pr_rdwr | pr_create_file | pr_truncate); zipw.comment = "this is a comment."; zipw.close(); pr_rdwr and fri
ends are constants that are not in any interface (see bug 433295), so for the code above to work you need something like: const pr_rdonly = 0x01; const pr_wronly = 0x02; const pr_rdwr = 0x04; const pr_create_file = 0x08; const pr_app
end = 0x10; const pr_truncate = 0x20; const pr_sync = 0x40; const pr_excl = 0x80; see pr_open documentation or file i/o snippets...
... var {cc: classes, ci: interfaces, cu: utils} = components; var zw = cc['@mozilla.org/zipwriter;1'].createinstance(ci.nsizipwriter); var pr = {pr_rdonly: 0x01, pr_wronly: 0x02, pr_rdwr: 0x04, pr_create_file: 0x08, pr_app
end: 0x10, pr_truncate: 0x20, pr_sync: 0x40, pr_excl: 0x80}; //https://developer.mozilla.org/docs/pr_open#parameters var fu = cu.import('resource://gre/modules/fileutils.jsm').fileutils; var fp = cc['@mozilla.org/filepicker;1'].createinstance(ci.nsifilepicker); fp.init(window, 'select directory to compile', ci.nsifilepicker.modegetfolder); fp.app
endfilters(ci.nsifilepicker.filterall | ci.nsifilepick...
XPCOM string functions
ns_cstringapp
enddatathe ns_cstringapp
enddata function app
ends data to the existing value of a nsacstring instance.
...this is a low-level api.ns_cstringgetdatathe ns_cstringgetdata function gives the caller read access to the string's internal buffer.ns_cstringgetmutabledatathe ns_cstringgetmutabledata function gives the caller write access to the string's internal buffer.ns_cstringinsertdatathe ns_cstringinsertdata function app
ends data to the existing value of a nsacstring instance.
... ns_stringapp
enddatathe ns_stringapp
enddata function app
ends data to the existing value of a nsastring instance.
...this is a low-level api.ns_stringinsertdatathe ns_stringinsertdata function app
ends data to the existing value of a nsacstring instance.
Getting Started Guide
in fact, if two objects somehow
end up owning each other (even transitively) it becomes difficult for either of those object to be reclaimed without adding some `out-of-band' mechanism for breaking the ownership cycle.
...this takes a little getting used to on your part, but
ends up with less typing, clearer, safer code, and less leaks.
...this same favor is not ext
ended to queryinterface.
...nscomptr<nsifoo> foo(do_queryinterface(p)); remember, the c++ type system and the xpcom type system are really two indep
endent things.
MailNews fakeserver
the server is smart about the responses and will normalize all occurrences of '\n' (but not '\r') to '\r\n' for you, as well as app
end the '\r\n' to the response if not present.
... ext
ending a handler to provide different mechanisms is a process not defined here; please check the documentation of the corresponding handler for instructions.
...i t
end to like using 1024 + default port number myself.
...to enable/disable debugging, call setdebuglevel on your nsmailserver instance with one of the following options: const fsdebugnone = 0; // dump nothing const fsdebugrecv = 1; // dump just the received commands const fsdebugrecvs
end = 2; // dump received + sent commands, no data const fsdebugall = 3; // dump everything debugging is set to "none" by default.
customDBHeaders Preference
setting the preferences although there are various ways to set preferences, i t
end to just navigate to the directory where my profile is stored and edit the user.js file with my favorite text editor.
...n doonceloaded(){ var observerservice = components.classes["@mozilla.org/observer-service;1"].getservice(components.interfaces.nsiobserverservice); observerservice.addobserver(createdbobserver, "msgcreatedbview", false); window.document.getelementbyid('foldertree').addeventlistener("select",addcustomcolumnhandler,false); } window.addeventlistener("load",doonceloaded,false); dump(" ~ ~ ~ ~
end superfluous ~ ~ ~ ~ \n"); important be aware that only messages that are added to the .msf database after the customdbheaders pref is set will have the corresponding string property set on the msghdr.
...dep
ending on the release you use one, both, or none of the methods may work.
...fluous.xpi chrome/ chrome.manifest chrome/content/ chrome/content/superfluous.js chrome/content/superfluous_overlay.xul install.rdf adding: chrome/ (stored 0%) adding: chrome.manifest (deflated 44%) adding: chrome/content/ (stored 0%) adding: chrome/content/superfluous.js (deflated 57%) adding: chrome/content/superfluous_overlay.xul (deflated 44%) adding: install.rdf (deflated 50%)
end result ultimately, you want to be able to compose a message like this: and see the superfluous column displayed in your inbox like this: thanks many thanks go out to the thunderbird developers for the fine product that it is.
Using the Multiple Accounts API
by alec flett alecf@flett.org structure servers identities storage creating new accounts smtp servers app
endix a: listing of all preferences and properties structure the account system consists of: the account manager (nsimsgaccountmanager): there is a single account manager in the the client, which maintains the list of accounts, servers, etc.
...a user's smtp servers are not actually dep
endant on any of the account settings.
...then he or she must use myisp's smtp server, no matter what identity they will be s
ending mail with.
... app
endix a: listing of all properties (when br
endan's idldoc comes along, i'll just link to that) all preferences are strings, unless otherwise noted.
libmime content type handlers
the primary use of libmime is to parse and r
ender rfc822 messages for use by the messenger component of seamonkey.
... a necessary capability of this module is to dynamically add the ability to decode and r
ender various content types.
...ic const nsiid& getiid() { static nsiid iid = ns_imime_content_type_handler_iid; return iid; } ns_imethod getcontenttype(char **contenttype) = 0; ns_imethod createcontenttypehandlerclass(const char *content_type, contenttypehandlerinitstruct *initstruct, mimeobjectclass **objclass) = 0; }; #
endif /* nsimimecontenttypehandler_h_ */ plugin installation/location the installation of these modules will be similar to the that of any xpcom component (i.e.
... sample content type handler plugin to see an example of a content type handler plugin, the source for the handler of the content type "text/cal
endar" can be viewed at the following link: cal
endar plugin note: this plugin simply creates a blue table in the output stream to identify the fact that it is operational, but the basic constructs of what is needed to build a functional content type handler can be seen.
Accessibility Inspector - Firefox Developer Tools
the name dep
ends on the element; for example, the name of most text elements is simply their textcontent, whereas form elements' names are the contents of their associated <label>.
...this can mean different things dep
ending on the type of the item; for example, a form input (role: entry) would have a value of whatever is entered in the input, whereas a link's value would be the url in the corresponding <a> element's href.
...dep
ending on the size and complexity of your document, this may take a few seconds.
...see color contrast for details about recomm
ended contrast ratios.
Introduction to DOM Inspector - Firefox Developer Tools
inspecting a document when the dom inspector opens, it may or may not load an associated document, dep
ending on the host application.
...if you're inspecting a chrome document, as you select nodes in the dom nodes viewer, the r
endered versions of those nodes are highlighted in the user interface itself.
... (note that there are bugs which prevent the flasher from dom inspector apis from working correctly on certain platforms.) if you inspect the main browser window, for example, and select nodes in the dom nodes viewer (other than the elements which have no visible ui as is the case with the
endless list of script elements that are loaded into browser.xul), you will see the various parts of the browser interface being highlighted with a blinking red border.
...if a binding ext
ends another binding, the binding menulist will list them in desc
ending order to to "root" binding.
Debugger.Memory - Firefox Developer Tools
for each collection slice that occurred, there is an entry in the collections array with the following form: { "starttimestamp":timestamp, "
endtimestamp":timestamp, } here the timestamp values are timestamps of the gc slice’s start and
end events.
...itch” “too_much_malloc” “alloc_trigger” “debug_gc” “compartment_revived” “reset” “out_of_nursery” “evict_nursery” “full_store_buffer” “shared_memory_limit” “periodic_full_gc” “incremental_too_slow” “dom_window_utils” “component_utils” “mem_pressure” “cc_waiting” “cc_forced” “load_
end” “page_hide” “nsjscontext_destroy” “set_new_document” “set_doc_shell” “dom_utils” “dom_ipc” “dom_worker” “inter_slice_gc” “refresh_frame” “full_gc_timer” “shutdown_cc” “user_inactive” nonincrementalreason if spidermonkey’s collector determined it could not incrementally collect garbage, and had to...
...however, the memory consumed by the string itself is a small constant indep
endent of its size, since it is simply a reference to the larger string, a start position, and a length.
...again, such a string retains other strings, but the memory consumed by the string itself is a small constant indep
endent of its size, since it is simply a pair of pointers.
Work with animations - Firefox Developer Tools
the timeline starts at the start of the first animation,
ends at the
end of the last animation, and is labeled with markers every 250 milliseconds (this dep
ends on the time scale of the animations currently displayed).
...delay and
enddelay are both represented.
... if you hover over the bar, a tooltip appears, giving you more detailed information about the animation or transition, including: the type of animation: css transition, css animation, or web animations api the duration of the animation the animation's start and
end delay the animation's easing (or timing function).
... the img#icon animation: animated the filter and transform properties, to scale the icon and color it lasted 750ms, had an
enddelay of 100ms used the compositor thread was given an easing value of ease-in: you can see this by the concave shape of the green bar.
Paint Flashing Tool - Firefox Developer Tools
repaints and responsiveness when the browser r
enders a web page it parses the html and css, determines how to lay it out, and then paints it to actually display the content on the screen.
...the browser also splits its model of the page into layers that it expects will be updated indep
endently of each other.
... layers are painted indep
endently and then composited, so a change in the appearance of one layer does not trigger a repaint in any other layers, and when only the relation of two layers changes (in an animation, for example) no repaints are required at all.
...you should see that the margin-left version triggers a series of repaints as the element moves, while the transform version only causes repaints in the start and
end positions.
about:debugging (before Firefox 68) - Firefox Developer Tools
whether or not system add-ons appear in the list on this page dep
ends on the setting of the devtools.aboutdebugging.showsystemaddons preference.
... workers the workers page shows your workers, categorised as follows: all registered service workers all registered shared workers other workers, including chrome workers and dedicated workers you can connect the developer tools to each worker, and s
end push notifications to service workers.
... s
ending push events to service workers s
ending push events in about:debugging is new in firefox 47.
...just click the "push" button to s
end a push event to the service worker: service workers not compatible in firefox 49+, a warning message will be displayed in the service workers section of the workers page if service workers are incompatible with the current browser configuration, and therefore cannot be used or debugged.
ANGLE_instanced_arrays.drawArraysInstancedANGLE() - Web APIs
the angle_instanced_arrays.drawarraysinstancedangle() method of the webgl api r
enders primitives from array data like the gl.drawarrays() method.
... syntax void ext.drawarraysinstancedangle(mode, first, count, primcount); parameters mode a glenum specifying the type primitive to r
ender.
... count a glsizei specifying the number of indices to be r
endered.
... recomm
endation initial definition.
ANGLE_instanced_arrays.drawElementsInstancedANGLE() - Web APIs
the angle_instanced_arrays.drawelementsinstancedangle() method of the webgl api r
enders primitives from array data like the gl.drawelements() method.
... syntax void ext.drawelementsinstancedangle(mode, count, type, offset, primcount); parameters mode a glenum specifying the type primitive to r
ender.
... count a glsizei specifying the number of elements to be r
endered.
... recomm
endation initial definition.
ANGLE_instanced_arrays - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants this extension exposes one new constant, which can be used in the gl.getvertexattrib() method: ext.vertex_attrib_array_divisor_angle returns a glint describing the frequency divisor used for instanced r
endering when used in the gl.getvertexattrib() as the pname parameter.
... ext.vertexattribdivisorangle() modifies the rate at which generic vertex attributes advance when r
endering multiple instances of primitives with ext.drawarraysinstancedangle() and ext.drawelementsinstancedangle().
... recomm
endation initial definition.
AddressErrors - Web APIs
dep
endentlocality a domstring which, if present, indicates that the dep
endentlocality property of the paymentaddress could not be validated.
...in the example, we're handling a donation to an organization that will be s
ending a "thank you" gift to the donor, so it requests shipping information along with allowing the donation payment itself.
... <p>donate us $65 to our worthwhile cause and we will s
end you a totally not-useless gift as a token of our thanks!</p> <button id="pay">donate now</button> result the final product is below.
... candidate recomm
endation initial definition.
Animation.pause() - Web APIs
the pause() method of the web animations api's animation interface susp
ends playback of the animation.
... exceptions invalidstateerror the animation's currenttime is unresolved (for example, if it's never been played or isn't currently playing) and the
end time of the animation is positive infinity.
... throws an invalidstateerror if the animation's currenttime is unresolved (perhaps it hasn't started playing yet) and the
end time of the animation is positive infinity.
...ce game, largely because animations created with the element.animate() method immediately start playing and must be paused manually if you want to avoid that: // animation of the cupcake slowly getting eaten up var nommingcake = document.getelementbyid('eat-me_sprite').animate( [ { transform: 'translatey(0)' }, { transform: 'translatey(-80%)' } ], { fill: 'forwards', easing: 'steps(4,
end)', duration: alicechange.effect.timing.duration / 2 }); // doesn't actually need to be eaten until a click event, so pause it initially: nommingcake.pause(); additionally, when resetting : // an all-purpose function to pause the animations on alice, the cupcake, and the bottle that reads "drink me." var stopplayingalice = function() { alicechange.pause(); nommingcake.pause(); drinking...
AudioBufferSourceNode.loopStart - Web APIs
buttons are provided to play and stop the audio playback, and slider controls are used to change the playbackrate, loopstart, and loop
end properties on the fly.
... when the audio is played to the
end, it loops, but you can control how long the loops last by altering loopstart and loop
end.
...data = request.response; audioctx.decodeaudiodata(audiodata, function(buffer) { mybuffer = buffer; songlength = buffer.duration; source.buffer = mybuffer; source.playbackrate.value = playbackcontrol.value; source.connect(audioctx.destination); source.loop = true; loopstartcontrol.setattribute('max', math.floor(songlength)); loop
endcontrol.setattribute('max', math.floor(songlength)); }, function(e){"error with decoding audio data" + e.err}); } request.s
end(); } ...
... loopstartcontrol.oninput = function() { source.loopstart = loopstartcontrol.value; loopstartvalue.innerhtml = loopstartcontrol.value; } loop
endcontrol.oninput = function() { source.loop
end = loop
endcontrol.value; loop
endvalue.innerhtml = loop
endcontrol.value; } specifications specification status comment web audio apithe definition of 'loopstart' in that specification.
AudioParam.value - Web APIs
this is reflected by the value getter, which returns the value of the parameter as of the audio r
endering engine's most recent r
ender quantum, or moment at which audio buffers are processed and updated.
... in addition to processing audio buffers, each r
ender quantum updates the value of each audioparam as needed given the current time and any established time-based parameter value changes.
...this is the parameter's value at a time of 0.0 seconds, and will remain the parameter's value until the first r
ender quantum in which the value is altered.
... during each r
ender quantum, the browser does the following things related to managing the value of a parameter: if the value setter has been used, the parameter's value is changed to the value given.
AudioScheduledSourceNode - Web APIs
specifically, this interface defines the start() and stop() methods, as well as the on
ended event handler.
...instead, use the interface which ext
ends it, such as audiobuffersourcenode, oscillatornode, and constantsourcenode.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this interface:
ended fired when the source node 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.
... also available using the on
ended event handler property.
AudioWorkletProcessor - Web APIs
it lives in the audioworkletglobalscope and runs on the web audio r
endering thread.
...the other
end is available under the port property of the node.
... processing audio an example algorithm of creating a custom audio processing mechanism is: create a separate file; in the file: ext
end the audioworkletprocessor class (see "deriving classes" section) and supply your own process() method in it; register the processor using audioworkletglobalscope.registerprocessor() method; load the file using addmodule() method on your audio context's audioworklet property; create an audioworkletnode based on the processor.
... // white-noise-processor.js class whitenoiseprocessor ext
ends audioworkletprocessor { process (inputs, outputs, parameters) { const output = outputs[0] output.foreach(channel => { for (let i = 0; i < channel.length; i++) { channel[i] = math.random() * 2 - 1 } }) return true } } registerprocessor('white-noise-processor', whitenoiseprocessor) next, in our main script file we'll load the processor, create an instance...
Blob.slice() - Web APIs
syntax var newblob = blob.slice(start,
end, contenttype); parameters start optional an index into the blob indicating the first byte to include in the new blob.
... if you specify a negative value, it's treated as an offset from the
end of the blob toward the beginning.
...
end optional an index into the blob indicating the first byte that will *not* be included in the new blob (i.e.
...if you specify a negative value, it's treated as an offset from the
end of the blob toward the beginning.
CSSStyleSheet.insertRule() - Web APIs
what the inserted rule must contain dep
ends on its type: for rule-sets, both a selector and a style declaration.
... * note that an array is needed for declarations and rules since ecmascript does * not guarantee a predictable object iteration order, and since css is * order-dep
endent.
... an array of json-encoded declarations * @example addstylesheetrules([ ['h2', // also accepts a second argument as an array of arrays instead ['color', 'red'], ['background-color', 'green', true] // 'true' for !important rules ], ['.myclass', ['background-color', 'yellow'] ] ]); */ function addstylesheetrules (rules) { var styleel = document.createelement('style'); // app
end <style> element to <head> document.head.app
endchild(styleel); // grab style element's sheet var stylesheet = styleel.sheet; for (var i = 0; i < rules.length; i++) { var j = 1, rule = rules[i], selector = rule[0], propstr = ''; // if the second argument of a rule is an array of arrays, correct our variables.
...it supplements insertrule() with a function that separates the selector from the rules before s
ending the arguments to the default native insertrule().
Using the CSS Typed Object Model - Web APIs
nst styleslist = document.queryselector('#regurgitation'); // retrieve all computed styles with computedstylemap() const defaultcomputedstyles = myelement.computedstylemap(); // iterate thru the map of all the properties and values, adding a <dt> and <dd> for each for (const [prop, val] of defaultcomputedstyles) { // properties const cssproperty = document.createelement('dt'); cssproperty.app
endchild(document.createtextnode(prop)); styleslist.app
endchild(cssproperty); // values const cssvalue = document.createelement('dd'); cssvalue.app
endchild(document.createtextnode(val)); styleslist.app
endchild(cssvalue); } the computedstylemap() method returns a stylepropertymapreadonly object containing the size property, which indicates how many properties are in the map.
...l computed styles with computedstylemap() const allcomputedstyles = myelement.computedstylemap(); // array of properties we're interested in const ofinterest = ['font-weight', 'border-left-color', 'color', '--color']; // iterate through our properties of interest for ( let i = 0; i < ofinterest.length; i++ ) { // properties const cssproperty = document.createelement('dt'); cssproperty.app
endchild(document.createtextnode(ofinterest[i])); styleslist.app
endchild(cssproperty); // values const cssvalue = document.createelement('dd'); cssvalue.app
endchild(document.createtextnode( allcomputedstyles.get(ofinterest[i]))); styleslist.app
endchild(cssvalue); } we included border-left-color to demonstrate that, had we included all the properties, every value that defaults to curren...
...', 'margin-bottom', 'font-size', 'font-stretch', 'animation-duration', 'animation-iteration-count', 'width', 'height']; // iterate thru our properties of interest for ( let i = 0; i < ofinterest.length; i++ ) { // create a row const row = document.createelement( 'tr' ); // add the name of the property const cssproperty = document.createelement( 'td' ); cssproperty.app
endchild( document.createtextnode( ofinterest[i] ) ); row.app
endchild( cssproperty ); // and the unitless value const cssvalue = document.createelement( 'td' ); // shrink long floats to 1 decimal point let propval = allcomputedstyles.get( ofinterest[i] ).value; propval = ( propval % 1 ) ?
... propval.tofixed( 1 ) : propval; cssvalue.app
endchild(document.createtextnode( propval )); row.app
endchild( cssvalue ); // and the type of unit const cssunit = document.createelement( 'td' ); cssunit.app
endchild( document.createtextnode( allcomputedstyles.get( ofinterest[i] ).unit )); row.app
endchild( cssunit ); //add the row to the table stylestable.app
endchild( row ); } for those of you using a non-supporting browser, the above output should looks something like this: property value unit padding-top 0 px margin-bottom 16 px font-size 16 px font-stretch 100 percent animation-duration 0 s animation-iteration-count 1 number width auto ...
A basic ray-caster - Web APIs
this article provides an interesting real-world example of using the <canvas> element to do software r
endering of a 3d environment using ray-casting.
...as the rays intersect walls, then they r
ender a vertical sliver of canvas in the color of the wall they've hit, bl
ended with a darker version of the color according to the distance to the wall.
... the code i
ended up with is a regurgitated amalgam of the raycaster chapters from an old andré lamothetricks of the game programming gurus book (isbn: 0672305070), and a java raycaster i found online, filtered through my compulsion to rename everything so it makes sense to me, and all the tinkering that had to be done to make things work well.
...with the blockiness factor cranked up to r
ender slivers 8 pixels wide, i can run a 320 x 240 window at 24 fps on my apple mini.
Canvas API - Web APIs
next, the htmlcanvaselement.getcontext() method gets that element's context—the thing onto which the drawing will be r
endered.
... the actual drawing is done using the canvasr
enderingcontext2d interface.
... const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.fillstyle = 'green'; ctx.fillrect(10, 10, 150, 100); result reference htmlcanvaselement canvasr
enderingcontext2d canvasgradient canvasimagesource canvaspattern imagebitmap imagedata r
enderingcontext textmetrics offscreencanvas path2d imagebitmapr
enderingcontext note: the interfaces related to the webglr
enderingcontext are referenced under webgl.
... specifications specification status comment html living standardthe definition of 'the 2d r
endering context' in that specification.
Using channel messaging - Web APIs
the channel messaging api allows two separate scripts running in different browsing contexts attached to the same document (e.g., two iframes, or the main document and an iframe, or two documents via a sharedworker) to communicate directly, passing messages between one another through two-way channels (or pipes) with a port at each
end.
... secondly, have a look at our multimessaging demo (run this live), which shows a slightly more complex setup that can s
end multiple messages between the main page and an iframe.
... when our button is clicked, we prevent the form from submitting as normal and then s
end the value entered in our text input to the iframe via the messagechannel.
... = document.queryselector('ul'); var port2; // listen for the initial port transfer message window.addeventlistener('message', initport); // setup the transferred port function initport(e) { port2 = e.ports[0]; port2.onmessage = onmessage; } // handle messages received on port2 function onmessage(e) { var listitem = document.createelement('li'); listitem.textcontent = e.data; list.app
endchild(listitem); port2.postmessage('message received by iframe: "' + e.data + '"'); } when the initial message is received from the main page via the window.postmessage method, we run the initport function.
Console.group() - Web APIs
this indents following console messages by an additional level, until console.group
end() is called.
...(chrome 59 tested) does not work with console.group
end().
... to exit the current group, call console.group
end().
... for example, given this code: console.log("this is the outer level"); console.group(); console.log("level 2"); console.group(); console.log("level 3"); console.warn("more of level 3"); console.group
end(); console.log("back to level 2"); console.group
end(); console.log("back to the outer level"); the output looks like this: see using groups in the console in the documentation of console for more details.
DataTransfer.dropEffect - Web APIs
for the drop and drag
end events, dropeffect will be set to the action that was desired, which will be the value dropeffect had after the last dragenter or dragover event.
... in a drag
end event, for instance, if the desired dropeffect is "move", then the data being dragged should be removed from the source.
...atatransfer.setdata("text", ev.target.id); ev.datatransfer.effectallowed = "move"; } function drop_handler(ev) { console.log("drop: dropeffect = " + ev.datatransfer.dropeffect + " ; effectallowed = " + ev.datatransfer.effectallowed); ev.preventdefault(); // get the id of the target and add the moved element to the target's dom var data = ev.datatransfer.getdata("text"); ev.target.app
endchild(document.getelementbyid(data)); } function dragover_handler(ev) { console.log("dragover: dropeffect = " + ev.datatransfer.dropeffect + " ; effectallowed = " + ev.datatransfer.effectallowed); ev.preventdefault(); // set the dropeffect to move ev.datatransfer.dropeffect = "move" } specifications specification status comment html living standardthe definiti...
... recomm
endation initial definition ...
DataTransfer.mozUserCancelled - Web APIs
the datatransfer.mozusercancelled property is used in the drag
end event handler to determine if the user canceled the drag or not.
...this property only applies to the drag
end event.
... example this example shows the use of the mozusercancelled property in the drag
end event handler.
... function drag
end_handler(event) { var dragdata = event.datatransfer; console.log("mozusercancelled = " + dragdata.mozusercancelled); } specifications this property is not defined in any web standard.
DataTransferItemList.add() - Web APIs
html <div> <p id="source" ondragstart="dragstart_handler(event);" ondrag
end="drag
end_handler(event);" draggable="true"> select this element, drag it to the drop zone and then release the selection to move the element.</p> </div> <div id="target" ondrop="drop_handler(event);" ondragover="dragover_handler(event);">drop zone</div> css div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } javas...
...ri-list"); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = event.datatransfer.items; // loop through the dropped items and log their data for (var i = 0; i < data.length; i++) { if ((data[i].kind == 'string') && (data[i].type.match('^text/plain'))) { // this item is the target node data[i].getasstring(function (s){ ev.target.app
endchild(document.getelementbyid(s)); }); } else if ((data[i].kind == 'string') && (data[i].type.match('^text/html'))) { // drag data item is html data[i].getasstring(function (s){ console.log("...
...drop: uri = " + s); }); } } } function dragover_handler(ev) { console.log("dragover"); ev.preventdefault(); // set the dropeffect to move ev.datatransfer.dropeffect = "move" } function drag
end_handler(ev) { console.log("drag
end"); var datalist = ev.datatransfer.items; for (var i = 0; i < datalist.length; i++) { datalist.remove(i); } // clear any remaining drag data datalist.clear(); } result result link specifications specification status comment html living standardthe definition of 'add()' in that specification.
... recomm
endation not included in w3c html5 recomm
endation ...
DataTransferItemList.clear() - Web APIs
html <div> <p id="source" ondragstart="dragstart_handler(event);" ondrag
end="drag
end_handler(event);" draggable="true"> select this element, drag it to the drop zone and then release the selection to move the element.</p> </div> <div id="target" ondrop="drop_handler(event);" ondragover="dragover_handler(event);">drop zone</div> css div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border:...
...ri-list"); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = event.datatransfer.items; // loop through the dropped items and log their data for (var i = 0; i < data.length; i++) { if ((data[i].kind == 'string') && (data[i].type.match('^text/plain'))) { // this item is the target node data[i].getasstring(function (s){ ev.target.app
endchild(document.getelementbyid(s)); }); } else if ((data[i].kind == 'string') && (data[i].type.match('^text/html'))) { // drag data item is html data[i].getasstring(function (s){ console.log("...
...drop: uri = " + s); }); } } } function dragover_handler(ev) { console.log("dragover"); ev.preventdefault(); // set the dropeffect to move ev.datatransfer.dropeffect = "move" } function drag
end_handler(ev) { console.log("drag
end"); var datalist = ev.datatransfer.items; for (var i = 0; i < datalist.length; i++) { datalist.remove(i); } // clear any remaining drag data datalist.clear(); } result result link specifications specification status comment html living standardthe definition of 'clear()' in that specification.
... recomm
endation not included in w3c html5 recomm
endation ...
Document.createElement() - Web APIs
<div id="div1">the text above has been created dynamically.</div> </body> </html> javascript document.body.onload = addelement; function addelement () { // create a new div element const newdiv = document.createelement("div"); // and give it some content const newcontent = document.createtextnode("hi there and greetings!"); // add the text node to the newly created div newdiv.app
endchild(newcontent); // add the newly created element and its content into the dom const currentdiv = document.getelementbyid("div1"); document.body.insertbefore(newdiv, currentdiv); } web component example the following example snippet is taken from our expanding-list-web-component example (see it live also).
... in this case, our custom element ext
ends the htmlulistelement, which represents the <ul> element.
... // create a class for the element class expandinglist ext
ends htmlulistelement { constructor() { // always call super first in constructor super(); // constructor definition left out for brevity ...
... } } // define the new element customelements.define('expanding-list', expandinglist, { ext
ends: "ul" }); if we wanted to create an instance of this element programmatically, we'd use a call along the following lines: let expandinglist = document.createelement('ul', { is : 'expanding-list' }) the new element will be given an is attribute whose value is the custom element's tag name.
Document.createElementNS() - Web APIs
see ext
ending native html elements for more information on how to use this parameter.
... important namespace uris html http://www.w3.org/1999/xhtml svg http://www.w3.org/2000/svg mathml http://www.w3.org/1998/math/mathml xul http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul xbl http://www.mozilla.org/xbl example this creates a new <div> element in the xhtml namespace and app
ends it to the vbox element.
...type="application/javascript"><![cdata[ let container; let newdiv; let txtnode; function init(){ container = document.getelementbyid("containerbox"); newdiv = document.createelementns("http://www.w3.org/1999/xhtml", "div"); txtnode = document.createtextnode("this is text that was constructed dynamically with createelementns and createtextnode then inserted into the document using app
endchild."); newdiv.app
endchild(txtnode); container.app
endchild(newdiv); } ]]></script> <vbox id="containerbox" flex="1"> <html:div> the script on this page will add dynamic content below: </html:div> </vbox> </page> the example given above uses inline script which is not recomm
ended in xhtml documents.
... this particular example is actually an xul document with embedded xhtml, however, the recomm
endation still applies.
Document.evaluate() - Web APIs
this is because the evaluation of the query sp
ends does not waste time visiting unnecessary nodes.
... recomm
endation initial specification browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 1chrome android full support 18firefox android full support 4opera android full support 10.1safari ios full support 4.2samsung internet android full support 1.0leg
end full support full support no support no support see also document.createexpression() xpathresult xpath code snippets check for browser support ...
Document.visibilityState - Web APIs
it is useful to know if the document is in the background or an invisible tab, or only loaded for pre-r
endering.
... 'prer
ender' the page content is being prer
endered and is not visible to the user (considered hidden for purposes of document.hidden).
... typical use of this can be to prevent the download of some assets when the document is solely prer
endered, or stop some activities when the document is in the background or minimized.
... recomm
endation initial definition.
Document Object Model (DOM) - Web APIs
each branch of the tree
ends in a node, and each node contains objects.
...ocumenttouch domconfiguration domerrorhandler domimplementationlist domimplementationregistry domimplementationsource domlocator domobject domsettabletokenlist domuserdata elementtraversal entity entityreference namelist notation typeinfo userdatahandler html dom a document containing html is described using the document interface, which is ext
ended by the html specification to include various html-specific features.
...s svgaelement svgaltglyphelement svgaltglyphdefelement svgaltglyphitemelement svganimationelement svganimateelement svganimatecolorelement svganimatemotionelement svganimatetransformelement svgcircleelement svgclippathelement svgcolorprofileelement svgcomponenttransferfunctionelement svgcursorelement svgdefselement svgdescelement svgelement svgellipseelement svgfebl
endelement svgfecolormatrixelement svgfecomponenttransferelement svgfecompositeelement svgfeconvolvematrixelement svgfediffuselightingelement svgfedisplacementmapelement svgfedistantlightelement svgfedropshadowelement svgfefloodelement svgfefuncaelement svgfefuncbelement svgfefuncgelement svgfefuncrelement svgfegaussianblurelement svgfeimageelement svgfemergeelement svgfemergenodeele...
...tedpathdata svganimatedpoints svganimatedpreserveaspectratio svganimatedrect svganimatedstring svganimatedtransformlist smil-related interfaces elementtimecontrol timeevent other svg interfaces getsvgdocument shadowanimation svgcolorprofilerule svgcssrule svgdocument svgexception svgexternalresourcesrequired svgfittoviewbox svglangspace svglocatable svgr
enderingintent svgstylable svgtests svgtransformable svgunittypes svguseelementshadowroot svgurireference svgviewspec svgzoomandpan svgzoomevent specifications specification status comment dom living standard ...
EffectTiming - Web APIs
simply put, these properties describe how the user agent should go about making the transition from keyframe to keyframe, and how to behave when the animation begins and
ends.
...
enddelay optional the number of milliseconds to delay after the
end of an animation.
... this is primarily of use when sequencing animations based on the
end time of another animation.
...0.5 would indicate starting halfway through the first iteration for example, and with this value set, an animation with 2 iterations would
end halfway through a third iteration.
Element.classList - Web APIs
t('div'); div.classname = 'foo'; // our starting state: <div class="foo"></div> console.log(div.outerhtml); // use the classlist api to remove and add classes div.classlist.remove("foo"); div.classlist.add("anotherclass"); // <div class="anotherclass"></div> console.log(div.outerhtml); // if visible is set remove it, otherwise add it div.classlist.toggle("visible"); // add/remove visible, dep
ending on test conditional, i less than 10 div.classlist.toggle("visible", i < 10 ); console.log(div.classlist.contains("foo")); // add or remove multiple classes div.classlist.add("foo", "bar", "baz"); div.classlist.remove("foo", "bar", "baz"); // add or remove multiple classes using spread syntax const cls = ["foo", "bar"]; div.classlist.add(...cls); div.classlist.remove(...cls); // replace cla...
... document.documentelement.firstchild.app
endchild(document.createelement('style')).stylesheet.csstext=( '_*{x-uclp:expression(!this.hasownproperty("classlist")&&window[" ucl"](this))}' + // ie6 '[class]{x-uclp/**/:expression(!this.hasownproperty("classlist")&&window[" ucl"](this))}' //ie7-8 ); } })(window); // 3.
...elements created by document.createelement before they are app
ended to a parent node) in ie6-7.
...in ie9, however, it is possible through ext
ending the prototype, freezing the visible object, and overwritting native property methods.
Element.insertAdjacentElement() - Web APIs
'before
end': just inside the targetelement, after its last child.
... 'after
end': after the targetelement itself.
... visualization of position names <!-- beforebegin --> <p> <!-- afterbegin --> foo <!-- before
end --> </p> <!-- after
end --> note: the beforebegin and after
end positions work only if the node is in a tree and has an element parent.
...ocument.createelement('div'); tempdiv.style.backgroundcolor = randomcolor(); if (activeelem) { activeelem.insertadjacentelement('beforebegin',tempdiv); } setlistener(tempdiv); }); afterbtn.addeventlistener('click', function() { var tempdiv = document.createelement('div'); tempdiv.style.backgroundcolor = randomcolor(); if (activeelem) { activeelem.insertadjacentelement('after
end',tempdiv); } setlistener(tempdiv); }); have a look at our insertadjacentelement.html demo on github (see the source code too.) here we have a sequence of <div> elements inside a container.
Element.insertAdjacentText() - Web APIs
'before
end': just inside the element, after its last child.
... 'after
end': after the element itself.
... visualization of position names <!-- beforebegin --> <p> <!-- afterbegin --> foo <!-- before
end --> </p> <!-- after
end --> note: the beforebegin and after
end positions work only if the node is in a tree and has an element parent.
... example beforebtn.addeventlistener('click', function() { para.insertadjacenttext('afterbegin',textinput.value); }); afterbtn.addeventlistener('click', function() { para.insertadjacenttext('before
end',textinput.value); }); have a look at our insertadjacenttext.html demo on github (see the source code too.) here we have a simple paragraph.
Element.outerHTML - Web APIs
the outerhtml attribute of the element dom interface gets the serialized html fragment describing the element including its desc
endants.
... syntax var content = element.outerhtml; element.outerhtml = htmlstring; value reading the value of outerhtml returns a domstring containing an html serialization of the element and its desc
endants.
... setting the value of outerhtml replaces the element and all of its desc
endants with a new dom tree constructed by parsing the specified htmlstring.
... notes if the element has no parent element, setting its outerhtml property will not change it or its desc
endants.
Element.querySelectorAll() - Web APIs
the element method queryselectorall() returns a static (not live) nodelist representing a list of elements matching the specified group of selectors which are desc
endants of the element on which the method was called.
... return value a non-live nodelist containing one element object for each desc
endant node that matches at least one of the specified selectors.
... in this example, when selecting ".outer .inner" in the context the <div> with the class "select", the element with the class ".inner" is still found, even though .outer is not a desc
endant of the base element on which the search is performed (".select").
... the :scope pseudo-class restores the expected behavior, only matching selectors on desc
endants of the base element: var select = document.queryselector('.select'); var inner = select.queryselectorall(':scope .outer .inner'); inner.length; // 0 specifications specification status comment domthe definition of 'parentnode.queryselectorall()' in that specification.
Element.scrollIntoView() - Web APIs
corresponds to scrollintoviewoptions: {block: "
end", inline: "nearest"}.
... one of start, center,
end, or nearest.
... one of start, center,
end, or nearest.
... example var element = document.getelementbyid("box"); element.scrollintoview(); element.scrollintoview(false); element.scrollintoview({block: "
end"}); element.scrollintoview({behavior: "smooth", block: "
end", inline: "nearest"}); notes the element may not be scrolled completely to the top or bottom dep
ending on the layout of other elements.
Event - Web APIs
it can also be triggered programmatically, such as by calling the htmlelement.click() method of an element, or by defining the event, then s
ending it to a specified target using eventtarget.dispatchevent().
... note: one element can have several such handlers, even for the exact same event—particularly if separate, indep
endent code modules attach them, each for its own indep
endent purposes.
...with an advertising-module and statistics-module both monitoring video-watching.) when there are many nested elements, each with its own handler(s), event processing can become very complicated—especially where a parent element receives the very same event as its child elements because "spatially" they overlap so the event technically occurs in both, and the processing order of such events dep
ends on the event bubbling and capture settings of each handler triggered.
... note that all event interfaces have names which
end in "event".
EventTarget.addEventListener() - Web APIs
he content of t2 function modifytext(new_text) { const t2 = document.getelementbyid("t2"); t2.firstchild.nodevalue = new_text; } // function to add event listener to table const el = document.getelementbyid("outside"); el.addeventlistener("click", function(){modifytext("four")}, false); notice that the listener is an anonymous function that encapsulates code that is then, in turn, able to s
end parameters to the modifytext() function, which is responsible for actually responding to the event.
...this lets you easily bypass problems where it's unclear what this will be, dep
ending on the context from which your function was called.
...this prevents the event listener from being called, so it can't block page r
endering while the user is scrolling.
...since it can't be canceled, event listeners can't block page r
endering anyway.
FetchEvent - Web APIs
fetchevent.request read only the request the browser int
ends to make.
... methods inherits methods from its parent, ext
endableevent.
... ext
endableevent.waituntil() ext
ends the lifetime of the event.
... used to notify the browser of tasks that ext
end beyond the returning of a response, such as streaming and caching.
FileReader - Web APIs
this property is only valid after the read operation is complete, and the format of the data dep
ends on which of the methods was used to initiate the read operation.
... filereader.onload
end a handler for the load
end event.
... load
end fired when a read has completed, successfully or not.
... also available via the onload
end property.
FileSystemEntry.name - Web APIs
example this example shows a function called isfilewithextension() which returns true if the specified filesystementry is both a file and the file's name
ends with a given extension.
... function isfilewithextension(entry, extension) { return (entry.isfile && entry.name.
endswith("." + extension)); } specifications specification status comment file and directory entries apithe definition of 'name' in that specification.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤37chrome android full support 18firefox android full support 50opera android no support nosafari ios full support 11.3samsung internet android full support yesleg
end full support full support no support no supportexperimental.
FileSystemEntry.toURL() - Web APIs
if your site is located at http://my-awesome-website.woot, and you have a temporary file system that contains an image file named awesomesauce.jpg, the url returned by tourl() might be (dep
ending on the browser's implementation) something like "filesystem:http://my-awesome-website.woot/temporary/awesomesauce.jpg".
... code that makes use of this might look like this: let img = document.createelement("img"); img.src = imagefileentry.tourl(); document.body.app
endchild(img); assuming the scenario mentioned before the code, the result would be html that looks like this being app
ended to the
end of the document: <img src="filesystem:http://my-awesome-website.woot/temporary/awesomesauce.jpg"> browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤37chrome android full support 18firefox android no support noopera android no support nosafari ios no support nosamsung internet android full support yesleg
end full support full support no support no supportexperimental.
GestureEvent - Web APIs
events using this interface include gesturestart, gesturechange, and gesture
end.
... gesture event types gesturestart gesturechange gesture
end specifications not part of any specification.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android no support noopera android no support nosafari ios full support 2samsung internet android no support noleg
end full support full support no support no supportnon-standard.
GlobalEventHandlers.onanimationiteration - Web APIs
the animationiteration event is sent when a css animation reaches the
end of an iteration.
... an iteration
ends when a single pass through the sequence of animation instructions is completed by executing the last animation step.
... syntax var animiterationhandler = target.onanimationiteration; target.onanimationiteration = function value a function to be called when an animationiteration event occurs indicating that a css animation has reached the
end of an iteration while running on the target, where the target object is an html element (htmlelement), document (document), or window (window).
... example let's create an animation which automatically pauses at the
end of each iteration, allowing the user to choose whether or not to start the next iteration.
GlobalEventHandlers.ondragenter - Web APIs
ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); // change the target element's border to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.app
endchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); // change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); // change the source element's border back to white ev.currenttarget.style.background = "white"; } function drag
end_hand...
...ler(ev) { console.log("drag
end"); // change the target element's background color to visually indicate // the drag
ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); // change the source element's border back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/
end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondrag
end = drag
end_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondrag
end</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag i...
... recomm
endation initial definition ...
GlobalEventHandlers.ondragexit - Web APIs
ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); // change the target element's border to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.app
endchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); // change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); // change the source element's border back to white ev.currenttarget.style.background = "white"; } function drag
end_hand...
...ler(ev) { console.log("drag
end"); // change the target element's background color to visually indicate // the drag
ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); // change the source element's border back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/
end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondrag
end = drag
end_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondrag
end</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag i...
... recomm
endation initial definition ...
GlobalEventHandlers.ondragleave - Web APIs
ansfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); // change the target element's background color to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.app
endchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); // change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); // change the source element's background color back to white ev.currenttarget.style.background = "white"; } function dr...
...ag
end_handler(ev) { console.log("drag
end"); // change the target element's background color to visually indicate // the drag
ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); // change the source element's background color back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/
end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondrag
end = drag
end_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondrag
end</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this eleme...
... recomm
endation initial definition ...
GlobalEventHandlers.ontransitioncancel - Web APIs
note: elapsedtime does not include time prior to the transition effect beginning; that means that the value of transition-delay doesn't affect the value of elapsedtime, which is zero until the delay period
ends and the animation begins.
... example in this example, we use the transitionrun and transition
end events to detect when the transition begins and
ends, to cause a text update to occur during the transition.
...it-transform 2s, color 2s; transition: width 2s, height 2s, background-color 2s, transform 2s, color 2s; } .box:hover { background-color: #ffcccc; color: #000000; width: 200px; height: 200px; -webkit-transform: rotate(180deg); transform: rotate(180deg); } javascript next, we need to establish our event handlers to change the text content of the box when the transition begins and
ends.
... let box = document.queryselector(".box"); box.ontransitionrun = function(event) { box.innerhtml = "zooming..."; } box.ontransition
end = function(event) { box.innerhtml = "done!"; } box.onclick = function() { box.style.display = 'none'; timeout = window.settimeout(appear, 2000); function appear() { box.style.display = 'block'; } } box.ontransitioncancel = function(event) { console.log('transitioncancel fired after ' + event.elapsedtime + ' seconds.'); } result the resulting content looks like this: notice what happens when you hover your mouse cursor over the box, then move it away.
HTMLAnchorElement.referrerPolicy - Web APIs
examples var elt = document.createelement("a"); var linktext = document.createtextnode("my link"); elt.app
endchild(linktext); elt.href = "https://developer.mozilla.org/"; elt.referrerpolicy = "no-referrer"; var div = document.getelementbyid("divaround"); div.app
endchild(elt); // when clicked, the link will not s
end a referrer header.
... candidate recomm
endation added the referrerpolicy property.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 51chrome android full support 51firefox android full support 50opera android full support 41safari ios no support nosamsung internet android full support 7.2leg
end full support full support no support no support ...
HTMLAreaElement.referrerPolicy - Web APIs
examples <img usemap="#maparound" width="100" height="100" src="/img/logo@2x.png" /> <map id="mymap" name="maparound" />> var elt = document.createelement("area"); elt.href = "/img2.png"; elt.shape = "rect"; elt.referrerpolicy = "no-referrer"; elt.coords = "0,0,100,100"; var map = document.getelementbyid("mymap"); map.app
endchild(elt); // when clicked, the area's link will not s
end a referrer header.
... candidate recomm
endation added the referrerpolicy property.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 51chrome android full support 51firefox android full support 50opera android full support 41safari ios no support nosamsung internet android full support 7.2leg
end full support full support no support no support ...
HTMLElement.innerText - Web APIs
the innertext property of the htmlelement interface represents the "r
endered" text content of a node and its desc
endants.
...basically, innertext is aware of the r
endered appearance of text, while textcontent is not.
... syntax const r
enderedtext = htmlelement.innertext htmlelement.innertext = string value a domstring representing the r
endered text content of an element.
... if the element itself is not being r
endered (e.g detached from the document or is hidden from view), the returned value is the same as the node.textcontent property.
HTMLFieldSetElement - Web APIs
the type of this property dep
ends on the version of the spec that is implemented by the browser.
... if the field set is not a desc
endant of a form element, then the attribute can be the id of any form element in the same document it is related to, or the null value if none matches.
... recomm
endation html5the definition of 'htmlfieldsetelement' in that specification.
... recomm
endation the following properties have been added: disabled, elements, name, type, valdiationmessage, validity, and willvalidate.
HTMLImageElement.alt - Web APIs
examples beyond that, there are additional guidelines for using alt appropriately which vary dep
ending on what the image is being used for.
... body { margin: 0; padding: 0; } p { margin-block-start: 0; margin-block-
end: 1em; margin-top: 0; margin-bottom: 1em; } .container { width: 100vh; height: 95vh; font: 16px arial,helvetica,sans-serif; } .left-margin { background-color: rgb(241, 240, 237, 255); width: 9em; height: 100%; float: left; margin-right: 5px; padding-right: 1em; display: flex; align-items: center; justify-content: center; } .left-margin img { width: 6em; } .content...
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... safari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
HTMLImageElement.border - Web APIs
the width, specifically, is controlled using the writing-mode aware border-block-start-width, border-block-
end-width, border-inline-start-width, and border-inline-
end-width properties.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... safari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
HTMLImageElement.naturalHeight - Web APIs
this is the height the image is if drawn with nothing constraining its height; if you don't specify a height for the image, or place the image inside a container that either limits or expressly specifies the image height, it will be r
endered this tall.
... example this example simply displays both the natural, density-adjusted size of an image as well as its r
endered size as altered by the page's css and other factors.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... safari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
HTMLImageElement.referrerPolicy - Web APIs
examples var img = new image(); img.src = 'img/logo.png'; img.referrerpolicy = 'origin'; var div = document.getelementbyid('divaround'); div.app
endchild(img); // fetch the image using the origin as the referrer specifications specification status comment referrer policythe definition of 'referrerpolicy attribute' in that specification.
... candidate recomm
endation added the referrerpolicy property.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 51chrome android full support 51firefox android full support 50opera android full support 41safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no support ...
HTMLImageElement.sizes - Web APIs
example in this example, a blog-like layout is created, displaying some text and an image which for which three size points are specified, dep
ending on the width of the window.
... how exactly the images are used may dep
end upon the browser and what the pixel density of the user's display is.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
HTMLImageElement.useMap - Web APIs
in other words, this string should be the value of the appropriate <map>'s name attribute with a pound or hash symbol prep
ended to it.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
HTMLInputElement - Web APIs
selection
end unsigned long: returns / sets the
end index of the selected text.
...possible values are: forward if selection was performed in the start-to-
end direction of the current locale backward for the opposite direction none if the direction is unknown size unsigned long: returns / sets the element's size attribute, containing visual size of the control.
... recomm
endation technically, the tabindex and accesskey properties, as well as the blur(), click(), and focus() methods, are now defined on htmlelement.
... the following properties have been added: autocomplete, autofocus, dirname, files, formaction, formenctype, formmethod, formnovalidate, formtarget, height, indeterminate, labels, list, max, min, multiple, pattern, placeholder, required, selectiondirection, selection
end, selectionstart, step, validationmessage, validity, valueasdate, valueasnumber, width, and willvalidate.
HTMLMarqueeElement - Web APIs
event handlers htmlmarqueeelement.onbounce fires when the marquee has reached the
end of its scroll position.
... recomm
endation no changes.
... recomm
endation no changes.
... recomm
endation made obsolete in favor of css but define its expected behavior for backward compatibility.
HTMLMediaElement.onencrypted - Web APIs
this interface inherits from the ext
endableevent interface.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end full support full support compatibility unknown compatibility unknown ...
HTMLMediaElement.onwaitingforkey - Web APIs
this interface inherits from the ext
endableevent interface.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 6.0leg
end full support full support compatibility unknown compatibility unknown ...
HTMLOutputElement - Web APIs
if the element is not r
endered, then the user agent may report the error for the running script instead of notifying the user.
... if the element is in default mode when the desc
endants of the element are changed in any way, the defaultvalue property is set to the value of the textcontent property.
... recomm
endation no change html5the definition of 'htmloutputelement' in that specification.
... recomm
endation initial definition ...
HTMLVideoElement.msZoom - Web APIs
if the native aspect ratio of a video frame, which is defined by the videowidth and videoheight attributes, does not match the aspect ratio of the video tag, which is defined by the width and height attributes, the video is r
endered with letterbox or pillarbox format.
... when the mszoom attribute is set to true, the r
endered video is trimmed to fit the dimensions of the video object.
... for instance, if the layout space for the video tag is a 4:3 aspect ratio, but the stream coming in is in 16:9 aspect ratio, the mszoom option can be used to r
ender the 16:9 video in 4:3 aspect ratio.
... the r
endered video will then take up the full space of the video object.
IDBCursor.request - Web APIs
lbumlist'], 'readonly'); var objectstore = transaction.objectstore('rushalbumlist'); var request = objectstore.opencursor(); request.onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = '<strong>' + cursor.value.albumtitle + '</strong>, ' + cursor.value.year; list.app
endchild(listitem); console.log(cursor.request); cursor.continue(); } else { console.log('entries all displayed.'); } }; }; specification specification status comment indexed database api draftthe definition of 'request' in that specification.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 12.0leg
end full support full support no support no support compatibility unknown compatibility unknown ...
IDBCursor - Web APIs
this function never returns null or throws an exception, even if the cursor is currently being iterated, has iterated past its
end, or its transaction is not active.
...splaydata() { var transaction = db.transaction(['rushalbumlist'], "readonly"); var objectstore = transaction.objectstore('rushalbumlist'); objectstore.opencursor().onsuccess = function(event) { var cursor = event.target.result; if(cursor) { var listitem = document.createelement('li'); listitem.innerhtml = cursor.value.albumtitle + ', ' + cursor.value.year; list.app
endchild(listitem); cursor.continue(); } else { console.log('entries all displayed.'); } }; } specifications specification status comment indexed database api 2.0the definition of 'cursor' in that specification.
... recomm
endation initial definition indexed database api draftthe definition of 'cursor' in that specification.
... recomm
endation added continueprimarykey() and support for binary keys, and the idbcursor.request property.
IDBKeyRange.includes() - Web APIs
recomm
endation indexed database api draftthe definition of 'includes()' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 52chrome android full support 52firefox android full support yesopera android full support 41safari ios full support 10.3samsung internet android full support 6.0leg
end full support full support compatibility unknown compatibility unknown ...
IDBTransaction.objectStoreNames - Web APIs
recomm
endation indexed database api draftthe definition of 'objectstorenames' in that specification.
... recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 48chrome android full support 48firefox android full support yesopera android full support 35safari ios full support yessamsung internet android full support 5.0leg
end full support full support compatibility unknown compatibility unknown ...
IDBVersionChangeEvent.version - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...ernetversion deprecatednon-standardchrome full support 12edge full support ≤18firefox full support 16 full support 16 full support 10prefixed prefixed implemented with the v
endor prefix: mozie no support noopera no support nosafari no support nowebview android full support yeschrome android full support 18firefox android full support...
... 22opera android full support 22safari ios no support nosamsung internet android full support 1.0leg
end full support full support no support no supportnon-standard.
...not for use in new websites.requires a v
endor prefix or different name for use.requires a v
endor prefix or different name for use.
KeyboardEvent: code values - Web APIs
"pause" "pause" 0xe047 "home" "home" 0xe048 "arrowup" "arrowup" 0xe049 "pageup" "pageup" 0xe04a "unidentified" "" 0xe04b "arrowleft" "arrowleft" 0xe04c "unidentified" "" 0xe04d "arrowright" "arrowright" 0xe04e "unidentified" "" 0xe04f "
end" "
end" 0xe050 "arrowdown" "arrowdown" 0xe051 "pagedown" "pagedown" 0xe052 "insert" "insert" 0xe053 "delete" "delete" 0xe054 ~ 0xe05a "unidentified" "" 0xe05b "metaleft" "osleft" 0xe05c "metaright" "osright" 0xe05d "contextmenu" "contextmenu" ...
...b) "f14" "f14" kvk_f10 (0x6d) "f10" "f10" kvk_f12 (0x6f) "f12" "f12" kvk_f15 (0x71) "f15" "f15" kvk_help (0x72) "help" "insert" kvk_home (0x73) "home" "home" kvk_pageup (0x74) "pageup" "pageup" kvk_forwarddelete (0x75) "delete" "delete" kvk_f4 (0x76) "f4" "f4" kvk_
end (0x77) "
end" "
end" kvk_f2 (0x78) "f2" "f2" kvk_pagedown (0x79) "pagedown" "pagedown" kvk_f1 (0x7a) "f1" "f1" kvk_leftarrow (0x7b) "arrowleft" "arrowleft" kvk_rightarrow (0x7c) "arrowright" "arrowright" kvk_downarrow (0x7d) "arrowdown" "arrowdown" kvk_uparrow (0x7e) "arrowup" "arrowup" ...
... "numpaddivide" "numpaddivide" 0x006b "printscreen" "printscreen" 0x006c "altright" "altright" 0x006d "unidentified" "" 0x006e "home" "home" 0x006f "arrowup" "arrowup" 0x0070 "pageup" "pageup" 0x0071 "arrowleft" "arrowleft" 0x0072 "arrowright" "arrowright" 0x0073 "
end" "
end" 0x0074 "arrowdown" "arrowdown" 0x0075 "pagedown" "pagedown" 0x0076 "insert" "insert" 0x0077 "delete" "delete" 0x0078 "unidentified" "" 0x0079 "audiovolumemute" "audiovolumemute" (was "volumemute" until chrome 50) 0x007a "audiovolumedown" "audiovolumedown" (was "volumedown" until chro...
... "unidentified" 0x0060 "numpadenter" 0x0061 "controlright" 0x0062 "numpaddivide" 0x0063 "printscreen" 0x0064 "altright" 0x0065 "unidentified" 0x0066 "home" 0x0067 "arrowup" 0x0068 "pageup" 0x0069 "arrowleft" 0x006a "arrowright" 0x006b "
end" 0x006c "arrowdown" 0x006d "pagedown" 0x006e "insert" 0x006f "delete" 0x0070 "unidentified" 0x0071 "audiovolumemute" 0x0072 "audiovolumedown" 0x0073 "audiovolumeup" 0x0074 "power" 0x0075 "numpadequal" 0x0076 "unidentified" ...
KeyframeEffectOptions - Web APIs
simply put, these properties describe how the user agent should go about making the transition from keyframe to keyframe, and how to behave when the animation begins and
ends.
...
enddelay optional the number of milliseconds to delay after the
end of an animation.
... this is primarily of use when sequencing animations based on the
end time of another animation.
...0.5 would indicate starting halfway through the first iteration for example, and with this value set, an animation with 2 iterations would
end halfway through a third iteration.
MSGestureEvent - Web APIs
events using this interface include msgesturestart, msgesture
end, msgesturetap, msgesturehold, msgesturechange, and msinertiastart.
... gesture event types msgesturestart msgesture
end msgesturetap msgesturehold msgesturechange msinertiastart specifications not part of any specification.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android no support noopera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no supportnon-standard.
MediaSource.setLiveSeekableRange() - Web APIs
syntax mediasource.setliveseekablerange(start,
end) parameters start the start of the seekable range to set in seconds measured from the beginning of the source.
...
end the
end of the seekable range to set in seconds measured from the beginning of the source.
... if the duration of the media source is positive infinity, then the timeranges object returned by the htmlmediaelement.seekable property will have an
end timestamp no less than this value.
... recomm
endation initial definition.
MediaTrackConstraints.cursor - Web APIs
syntax var constraintsobject = { cursor: constraint }; constraintsobject.cursor = constraint; value a constraindomstring which specifies whether or not the mouse cursor should be r
endered into the video track in the mediastream returned by the call to getdisplaymedia().
... for example, if your app needs to alter the stream by inserting a representation of the cursor position if the stream doesn't include the r
endered cursor, you can determine the need to do so by using code like this: let insertfakecursorflag = false; if (displaystream.getvideotracks()[0].getsettings().cursor === "never") { insertfakecursorflag = true; } following this code, insertfakecursorflag is true if there's no cursor r
endered into the stream already.
... let displaymediaoptions = { cursor: "always" }; example: cursor visible during motion with fallback in this example, the cursor property is configured to request that the cursor be visible when in motion, falling back to always being visible if the user agent doesn't support in-motion only cursor r
endering.
... let displaymediaoptions = { cursor: ["motion", "always"] }; example: require that the cursor not be visible this constraints object explicitly requires that the cursor not be r
endered into the video track.
Transcoding assets for Media Source Extensions - Web APIs
dep
ending on the codec, you might need to fragment the file to comply with the iso bmff spec.
... [0] (c) copyright 2008, bl
ender foundation / www.bigbuckbunny.org / https://peach.bl
ender.org/about/ tools required when working with mse, the following tools are a must have: ffmpeg — a command-line utility for transcoding your media into the required formats.
...to install, you'll need to build/compile the application yourself from the provided project files/source files, dep
ending on your os and preferences.
... while mse is flexible enough to allow you to make your implementation, it's highly recomm
ended to use an existing dash client as dash is a well-specified application protocol.
MutationObserverInit - Web APIs
subtree optional set to true to ext
end monitoring to the entire subtree of nodes rooted at target.
... all of the other mutationobserverinit properties are then ext
ended to all of the nodes in the subtree instead of applying solely to the target node.
... childlist optional set to true to monitor the target node (and, if subtree is true, its desc
endants) for the addition of new child nodes or removal of existing child nodes.
... characterdata optional set to true to monitor the specified target node (and, if subtree is true, its desc
endants) for changes to the character data contained within the node or nodes.
NodeList.prototype.forEach() - Web APIs
example let node = document.createelement("div"); let kid1 = document.createelement("p"); let kid2 = document.createtextnode("hey"); let kid3 = document.createelement("span"); node.app
endchild(kid1); node.app
endchild(kid2); node.app
endchild(kid3); let list = node.childnodes; list.foreach( function(currentvalue, currentindex, listobj) { console.log(currentvalue + ', ' + currentindex + ', ' + this); }, 'mythisarg' ); the above code results in the following: [object htmlparagraphelement], 0, mythisarg [object text], 1, mythisarg [object htmlspanelement], 2, mythisarg p...
... candidate recomm
endation defines foreach on iterable declarations browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 51chrome android full support 51firefox android full support 50opera android full support 41safari ios full support 10samsung internet android full support 5.0leg
end full support full support no support no support ...
OES_element_index_uint - Web APIs
the oes_element_index_uint extension is part of the webgl api and adds support for gl.unsigned_int types to webglr
enderingcontext.drawelements().
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext
ended methods this extension ext
ends webglr
enderingcontext.drawelements(): the type parameter now accepts gl.unsigned_int.
... recomm
endation initial definition.
ParentNode.querySelectorAll() - Web APIs
the parentnode mixin defines the queryselectorall() method as returning a nodelist representing a list of elements matching the specified group of selectors which are desc
endants of the object on which the method was called.
... return value a non-live nodelist containing one element object for each desc
endant node that matches at least one of the specified selectors.
... in this example, when selecting .outer .inner in the context the <div> with the class select, the element with the class .inner is still found, even though .outer is not a desc
endant of the base element on which the search is performed (.select).
... the :scope pseudo-class restores the expected behavior, only matching selectors on desc
endants of the base element: var select = document.queryselector('.select'); var inner = select.queryselectorall(':scope .outer .inner'); inner.length; // 0 specifications specification status comment domthe definition of 'parentnode.queryselectorall()' in that specification.
PasswordCredential.additionalData - Web APIs
the data in the objects will be added to the request body and sent to the remote
endpoint with the credentials.
... example the following example creates a formdata object with an app
ended csrf token.
... it then stores the form object in the additionaldata parameter, before s
ending it to server in a call to fetch.
...navigator.credentials.get(options).then(function(creds) { if (creds.type == 'password') { var form = new formdata(); var csrf_token = document.queryselector('csrf_token').value; form.app
end('csrf_token', csrf_token); creds.additionaldata = form; fetch('https://www.example.com', { method: 'post', credentials: creds }); }; }); specifications specification status comment credential management level 1 working draft initial definition.
PaymentItem - Web APIs
this may be displayed to the user by the user agent, dep
ending on the design of the interface.
... p
ending secure context a boolean value which is true if the specified amount has not yet been finalized.
... this can be used to show items such as shipping or tax amounts that dep
end upon the selection of shipping address, shipping option, or so forth.
... candidate recomm
endation initial definition.
PaymentRequest.abort() - Web APIs
the paymentrequest.abort() method of the paymentrequest interface causes the user agent to
end the payment request and to remove any user interface that might be shown.
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentRequest.canMakePayment() - Web APIs
it wraps the call to canmakepayment() in feature detection, and calls an appropriate callback dep
ending on the resolution of the promise.
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentRequest.onshippingaddresschange - Web APIs
to make sure an updated address is included when s
ending payment information to the server, you should add event listeners for a paymentrequest object after instantiation, but before the call to show().
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentRequest.onshippingoptionchange - Web APIs
to make sure an updated option is included when s
ending payment information to the server, you should add event listeners for a paymentrequest object after instantiation, but before the call to show().
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
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.
... events merchantvalidation secure context with some payment handlers (e.g., apple pay), this event handler is called to handle the merchantvalidation event, which is dispatched when the user agent requires that the merchant validate that the merchant or v
endor requesting payment is legitimate.
... candidate recomm
endation initial definition.
performance.now() - Web APIs
also unlike date.now(), the values returned by performance.now() always increase at a constant rate, indep
endent of the system clock (which might be adjusted manually or skewed by software like ntp).
... reduced time precision to offer protection against timing attacks and fingerprinting, the precision of performance.now() might get rounded dep
ending on browser settings.
... recomm
endation stricter definitions of interfaces and types.
... recomm
endation initial definition ...
PerformanceEntry.name - Web APIs
syntax var name = entry.name; return value the return value dep
ends on the subtype of the performanceentry object and the value of performanceentry.entrytype, as shown by the table below.
...performance.mark not supported"); return; } // create some performance entries via the mark() method performance.mark("begin"); do_work(50000); performance.mark("
end"); // use getentries() to iterate through the each entry var p = performance.getentries(); for (var i=0; i < p.length; i++) { log("entry[" + i + "]"); check_performanceentry(p[i]); } } function check_performanceentry(obj) { var properties = ["name", "entrytype", "starttime", "duration"]; var methods = ["tojson"]; for (var i=0; i < properties.length; i++) { // check eac...
... candidate recomm
endation performance timelinethe definition of 'name' in that specification.
... recomm
endation initial definition.
PerformanceEntry.startTime - Web APIs
the value returned by this property dep
ends on the performance entry's type: "frame" - returns the timestamp when the frame was started.
...performance.mark not supported"); return; } // create some performance entries via the mark() method performance.mark("begin"); do_work(50000); performance.mark("
end"); // use getentries() to iterate through the each entry var p = performance.getentries(); for (var i=0; i < p.length; i++) { log("entry[" + i + "]"); check_performanceentry(p[i]); } } function check_performanceentry(obj) { var properties = ["name", "entrytype", "starttime", "duration"]; var methods = ["tojson"]; for (var i=0; i < properties.length; i++) { // check eac...
... candidate recomm
endation performance timelinethe definition of 'starttime' in that specification.
... recomm
endation initial definition.
PerformanceResourceTiming.requestStart - Web APIs
there is no
end property for requeststart.
... syntax resource.requeststart; return value a domhighrestimestamp representing the time immediately before the browser starts requesting the resource from the server example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PublicKeyCredentialCreationOptions - Web APIs
this array is sorted by desc
ending order of preference.
...smith", }, // requested format of new keypair pubkeycredparams: [{ type: "public-key", alg: cose_alg_ecdsa_w_sha256, }], // timeout after 1 minute timeout: 60000, // do not s
end the authenticator's origin attestation attestation: "none", extensions: { uvm: true, exts: true }, // filter out authenticators which are bound to the device authenticatorselection:{ authenticatorattachment: "cross-platform", requireresidentkey: true, userverification: "preferred" }, // exclu...
...john-doe@example.com id : new uint8array(26) /* another id */ } ] } }; // create the new credential with the options above navigator.credentials.create(createcredentialoptions) .then(function (newcredentialinfo) { var attestationresponse = newcredentialinfo.response; var clientextensionsoutputs = newcredentialinfo.getclientextensionsresults(); // s
end the response to the relying party server // it will verify the content and integrity before // creating a new credential }).catch(function (err) { // deal with any error properly console.error(err); });; specifications specification status comment web authentication: an api for accessing public key credentials level 1the definition of 'publickey...
... recomm
endation initial definition.
PushSubscription.getKey() - Web APIs
ed to push') // we aren't subscribed to push, so set ui // to allow the user to enable push return; } // set your ui to show they have subscribed for // push messages subbtn.textcontent = 'unsubscribe from push messaging'; ispushenabled = true; // initialize status, which includes setting ui elements for subscribed status // and updating subscribers list via push var
endpoint = subscription.
endpoint; var key = subscription.getkey('p256dh'); var auth = subscription.getkey('auth'); ...
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...roperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetgetkey()chrome full support 42edge full support 16firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 29safari no support nowebview android no support nochrome android full su...
...pport 42firefox android full support 48opera android full support 29safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
PushSubscription.options - Web APIs
applicationserverkey: a public key your push server will use to s
end messages to client apps via a push server.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...eroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetoptionschrome full support 42edge full support 16firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 29safari no support nowebview android no support nochrome android full su...
...pport 42firefox android full support 48opera android full support 29safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
RTCDataChannel.bufferedAmount - Web APIs
the queue may build up as a result of calls to the s
end() method.
... the user agent may implement the process of actually s
ending data in any way it chooses; this may be done periodically during the event loop or truly asynchronously.
...however, even after closing the channel, attempts to s
end messages continue to add to the bufferedamount value, even though the messages are neither sent nor buffered.
... candidate recomm
endation initial specification.
RTCDataChannel.bufferedAmountLowThreshold - Web APIs
the user agent may implement the process of actually s
ending data in any way it chooses; this may be done periodically during the event loop or truly asynchronously.
...amountlowthreshold; adatachannel.bufferedamountlowthreshold = threshold; value the number of queued outgoing data bytes below which the buffer is considered to be "low." example in this snippet of code, bufferedamountlowthreshold is set to 64kb, and a handler for the bufferedamountlow event is established by setting the rtcdatachannel.onbufferedamountlow property to a function which should s
end more data into the buffer by calling s
end().
... var dc = peerconnection.createdatachannel("file transfer"); dc.bufferedamountlowthreshold = 65535; dc.onbufferedamountlow = function() { /* use s
end() to queue more data to be sent */ }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdatachannel.bufferedamountlowthreshold' in that specification.
... candidate recomm
endation initial specification.
RTCDataChannel: message event - Web APIs
dc.addeventlistener("message", ev => { let newparagraph = document.createelement("p"); let textnode = document.createtextnode(event.data); newparagraph.app
endchild(textnode); document.body.app
endchild(newparagraph); }, false); lines 2-4 create the new paragraph element and add the message data to it as a new text node.
... line 6 app
ends the new paragraph to the
end of the document's body.
... you can also use an rtcdatachannel object's onmessage event handler property to set the event handler: dc.onmessage = ev => { let newparagraph = document.createelement("p"); let textnode = document.createtextnode(event.data); newparagraph.app
endchild(textnode); document.body.app
endchild(newparagraph); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'the <code>message</code> event' in that specification.
... candidate recomm
endation ...
RTCDataChannel.onbufferedamountlow - Web APIs
example this example responds to the bufferedamountlow event by fetching up to 64kb of a file represented by an object source and calling rtcdatachannel.s
end() to queue up the retrieved data for s
ending on the data channel.
... pc = new rtcpeerconnection(); dc = pc.createdatachannel("s
endfile"); /* ...
... */ dc.onbufferedamountlow = function() { if (source.position <= source.length) { dc.s
end(source.readfile(65536)); } } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdatachannel.onbufferedamountlow' in that specification.
... candidate recomm
endation initial specification.
RTCDataChannel: open event - Web APIs
the webrtc open event is sent to an rtcdatachannel object's onopen event handler when the underlying transport used to s
end and receive the data channel's messages is opened or re-opened.
...it enables the message input box and s
end button as well as enabling the disconnect button and disabling the connect button.
... dc.addeventlistener("open", ev => { messageinputbox.disabled = false; s
endmessagebutton.disabled = false; disconnectbutton.disabled = false; connectbutton.disabled = true; messageinputbox.focus(); }, false); this can also be done by directly setting the value of the channel's onopen event handler property.
... dc.onopen = ev => { messageinputbox.disabled = false; s
endmessagebutton.disabled = false; disconnectbutton.disabled = false; connectbutton.disabled = true; messageinputbox.focus(); } ...
RTCDataChannel.readyState - Web APIs
it is no longer possible to queue new messages to be sent, but previously queued messages may still be s
end or received before entering the "closed" state.
... example var datachannel = peerconnection.createdatachannel("file transfer"); var s
endqueue = []; function s
endmessage(msg) { switch(datachannel.readystate) { case "connecting": console.log("connection not open; queueing: " + msg); s
endqueue.push(msg); break; case "open": s
endqueue.foreach((msg) => datachannel.s
end(msg)); break; case "closing": console.log("attempted to s
end message while closing: " + msg); break; case "closed": console.log("error!
... attempt to s
end while connection closed."); break; } } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdatachannel.readystate' in that specification.
... candidate recomm
endation initial specification.
RTCIceCandidatePairStats - Web APIs
remotecandidateid optional the unique id string corresponding to the remote candidate from which data was taken to construct the rtcicecandidatestats object describing the remote
end of the connection.
... totalroundtriptime optional a floating-point value indicating the total time, in seconds, that has elapsed between s
ending stun requests and receiving responses to them, for all such requests made to date on this candidate pair.
...the active candidate pair describes the current configuration of the two
ends of the rtcpeerconnection.
... candidate recomm
endation initial specification.
RTCIceTransport: gatheringstatechange event - Web APIs
bubbles no cancelable no interface event event handler property ongatheringstatechange the key difference between gatheringstatechange and icegatheringstatechange is that the latter represents the overall state of the connection including every rtcicetransport used by every rtcrtps
ender and every rtcrtpreceiver on the entire connection.
... examples this example creates a handler for gatheringstatechange events on each rtcrtps
ender associated with a given rtcpeerconnection.
... here, the addeventlistener() method is called to add a listener for gatheringstatechange events: pc.gets
enders().foreach(s
ender => { s
ender.transport.icetransport.addeventlistener("gatheringstatechange", ev => { let transport = ev.target; if (transport.gatheringstate === "complete") { /* this transport has finished gathering candidates, but others may still be working on it */ } }, false); likewise, you can use the ongatheringstatechange event handler property: pc.gets
enders().foreach(s
ender => { s
ender.transport.icetransport.ongatheringstatechange = ev => { let transport = ev.target; if (transport.gatheringstate === "complete") { /* this transport has finished gathering candidates, but others may still be working on it */ } }; }); spec...
... candidate recomm
endation ...
RTCIceTransport - Web APIs
these are the same candidates which have already been sent to the remote peer by s
ending an icecandidate event to the rtcpeerconnection for transmission.
... getremotecandidates() returns an array of rtcicecandidate objects, one for each of the remote device's ice candidates that have been received by the local
end of the rtcpeerconnection and delivered to ice by calling addicecandidate().
... getselectedcandidatepair() returns a rtcicecandidatepair object that identifies the two candidates—one for each
end of the connection—that have been selected so far.
... candidate recomm
endation initial definition.
RTCInboundRtpStreamStats.nackCount - Web APIs
the nackcount property of the rtcinboundrtpstreamstats dictionary is a numeric value indicating the number of times the receiver sent a nack packet to the s
ender.
... a nack (negative acknowledgement, also called "generic nack") packet tells the s
ender that one or more of the rtp packets it sent were lost in transport.
... syntax var nackcount = rtcinboundrtpstreamstats.nackcount; value an integer value indicating how many times the receiver sent a nack packet to the s
ender after detecting that one or more packets were lost during transport.
... candidate recomm
endation initial definition.
RTCInboundRtpStreamStats.sliCount - Web APIs
the slicount property of the rtcinboundrtpstreamstats dictionary indicates how many slice loss indication (sli) packets the rtcrtpreceiver for which this object provdes statistics sent to the remote rtcrtps
ender.
... in general, what's usually of interest is that the higher this number is, the more the stream data is becoming corrupted between the s
ender and the receiver, requiring res
ends or dropping frames.
... syntax var slicount = rtcinboundrtpstreamstats.slicount; value an unsigned integer indicating the number of sli packets this receiver sent to the remote s
ender due to lost runs of macroblocks.
... candidate recomm
endation initial definition.
RTCOutboundRtpStreamStats.nackCount - Web APIs
the nackcount property of the rtcoutboundrtpstreamstats dictionary is a numeric value indicating the number of times the rtcrtps
ender described by this object received a nack packet from the remote receiver.
... a nack (negative acknowledgement, also called "generic nack") packet is used by the rtcrtpreceiver to inform the s
ender that one or more rtp packets it sent were lost in transport.
... syntax var nackcount = rtcoutboundrtpstreamstats.nackcount; value an integer value indicating how many times the s
ender received a nack packet from the receiver, indicating the loss of one or more packets.
... candidate recomm
endation initial definition.
RTCOutboundRtpStreamStats.sliCount - Web APIs
the slicount property of the rtcoutboundrtpstreamstats dictionary indicates how many slice loss indication (sli) packets the rtcrtps
ender received from the remote rtcrtpreceiver for the rtp stream described by this object.
... an sli packet is used by a decoder to let the encoder (the s
ender) know that it's detected corruption of one or more consecutive macroblocks, in scan order, in the received media.in general, what's usually of interest is that the higher this number is, the more the stream data is becoming corrupted between the s
ender and the receiver, causing the receiver to request retransmits or to drop frames entirely.
... syntax var slicount = rtcoutboundrtpstreamstats.slicount; value an unsigned integer indicating the number of sli packets the s
ender received from the receiver due to lost runs of macroblocks.
... candidate recomm
endation initial definition.
RTCPeerConnection.canTrickleIceCandidates - Web APIs
ice trickling is the process of continuing to s
end candidates after the initial offer or answer has already been sent to the other peer.
...if trickling isn't supported, or you aren't able to tell, you can check for a falsy value for this property and then wait until the value of icegatheringstate changes to "completed" before creating and s
ending the initial offer.
...n(_ => pc.createanswer()) .then(answer => pc.setlocaldescription(answer)) .then(_ => if (pc.cantrickleicecandidates) { return pc.localdescription; } return new promise(r => { pc.addeventlistener('icegatheringstatechange', e => { if (e.target.icegatheringstate === 'complete') { r(pc.localdescription); } }); }); }) .then(answer => s
endanswertopeer(answer)) // signaling message .catch(e => handleerror(e)); pc.addeventlistener('icecandidate', e => { if (pc.cantrickleicecandidates) { s
endcandidatetopeer(e.candidate); // signaling message } }); specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcpeerconnection.cantrickleiceca...
... candidate recomm
endation initial specification.
RTCPeerConnection.close() - Web APIs
calling this method terminates the rtcpeerconnection's ice agent,
ending any ongoing ice processing and any active streams.
...all rtcrtps
ender objects are considered to be stopped once this returns (they may still be in the process of stopping, but for all intents and purposes, they're stopped).
... make sure that you delete all references to the previous rtcpeerconnection before attempting to create a new one that connects to the same remote peer, as not doing so might result in some errors dep
ending on the browser.
... candidate recomm
endation initial specification.
RTCPeerConnection.createAnswer() - Web APIs
in this case, a websocket connection is used to s
end a json message with a type field with the value "video-answer" to the other peer, carrying the answer to the device which sent the offer to connect.
... the contents of the object being passed to the s
endtoserver() function, along with everything else in the promise fulfillment handler, dep
end entirely on your design pc.createanswer().then(function(answer) { return pc.setlocaldescription(answer); }) .then(function() { // s
end the answer to the remote peer through the signaling server.
...in our promise handler, the returned answer is set as the description of the local
end of the connection by calling setlocaldescription().
... candidate recomm
endation initial definition.
RTCPeerConnection: iceconnectionstatechange event - Web APIs
this can happen when only the last checked candidate is successful, and the gathering and
end-of-candidates signals both occur before the successful negotiation is completed.
... state transitions as negotiation
ends when the negotiation process runs out of candidates to check, the ice connection transitions to one of two states.
...the ice layer makes this determination upon receiving the
end-of-candidates signal, which is provided by caling addicecandidate() with a candidate whose candidate property is an empty string (""), or by setting the rtcpeerconnection property cantrickleicecandidates to false.
... candidate recomm
endation ...
RTCPeerConnection.localDescription - Web APIs
the read-only property rtcpeerconnection.localdescription returns an rtcsessiondescription describing the session for the local
end of the connection.
... syntax var sessiondescription = peerconnection.localdescription; on a more fundamental level, the returned value is the value of rtcpeerconnection.p
endinglocaldescription if that property isn't null; otherwise, the value of rtcpeerconnection.currentlocaldescription is returned.
... see p
ending and current descriptions in webrtc connectivity for details on this algorithm and why it's used.
... candidate recomm
endation initial specification.
RTCPeerConnection.onnegotiationneeded - Web APIs
most commonly, the negotiationneeded event is fired after a s
end track is added to the rtcpeerconnection.
... example this example, derived from the example in signaling and video calling, establishes a handler for negotiationneeded events to handle creating an offer, configuring the local
end of the connection, and s
ending the offer to the remote peer.
... pc.onnegotiationneeded = function() { pc.createoffer().then(function(offer) { return pc.setlocaldescription(offer); }) .then(function() { // s
end the offer to the remote peer through the signaling server }); }) .catch(reporterror); } first, it creates the offer by calling createoffer().
... candidate recomm
endation initial specification.
RTCPeerConnection.remoteDescription - Web APIs
the read-only property rtcpeerconnection.remotedescription returns a rtcsessiondescription describing the session (which includes configuration and media information) for the remote
end of the connection.
... syntax var sessiondescription = peerconnection.remotedescription; on a more fundamental level, the returned value is the value of rtcpeerconnection.p
endingremotedescription if that property isn't null; otherwise, the value of rtcpeerconnection.currentremotedescription is returned.
... see p
ending and current descriptions in webrtc connectivity for details on this algorithm and why it's used.
... candidate recomm
endation initial specification.
RTCRtpContributingSource.source - Web APIs
the value is the contributing source (csrc) or synchronization source (ssrc) identifier, dep
ending on whether the object is an rtcrtpcontributingsource or rtcrtpsynchronizationsource, which is based on the former.
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 7.0leg
end full support full support no support no support compatibility unknown compatibility unknownuser must explicitly enable this feature.user must explicitly enable this feature.
RTCRtpStreamStats.qpSum - Web APIs
you can, for example, use the value of rtcreceivedrtpstreamstats.framesdecoded if receiving the media or rtcsentrtpstreamstats.framesencoded if s
ending it to get the number of frames handled so far, and compute an average from there.
... also, the exact meaning of the qp value dep
ends on the codec being used.
... candidate recomm
endation initial definition.
... candidate recomm
endation initial definition.
RTCRtpTransceiver.stop() - Web APIs
the stop() method in the rtcrtptransceiver interface permanently stops the transceiver by stopping both the associated rtcrtps
ender and rtcrtpreceiver.
... usage notes when you call stop() on a transceiver, the s
ender immediately stops s
ending media and each of its rtp streams are closed using the rtcp "bye" message.
... the receiver then stops receiving media; the receiver's track is stopped, and the transceiver's direction is changed to stopped, and renegotiation is triggered by s
ending a negotiationneeded event to the rtcpeerconnection.
... candidate recomm
endation ...
Range.compareBoundaryPoints() - Web APIs
parameters how a constant describing the comparison method: range.
end_to_
end compares the
end boundary-point of sourcerange to the
end boundary-point of range.
... range.
end_to_start compares the
end boundary-point of sourcerange to the start boundary-point of range.
... range.start_to_
end compares the start boundary-point of sourcerange to the
end boundary-point of range.
... example var range, sourcerange, compare; range = document.createrange(); range.selectnode(document.getelementsbytagname("div")[0]); sourcerange = document.createrange(); sourcerange.selectnode(document.getelementsbytagname("div")[1]); compare = range.compareboundarypoints(range.start_to_
end, sourcerange); specifications specification status comment domthe definition of 'range.compareboundarypoints()' in that specification.
Reporting API - Web APIs
origins and
endpoints each unique origin you want to retrieve reports for can be given a series of
endpoints, which are urls that can receive given reports from a user agent.
... the report-to http header is used to specify details about the different
endpoints that a user-agent has available to it for delivering reports to.
... the
endpoints are arranged into groups; an
endpoint group can work together to provide load balancing (each
endpoint will receive a specified proportion of report traffic) and safeguarding against failure (fallback
endpoints can be specified to use if the primary ones fail).
... reports sent to
endpoints can be retrieved indep
endently of the running of the websites they relate to, which is useful — a crash for example could bring down a web site and stop anything running, but a report could still be obtained to give the developer some clues as to why it happened.
SVGCircleElement - Web APIs
candidate recomm
endation replaced the inheritance from svgelement, svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable by svggeometryelement scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgcircleelement' in that specification.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
SVGColorProfileElement - Web APIs
svgcolorprofileelement.r
enderingintent an unsigned short corresponding to the r
endering-intent attribute of the given element.
... it takes one of the r
endering_intent_* constants defined on the svgr
enderingintent interface that corresponds to the value of the r
endering-intent attribute.
... methods this interface does not provide any specific methods, but implements those of its parent, svgelement, and implements methods of svgurireference and svgr
enderingintent.
... recomm
endation initial definition ...
SVGPathSegList - Web APIs
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 app
enditem(in svgpathseg newitem) properties readonly unsigned long numberofitems normative document svg 1.1 (2nd edition) properties name type description ...
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in svgpathseg newitem) svgpathseg inserts a new item at the
end of the list.
... leg
end full support full support no support no support compatibility unknown compatibility unknown ...
SVGPointList - Web APIs
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 app
enditem(in svgpoint newitem) properties readonly unsigned long numberofitems normative document svg 1.1 (2nd edition) properties name type description ...
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in svgpoint newitem) svgpoint inserts a new item at the
end of the list.
... leg
end full support full support no support no support compatibility unknown compatibility unknown ...
Selection API - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yescollapseto
end experimentalchrome full support yesedge full support 12firefox full support yesie ?
... yeschrome android full support yesfirefox android full support 55opera android full support yessafari ios full support yessamsung internet android full support yesext
end experimentalchrome full support yesedge full support 12firefox full support yesie no support noopera full support yessafari full support ...
... yeschrome android full support yesfirefox android full support 57opera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support no support no support compatibility unknown compatibility unknownexperimental.
ServiceWorkerGlobalScope: message event - Web APIs
controlled pages can use the serviceworker.postmessage() method to s
end messages to service workers.
... the service worker can optionally s
end a response back via the client.postmessage(), corresponding to the controlled page.
... bubbles no cancelable no interface ext
endablemessageevent 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.
...// event is a messageevent object console.log(`the service worker sent me a message: ${event.data}`); }); navigator.serviceworker.ready.then( registration => { registration.active.postmessage("hi service worker"); }); } the service worker can receive the message by listening to the message event: // in the service worker addeventlistener('message', event => { // event is an ext
endablemessageevent object console.log(`the client sent me a message: ${event.data}`); event.source.postmessage("hi client"); }); specifications specification status service workersthe definition of 'message' in that specification.
SourceBuffer.remove() - Web APIs
syntax sourcebuffer.remove(start,
end); parameters start a double representing the start of the time range, in seconds.
...
end a double representing the
end of the time range, in seconds.
... exceptions exception explanation invalidaccesserror the mediasource.duration property is equal to nan, the start parameter is negative or greater than mediasource.duration, or the
end parameter is less than or equal to start or equal to nan.
... recomm
endation initial definition.
StaticRange.StaticRange() - Web APIs
it includes properties identifying the standard and
end positions of the range as well as a boolean indicating whether or not the range is collapsed (that is, empty).
...
endcontainer the node in which the
end point of the range is located.
...
endoffset the offset into the node indicated by
endoffset at which the last character in the range is located.
... exceptions invalidnodetypeerror a domexception fired if either or both of the startcontainer and/or
endcontainer are a type of node which you can't include in a range.
TextRange - Web APIs
methods textrange.collapse() move the caret to the beginning or
end of the current range.
...for example, expanding a "word" means that the words at both
ends of the range will completely included in the range.
... textrange.move
end() moves the
end of the range by a specified number of units.
... textrange.set
endpoint() sets the
end point of the current range based on the bounds of other textrange.
Touch.radiusX - Web APIs
it is specified in the touch events – level 2 draft specification and not in touch events recomm
endation.
...finger, stylus) along the axis perp
endicular to that indicated by touch.rotationangle.
... the following simple code snippet, registers a single handler for the touchstart, touchmove and touch
end events.
...</div> var src = document.getelementbyid("src"); src.addeventlistener('touchstart', rotate); src.addeventlistener('touchmove', rotate); src.addeventlistener('touch
end', rotate); function rotate (e) { var touch = e.changedtouches.item(0); // turn off default event handling e.preventdefault(); // rotate element 'src'.
USBDevice.clearHalt() - Web APIs
syntax var promise = usbdevice.clearhalt(direction,
endpointnumber) parameters direction indicates whether the devices input or output should be cleared.
...
endpointnumber indicates the number of the
endpoint to clear.
... the promise will reject if an invalid
endpoint is supplied.
... while (true) { let result = await data.transferin(1, 6); if (result.data && result.data.bytelength === 6) { console.log('channel 1: ' + result.data.getuint16(0)); console.log('channel 2: ' + result.data.getuint16(2)); console.log('channel 5: ' + result.data.getuint16(4)); } if (result.status === 'stall') { console.warn('
endpoint stalled.
USBDevice.controlTransferIn() - Web APIs
the available options are: requesttype: must be one of three values specifying whether the tranfer is "standard" (common to all usb devices) "class" (common to an industry-standard class of devices) or "v
endor".
... recipient: specifices the target of the transfer on the device, one of "device", "interface", "
endpoint", or "other".
... request: a v
endor-specific command.
... value: v
ender-specific request parameters.
VTTCue - Web APIs
constructor vttcue(starttime,
endtime, text) returns a newly created vttcue object that covers the given time range and has the given text.
...
endtime the time, in seconds and fractions of a second, that describes the
end of the range of the media data to which the cue applies.
...this can be the string auto or a number whose interpretation dep
ends on the value of vttcue.snaptolines.
... specifications specification status comment webvtt: the web video text tracks format candidate recomm
endation ...
ValidityState.typeMismatch - Web APIs
the email input type expects one or more valid email addresses, dep
ending on whether the multiple attribute is present.
... the url input type expects one or more valid email urls, dep
ending on whether the multiple attribute is present.
... recomm
endation html5the definition of 'validitystate.typemismatch' in that specification.
... recomm
endation ...
Visual Viewport API - Web APIs
one thing that may not be clear in this example is the use of the p
endingupdate flag and the call to requestanimationframe().
... the p
endingupdate flag serves to prevent multiple invocations of the transfrom that can occur when onresize and onscroll fire at the same time.
... using requestanimationframe() ensures that the transform ocurrs before the next r
ender.
... let p
endingupdate = false; function viewporthandler(event) { if (p
endingupdate) return; p
endingupdate = true; requestanimationframe(() => { p
endingupdate = false; var layoutviewport = document.getelementbyid('layoutviewport'); // since the bar is position: fixed we need to offset it by the // visual viewport's offset from the layout viewport origin.
WEBGL_depth_texture - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext
ended methods this extension ext
ends webglr
enderingcontext.teximage2d(): the format and internalformat parameters now accept gl.depth_component and gl.depth_stencil.
... this extension ext
ends webglr
enderingcontext.framebuffertexture2d(): the attachment parameter now accepts gl.depth_stencil_attachment.
... recomm
endation initial definition.
Boilerplate 1 - Web APIs
boilerplate code for setting up webgl r
endering context by now you are quite used to seeing the same pieces of html, css, and javascript repeated again and again.
... in following examples, we will use a javascript helper function, getr
enderingcontext(), to initialize the webgl r
endering context.
...basically, it gets the webgl r
endering context from the canvas element, initializes the drawing buffer, clears it black, and returns the initialized context.
...]</button> <canvas>your browser does not seem to support html5 canvas.</canvas> css body { text-align : center; } canvas { display : block; width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } javascript function getr
enderingcontext() { var canvas = document.queryselector("canvas"); canvas.width = canvas.clientwidth; canvas.height = canvas.clientheight; var gl = canvas.getcontext("webgl") || canvas.getcontext("experimental-webgl"); if (!gl) { var paragraph = document.queryselector("p"); paragraph.innerhtml = "failed to get webgl context." + "your browser or device may not support webgl...
Clearing by clicking - Web APIs
« previousnext » this example demonstrates how to combine user interaction with webgl graphics operations by clearing the r
endering context with a random color when the user clicks.
... clearing the r
endering context with random colors this example provides a simple illustration of how to combine webgl and user interaction.
... var canvas = document.queryselector("#canvas-view"); var button = document.queryselector("#color-switcher"); canvas.addeventlistener("click", switchcolor, false); button.addeventlistener("click", switchcolor, false); // a variable to hold the webglr
enderingcontext.
... // if undefined, try to obtain the webglr
enderingcontext.
WebGL by example - Web APIs
the examples are sorted according to topic and level of difficulty, covering the webgl r
endering context, shader programming, textures, geometry, user interaction, and more.
... getting to know the r
endering context detect webgl this example demonstrates how to detect a webgl r
endering context and reports the result to the user.
... clearing with colors how to clear the r
endering context with a solid color.
...clearing the r
endering context with a random color when the user clicks.
WebGL types - Web APIs
webgl 1 these types are used within a webglr
enderingcontext.
...used for example in webglr
enderingcontext.clear().
... webgl 2 these types are used within a webgl2r
enderingcontext.
... recomm
endation initial definition webgl 2.0the definition of 'types' in that specification.
Writing a WebSocket server in Java - Web APIs
let us ext
end our example.
... inputstream in = client.getinputstream(); outputstream out = client.getoutputstream(); scanner s = new scanner(in, "utf-8"); handshaking when a client connects to a server, it s
ends a get request to upgrade the connection to a websocket from a simple http request.
...nnection: upgrade\r\n" + "upgrade: websocket\r\n" + "sec-websocket-accept: " + base64.getencoder().encodetostring(messagedigest.getinstance("sha-1").digest((match.group(1) + "258eafa5-e914-47da-95ca-c5ab0dc85b11").getbytes("utf-8"))) + "\r\n\r\n").getbytes("utf-8"); out.write(response, 0, response.length); decoding messages after a successful handshake, client can s
end messages to the server, but now these are encoded.
... if we s
end "abcdef", we get these bytes: 129 134 167 225 225 210 198 131 130 182 194 135 - 129: fin (is this the whole message?) rsv1 rsv2 rsv3 opcode 1 0 0 0 0x1=0001 fin: you can s
end your message in frames, but now keep things simple.
Using the Web Audio API - Web APIs
a baseaudiocontext is created for us automatically and ext
ended to an online audio context.
...dep
ending on the use case, there's a myriad of options, but we'll provide functionality to play/pause the sound, alter the track's volume, and pan it from left to right.
... // select our play button const playbutton = document.queryselector('button'); playbutton.addeventlistener('click', function() { // check if context is in susp
ended state (autoplay policy) if (audiocontext.state === 'susp
ended') { audiocontext.resume(); } // play or pause track dep
ending on state if (this.dataset.playing === 'false') { audioelement.play(); this.dataset.playing = 'true'; } else if (this.dataset.playing === 'true') { audioelement.pause(); this.dataset.playing = 'false'; } }, f...
...our htmlmediaelement fires an
ended event once it's finished playing, so we can listen for that and run code accordingly: audioelement.addeventlistener('
ended', () => { playbutton.dataset.playing = 'false'; }, false); modifying sound let's delve into some basic modification nodes, to change the sound that we have.
Visualizations with Web Audio API - Web APIs
the analyser node will then capture audio data using a fast fourier transform (fft) in a certain frequency domain, dep
ending on what you specify as the analysernode.fftsize property value (if no value is specified, the default is 2048.) note: you can also specify a minimum and maximum power value for the fft data scaling range, using analysernode.mindecibels and analysernode.maxdecibels, and different data averaging constants using analysernode.smoothingtimeconstant.
...the first one produces 32-bit floating point numbers, and the second and third ones produce 8-bit unsigned integers, therefore a standard javascript array won't do — you need to use a float32array or uint8array array, dep
ending on what data you are handling.
....0; var y = v * height/2; if(i === 0) { canvasctx.moveto(x, y); } else { canvasctx.lineto(x, y); } x += slicewidth; } finally, we finish the line in the middle of the right hand side of the canvas, then draw the stroke we've defined: canvasctx.lineto(canvas.width, canvas.height/2); canvasctx.stroke(); }; at the
end of this section of code, we invoke the draw() function to start off the whole process: draw(); this gives us a nice waveform display that updates several times a second: creating a frequency bar graph another nice little sound visualization to create is one of those winamp-style frequency bar graphs.
... for(var i = 0; i < bufferlength; i++) { barheight = dataarray[i]/2; canvasctx.fillstyle = 'rgb(' + (barheight+100) + ',50,50)'; canvasctx.fillrect(x,height-barheight/2,barwidth,barheight); x += barwidth + 1; } }; again, at the
end of the code we invoke the draw() function to set the whole process in motion.
Using the Web Speech API - Web APIs
setting this is good practice, and therefore recomm
ended.
... we also use a speechrecognition.onspeech
end handler to stop the speech recognition service from running (using speechrecognition.stop()) once a single word has been recognised and it has finished being spoken: recognition.onspeech
end = function() { recognition.stop(); } handling errors and unrecognised speech the last two handlers are there to handle cases where speech was recognised that wasn't in the defined grammar, or an error occ...
...d from speechsynthesisvoice.name), the language of the voice (grabbed from speechsynthesisvoice.lang), and -- default if the voice is the default voice for the synthesis engine (checked by seeing if speechsynthesisvoice.default returns true.) we also create data- attributes for each option, containing the name and language of the associated voice, so we can grab them easily later on, and then app
end the options as children of the select.
... voices = synth.getvoices(); for(i = 0; i < voices.length ; i++) { var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.app
endchild(option); } } when we come to run the function, we do the following.
Window: popstate event - Web APIs
browsers t
end to handle the popstate event differently on page load.
...if the goal is to catch the moment when the new document state is already fully in place, a zero-delay settimeout() method call should be used to effectively put its inner callback function that does the processing at the
end of the browser event loop: window.onpopstate = () => settimeout(dosomething, 0); when popstate is sent when the transition occurs, either due to the user triggering the browser's "back" button or otherwise, the popstate event is near the
end of the process to transition to the new location.
...this will eventually s
end events such as domcontentloaded and load to the window containing the document, but the steps below will continue to execute in the meantime.
... if the original and new entry's shared the same document, but had different fragments in their urls, s
end the hashchange event to the window.
window.requestIdleCallback() - Web APIs
a timeout option is strongly recomm
ended for required work, as otherwise it's possible multiple seconds will elapse before the callback is fired.
... specifications specification status comment cooperative scheduling of background tasks proposed recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... no support 53 — 55notes notes implemented but disabled by default.opera android full support 34safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
Worklet - Web APIs
the worklet interface is a lightweight version of web workers and gives developers access to low-level parts of the r
endering pipeline.
... with worklets, you can run javascript and webassembly code to do graphics r
endering or audio processing where high performance is required.
... web audio r
ender thread web audio api animationworklet for creating scroll-linked and other high performance procedural animations.
... css layout api for 3d r
endering with webgl, you don't use worklets.
WritableStream.WritableStream() - Web APIs
the controller parameter passed to this method is a writablestreamdefaultcontroller, which can be used to control the stream at the
end of writing.
...it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
WritableStreamDefaultWriter.ready - Web APIs
the first uses ready to ensure that the writablestream is done writing and thus able to receive data before s
ending a binary chunk.
... function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter var defaultwriter = writablestream.getwriter(); var encoder = new textencoder(); var encoded = encoder.encode(message, {stream: true}); encoded.foreach(function(chunk) { // make sure the stream and its writer are able to // receive data.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 7.0leg
end full support full support no support no support compatibility unknown compatibility unknownexperimental.
WritableStreamDefaultWriter - Web APIs
properties writablestreamdefaultwriter.closedread only allows you to write code that responds to an
end to the streaming process.
...it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("...
...ritablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in o...
XDomainRequest - Web APIs
this interface can s
end both get and post requests.
... xdomainrequest.s
end() s
ends the request.
... event handlers xdomainrequest.onprogress a handler for when the request has made progress between the s
end method call and the onload event.
... example if(window.xdomainrequest){ var xdr = new xdomainrequest(); xdr.open("get", "http://example.com/api/method"); xdr.onprogress = function () { //progress }; xdr.ontimeout = function () { //timeout }; xdr.onerror = function () { //error occurred }; xdr.onload = function() { //success(xdr.responsetext); } settimeout(function () { xdr.s
end(); }, 0); } note: the xdr.s
end() 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.
XMLHttpRequest.readyState - Web APIs
2 headers_received s
end() has been called, and headers and status are available.
...during this state, the request headers can be set using the setrequestheader() method and the s
end() method can be called which will initiate the fetch.
... headers_received s
end() has been called and the response headers have been received.
...ple var xhr = new xmlhttprequest(); console.log('unsent', xhr.readystate); // readystate will be 0 xhr.open('get', '/api', true); console.log('opened', xhr.readystate); // readystate will be 1 xhr.onprogress = function () { console.log('loading', xhr.readystate); // readystate will be 3 }; xhr.onload = function () { console.log('done', xhr.readystate); // readystate will be 4 }; xhr.s
end(null); specifications specification status comment xmlhttprequest living standard whatwg living standard ...
XMLHttpRequest.setRequestHeader() - Web APIs
when using setrequestheader(), you must call it after calling open(), but before calling s
end().
... each time you call setrequestheader() after the first time you call it, the specified text is app
ended to the
end of the existing header's content.
... if no accept header has been set using this, an accept header with the type "*/*" is sent with the request when s
end() is called.
... note: for your custom fields, you may encounter a "not allowed by access-control-allow-headers in preflight response" exception when you s
end requests across domains.
XRBoundedReferenceSpace.boundsGeometry - Web APIs
the specification recomm
ends that browsers shift the points to the nearest 5 centimeters (while avoiding going outside the physical limitations of the hardware).
... boundary size xrboundedreferencespace is not int
ended to be used for very large bounded areas.
...that said, the bounds ext
end upward indefinitely, since the bounds are defined in only two dimensions.
... although some samples r
ender a mesh or other shape to display the bounds to the user, in a real-world application, you shouldn't do this.
XRHandedness - Web APIs
function updateinputsources(session, frame, refspace) { for (let source of session.inputsources) { if (source.gripspace) { let grippose = frame.getpose(source.gripspace, refspace); if (grippose) { myr
enderhandobject(grippose, inputsource.handedness); } } } } this function, which would be called every animation frame (or possibly just periodically, dep
ending on the degree of smoothness required and any performance constraints), scans the list of input sources looking for any which have a gripspace which isn't null.
... if a gripspace is present, that means the input source is a hand-held device of some sort, so it should be r
endered visibly if possible.
...assuming that's then valid, a function called myr
enderhandobject() is called with the grip's pose and the value of handedness.
... with these values in hand (no pun int
ended), myr
enderhandobject() can draw the appropriate model positioned and formed for the correct hand.
XRInputSource.gripSpace - Web APIs
the read-only xrinputsource property gripspace returns an xrspace whose native origin tracks the pose used to r
ender virtual objects so they appear to be held in (or part of) the user's hand.
... syntax var xrspace = xrinputsource.gripspace; value an xrspace object representing the position and orientation of the input device in virtual space, suitable for r
endering an image of the device into the scene.
... as shown in the diagram above, the coordinate system is oriented as follows: the x-axis is perp
endicular to the palm of the user's hand, with the direction ext
ending outward from the back of the hand being +x if the controller is in the user's right hand or -x if the controller is in the left hand.
... examples in tis example, taken from the frame r
endering callback, the gripspace is used to r
ender a mesh that represents the position and orieintation of the controller in the virtual environment.
XRInputSource.handedness - Web APIs
function updateinputsources(session, frame, refspace) { for (let source of session.inputsources) { if (source.gripspace) { let grippose = frame.getpose(source.gripspace, refspace); if (grippose) { myr
enderhandobject(grippose, inputsource.handedness); } } } } this function, which would be called every animation frame (or possibly just periodically, dep
ending on the degree of smoothness required and any performance constraints), scans the list of input sources looking for any which have a gripspace which isn't null.
... if a gripspace is present, that means the input source is a hand-held device of some sort, so it should be r
endered visibly if possible.
...assuming that's then valid, a function called myr
enderhandobject() is called with the grip's pose and the value of handedness.
... with these values in hand (no pun int
ended), myr
enderhandobject() can draw the appropriate model positioned and formed for the correct hand.
XRInputSourceEvent() - Web APIs
event types select sent to an xrsession when the s
ending input source has fully completed a primary action.
... select
end sent to an xrsession when an ongoing primary action
ends, or when an input source with an ongoing primary action has been disconnected from the system.
... squeeze sent to an xrsession when the s
ending input source has fully completed a primary squeeze action.
... squeeze
end sent to an xrsession when an ongoing primary squeeze action
ends or when an input source with an ongoing primary squeeze action is disconnected.
XRPermissionDescriptor.mode - Web APIs
scriptor = { mode: xrsessionmode, requiredfeatures: reqfeaturelist, optionalfeatures: optfeaturelist }; xrpermissiondescriptor.mode = xrsessionmode; xrmode = xrpermissiondescriptor.mode; value a domstring whose value is one of the strings found in the xrsessionmode enumerated type: immersive-ar the session's output will be given exclusive access to the immersive device, but the r
endered content will be bl
ended with the real-world environment.
... the session's environmentbl
endmode indicates the method to be used to bl
end the content together.
... immersive-vr indicates that the r
endered session will be displayed using an immersive xr device in vr mode; it is not int
ended to be overlaid or integrated into the surrounding environment.
... the environmentbl
endmode is expected to be opaque if possible, but might be additive if the hardware requires it.
XRSessionMode - Web APIs
values immersive-ar the session's output will be given exclusive access to the immersive device, but the r
endered content will be bl
ended with the real-world environment.
... the session's environmentbl
endmode indicates the method to be used to bl
end the content together.
... immersive-vr indicates that the r
endered session will be displayed using an immersive xr device in vr mode; it is not int
ended to be overlaid or integrated into the surrounding environment.
... the environmentbl
endmode is expected to be opaque if possible, but might be additive if the hardware requires it.
XRView.transform - Web APIs
in this example, we see an outline of a code fragment used while r
endering an xrframe, which makes use of the view transform to place objects in the world during r
endering.
... normalmatrix = mat4.create(); for (let view of pose.views) { let viewport = gllayer.getviewport(view); gl.viewport(viewport.x, viewport.y, viewport.width, viewport.height); for (let obj of world.objects) { mat4.multiply(modelviewmatrix, view.transform.inverse.matrix, obj.matrix); mat4.invert(normalmatrix, modelviewmatrix); mat4.transpose(normalmatrix, normalmatrix); obj.r
ender(modelviewmatrix, normalmatrix); } } two matrices are created outside the r
endering loop; this avoids repeatedly allocating and deallocating the matrices, and generally reduces overhead by reusing the same matrix for each object r
endered.
...currently, webxr doesn't support more than two views per pose, although room has been left to ext
end the specification to support that in the future with some additions to the api.
... finally, we call the object's r
ender() routine, passing along the modelviewmatrix and normalmatrix so the r
enderer can place and light the object properly.
XRWebGLLayerInit.antialias - Web APIs
the boolean antialias property, if present and set to true in the xrwebgllayerinit object provided as the xrwebgllayer() constructor's layerinit parameter, requests that the new webgl r
endering layer support anti-aliasing.
... syntax let layerinit = { antialias: boolvalue }; let gllayer = new xrwebgllayer(xrsession, gl, layerinit); let gllayer = new xrwebgllayer(xrsession, gl, { antialias: boolvalue }); value a boolean value which can be set to true to request anti-aliasing support in the new webgl r
endering layer.
... example in this example, before creating a new xrwebgllayer to use for r
endering, 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.
... let options = { antialias: getpreferencevalue("antialiasing") }; let gllayer = new xrwebgllayer(xrsession, gl, options); if (gllayer) { xrsession.updater
enderstate({ baselayer: gllayer }); } offering the user features such as the ability to enable or disable things like anti-aliasing can provide them with optiions to try when your app isn't performing as well as they'd like.
XRWebGLLayerInit.depth - Web APIs
when using the xrwebgllayer() constructor to create a new webgl r
endering layer for webxr, providing as the layerinit parameter an object whose depth property is false will request that the new layer be created without a depth buffer.
...this means that the only source for depth information is the vertex coordinates, and reduces the accuracy and quality of r
endering, but may potentially affect the performance of r
endering as well.
... you can determine whether or not the depth buffer is being used by a given webgl r
endering layer during your xr session by checking the value returned by xrwebgllayer.ignoredepthvalues.
... xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl, { depth: false }); }); specifications specification status comment webxr device apithe definition of 'xrwebgllayerinit.depth' in that specification.
XRWebGLLayerInit.ignoreDepthValues - Web APIs
syntax let layerinit = { ignoredepthvalues: boolvalue }; let gllayer = new xrwebgllayer(xrsession, gl, layerinit); let gllayer = new xrwebgllayer(xrsession, gl, { ignoredepthvalues: boolvalue }); value a boolean value which can be set to true to disable the use of the depth buffer by the webgl r
endering layer created by the xrwebgllayer() constructor.
... usage notes if ignoredepthvalues is true, the webxr compositor will ignore the contents of the depth buffer, if it exists, while compositing and r
endering the scene.
...each entry in the depth buffer corresponds to the depth of the fragment whose color is at the same location in the color buffer, and must have a value between 0.0 and 1.0, where 0.0 corresponds to the distance specified in the xrsession object's r
enderstate record's depthnear and 1.0 represents the distance given by depthfar.
... xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl, { alpha: false, ignoredepthvalues: true }); }); specifications specification status comment webxr device apithe definition of 'xrwebgllayerinit.ignoredepthvalues' in that specification.
XRWebGLLayerInit - Web APIs
antialias optional a boolean value which is true if anti-aliasing is to be used when r
endering in the context; otherwise false.
...the static xrwebgllayer function xrwebgllayer.getnativeframebufferscalefactor() returns the scale that would result in a 1:1 pixel ratio, thereby ensuring that the r
endering is occurring at the device's native resolution.
... examples given an xrsession, xrsession, and a webgl r
endering context, gl, this snippet sets the r
endering layer for the session, specifying the ignoredepthvalues option, indicating that the depth buffer should not be used (or should not exist at all), and that the only source for distance information of any given point is its position relative to the viewer.
... const layeroptions = { ignoredepthvalues: true }; xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl, layeroptions); }); specifications specification status comment webxr device apithe definition of 'xrwebgllayerinit' in that specification.
Using the aria-valuenow attribute - Accessibility
when the r
endered value cannot be accurately represented as a number, authors should use the aria-valuetext attribute in conjunction with aria-valuenow to provide a user-fri
endly representation of the range's current value.
... for example, a slider may have r
endered values of small, medium, and large.
... value string representation of a number possible effects on user agents and assistive technology for elements with role progressbar and scrollbar, assistive technologies should r
ender the actual value as a percentage, calculated as a position on the range from aria-valuemin to aria-valuemax if both are defined, otherwise the actual value with a percent indicator.
... for elements with role slider and spinbutton, assistive technologies should r
ender the actual value to users.
Using the aria-valuetext attribute - Accessibility
authors should only set the aria-valuetext attribute when the r
endered value cannot be accurately represented as a number.
... for example, a slider may have r
endered values of small, medium, and large.
...if aria-valuetext is specified, assistive technologies should r
ender that value instead of the value of aria-valuenow.
...the application would programmatically update aria-valuetext dep
ending on aria-valuenow.
ARIA: banner role - Accessibility
<div role="banner"> <img src="companylogo.svg" alt="my company name" /> <h1>title</h1> <h2>subtitle</h2> </div> by default, the html5 <header> element has an identical meaning to the banner landmark, unless it is a desc
endant of <aside>, <article>, <main>, <nav>, or <section>.
... assistive technologies can identify the main header element of a page as the banner if is a desc
endant of the body element, and not nested within an article, aside, main, nav or section subsection.
...p> </div> we could also have written the above with the html header element: <header> <a href="#nav" id="skiptomenu" class="skiptocontent">skip to keyboard navigation</a> <img src="images/w3c.png" alt="w3c logo"> <h1>aria landmarks</h1> <p>identifying page subsections for easy navigation</p> </header> best practices while it is best to use the header element and ensure it is not a desc
endant of any subsection of the page, sometimes you don't have access to the underlying html.
... recomm
endation wai-aria authoring practicesthe definition of 'banner landmark role' in that specification.
ARIA: rowgroup role - Accessibility
<div role="table" aria-label="populations" aria-describedby="country_population_desc"> <div id="country_population_desc">world populations by country</div> <div role="rowgroup"> <div role="row"> <span role="columnheader" aria-sort="desc
ending">country</span> <span role="columnheader"aria-sort="none">population</span> </div> </div> <div role="rowgroup"> <div role="row"> <span role="cell">finland</span> <span role="cell">5.5 million</span> </div> <div role="row"> <span role="cell">france</span> <span role="cell">67 million</span> </div> </div> </div> des...
...these cells can be of different types, dep
ending on whether they are column or row headers, or plain or grid cells.
... desc
endant roles role="row" a row of cells within a tabular structure.
... recomm
endation ...
ARIA: dialog role - Accessibility
in other words, the dialog's label acts like a grouping label for the controls inside it (similar to how a <leg
end> element provides a grouping label for the controls inside a <fieldset> element).
... when the dialog appears on the screen, keyboard focus (whose control dep
ends upon the dialogs purpose) should be moved to the default focusable control inside the dialog.
... note: opinions may differ on how assistive technology should handle this technique, and the order of announcements may differ dep
ending on the assistive technolgy used.
... recomm
endation screen reader support coming soon ...
WAI-ARIA Roles - Accessibility
if possible, use the html <aside> element instead.aria: contentinfo rolethe contentinfo landmark role is used to identify information repeated at the
end of every page of a website, including copyright information, navigation links, and privacy statements.
...complex composite widgets or applications, the document role can inform assistive technologies to switch context to a reading mode: the document role tells assistive technologies with reading or browse modes to use the document mode to read the content contained within this element.aria: feed rolea feed is a dynamic scrollable list of articles in which articles are added to or removed from either
end of the list as the user scrolls.
...it is int
ended to mimic the functionality of the html td element for table-style grouping of information.aria: heading rolethe heading role defines this element as a heading to a page or section.
...aria: timer rolethe timer role indicates to assistive technologies that an element is a numerical counter the amount of elapsed time from a starting point or the remaining time until an
end point.
Accessibility Information for Web Authors - Accessibility
highly recomm
ended, an excellent resource.
... html advanced validator (firefox extension) by marc gueury this html validator (based on w3c tidy and on opensp for sgml validation) is a powerful, versatile, ext
ended html validator.
... join the mozilla accessibility community live chat both
end users and developers are invited for discussion on the live irc channel at irc.mozilla.org/#accessibility.
... purpose newsgroup mailing list google group developer discussion mozilla.dev.accessibility subscribe/unsubscribe google group
end user support mozilla.support.accessibility subscribe/unsubscribe google group ...
-moz-orient - CSS: Cascading Style Sheets
values inline the element is r
endered in the same direction as the axis of the text: horizontally for horizontal writing modes, vertically for vertical writing modes.
... block the element is r
endered orthogonally to the axis of the text: vertically for horizontal writing modes, horizontal for vertical writing modes.
... horizontal the element is r
endered horizontally.
... vertical the element is r
endered vertically.
-webkit-box-reflect - CSS: Cascading Style Sheets
n values */ -webkit-box-reflect: above; -webkit-box-reflect: below; -webkit-box-reflect: left; -webkit-box-reflect: right; /* offset value */ -webkit-box-reflect: below 10px; /* mask value */ -webkit-box-reflect: below 0 linear-gradient(transparent, white); /* global values */ -webkit-box-reflect: inherit; -webkit-box-reflect: initial; -webkit-box-reflect: unset; note: this feature is not int
ended to be used by web sites.
..., <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
::slotted() - CSS: Cascading Style Sheets
plate id="person-template"> <div> <h2>personal id card</h2> <slot name="person-name">name missing</slot> <ul> <li><slot name="person-age">age missing</slot></li> <li><slot name="person-occupation">occupation missing</slot></li> </ul> </div> </template> a custom element — <person-details> — is defined like so: customelements.define('person-details', class ext
ends htmlelement { constructor() { super(); let template = document.getelementbyid('person-template'); let templatecontent = template.content; const shadowroot = this.attachshadow({mode: 'open'}); let style = document.createelement('style'); style.textcontent = 'div { padding: 10px; border: 1px solid gray; width: 200px; margin: 10px; }' + ...
... 'h2 { margin: 0 0 10px; }' + 'ul { margin: 0; }' + 'p { margin: 10px 0; }' + '::slotted(*) { color: gray; font-family: sans-serif; } '; shadowroot.app
endchild(style); shadowroot.app
endchild(templatecontent.clonenode(true)); } }) you'll see that when filling the style element with content, we select all slotted elements (::slotted(*)) and give them a different font and color.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android full support 37safari ios full support 10samsung internet android full support 5.0leg
end full support full support no support no supportuser must explicitly enable this feature.user must explicitly enable this feature.
:checked - CSS: Cascading Style Sheets
recomm
endation defines the semantic regarding html.
... recomm
endation defines the pseudo-class, but not the associated semantic browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
..., <option&rt; elements cannot be styled.opera android full support 10.1safari ios full support 3.1notes full support 3.1notes notes styling <option&rt; elements has no effect.samsung internet android full support 1.0leg
end full support full supportsee implementation notes.see implementation notes.
:defined - CSS: Cascading Style Sheets
in this demo we define a very simple trivial custom element: customelements.define('simple-custom', class ext
ends htmlelement { constructor() { super(); let divelem = document.createelement('div'); divelem.textcontent = this.getattribute('text'); let shadowroot = this.attachshadow({mode: 'open'}) .app
endchild(divelem); } }) then insert a copy of this element into the document, along with a standard <p>: <simple-custom text="custom element example text"></simple-cust...
...es of our custom element that are not defined, and display instances that are defined as block level elements: simple-custom:not(:defined) { display: none; } simple-custom:defined { display: block; } this is useful if you have a complex custom element that takes a while to load into the page — you might want to hide instances of the element until definition is complete, so that you don't
end up with flashes of ugly unstyled elements on the page specifications specification status comment html living standardthe definition of ':defined' in that specification.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 54chrome android full support 54firefox android full support 63opera android full support 41safari ios full support 10samsung internet android full support 6.0leg
end full support full support no support no support ...
:nth-last-of-type() - CSS: Cascading Style Sheets
the :nth-last-of-type() css pseudo-class matches elements of a given type, based on their position among a group of siblings, counting from the
end.
... /* selects every fourth <p> element among any group of siblings, counting backwards from the last one */ p:nth-last-of-type(4n) { color: lime; } note: this pseudo-class is essentially the same as :nth-of-type, except it counts items backwards from the
end, not forwards from the beginning.
... syntax the nth-last-of-type pseudo-class is specified with a single argument, which represents the pattern for matching elements, counting from the
end.
... recomm
endation initial definition.
additive-symbols - CSS: Cascading Style Sheets
, <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
... candidate recomm
endation initial definition.
pad - CSS: Cascading Style Sheets
, <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
... candidate recomm
endation initial definition ...
range - CSS: Cascading Style Sheets
syntax /* keyword value */ range: auto; /* range values */ range: 2 5; range: infinite 10; range: 6 infinite; range: infinite infinite; /* multiple range values */ range: 2 5, 8 10; range: infinite 6, 10 infinite; values auto the range dep
ends on the counter system: for cyclic, numeric, and fixed systems, the range is negative infinity to positive infinity.
... for ext
ends systems, the range is whatever auto would produce for the ext
ended system; if ext
ending a complex predefined style (§7 complex predefined counter styles), the range is the style’s defined range.
...for ext
ends systems, the range is whatever auto will produce for the ext
ended system.
... candidate recomm
endation initial definition ...
symbols - CSS: Cascading Style Sheets
, <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
... candidate recomm
endation initial definition.
@supports - CSS: Cascading Style Sheets
the @supports css at-rule lets you specify declarations that dep
end on a browser's support for one or more specific css features.
... candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...ort nonotes notes see bug 979041.safari ios no support nonotes no support nonotes notes see bug 199237samsung internet android no support nonotes no support nonotes notes see bug 979041.leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
Attribute selectors - CSS: Cascading Style Sheets
/* <a> elements with a title attribute */ a[title] { color: purple; } /* <a> elements with an href matching "https://example.org" */ a[href="https://example.org"] { color: green; } /* <a> elements with an href containing "example" */ a[href*="example"] { font-size: 2em; } /* <a> elements with an href
ending ".org" */ a[href$=".org"] { font-style: italic; } /* <a> elements whose class attribute contains the word "logo" */ a[class~="logo"] { padding: 2px; } syntax [attr] represents elements with an attribute name of attr.
.../ a[href^="#"] { background-color: gold; } /* links with "example" anywhere in the url */ a[href*="example"] { background-color: silver; } /* links with "insensitive" anywhere in the url, regardless of capitalization */ a[href*="insensitive" i] { color: cyan; } /* links with "case" anywhere in the url, with matching capitalization */ a[href*="case" s] { color: pink; } /* links that
end in ".org" */ a[href$=".org"] { color: red; } /* links that start with "https" and
end in ".org" */ a[href^="https"][href$=".org"] { color: green; } html <ul> <li><a href="#internal">internal link</a></li> <li><a href="http://example.com">example link</a></li> <li><a href="#insensitive">insensitive internal link</a></li> <li><a href="http://example.org">example org link</a></li> ...
... recomm
endation css level 2 (revision 1)the definition of 'attribute selectors' in that specification.
... recomm
endation initial definition ...
CSS Box Alignment - CSS: Cascading Style Sheets
instead we describe alignment in terms of the start and
end of the particular dimension we are working with.
... center start
end self-start self-
end flex-start for flexbox only flex-
end for flexbox only left right other than the physical values of left and right, which relate to physical attributes of the screen, all of the other values are logical values and relate to the writing mode of the content.
... grid-row-gap grid-column-gap grid-gap the prefixed versions will be maintained as an alias of the unprefixed ones, however you can always double up in the way that you would with v
endor prefixes, adding the grid-gap property and then the gap property with the same values.
... pages detailing individual alignment properties as the css box alignment properties are implemented differently dep
ending on the specification they interact with, refer to the following pages for each layout type for details of how to use the alignment properties with it: box alignment in flexbox box alignment in css grid layout box alignment in multiple-column layout box alignment for block, absolutely positioned and table layout reference css properties justify-content align-content place-content justify-items align-items place-items justify-self align-self place-self row-gap column-gap gap glossary entries c...
Handling content breaks in multicol - CSS: Cascading Style Sheets
for example, we would generally prefer that the figcaption of an image not be separated into a new column away from the image it refers to and
ending a column with a heading looks strange.
...the orphans property controls the number of lines left on their own at the
end of a fragment.
... the orphans and widows properties take an integer as a value, which represents the number of lines to keep together at the
end and start of a fragment, respectively.
... when things don’t work as expected if you have small amounts of content and are trying to control breaks in a number of ways or on several elements, your content needs to break somewhere, so you may not always get the result you int
ended.
Spanning and Balancing Columns - CSS: Cascading Style Sheets
any desc
endant element of the multicol container may become a spanner including both direct and indirect children.
... things to watch out for if the spanning element is inside another element which has margins, padding and a border or a background color, it is possible to
end up with the top of the box appearing above the spanner and the rest displaying below, as shown in the next example.
...use spanning carefully and test at various breakpoints to make sure you get the int
ended effect.
...in the example below we have changed column-fill to auto and the columns are now filled, in order, to the height of the multicol container, leaving some columns empty at the
end.
Controlling Ratios of Flex Items Along the Main Axis - CSS: Cascading Style Sheets
if your browser does not yet support these keywords both paragraphs will be r
endered as normal paragraphs in block flow; the below screenshots show the expected r
endering.
...our bigger item
ends up bigger because it started from a bigger size, even though it has the same amount of spare space assigned to it as the others: if what you actually want is three equally-sized items, even if they start out at different sizes, you should use this: flex: 1 1 0; here we are saying that the size of the item for the purposes of our space distribution calculation is 0 — all the space is up fo...
...the
end result is three equal width, flexible items.
... in practice the shrinking behaviour does t
end to give you reasonable results.
Mastering Wrapping of Flex Items - CSS: Cascading Style Sheets
if flex-direction is set to row-reverse then the items will start from the
end edge of the container and lay themselves out in reverse ordered lines.
...the specification describes the behaviour as follows: “specifying visibility:collapse on a flex item causes it to become a collapsed flex item, producing an effect similar to visibility:collapse on a table-row or table-column: the collapsed flex item is removed from r
endering entirely, but leaves behind a "strut" that keeps the flex line’s cross-size stable.
... this means that items might
end up on a different line to the one they started on.
... in the case of an item being shown and hidden it could well cause the items to
end up in a different row.
Typical use cases of Flexbox - CSS: Cascading Style Sheets
when we have a set of items that we want to display horizontally, we may well
end up with additional space.
...you could also use flex-start to place the space at the
end of the items, flex-
end to place it before them, or center to centre the navigation items.
... you can play with the alignment, aligning the item to the start with flex-start or
end with flex-
end.
...if you set both sides to flex: 1, they will grow and shrink from a flex-basis of 0, so you will
end up with two equal-sized columns.
Consistent list indentation - CSS: Cascading Style Sheets
they're sort of like app
endages to the list items, hanging outside the content-area of the <li> but still attached to the <li>.
... finding consistency boil it all down, and what we're left with is this: if you want consistent r
endering of lists between gecko, internet explorer, and opera, you need to set both the left margin and left padding of the <ul> element.
... conclusion in the
end, we can see that none of the browsers mentioned in this article is right or wrong about how they lay out lists.
... recomm
endations when altering the indentation of lists, make sure to set both the padding and margin.
CSS Overflow - CSS: Cascading Style Sheets
in css overflow happens when the content of a box ext
ends past one or more of the box's edges.
...this is the overflow of painting effects which do not affect layout or otherwise ext
end the scrollable overflow region, such as box shadows, border images, text decoration, overhanging glyphs, outlines, etc.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation initial definition.
CSS Scrollbars - CSS: Cascading Style Sheets
gumbo beet greens corn soko
endive gumbo gourd.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no supportuser must explicitly enable this feature.user must explicitly enable this feature.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
CSS selectors - CSS: Cascading Style Sheets
combinators desc
endant combinator the (space) combinator selects nodes that are desc
endants of the first element.
... selectors level 3 recomm
endation added the ~ general sibling combinator and tree-structural pseudo-classes.
...additional attribute selectors css level 2 (revision 1) recomm
endation added the > child and + adjacent sibling combinators.
... css level 1 recomm
endation initial definition.
WebKit CSS extensions - CSS: Cascading Style Sheets
-webkit-animation-trigger -webkit-app-region -webkit-appearance* -webkit-aspect-ratio b -webkit-backdrop-filter -webkit-background-composite -webkit-border-after** -webkit-border-after-color** -webkit-border-after-style** -webkit-border-after-width** -webkit-border-before** -webkit-border-before-color** -webkit-border-before-style** -webkit-border-before-width** -webkit-border-
end** -webkit-border-
end-color** -webkit-border-
end-style** -webkit-border-
end-width** -webkit-border-fit -webkit-border-horizontal-spacing -webkit-border-start** -webkit-border-start-color** -webkit-border-start-style** -webkit-border-start-width** -webkit-border-vertical-spacing -webkit-box-align** -webkit-box-direction** -webkit-box-flex-group** -webkit-box-flex** -webkit-box-lines*...
...ate-limit-lines -webkit-initial-letter l -webkit-line-align -webkit-line-box-contain -webkit-line-clamp -webkit-line-grid -webkit-line-snap -webkit-locale -webkit-logical-height -webkit-logical-width m -webkit-margin-after-collapse -webkit-margin-after -webkit-margin-before-collapse -webkit-margin-before -webkit-margin-bottom-collapse -webkit-margin-collapse -webkit-margin-
end** -webkit-margin-start** -webkit-margin-top-collapse -webkit-marquee-direction -webkit-marquee-increment -webkit-marquee-repetition -webkit-marquee-speed -webkit-marquee-style -webkit-marquee -webkit-mask-box-image-outset -webkit-mask-box-image-repeat -webkit-mask-box-image-slice -webkit-mask-box-image-source -webkit-mask-box-image-width -webkit-mask-box-image -webkit-mask-repeat-x...
... -webkit-mask-repeat-y -webkit-mask-source-type -webkit-max-logical-height -webkit-max-logical-width -webkit-min-logical-height -webkit-min-logical-width n -webkit-nbsp-mode p -webkit-padding-after** -webkit-padding-before** -webkit-padding-
end** -webkit-padding-start** -webkit-perspective-origin-x -webkit-perspective-origin-y -webkit-print-color-adjust r-s -webkit-rtl-ordering -webkit-svg-shadow t -webkit-tap-highlight-color -webkit-text-combine -webkit-text-decoration-skip -webkit-text-decorations-in-effect -webkit-text-fill-color -webkit-text-security -webkit-text-stroke-color -webkit-text-stroke-width -webkit-text-stroke -webkit-text-zoom -webkit-transform-origin-x -webkit-transform-origin-y -webkit-transform-origin-z u -webkit-user-drag ...
... f -webkit-filter -webkit-flex -webkit-flex-basis -webkit-flex-direction -webkit-flex-flow -webkit-flex-grow -webkit-flex-shrink -webkit-flex-wrap -webkit-font-feature-settings -webkit-font-kerning -webkit-font-variant-ligatures g-j -webkit-grid -webkit-grid-area -webkit-grid-auto-columns -webkit-grid-auto-flow -webkit-grid-auto-rows -webkit-grid-column -webkit-grid-column-
end -webkit-grid-column-gap -webkit-grid-column-start -webkit-grid-gap -webkit-grid-row -webkit-grid-row-
end -webkit-grid-row-gap -webkit-grid-row-start -webkit-grid-template -webkit-grid-template-areas -webkit-grid-template-columns -webkit-grid-template-rows h-l -webkit-hyphens -webkit-justify-content -webkit-justify-items -webkit-justify-self -webkit-line-break m -webkit-ma...
all - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... revert specifies behavior that dep
ends on the stylesheet origin to which the declaration belongs: user-agent origin equivalent to unset.
... candidate recomm
endation added the revert value.
... candidate recomm
endation initial definition.
animation-fill-mode - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the last keyframe dep
ends on the value of animation-direction and animation-iteration-count: animation-direction animation-iteration-count last keyframe encountered normal even or odd 100% or to reverse even or odd 0% or from alternate even 0% or from alternate odd 100% or to alternate-reverse even ...
...the first relevant keyframe dep
ends on the value of animation-direction: animation-direction first relevant keyframe normal or alternate 0% or from reverse or alternate-reverse 100% or to both the animation will follow the rules for both forwards and backwards, thus ext
ending the animation properties in both directions.
... note: when you specify multiple comma-separated values on an animation-* property, they will be assigned to the animations specified in the animation-name property in different ways dep
ending on how many there are.
background-attachment - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation the shorthand property has been ext
ended to support multiple backgrounds and the local value.
... recomm
endation no significant change.
... recomm
endation no significant change.
background-position-x - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... formal definition initial valueleftapplies toall elementsinheritednopercentagesrefer to width of background positioning area minus height of background imagecomputed valuea list, each item consisting of: an offset given as a combination of an absolute length and a percentage, plus an origin keywordanimation typediscrete formal syntax [ center | [ [ left | right | x-start | x-
end ]?
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android full support 49opera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no support see also background-position background-position-y background-position-inline background-position-block using multiple backgrounds ...
background-position-y - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... formal definition initial valuetopapplies toall elementsinheritednopercentagesrefer to height of background positioning area minus height of background imagecomputed valuea list, each item consisting of: an offset given as a combination of an absolute length and a percentage, plus an origin keywordanimation typediscrete formal syntax [ center | [ [ top | bottom | y-start | y-
end ]?
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android full support 49opera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no support see also background-position background-position-x background-position-inline background-position-block using multiple backgrounds ...
border-block-start-color - CSS: Cascading Style Sheets
the border-block-start-color css property defines the color of the logical block-start border of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color, border-right-color, border-bottom-color, or border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax border-block-start-color: blue; border-block-start-color: #4c5d21; related properties are border-block-
end-color, border-inline-start-color, and border-inline-
end-color, which define the other border colors of the element.
border-block-start-style - CSS: Cascading Style Sheets
the border-block-start-style css property defines the style of the logical block start border of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style, border-right-style, border-bottom-style, or border-left-style property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <'border-style'> values */ border-block-start-style: dashed; border-block-start-style: dotted; border-block-start-style: groove; related properties are border-block-
end-style, border-inline-start-style, and border-inline-
end-style, which define the other border styles of the element.
border-block-start-width - CSS: Cascading Style Sheets
the border-block-start-width css property defines the width of the logical block-start border of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width, border-right-width, border-bottom-width, or border-left-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <'border-width'> values */ border-block-start-width: 5px; border-block-start-width: thick; related properties are border-block-
end-width, border-inline-start-width, and border-inline-
end-width, which define the other border widths of the element.
border-block-start - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the physical border to which it maps dep
ends on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top, border-right, border-bottom, or border-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... related properties are border-block-
end, border-inline-start, and border-inline-
end, which define the other borders of the element.
border-block - CSS: Cascading Style Sheets
border-block: 1px; border-block: 2px dotted; border-block: medium dashed blue; border-block can be used to set the values for one or more of border-block-width, border-block-style, and border-block-color setting both the start and
end in the block dimension at once.
... the physical borders to which it maps dep
ends on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top and border-bottom or border-right, and border-left properties dep
ending on the values defined for writing-mode, direction, and text-orientation.
... the borders in the other dimension can be set with border-inline, which sets border-inline-start, and border-inline-
end.
border-bottom - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no direct changes, though the modification of values for the border-bottom-color do apply to it.
... recomm
endation no significant changes.
... recomm
endation initial definition ...
border-collapse - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values collapse adjacent cells have shared borders (the collapsed-border table r
endering model).
... separate adjacent cells have distinct borders (the separated-border table r
endering model).
... recomm
endation initial definition ...
border-inline-start-color - CSS: Cascading Style Sheets
the border-inline-start-color css property defines the color of the logical inline start border of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color, border-right-color, border-bottom-color, or border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax border-inline-start-color: red; border-inline-start-color: #ee4141; related properties are border-block-start-color, border-block-
end-color, and border-inline-
end-color, which define the other border colors of the element.
border-inline-start-style - CSS: Cascading Style Sheets
the border-inline-start-style css property defines the style of the logical inline start border of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style, border-right-style, border-bottom-style, or border-left-style property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <'border-style'> values */ border-inline-start-style: dashed; border-inline-start-style: dotted; border-inline-start-style: groove; related properties are border-block-start-style, border-block-
end-style, and border-inline-
end-style, which define the other border styles of the element.
border-inline-start-width - CSS: Cascading Style Sheets
the border-inline-start-width css property defines the width of the logical inline-start border of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width, border-right-width, border-bottom-width, or border-left-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax /* <'border-width'> values */ border-inline-start-width: 5px; border-inline-start-width: thick; related properties are border-block-start-width, border-block-
end-width, and border-inline-
end-width, which define the other border widths of the element.
border-inline-start - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... constituent properties this property is a shorthand for the following css properties: border-inline-start-color border-inline-start-style border-inline-start-width syntax border-inline-start: 1px; border-inline-start: 2px dotted; border-inline-start: medium dashed green; the physical border to which border-inline-start maps dep
ends on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top, border-right, border-bottom, or border-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... related properties are border-block-start, border-block-
end, and border-inline-
end, which define the other borders of the element.
border-left-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation no significant change.
... recomm
endation initial definition.
border-right-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation no significant change.
... recomm
endation initial definition.
border-top-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation no significant change.
... recomm
endation initial definition.
border-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no direct change; the <length> css data type extension has an effect on this property.
... recomm
endation added the constraint that values' meaning must be constant inside a document.
... recomm
endation initial definition.
box-shadow - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the specification does not include an exact algorithm for how the blur radius should be calculated, however, it does elaborate as follows: …for a long, straight shadow edge, this should create a color transition the length of the blur distance that is perp
endicular to and centered on the shadow’s edge, and that ranges from the full shadow color at the radius
endpoint inside the shadow to fully transparent at the
endpoint outside it.
...if the lists of shadows have different lengths, then the shorter list is padded at the
end with shadows whose color is transparent, all lengths are 0, and whose inset (or not) matches the longer list.
... candidate recomm
endation initial definition ...
color - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation deprecates system-colors.
... recomm
endation adds the orange color and the system colors.
... recomm
endation initial definition.
conic-gradient() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... note: r
endering of color stops in css gradients follows the same rules as color stops in svg gradients.
...the colors of the gradient are determined by the angled color stops, their starting points,
ending points, and, in between, and optional angled color-stop points.
...the following two declarations are equivalent: conic-gradient(#fff 0.09turn, #bbb 0.09turn, #bbb 0.27turn, #666 0.27turn, #666 0.54turn, #000 0.54turn); conic-gradient(#fff 0turn 0.09turn, #bbb 0.09turn 0.27turn, #666 0.27turn 0.54turn, #000 0.54turn 1turn); color stops should be listed in asc
ending order.
Adapting to the new two-value syntax of display - CSS: Cascading Style Sheets
our html page creates a new formatting context (floats and margins cannot ext
end out from the boundaries) and our content lays out in normal flow, using block and inline layout, unless we change the value of display to use some other formatting context.
...the reason we t
end to use it is to allow padding to push inline items away from an element, when creating navigation items for example, or when wanting to add a background with padding to an inline element as in the example below.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android no support noopera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no supportexperimental.
empty-cells - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 1chrome android full support 18firefox android full support 4opera android full support 10.1safari ios full support 3.1samsung internet android full support 1.0leg
end full support full support ...
font-smooth - CSS: Cascading Style Sheets
the font-smooth css property controls the application of anti-aliasing when fonts are r
endered.
...switching from subpixel r
endering to antialiasing for light text on dark backgrounds makes it look lighter.
... grayscale - r
ender text with grayscale antialiasing, as opposed to the subpixel.
... switching from subpixel r
endering to antialiasing for light text on dark backgrounds makes it look lighter.
font-variant-ligatures - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values normal this keyword leads to the activation of the usual ligatures and contextual forms needed for correct r
endering.
... the ligatures and forms activated dep
end on the font, language and kind of script.
... candidate recomm
endation initial definition ...
height - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if the height of the containing block is not specified explicitly (i.e., it dep
ends on content height), and this element is not absolutely positioned, the value computes to auto.
... recomm
endation adds support for the <length> values and precises on which element it applies to.
... recomm
endation initial definition.
hyphens - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... note: the auto setting's behavior dep
ends on the language being properly tagged to select the appropriate hyphenation rules.
...even if the line is not actually broken at that point, the hyphen is still r
endered.
...this character is not r
endered visibly; instead, it marks a place where the browser should break the word if hyphenation is necessary.
inset-block - CSS: Cascading Style Sheets
the inset-block css property defines the logical block start and
end offsets of an element, which maps to physical offsets dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the top and bottom, or right and left properties dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <length> values */ inset-block: 3px 10px; inset-block: 2.4em 3em; inset-block: 10px; /* value applied to start and
end */ /* <percentage>s of the width or height of the containing block */ inset-block: 10% 5%; /* keyword value */ inset-block: auto; /* global values */ inset-block: inherit; inset-block: initial; inset-block: unset; constituent properties this property is a shorthand for the following css properties: inset-block-
end inset-block-start syntax values the inset-block property takes the same values as the left property.
... formal definition initial valueautoapplies topositioned elementsinheritednopercentageslogical-height of containing blockcomputed valuesame as box offsets: top, right, bottom, left properties except that directions are logicalanimation typea length, percentage or calc(); formal syntax <'top'>{1,2} examples setting block start and
end offsets html <div> <p class="exampletext">example text</p> </div> css div { background-color: yellow; width: 120px; height: 120px; } .exampletext { writing-mode: vertical-lr; position: relative; inset-block: 20px 50px; background-color: #c8c800; } result specifications specification status comment css logical properties and values level 1the definition of 'inset-block' in that specification.
inset-inline - CSS: Cascading Style Sheets
the inset-inline css property defines the logical start and
end offsets of an element in the inline direction, which maps to physical offsets dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the top and bottom, or right and left properties dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <length> values */ inset-inline: 3px 10px; inset-inline: 2.4em 3em; inset-inline: 10px; /* value applied to start and
end */ /* <percentage>s of the width or height of the containing block */ inset-inline: 10% 5%; /* keyword value */ inset-inline: auto; /* global values */ inset-inline: inherit; inset-inline: initial; inset-inline: unset; constituent properties this property is a shorthand for the following css properties: inset-inline-
end inset-inline-start syntax values the inset-inline property takes the same values as the left property.
... formal definition initial valueautoapplies topositioned elementsinheritednopercentageslogical-width of containing blockcomputed valuesame as box offsets: top, right, bottom, left properties except that directions are logicalanimation typea length, percentage or calc(); formal syntax <'top'>{1,2} examples setting inline start and
end offsets html <div> <p class="exampletext">example text</p> </div> css div { background-color: yellow; width: 120px; height: 120px; } .exampletext { writing-mode: vertical-lr; position: relative; inset-inline: 20px 50px; background-color: #c8c800; } result specifications specification status comment css logical properties and values level 1the definition of 'inset-inline' in that specification.
isolation - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... this property is especially helpful when used in conjunction with mix-bl
end-mode.
...uto | isolate examples forcing a new stacking context for an element html <div id="b" class="a"> <div id="d"> <div class="a c">auto</div> </div> <div id="e"> <div class="a c">isolate</div> </div> </div> css .a { background-color: rgb(0,255,0); } #b { width: 200px; height: 210px; } .c { width: 100px; height: 100px; border: 1px solid black; padding: 2px; mix-bl
end-mode: difference; } #d { isolation: auto; } #e { isolation: isolate; } result specifications specification status comment compositing and bl
ending level 1the definition of 'isolation' in that specification.
... candidate recomm
endation initial definition ...
margin-block - CSS: Cascading Style Sheets
the margin-block css shorthand property defines the logical block start and
end margins of an element, which maps to physical margins dep
ending on the element's writing mode, directionality, and text orientation.
... /* <length> values */ margin-block: 10px 20px; /* an absolute length */ margin-block: 1em 2em; /* relative to the text size */ margin-block: 5% 2%; /* relative to the nearest block container's width */ margin-block: 10px; /* sets both start and
end values */ /* keyword values */ margin-block: auto; /* global values */ margin-block: inherit; margin-block: initial; margin-block: unset; these values corresponds to the margin-top and margin-bottom, or margin-right, and margin-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... constituent properties this property is a shorthand for the following css properties: margin-block-
end margin-block-start syntax values the margin-block property takes the same values as the margin-left property.
... formal definition initial value0applies tosame as margininheritednopercentagesdep
ends on layout modelcomputed valueif specified as a length, the corresponding absolute length; if specified as a percentage, the specified value; otherwise, autoanimation typediscrete formal syntax <'margin-left'>{1,2} examples setting block start and
end margins html <div> <p class="exampletext">example text</p> </div> css div { background-color: yellow; width: 120px; height: 120px; } .exampletext { writing-mode: vertical-rl; margin-block: 20px 40px; background-color: #c8c800; } result specifications specification status comment css logical properties and values level 1the definition of 'margin-block' in that specification.
margin-left - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation defines the behavior of margin-left on flex items.
... recomm
endation like in css1, but removes its effect on inline elements.
... recomm
endation initial definition.
margin-right - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation defines the behavior of margin-right on flex items.
... recomm
endation removes its effect on inline elements.
... recomm
endation initial definition.
mask-border-source - CSS: Cascading Style Sheets
, <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
... candidate recomm
endation initial definition ...
mask-image - CSS: Cascading Style Sheets
, <color-stop-list> )<radial-gradient()> = radial-gradient( [ <
ending-shape> | <size> ]?
..., <color-stop-list> )<repeating-radial-gradient()> = repeating-radial-gradient( [ <
ending-shape> | <size> ]?
...]# , <linear-color-stop><
ending-shape> = circle | ellipse<size> = closest-side | farthest-side | closest-corner | farthest-corner | <length> | <length-percentage>{2}<position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]?
... candidate recomm
endation initial definition ...
orphans - CSS: Cascading Style Sheets
candidate recomm
endation ext
ends orphans to apply to any type of fragment, including pages, regions, or columns.
... recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤37chrome android full support 25firefox android no support noopera android full support 14safari ios full support 1samsung internet android full support 1.5leg
end full support full support no support no support see also widows paged media ...
outline-offset - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation initial definition browser compatibility the compatibility table in this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 37chrome android full support 18firefox android full support 4opera android full support 14safari ios full support 1samsung internet android full support 1.0leg
end full support full support no support no support ...
outline-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... values auto permits the user agent to r
ender a custom outline style.
... recomm
endation added auto value.
... recomm
endation initial definition.
overflow-inline - CSS: Cascading Style Sheets
the overflow-inline css property sets what shows when content overflows the inline start and
end edges of a box.
... the overflow-inline property maps to overflow-y or overflow-x dep
ending on the writing mode of the document.
... values visible content is not clipped and may be r
endered outside the padding box's inline start and
end edges.
... auto dep
ends on the user agent.
padding-block-start - CSS: Cascading Style Sheets
the padding-block-start css property defines the logical block start padding of an element, which maps to a physical padding dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... description this property corresponds to the padding-top, padding-right, padding-bottom, or padding-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... it relates to padding-block-
end, padding-inline-start, and padding-inline-
end, which define the other paddings of the element.
padding-inline-start - CSS: Cascading Style Sheets
the padding-inline-start css property defines the logical inline start padding of an element, which maps to a physical padding dep
ending on the element's writing mode, directionality, and text orientation.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... description this property corresponds to the padding-top, padding-right, padding-bottom, or padding-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... it relates to padding-block-start, padding-block-
end, and padding-inline-
end, which define the other paddings of the element.
page-break-after - CSS: Cascading Style Sheets
working draft ext
ends the element that this property applies to table rows and table row groups.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... support 4notes full support 4notes notes the values avoid, left, and right are unsupported.opera android full support 14safari ios full support 1samsung internet android full support 1.0leg
end full support full supportsee implementation notes.see implementation notes.
page-break-before - CSS: Cascading Style Sheets
working draft ext
ends the element that this property applies to table rows and table row groups.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... support 4notes full support 4notes notes the values avoid, left, and right are unsupported.opera android full support 14safari ios full support 1samsung internet android full support 1.0leg
end full support full supportsee implementation notes.see implementation notes.
repeating-linear-gradient() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...thus, the position of each
ending color stop coincides with a starting color stop; if the color values are different, this will result in a sharp visual transition.
... note: r
endering of color stops in css gradients follows the same rules as color stops in svg gradients.
... candidate recomm
endation initial definition.
resize - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... block the element displays a mechanism for allowing the user to resize it in the block direction (either horizontally or vertically, dep
ending on the writing-mode and direction value).
... inline the element displays a mechanism for allowing the user to resize it in the inline direction (either horizontally or vertically, dep
ending on the writing-mode and direction value).
... recomm
endation initial definition.
scroll-snap-align - CSS: Cascading Style Sheets
syntax /* keyword values */ scroll-snap-align: none; scroll-snap-align: start
end; /* when two values set first is block, second inline */ scroll-snap-align: center; /* global values */ scroll-snap-align: inherit; scroll-snap-align: initial; scroll-snap-align: unset; values none the box does not define a snap position in that axis.
...
end the
end alignment of this box's scroll snap area, within the scroll container's snapport is a snap position in this axis.
... formal definition initial valuenoneapplies toall elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax [ none | start |
end | center ]{1,2} specifications specification status comment css scroll snap module level 1the definition of 'scroll-snap-align' in that specification.
... candidate recomm
endation initial definition ...
table-layout - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... under the "fixed" layout method, the entire table can be r
endered once the first table row has been downloaded and analyzed.
... this can speed up r
endering time over the "automatic" layout method, but subsequent cell content might not fit in the column widths provided.
... recomm
endation initial definition.
text-emphasis - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...however, text-emphasis does inherit, which means it is possible to change emphasis marks for desc
endents.
...it may be computed to or r
endered as 'f' only */ /* keywords value */ text-emphasis: filled; text-emphasis: open; text-emphasis: filled sesame; text-emphasis: open sesame; /* keywords value combined with a color */ text-emphasis: filled sesame #555; /* global values */ text-emphasis: inherit; text-emphasis: initial; text-emphasis: unset; values none no emphasis marks.
... candidate recomm
endation initial definition ...
text-overflow - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if one value is given, it specifies overflow behavior for the
end of the line (the right
end for left-to-right text, the left
end for right-to-left text).
... if two values are given, the first specifies overflow behavior for the left
end of the line, and the second specifies it for the right
end of the line.
... working draft initial definition a previous version of this interface reached the candidate recomm
endation status.
text-transform - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... working draft from css level 2 (revision 1)the definition of 'text-transform' in that specification., ext
ends letters to any unicode character in the number or letter general category.
... recomm
endation from css level 1the definition of 'text-transform' in that specification., ext
ends letters to non-latin bi-cameral scripts css level 1the definition of 'text-transform' in that specification.
... recomm
endation initial definition ...
text-underline-position - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... under forces the line to be set below the alphabetic baseline, at a position where it won't cross any desc
enders.
...in the horizontal text we use text-underline-position: under; to put the underline below all the desc
enders.
... candidate recomm
endation initial definition ...
transform-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... as this property is not inherited, it must be set for all non-leaf desc
endants of the element.
...the parent container of the cube faces has transform-style: preserve-3d set on it by default, so it is transformed in the 3d space and you can see it as int
ended.
...in this alternative state, the cube faces are all flattened onto the plane of their parent, and you might not be able to see them at all, dep
ending on the browser you are using.
unicode-bidi - CSS: Cascading Style Sheets
note: this property is int
ended for document type definition (dtd) designers.
...for block container elements this creates an override for inline-level desc
endants not within another block container element.
... proposed recomm
endation added plaintext, isolate, and isolate-override keywords.
... recomm
endation initial definition.
<url> - CSS: Cascading Style Sheets
in css level 2, the definition of url() was ext
ended to describe any uri, whether a url or a urn.
... candidate recomm
endation no significant change from css level 2 (revision 1).
... recomm
endation no significant change from css level 1.
... recomm
endation initial definition.
Used value - CSS: Cascading Style Sheets
note: the getcomputedstyle() dom api returns the resolved value, which may either be the computed value or the used value, dep
ending on the property.
...for css properties that don't dep
end on layout (e.g., display, font-size, or line-height), the computed values and used values are the same.
... the following are the css 2.1 properties that do dep
end on layout, so they have a different computed value and used value: (taken from css 2.1 changes: specified, computed, and actual values): background-position bottom, left, right, top height, width margin-bottom, margin-left, margin-right, margin-top min-height, min-width padding-bottom, padding-left, padding-right, padding-top text-indent specification specification status comment css level 2 (revision 2)the definition of 'used value' in that specification.
... recomm
endation initial definition.
word-spacing - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...for text styled with a large negative value, the words will overlap each other to the point where the the beginning and
end of each word is unrecognizable.
... recomm
endation no change.
... recomm
endation initial definition.
z-index - CSS: Cascading Style Sheets
the z-index css property sets the z-order of a positioned element and its desc
endants or flex items.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...this means that the z-indexes of desc
endants are not compared to the z-indexes of elements outside this element.
... recomm
endation initial definition ...
CSS: Cascading Style Sheets
css describes how elements should be r
endered on screen, on paper, in speech, or on other media.
...previously development of various parts of css specification was done synchronously, which allowed versioning of the latest recomm
endation.
... from css3, the scope of the specification increased significantly and the progress on different css modules started to differ so much, that it became more effective to develop and release recomm
endations separately per module.
... looking to become a front-
end web developer?
Ajax - Developer guides
server-sent events traditionally, a web page has to s
end a request to the server to receive new data; that is, the page requests data from the server.
... with server-sent events, it's possible for a server to s
end new data to a web page at any time, by pushing messages to the web page.
... s
ending and receiving binary data the responsetype property of the xmlhttprequest object can be set to change the expected response type from the server.
... xml the extensible markup language (xml) is a w3c-recomm
ended general-purpose markup language for creating special-purpose markup languages.
Content categories - Developer guides
a few other elements belong to this category, but only if a specific condition is fulfilled: <area>, if it is a desc
endant of a <map> element <link>, if the itemprop attribute is present <meta>, if the itemprop attribute is present <style>, if the scoped attribute is present sectioning content elements belonging to the sectioning content model create a section in the current outline that defines the scope of <header> elements, <footer> elements, and heading content.
... a few other elements belong to this category, but only if a specific condition is fulfilled: <a>, if it contains only phrasing content <area>, if it is a desc
endant of a <map> element <del>, if it contains only phrasing content <ins>, if it contains only phrasing content <link>, if the itemprop attribute is present <map>, if it contains only phrasing content <meta>, if the itemprop attribute is present embedded content embedded content imports another resource or inserts content from another mark-up language or namespace into the document.
...s: <audio>, if the controls attribute is present <img>, if the usemap attribute is present <input>, if the type attribute is not in the hidden state <menu>, if the type attribute is in the toolbar state <object>, if the usemap attribute is present <video>, if the controls attribute is present palpable content content is palpable when it's neither empty or hidden; it is content that is r
endered and is substantive.
... script-supporting elements script-supporting elements are elements which don't directly contribute to the r
endered output of a document.
Localizations and character encodings - Developer guides
the html specification recomm
ends the use of the utf-8 encoding (which can represent all of unicode) and regardless of the encoding used requires web content to declare what encoding was used.
... to specify that a page is using, for example, the utf-8 character encoding (as per the recomm
endation), simply place the following line in the <head> block: <meta charset="utf-8"> details and browser internals when the encoding is declared by web content like the html specification requires, firefox will use that encoding for turning the bytes into the internal representation.
...this has then had the effect that web authors have dep
ended on heuristic detection being present, so firefox still has heuristic detection in these locales.
...note that firefox no longer s
ends the accept-charset http header, so there is no need to consider what gets advertised in accept-charset when setting the fallback encoding.
A hybrid approach - Developer guides
one such technique for dealing with this issue uses server-side user-agent detection along with the wurfl device capability library to s
end a properly sized image for the user’s device.
...you may even be able to make your mobile site design adaptable enough to ext
end comfortably to tablets as well.
...we used some elements of responsive web design to give the site a mobile layout, along with user-agent detection to provide mobile-fri
endly videos and to re-order the demos if the user is on a phone.
... what is mobile-fri
endliness?
Separate sites for mobile and desktop - Developer guides
similarly, this increases the implementation time of any new site features, since you must now code two sets of front-
end logic.
...when it is right to choose this option firstly, if your target audience includes users on older or low-
end feature phones, it is worth noting that you may need to employ this strategy to some degree no matter what.
...this is because you have the option of s
ending completely separate html, javascript, and css to phones and pcs.
... what is mobile-fri
endliness?
Mobile Web Development - Developer guides
also see jason grlicky's guide to mobile-fri
endliness for web developers.
... cross-browser development write cross-browser code to create web sites that will work acceptably across different mobile browsers: try to avoid using browser-specific features, such as v
endor-prefixed css properties.
... for example, if you set a gradient as a background for some text using a v
endor-prefixed property like -webkit-linear-gradient, it's best to include the other v
endor-prefixed versions of the linear-gradient() property.
... see this list of gecko-specific properties, and this list of webkit-specific properties, and peter beverloo's table of v
endor-specific properties.
Parsing and serializing XML - Developer guides
rsing url-addressable resources into dom trees using xmlhttprequest here is sample code that reads and parses a url-addressable xml file into a dom tree: var xhr = new xmlhttprequest(); xhr.onload = function() { dump(xhr.responsexml.documentelement.nodename); } xhr.onerror = function() { dump("error while getting xml."); } xhr.open("get", "example.xml"); xhr.responsetype = "document"; xhr.s
end(); the value returned in the xhr object's responsexml field is a document constructed by parsing the xml.
... note: there is in fact an htmldocument interface as well, but it is not necessarily an indep
endent type.
... to serialize the dom tree doc into xml text, call xmlserializer.serializetostring(): var oserializer = new xmlserializer(); var sxml = oserializer.serializetostring(doc); serializing html documents if the dom you have is an html document, you can serialize using serializetostring(), but there is a simpler option: just use the element.innerhtml property (if you want just the desc
endants of the specified node) or the element.outerhtml property if you want the node and all its desc
endants.
... you can get html corresponding to the <body> and its desc
endants with this code: var dochtml = document.documentelement.outerhtml; ...
The Web Open Font Format (WOFF) - Developer guides
it uses a compressed version of the same table-based sfnt structure used by truetype, opentype, and open font format, but adds metadata and private-use data structures, including predefined fields allowing foundries and v
endors to provide license information if desired.
... many font v
endors that are unwilling to license their truetype or opentype format fonts for use on the web will license woff format fonts.
... both proprietary and free software browser v
endors like the woff format, so it has the potential of becoming a truly universal, interoperable font format for the web, unlike other current font formats.
... specifications specification status comment woff file format 2.0 recomm
endation new compression algorithm woff file format 1.0 recomm
endation initial specification.
HTML attribute: pattern - HTML: Hypertext Markup Language
the pattern's regular expression, when matched against the value, must have its start anchored to the start of the string and its
end anchored to the
end of the string, which is slightly different from javascript regular expressions: in the case of pattern attribute, we are matching against the entire value, not just any subset, as if a ^(?: were implied at the start of the pattern and )$ at the
end.
...n length.</p> </div> <div> <button>submit</button> </div> </form> div { margin-bottom: 10px; position: relative; } p { font-size: 80%; color: #999; } input + span { padding-right: 30px; } input:invalid+span:after { position: absolute; content: '✖'; padding-left: 5px; } input:valid+span:after { position: absolute; content: '✓'; padding-left: 5px; } this r
enders like so: accessibility concerns when a control has a pattern attribute, the title attribute, if used, must describe the pattern.
... recomm
endation html5the definition of 'pattern' in that specification.
... recomm
endation ...
<h1>–<h6>: The HTML Section Heading elements - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
... recomm
endation html 4.01 specificationthe definition of '<h1>, <h2>, <h3>, <h4>, <h5>, and <h6>' in that specification.
... recomm
endation ...
<acronym> - HTML: Hypertext Markup Language
it is therefore recomm
ended that web authors either explicitly style this element, or accept some cross-browser variation.
... recomm
endation browser compatibility the compatibility table in this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full supportnon-standard.
<aside>: The Aside element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... tag omission none, both the starting and
ending tag are mandatory.
...note that an <aside> element must not be a desc
endant of an <address> element.
... recomm
endation ...
contenteditable - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation snapshot of html living standard, no change from html 5.1 html 5.1the definition of 'contenteditable' in that specification.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'contenteditable' in that specification.
... recomm
endation snapshot of html living standard, initial definition.
id - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'id' in that specification.
... recomm
endation snapshot of html living standard, now accept '_', '-' and '.' if not at the beginning of the id.
... recomm
endation supported on all elements but <base>, <head>, <html>, <meta>, <script>, <style>, and <title>.
Inline elements - HTML: Hypertext Markup Language
first, some simple css that we'll be using: .highlight { background-color:#ee3; } inline let's look at the following example which demonstrates an inline element: <div>the following span is an <span class="highlight">inline element</span>; its background has been colored to display both the beginning and
end of the inline element's influence.</div> in this example, the <div> block-level element contains some text.
...because the <span> element is inline, the paragraph correctly r
enders as a single, unbroken text flow, like this: for looks, this css (not displayed in standard reading mode) is also used: body { margin: 0; padding: 4px; border: 1px solid #333; } .highlight { background-color:#ee3; } block-level now let's change that <span> into a block-level element, such as <p>: <div>the following paragraph is a <p class="highlight">block-level element;</p> its background has been colored to display both the beginning and
end of the block-level element's influence.</div> the css (not displayed in standard reading mode) is also used: body { margin: 0; padding: 4px; border: 1px solid #333; } .highlight { backgroun...
...d-color:#ee3; } r
endered using the same css as before, we get: see the difference?
...for example, by changing the value of display from "inline" to "block", you can tell the browser to r
ender the inline element in a block box rather than an inline box, and vice versa.
Using Feature Policy - HTTP
the feature-policy http header you can s
end the feature-policy http header with the response of a page.
... feature-policy: <feature name> <allowlist of origin(s)> for example, to block all content from using the geolocation api across your site: feature-policy: geolocation 'none' several features can be controlled at the same time by s
ending the http header with a semicolon-separated list of policy directives, or by s
ending a separate header for each policy.
...if a feature has been disabled for a child frame by its parent frame, the child cannot re-enable it, and neither can any of the child's desc
endants.
... s
end the following the http header: feature-policy: layout-animations 'none'; unoptimized-images 'none'; oversized-images 'none'; sync-script 'none'; sync-xhr 'none'; unsized-media 'none'; using the <iframe> allow attribute: <iframe src="https://example.com..." allow="layout-animations 'none'; unoptimized-images 'none'; oversized-images 'none'; sync-script 'none'; sync-xhr 'none'; unsized-media 'no...
Accept-Charset - HTTP
browsers usually don't s
end this header, as the default value for each resource is usually correct and transmitting it would allow fingerprinting.
... if the server cannot serve any character encoding from this request header, it can theoretically s
end back a 406 not acceptable error code.
...this is no longer recomm
ended, and now each content-type may have its own default.
...to guarantee better privacy through less configuration-based entropy, all browsers omit the accept-charset header: internet explorer 8+, safari 5+, opera 11+, firefox 10+ and chrome 27+ no longer s
end it.
Access-Control-Allow-Credentials - HTTP
the access-control-allow-credentials response header tells browsers whether to expose the response to front
end javascript code when the request's credentials mode (request.credentials) is include.
... when a request's credentials mode (request.credentials) is include, browsers will only expose the response to front
end javascript code if the access-control-allow-credentials value is true.
...for a cors request with credentials, in order for browsers to expose the response to front
end javascript code, both the server (using the access-control-allow-credentials header) and the client (by setting the credentials mode for the xhr, fetch, or ajax request) must indicate that they’re opting in to including credentials.
... examples allow credentials: access-control-allow-credentials: true using xhr with credentials: var xhr = new xmlhttprequest(); xhr.open('get', 'http://example.com/', true); xhr.withcredentials = true; xhr.s
end(null); using fetch with credentials: fetch(url, { credentials: 'include' }) specifications specification status comment fetchthe definition of 'access-control-allow-credentials' in that specification.
Content-Language - HTTP
the content-language entity header is used to describe the language(s) int
ended for the audience, so that it allows a user to differentiate according to the users' own preferred language.
... for example, if "content-language: de-de" is set, it says that the document is int
ended for german language speakers (however, it doesn't indicate the document is written in german.
... if no content-language is specified, the default is that the content is int
ended for all language audiences.
... <html lang="de"> do not use this meta element like this for stating a document language: <!-- /!\ this is bad practice --> <meta http-equiv="content-language" content="de"> indicating a target audience for a resource the content-language header is used to specify the int
ended audience of the page, and can indicate that this is more than one language.
Content-Location - HTTP
if the url for a particular document is at https://example.com/documents/foo, the site could return different urls for content-location dep
ending on the request's accept header: request header response header accept: application/json, text/json content-location: /documents/foo.json accept: application/xml, text/xml content-location: /documents/foo.xml accept: text/plain, text/* content-location: /documents/foo.txt these urls are examples — the site could serve the different f...
... indicating the url of a transaction's result say you have a <form> for s
ending money to another user of a site.
... <form action="/s
end-payment" method="post"> <p> <label>who do you want to s
end the money to?
... <input type="number" name="amount"> </label> </p> <button type="submit">s
end money</button> </form> when the form is submitted, the site generates a receipt for the transaction.
CSP: connect-src - HTTP
the apis that are restricted are: <a> ping, fetch, xmlhttprequest, websocket, eventsource, and navigator.s
endbeacon().
...you can also specify data schemes (not recomm
ended).
... examples violation cases given this csp header: content-security-policy: connect-src https://example.com/ the following connections are blocked and won't load: <a ping="https://not-example.com"> <script> var xhr = new xmlhttprequest(); xhr.open('get', 'https://not-example.com/'); xhr.s
end(); var ws = new websocket("https://not-example.com/"); var es = new eventsource("https://not-example.com/"); navigator.s
endbeacon("https://not-example.com/", { ...
... recomm
endation initial definition.
CSP: referrer - HTTP
"origin" only s
end the origin of the document as the referrer in all cases.
... the document https://example.com/page.html will s
end the referrer https://example.com/.
... "origin-when-cross-origin" / "origin-when-crossorigin" s
end a full url when performing a same-origin request, but only s
end the origin of the document for other cases.
... "unsafe-url" s
end a full url (stripped from parameters) when performing a same-origin or cross-origin request.
CSP: upgrade-insecure-requests - HTTP
this directive is int
ended for web sites with large numbers of insecure legacy urls that need to be rewritten.
...it is recomm
ended to set either directive, but not both, unless you want to force https on older browsers that do not force it after a redirect to http.
...s://example.com/">home</a> <a href="http://not-example.com/">home</a> finding insecure requests with the help of the content-security-policy-report-only header and the report-uri directive, you can set-up an enforced policy and a reported policy like this: content-security-policy: upgrade-insecure-requests; default-src https: content-security-policy-report-only: default-src https:; report-uri /
endpoint that way, you still upgrade insecure requests on your secure site, but the only monitoring policy is violated and reports insecure resources to your
endpoint.
... candidate recomm
endation initial definition.
Expect - HTTP
no common browsers s
end the expect header, but some other clients such as curl do so by default.
... expect: 100-continue directives 100-continue informs recipients that the client is about to s
end a (presumably large) message body in this request and wishes to receive a 100 (continue) interim response.
... examples large message body a client s
ends a request with a expect header and waits for the server to respond before s
ending the message body.
... put /somewhere/fun http/1.1 host: origin.example.com content-type: video/h264 content-length: 1234567890987 expect: 100-continue the server now checks the request headers and may respond with a 100 (continue) response to instruct the client to go ahead and s
end the message body, or it will s
end a 417 (expectation failed) status if any of the expectations cannot be met.
HTTP Messages - HTTP
for example, get indicates that a resource should be fetched or post means that data is pushed to the server (creating or modifying a resource, or generating a temporary document to s
end back).
... headers http headers from a request follow the same basic structure of an http header: a case-insensitive string followed by a colon (':') and a value whose structure dep
ends upon the header.
...some requests s
end data to the server in order to update it: as often the case with post requests (containing html form data).
... headers http headers for responses follow the same structure as any other header: a case-insensitive string followed by a colon (':') and a value whose structure dep
ends upon the type of the header.
Closures - JavaScript
much of the code written in front-
end javascript is event-based.
... notice how the two counters maintain their indep
endence from one another.
...s of using closures in this particular instance, we could instead rewrite it to avoid using closure as follows: function myobject(name, message) { this.name = name.tostring(); this.message = message.tostring(); } myobject.prototype = { getname: function() { return this.name; }, getmessage: function() { return this.message; } }; however, redefining the prototype is not recomm
ended.
... the following example instead app
ends to the existing prototype: function myobject(name, message) { this.name = name.tostring(); this.message = message.tostring(); } myobject.prototype.getname = function() { return this.name; }; myobject.prototype.getmessage = function() { return this.message; }; in the two previous examples, the inherited prototype can be shared by all objects and the method definitions need not occur at every object creation.
Control flow and error handling - JavaScript
if no default clause is found, the program resumes execution at the statement following the
end of switch.
... } finally { closemyfile(); // always close the resource } if the finally block returns a value, this value becomes the return value of the entire try…catch…finally production, regardless of any return statements in the try and catch blocks: function f() { try { console.log(0); throw 'bogus'; } catch(e) { console.log(1); return true; // this return statement is susp
ended // until finally block has completed console.log(2); // not reachable } finally { console.log(3); return false; // overwrites the previous "return" console.log(4); // not reachable } // "return false" is executed now console.log(5); // not reachable } console.log(f()); // 0, 1, 3, false overwriting of return values by the finally block also appl...
...ies to exceptions thrown or re-thrown inside of the catch block: function f() { try { throw 'bogus'; } catch(e) { console.log('caught inner "bogus"'); throw e; // this throw statement is susp
ended until // finally block has completed } finally { return false; // overwrites the previous "throw" } // "return false" is executed now } try { console.log(f()); } catch(e) { // this is never reached!
... utilizing error objects dep
ending on the type of error, you may be able to use the name and message properties to get a more refined message.
Iterators and generators - JavaScript
it allows creation of a simple range iterator which defines a sequence of integers from start (inclusive) to
end (exclusive) spaced step apart.
... function makerangeiterator(start = 0,
end = infinity, step = 1) { let nextindex = start; let iterationcount = 0; const rangeiterator = { next: function() { let result; if (nextindex <
end) { result = { value: nextindex, done: false } nextindex += step; iterationcount++; return result; } return { value: iterationcount, done: true } } }; return rangeiterator; } using the iterator then looks like this: const it = makerangeiterator(1, 10, 2); let result = it.next(); while (!result.done) { console.log(result.value); // 1 3 5 7 9 result = it.next(); } ...
... function* makerangeiterator(start = 0,
end = 100, step = 1) { let iterationcount = 0; for (let i = start; i <
end; i += step) { iterationcount++; yield i; } return iterationcount; } iterables an object is iterable if it defines its iteration behavior, such as what values are looped over in a for...of construct.
...this exception will be thrown from the current susp
ended context of the generator, as if the yield that is currently susp
ended were instead a throw value statement.
Public class fields - JavaScript
class classwithstaticfield { static basestaticfield = 'base field' } class subclasswithstaticfield ext
ends classwithstaticfield { static substaticfield = 'sub class field' } console.log(subclasswithstaticfield.substaticfield) // expected output: "sub class field" console.log(subclasswithstaticfield.basestaticfield) // expected output: "base field" when initializing fields, this refers to the class constructor.
... class classwithstaticfield { static basestaticfield = 'base static field' static anotherbasestaticfield = this.basestaticfield static basestaticmethod() { return 'base static method output' } } class subclasswithstaticfield ext
ends classwithstaticfield { static substaticfield = super.basestaticmethod() } console.log(classwithstaticfield.anotherbasestaticfield) // expected output: "base static field" console.log(subclasswithstaticfield.substaticfield) // expected output: "base static method output" public instance fields public instance fields exist on every created instance of a class.
... class classwithinstancefield { baseinstancefield = 'base field' anotherbaseinstancefield = this.baseinstancefield baseinstancemethod() { return 'base method output' } } class subclasswithinstancefield ext
ends classwithinstancefield { subinstancefield = super.baseinstancemethod() } const base = new classwithinstancefield() const sub = new subclasswithinstancefield() console.log(base.anotherbaseinstancefield) // expected output: "base field" console.log(sub.subinstancefield) // expected output: "base method output" public methods public static methods the static keyword defines a static method ...
... class baseclass { msg = 'hello world' basepublicmethod() { return this.msg } } class subclass ext
ends baseclass { subpublicmethod() { return super.basepublicmethod() } } const instance = new subclass() console.log(instance.subpublicmethod()) // expected output: "hello world" getters and setters are special methods that bind to a class property and are called when that property is accessed or set.
Array.prototype.every() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...therefore, callback will not run on elements that are app
ended to the array after the call to every begins.
... [12, 5, 8, 130, 44].every(x => x >= 10); // false [12, 54, 18, 130, 44].every(x => x >= 10); // true affecting initial array (modifying, app
ending, and deleting) the following examples tests the behaviour of the every method when the array is modified.
...tems // --------------- let arr = [1, 2, 3, 4]; arr.every( (elem, index, arr) => { arr[index+1] -= 1 console.log(`[${arr}][${index}] -> ${elem}`) return elem < 2 }) // loop runs for 3 iterations, but would // have run 2 iterations without any modification // // 1st iteration: [1,1,3,4][0] -> 1 // 2nd iteration: [1,1,2,4][1] -> 1 // 3rd iteration: [1,1,2,3][2] -> 2 // --------------- // app
ending items // --------------- arr = [1, 2, 3]; arr.every( (elem, index, arr) => { arr.push('new') console.log(`[${arr}][${index}] -> ${elem}`) return elem < 4 }) // loop runs for 3 iterations, even after app
ending new items // // 1st iteration: [1, 2, 3, new][0] -> 1 // 2nd iteration: [1, 2, 3, new, new][1] -> 2 // 3rd iteration: [1, 2, 3, new, new, new][2] -> 3 // --------------- // deleti...
Array.prototype.filter() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...elements which are app
ended to the array (from callback) after the call to filter() begins will not be visited by callback.
...anana', 'grapes', 'mango', 'orange'] /** * filter array items based on search criteria (query) */ const filteritems = (arr, query) => { return arr.filter(el => el.tolowercase().indexof(query.tolowercase()) !== -1) } console.log(filteritems(fruits, 'ap')) // ['apple', 'grapes'] console.log(filteritems(fruits, 'an')) // ['banana', 'mango', 'orange'] affecting initial array (modifying, app
ending and deleting) the following examples tests the behavior of the filter method when the array is modified.
... // modifying each words let words = ['spray', 'limit', 'exuberant', 'destruction','elite', 'present'] const modifiedwords = words.filter( (word, index, arr) => { arr[index+1] +=' extra' return word.length < 6 }) console.log(modifiedwords) // notice there are three words below length 6, but since they've been modified one is returned // ["spray"] // app
ending new words words = ['spray', 'limit', 'exuberant', 'destruction','elite', 'present'] const app
endedwords = words.filter( (word, index, arr) => { arr.push('new') return word.length < 6 }) console.log(app
endedwords) // only three fits the condition even though the `words` itself now has a lot more words with character length less than 6 // ["spray" ,"limit" ,"elite"] // deleting words words = ['spray', 'limit', 'exuberant', 'd...
Array.prototype.forEach() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... description foreach() calls a provided callback function once for each element in an array in asc
ending order.
...elements which are app
ended to the array after the call to foreach() begins will not be visited by callback.
...the typical use case is to execute side effects at the
end of a chain.
DataView() constructor - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...this means handling integer and float conversion,
endianness, and other details of representing numbers in binary form.
... exceptions rangeerror thrown if the byteoffset or bytelength parameter values result in the view ext
ending past the
end of the buffer.
... for example, if the buffer is 16 bytes long, the byteoffset is 8, and the bytelength is 10, this error is thrown because the resulting view tries to ext
end 2 bytes past the total length of the buffer.
Date.prototype.toLocaleTimeString() - JavaScript
in older implementations, which ignore the locales and options arguments, the locale used and the form of the string returned are entirely implementation dep
endent.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...in implementations, which ignore the locales and options arguments, the locale used and the form of the string returned are entirely implementation dep
endent.
... var date = new date(date.utc(2012, 11, 12, 3, 0, 0)); // tolocaletimestring() without arguments dep
ends on the implementation, // the default locale, and the default time zone console.log(date.tolocaletimestring()); // → "7:00:00 pm" if run in en-us locale with time zone america/los_angeles checking for support for locales and options arguments the locales and options arguments are not supported in all browsers yet.
Generator.prototype.next() - JavaScript
you can also provide a parameter to the next method to s
end a value to the generator.
... syntax gen.next(value) parameters value the value to s
end to the generator.
... return value an object with two properties: done (boolean) has the value true if the iterator is past the
end of the iterated sequence.
...e = getpage(3, list); // generator { } page.next(); // object {value: (3) [1, 2, 3], done: false} page.next(); // object {value: (3) [4, 5, 6], done: false} page.next(); // object {value: (2) [7, 8], done: false} page.next(); // object {value: undefined, done: true} s
ending values to the generator in this example, next is called with a value.
Intl.DateTimeFormat - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... var date = new date(date.utc(2012, 11, 20, 3, 0, 0)); // tolocalestring without arguments dep
ends on the implementation, // the default locale, and the default time zone console.log(new intl.datetimeformat().format(date)); // → "12/19/2012" if run with en-us locale (language) and time zone america/los_angeles (utc-0800) using locales this example shows some of the variations in localized date and time formats.
...19." // arabic in most arabic speaking countries uses real arabic digits console.log(new intl.datetimeformat('ar-eg').format(date)); // → "١٩/١٢/٢٠١٢" // for japanese, applications may want to use the japanese cal
endar, // where 2012 was the year 24 of the heisei era console.log(new intl.datetimeformat('ja-jp-u-ca-japanese').format(date)); // → "24/12/19" // when requesting a language that may not be supported, such as // balinese, include a fallback language, in this case indonesian console.log(new intl.datetimeformat(['ban', 'id']).format(date)); // → "19/12/2012" using options the date and time for...
..., 19:00:00" // to specify options but use the browser's default locale, use 'default' console.log(new intl.datetimeformat('default', options).format(date)); // → "12/19/2012, 19:00:00" // sometimes it's helpful to include the period of the day options = {hour: "numeric", dayperiod: "short"}; console.log(new intl.datetimeformat('en-us', options).format(date)); // → 10 at night the used cal
endar and numbering formats can also be set indep
endently via options arguments: var options = {cal
endar: 'chinese', numberingsystem: 'arab'}; var dateformat = new intl.datetimeformat('default', options); var usedoptions = dateformat.resolvedoptions(); console.log(usedoptions.cal
endar); // → "chinese" console.log(usedoptions.numberingsystem); // → "arab" console.log(usedoptions.timezone); // ...
JSON.stringify() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... therefore, if compatibility with older javascript engines is required, it is perilous to directly substitute the string returned by json.stringify into a javascript string to be passed to eval or new function or as part of a jsonp url, and the following utility can be used: function jsfri
endlyjsonstringify (s) { return json.stringify(s).
... replace(/\u2029/g, '\\u2029'); } var s = { a: string.fromcharcode(0x2028), b: string.fromcharcode(0x2029) }; try { eval('(' + json.stringify(s) + ')'); } catch (e) { console.log(e); // "syntaxerror: unterminated string literal" } // no need for a catch eval('(' + jsfri
endlyjsonstringify(s) + ')'); // console.log in firefox unescapes the unicode if // logged to console, so we use alert alert(jsfri
endlyjsonstringify(s)); // {"a":"\u2028","b":"\u2029"} note: properties of non-array objects are not guaranteed to be stringified in any particular order.
...ple is a model for the applicability of json.stringify(): // creating an example of json var session = { 'screens': [], 'state': true }; session.screens.push({ 'name': 'screena', 'width': 450, 'height': 250 }); session.screens.push({ 'name': 'screenb', 'width': 650, 'height': 350 }); session.screens.push({ 'name': 'screenc', 'width': 750, 'height': 120 }); session.screens.push({ 'name': 'scre
end', 'width': 250, 'height': 60 }); session.screens.push({ 'name': 'screene', 'width': 390, 'height': 120 }); session.screens.push({ 'name': 'screenf', 'width': 1240, 'height': 650 }); // converting the json string with json.stringify() // then saving with localstorage in the name of session localstorage.setitem('session', json.stringify(session)); // example of how to transform the string generat...
Object.create() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... note that such a different order may arise statically via disparate fixed codings such as here, but also dynamically via whatever the order any such property-adding code-branches actually get executed at runtime as dep
ends on inputs and/or random-variables.
...} // subclass ext
ends superclass rectangle.prototype = object.create(shape.prototype); //if you don't set rectangle.prototype.constructor to rectangle, //it will take the prototype.constructor of shape (parent).
...if support for older browsers is necessary, jquery.ext
end() or _.assign() can be used.
Promise.prototype.then() - JavaScript
if you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... returns another p
ending promise object, the resolution/rejection of the promise returned by then will be subsequent to the resolution/rejection of the promise returned by the handler.
... // using a resolved promise, the 'then' block will be triggered instantly, // but its handlers will be triggered asynchronously as demonstrated by the console.logs const resolvedprom = promise.resolve(33); let thenprom = resolvedprom.then(value => { console.log("this gets called after the
end of the main stack.
... the value received and returned is: " + value); return value; }); // instantly logging the value of thenprom console.log(thenprom); // using settimeout we can postpone the execution of a function to the moment the stack is empty settimeout(() => { console.log(thenprom); }); // logs, in order: // promise {[[promisestatus]]: "p
ending", [[promisevalue]]: undefined} // "this gets called after the
end of the main stack.
Proxy - JavaScript
(value > 200) { throw new rangeerror('the age seems invalid'); } } // the default behavior to store the value obj[prop] = value; // indicate success return true; } }; const person = new proxy({}, validator); person.age = 100; console.log(person.age); // 100 person.age = 'young'; // throws an exception person.age = 300; // throws an exception ext
ending constructor a function proxy could easily ext
end a constructor with a new constructor.
... function ext
end(sup, base) { var descriptor = object.getownpropertydescriptor( base.prototype, 'constructor' ); base.prototype = object.create(sup.prototype); var handler = { construct: function(target, args) { var obj = object.create(base.prototype); this.apply(target, obj, args); return obj; }, apply: function(target, that, args) { sup.apply(that, args); base.apply(that, args); } }; var proxy = new proxy(base, handler); descriptor.value = proxy; object.defineproperty(base.prototype, 'constructor', descriptor); return proxy; } var person = function(name) { this.name = name; }; var boy = ext
end(person, function(name, age) { this.age = age; }); boy.prototype.g
ender =...
... 'm'; var peter = new boy('peter', 13); console.log(peter.g
ender); // "m" console.log(peter.name); // "peter" console.log(peter.age); // 13 manipulating dom nodes sometimes you want to toggle the attribute or class name of two different elements.
...ers); // ['internet explorer', 'netscape'] products.browsers = 'firefox'; // pass a string (by mistake) console.log(products.browsers); // ['firefox'] <- no problem, the value is an array products.latestbrowser = 'chrome'; console.log(products.browsers); // ['firefox', 'chrome'] console.log(products.latestbrowser); // 'chrome' finding an array item object by its property this proxy ext
ends an array with some utility features.
SharedArrayBuffer - JavaScript
dep
ending on the system (the cpu, the os, the browser) it can take a while until the change is propagated to all contexts.
... apis which use sharedarraybuffer objects webglr
enderingcontext.bufferdata() webglr
enderingcontext.buffersubdata() webgl2r
enderingcontext.getbuffersubdata() security requirements shared memory and high-resolution timers were effectively disabled at the start of 2018 in light of spectre.
... instance methods sharedarraybuffer.prototype.slice(begin,
end) returns a new sharedarraybuffer whose contents are a copy of this sharedarraybuffer's bytes from begin, inclusive, up to
end, exclusive.
... if either begin or
end is negative, it refers to an index from the
end of the array, as opposed to from the beginning.
String.prototype.localeCompare() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...in older implementations, which ignore the locales and options arguments, the locale and sort order used are entirely implementation-dep
endent.
...in implementations which ignore the locales and options arguments, the locale used and the form of the string returned are entirely implementation-dep
endent.
... let items = ['réservé', 'premier', 'cliché', 'communiqué', 'café', 'adieu']; items.sort( (a, b) => a.localecompare(b, 'fr', {ignorepunctuation: true})); // ['adieu', 'café', 'cliché', 'communiqué', 'premier', 'réservé'] check browser support for ext
ended arguments the locales and options arguments are not supported in all browsers yet.
String.prototype.trim() - JavaScript
the trim() method removes whitespace from both
ends of a string.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.trim() return value a new string representing the str stripped of whitespace from both
ends.
... description the trim() method returns the string stripped of whitespace from both
ends.
WebAssembly.Memory() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...irefox for androidopera for androidsafari on iossamsung internetnode.jsmemory() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0shared flagchrome full support 74edge full support 79firefox full support 78ie no support noopera full support ...
... nofirefox android no support noopera android no support nosafari ios no support nosamsung internet android no support nonodejs full support 12.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Module.exports() - JavaScript
examples using exports the following example (see our index-compile.html demo on github, and view it live also) compiles the loaded simple.wasm byte code using the webassembly.compilestreaming() method and then s
ends it to a worker using postmessage().
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsexportschrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Table() constructor - JavaScript
webassembly.instantiatestreaming(fetch('table2.wasm'), importobject) .then(function(obj) { console.log(tbl.length); console.log(tbl.get(0)()); console.log(tbl.get(1)()); }); note how you've got to include a second function invocation operator at the
end of the accessor to actually invoke the referenced function and log the value stored inside it (e.g.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...firefox for androidopera for androidsafari on iossamsung internetnode.jstable() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Table.prototype.get() - JavaScript
webassembly.instantiatestreaming(fetch('table.wasm')) .then(function(obj) { var tbl = obj.instance.exports.tbl; console.log(tbl.get(0)()); // 13 console.log(tbl.get(1)()); // 42 }); note how you've got to include a second function invocation operator at the
end of the accessor to actually retrieve the value stored inside the reference (e.g.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...rome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsgetchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Table.prototype.set() - JavaScript
e table (the table2.wasm module (see text representation) adds two function references to the table, both of which print out a simple value): webassembly.instantiatestreaming(fetch('table2.wasm'), importobject) .then(function(obj) { console.log(tbl.length); console.log(tbl.get(0)()); console.log(tbl.get(1)()); }); note how you've got to include a second function invocation operator at the
end of the accessor to actually invoke the referenced function and log the value stored inside it (e.g.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...rome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jssetchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.compile() - JavaScript
examples using compile the following example compiles the loaded simple.wasm byte code using the compile() function and then s
ends it to a worker using postmessage().
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jscompilechrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
Spread syntax (...) - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... now array 'a' is affected as well: a // [[], [2], [3]] a better way to concatenate arrays array.prototype.concat() is often used to concatenate an array to the
end of an existing array.
... without spread syntax, this is done as: const arr1 = [0, 1, 2]; const arr2 = [3, 4, 5]; // app
end all items from arr2 onto arr1 arr1 = arr1.concat(arr2); with spread syntax this becomes: let arr1 = [0, 1, 2]; let arr2 = [3, 4, 5]; arr1 = [...arr1, ...arr2]; // arr1 is now [0, 1, 2, 3, 4, 5] // note: not to use const otherwise, it will give typeerror (invalid assignment) array.prototype.unshift() is often used to insert an array of values at the start of an existing array.
... without spread syntax, this is done as: const arr1 = [0, 1, 2]; const arr2 = [3, 4, 5]; // prep
end all items from arr2 onto arr1 array.prototype.unshift.apply(arr1, arr2) // arr1 is now [3, 4, 5, 0, 1, 2] with spread syntax, this becomes: let arr1 = [0, 1, 2]; let arr2 = [3, 4, 5]; arr1 = [...arr2, ...arr1]; // arr1 is now [3, 4, 5, 0, 1, 2] note: unlike unshift(), this creates a new arr1, and does not modify the original arr1 array in-place.
super - JavaScript
class rectangle { constructor(height, width) { this.name = 'rectangle'; this.height = height; this.width = width; } sayname() { console.log('hi, i am a ', this.name + '.'); } get area() { return this.height * this.width; } set area(value) { this._area = value; } } class square ext
ends rectangle { constructor(length) { this.height; // referenceerror, super needs to be called first!
... class rectangle { constructor() {} static lognbsides() { return 'i have 4 sides'; } } class square ext
ends rectangle { constructor() {} static logdescription() { return super.lognbsides() + ' which are all equal'; } } square.logdescription(); // 'i have 4 sides which are all equal' deleting super properties will throw an error you cannot use the delete operator and super.prop or super[expr] to delete a parent class' property, it will throw a referenceerror.
... class base { constructor() {} foo() {} } class derived ext
ends base { constructor() {} delete() { delete super.foo; // this is bad } } new derived().delete(); // referenceerror: invalid delete involving 'super'.
... class x { constructor() { object.defineproperty(this, 'prop', { configurable: true, writable: false, value: 1 }); } } class y ext
ends x { constructor() { super(); } foo() { super.prop = 2; // cannot overwrite the value.
class - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax class name [ext
ends othername] { // class body } description the class body of a class declaration is executed in strict mode.
... examples a simple class declaration in the following example, we first define a class named polygon, then ext
end it to create a class named square.
... class polygon { constructor(height, width) { this.name = 'polygon'; this.height = height; this.width = width; } } class square ext
ends polygon { constructor(length) { super(length, length); this.name = 'square'; } } attempting to declare a class twice re-declaring a class using the class declaration throws a syntaxerror.
switch - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if the expression matches the specified valuen, the statements inside the case clause are executed until either the
end of the switch statement or a break.
...if no default clause is found, the program continues execution at the statement following the
end of switch.
... var animal = 'giraffe'; switch (animal) { case 'cow': case 'giraffe': case 'dog': case 'pig': console.log('this animal will go on noah\'s ark.'); break; case 'dinosaur': default: console.log('this animal will not.'); } multi-case : chained operations this is an example of a multiple-operation sequential case clause, where, dep
ending on the provided integer, you can receive different output.
with - JavaScript
use of the with statement is not recomm
ended, as it may be the source of confusing bugs and compatibility issues.
... the with statement ext
ends the scope chain for a statement.
... using with is not recomm
ended, and is forbidden in ecmascript 5 strict mode.
... the recomm
ended alternative is to assign the object whose properties you want to access to a temporary variable.
JavaScript typed arrays - JavaScript
typed array views are in the native byte-order (see
endianness) of your platform.
...it is big-
endian by default and can be set to little-
endian in the getter/setter methods.
... xmlhttprequest.prototype.s
end() xmlhttprequest instances' s
end() method now supports typed arrays and arraybuffer objects as argument.
... note: the data structure alignment in a c structure is platform-dep
endent.
<menclose> - MathML
the mathml <menclose> element r
enders its content inside an enclosing notation specified by the notation attribute.
...possible values are: value sample r
endering r
endering in your browser description longdiv (default) a2 + b2 long division symbol actuarial a2 + b2 actuarial symbol radical a2 + b2 square root symbol.
... recomm
endation current specification mathml 2.0the definition of 'menclose' in that specification.
... recomm
endation initial specification ...
<mphantom> - MathML
the mathml <mphantom> element is r
endered invisibly, but dimensions (such as height, width, and baseline position) are still kept.
... examples sample r
endering: r
endering in your browser: x + y + z <math> <mrow> <mi> x </mi> <mo> + </mo> <mphantom> <mi> y </mi> <mo> + </mo> </mphantom> <mi> z </mi> </mrow> </math> specifications specification status comment mathml 3.0the definition of 'mphantom' in that specification.
... recomm
endation current specification mathml 2.0the definition of 'mphantom' in that specification.
... recomm
endation initial specification ...
<ms> - MathML
lquote the opening quote character (dep
ends on dir) to enclose the content.
... example double-struck ; example bold-fraktur ; example script ; example bold-script ; example fraktur ; example sans-serif ; example bold-sans-serif ; example sans-serif-italic ; example sans-serif-bold-italic ; example monospace ; example initial ; مثال tailed ; مثال looped ; مثال stretched ; مثال rquote the closing quote mark (dep
ends on dir) to enclose the content.
... recomm
endation current specification mathml 2.0the definition of 'ms' in that specification.
... recomm
endation initial specification ...
<mtable> - MathML
in addition, values of the align attribute can
end with a rownumber (e.g.
... examples alignment with row number r
endering: <math> <mi>x</mi> <mo>=</mo> <mtable frame="solid" rowlines="solid" align="axis 3"> <mtr> <mtd><mi>a</mi></mtd> <mtd><mi>b</mi></mtd> </mtr> <mtr> <mtd><mi>c</mi></mtd> <mtd><mi>d</mi></mtd> </mtr> <mtr> <mtd><mi>e</mi></mtd> <mtd><mi>f</mi></mtd> </mt...
... recomm
endation current specification mathml 2.0the definition of 'mtable' in that specification.
... recomm
endation initial specification ...
<mtd> - MathML
columnspan a non-negative integer value that indicates on how many columns does the cell ext
end.
... rowspan a non-negative integer value that indicates on how many rows does the cell ext
end.
... recomm
endation current specification mathml 2.0the definition of 'mtd' in that specification.
... recomm
endation initial specification ...
Web media technologies
<video> the <video> element is an
endpoint for video content in a web context.
... web audio api the web audio api lets you generate, filter, and manipulate sound data both in real-time and on pre-recorded material, then s
end that audio to a destination such as an <audio> element, a media stream, or to disk.
...this includes recomm
endations for what formats to use for what kinds of content, best practices including how to provide fallbacks and how to prioritize media types, and also includes general browser support information for each media container and codec.
... positional audio in a 3d environment in 3d environments, which may either be 3d scenes r
endered to the screen or a mixed reality experience experienced using a headset, it's important for audio to be performed so that it sounds like it's coming from the direction of its source.
CSS and JavaScript animation performance - Web Performance
they each have their own user scenarios: css transitions provide an easy way to make animations occur between the current style and an
end css state, e.g., a resting button state and a hover state.
... even if an element is in the middle of a transition, the new transition starts from the current style immediately instead of jumping to the
end css state.
...css animations consist of two components: a style describing the css animation, and a set of key frames that indicate the start and
end states of the animation's style, as well as possible intermediate points.
... note: in nightly/developer edition, you should see that omta is enabled by default, so you might have to do the tests the other way around (test with it enabled first, then disable to test without omta.) summary browsers are able to optimize r
endering flows.
Optimizing startup performance - Web Performance
instead, you should write your code so that your app creates a web worker that does as much as possible in a background thread (for example, fetching and processing data.) then, anything that must be done on the main thread (such as user events and r
endering ui) should be broken up into small pieces so that the app's event loop continues to cycle while it starts up.
...a desktop application doesn't need to be written in an asynchronous fashion because usually the operating system handles that for you, or the app is the only thing that matters which is currently running, dep
ending on the operating environment.
... while you can use web workers to run even very large, long-duration chunks of javascript code asynchronously, there's a huge caveat that: workers don't have access to webgl or audio, and they can't s
end synchronous messages to the main thread, so you can't even proxy those apis to the main thread.
...try to s
end the minify version of the file to the browser and use compression like gzip or brotli.
Making PWAs work offline with Service workers - Progressive web apps (PWAs)
they finally fix issues that front-
end developers have struggled with for years — most notably how to properly cache the assets of a website and make them available when the user’s device is offline.
...this introduces a different approach from traditional web programming — the api is non-blocking, and can s
end and receive communication between different contexts.
...simages); then we can manage the install event itself: self.addeventlistener('install', (e) => { console.log('[service worker] install'); e.waituntil( caches.open(cachename).then((cache) => { console.log('[service worker] caching all: app shell and content'); return cache.addall(contenttocache); }) ); }); there are two things that need an explanation here: what ext
endableevent.waituntil does, and what the caches object is.
...here is a simple usage example: self.addeventlistener('fetch', (e) => { console.log('[service worker] fetched resource '+e.request.url); }); the response can be anything we want: the requested file, its cached copy, or a piece of javascript code that will do something specific — the possibilities are
endless.
alignment-baseline - SVG: Scalable Vector Graphics
candidate recomm
endation refers to the definition in css inline layout and notes the changes to auto, before-edge, after-edge, text-before-edge, and text-after-edge scalable vector graphics (svg) 1.1 (second edition)the definition of 'alignment-baseline' in that specification.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown ...
baseline-shift - SVG: Scalable Vector Graphics
candidate recomm
endation refers to the definition in css inline layout and notes that vertical-align should be preferred.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown ...
color-interpolation-filters - SVG: Scalable Vector Graphics
as a presentation attribute, it can be applied to any element but it only has an effect on the following eighteen elements: <fespotlight>, <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>, <fegaussianblur>, <feimage>, <femerge>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile>, <feturbulence> usage notes value auto | srgb | linearrgb default value linearrgb animatable yes auto indi...
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown ...
enable-background - SVG: Scalable Vector Graphics
default value accumulate animatable no accumulate if an ancestor container element has a property value of enable-background: new, then all graphics elements within the current container element are r
endered both onto the parent container elementʼs background image canvas and onto the target device.
... otherwise, there is no current background image canvas, so graphics elements are only r
endered onto the target device.
... it also indicates that a new (i.e., initially transparent black) background image canvas is established and that in effect all children of the current container element shall be r
endered into the new background image canvas in addition to being r
endered onto the target device.
... recomm
endation initial definition ...
fill-opacity - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specifications specification status comment scalable vector graphics (svg) 2the definition of 'fill-opacity' in that specification.
... candidate recomm
endation definition for shapes and texts scalable vector graphics (svg) 1.1 (second edition)the definition of 'fill-opacity' in that specification.
... recomm
endation initial definition for shapes and texts ...
fill-rule - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specifications specification status comment scalable vector graphics (svg) 2the definition of 'fill-rule' in that specification.
... candidate recomm
endation definition for shapes and text scalable vector graphics (svg) 1.1 (second edition)the definition of 'fill-rule' in that specification.
... recomm
endation initial definition for shapes and text ...
filter - SVG: Scalable Vector Graphics
working draft ext
ended the values by several special filter functions.
... recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown ...
glyphRef - SVG: Scalable Vector Graphics
the glyphref attribute represents the glyph identifier, the format of which is dep
endent on the format of the given font.
...its format dep
ends on the format of the given font.
... recomm
endation initial definition for <glyphref> scalable vector graphics (svg) 1.1 (second edition)the definition of 'altglyph for <altglyph>' in that specification.
... recomm
endation initial definition for <altglyph> ...
gradientTransform - SVG: Scalable Vector Graphics
candidate recomm
endation no change scalable vector graphics (svg) 2the definition of 'gradienttransformation for <radialgradient>' in that specification.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'gradienttransformation for <lineargradient>' in that specification.
... recomm
endation initial definition for <lineargradient> scalable vector graphics (svg) 1.1 (second edition)the definition of 'gradienttransformation for <radialgradient>' in that specification.
... recomm
endation initial definition for <radialgradient> ...
marker-start - SVG: Scalable Vector Graphics
in this case, if the value of marker-start and marker-
end are both not none, then two markers will be r
endered on that final vertex.
...marker-start is only r
endered on the first vertex of the path data.
... candidate recomm
endation no significant change scalable vector graphics (svg) 1.1 (second edition)the definition of 'marker-start' in that specification.
... recomm
endation initial definition ...
markerHeight - SVG: Scalable Vector Graphics
the markerheight attribute represents the height of the viewport into which the <marker> is to be fitted when it is r
endered according to the viewbox and preserveaspectratio attributes.
... a value of zero disables r
endering of the element and negative values are an error.
... candidate recomm
endation allowed percentage and number values.
... recomm
endation initial definition ...
markerWidth - SVG: Scalable Vector Graphics
the markerwidth attribute represents the width of the viewport into which the <marker> is to be fitted when it is r
endered according to the viewbox and preserveaspectratio attributes.
... a value of zero disables r
endering of the element and negative values are an error.
... candidate recomm
endation allowed percentage and number values.
... recomm
endation initial definition ...
mode - SVG: Scalable Vector Graphics
the mode attribute defines the bl
ending mode on the <febl
end> filter primitive.
... only one element is using this attribute: <febl
end> html, body, svg { height: 100%; } <svg viewbox="0 0 480 200" xmlns="http://www.w3.org/2000/svg"> <filter id="bl
ending1" x="0" y="0" width="100%" height="100%"> <feflood result="floodfill" x="0" y="0" width="100%" height="100%" flood-color="seagreen" flood-opacity="1"/> <febl
end in="sourcegraphic" in2="floodfill" mode="multiply"/> </filter> <filter id="bl
ending2" x="0" y="0" width="100%" height="100%"> <feflood result="floodfill" x="0" y="0" width="100%" height="100%" flood-color="seagreen" flood-opacity="1"/> <febl
end in="sourcegraphic" in2="floodfill" mode="color-dodge"/> </filter> <image xlink:href="//developer.mozilla.org/files/6457/mdn_logo_only_color.png" width="200" height="200" ...
... style="filter:url(#bl
ending1);"/> <image xlink:href="//developer.mozilla.org/files/6457/mdn_logo_only_color.png" width="200" height="200" style="filter:url(#bl
ending2); transform:translatex(220px);"/> </svg> usage notes value <bl
end-mode> default value normal animatable yes for a description of the values, see <bl
end-mode>.
... recomm
endation initial definition ...
overflow - SVG: Scalable Vector Graphics
within svg content, the value auto implies that all r
endered content for child elements must be visible, either through a scrolling mechanism, or by r
endering with no clip.
... recomm
endation definition in css scalable vector graphics (svg) 2the definition of 'overflow' in that specification.
... candidate recomm
endation simplifies the definition and outlines the values within the user agent stylesheet.
... recomm
endation initial definition ...
pathLength - SVG: Scalable Vector Graphics
this can affect the actual r
endered lengths of paths; including text paths, animation paths, and various stroke operations.
...stroke-dasharray, for example, will assume the start of the path being 0 and the
end point the value defined in the pathlength attribute.
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of 'pathlength' in that specification.
... recomm
endation initial definition ...
pointer-events - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specification specification status comment scalable vector graphics (svg) 2the definition of 'pointer-events' in that specification.
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of 'pointer-events' in that specification.
... recomm
endation initial definition ...
points - SVG: Scalable Vector Graphics
candidate recomm
endation definition for <polygon> scalable vector graphics (svg) 2the definition of 'points' in that specification.
... candidate recomm
endation definition for <polyline> scalable vector graphics (svg) 1.1 (second edition)the definition of 'points' in that specification.
... recomm
endation initial definition for <polygon> scalable vector graphics (svg) 1.1 (second edition)the definition of 'points' in that specification.
... recomm
endation initial definition for <polyline> ...
preserveAspectRatio - SVG: Scalable Vector Graphics
d, if provided, must be one of the following keywords: meet (the default) - scale the graphic such that: aspect ratio is preserved the entire viewbox is visible within the viewport the viewbox is scaled up as much as possible, while still meeting the other criteria in this case, if the aspect ratio of the graphic does not match the viewport, some of the viewport will ext
end beyond the bounds of the viewbox (i.e., the area into which the viewbox will draw will be smaller than the viewport).
... slice - scale the graphic such that: aspect ratio is preserved the entire viewport is covered by the viewbox the viewbox is scaled down as much as possible, while still meeting the other criteria in this case, if the aspect ratio of the viewbox does not match the viewport, some of the viewbox will ext
end beyond the bounds of the viewport (i.e., the area into which the viewbox will draw is larger than the viewport).
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of 'preserveaspectratio' in that specification.
... recomm
endation initial definition ...
rx - SVG: Scalable Vector Graphics
the way the value of the rx attribute is interpreted dep
end on both the ry attribute and the width of the rectangle: if a properly specified value is provided for rx but not for ry (or the opposite), then the browser will consider the missing value equal to the defined one.
... candidate recomm
endation definition as a geometry property scalable vector graphics (svg) 1.1 (second edition)the definition of 'rx' in that specification.
... recomm
endation initial definition for <ellipse> scalable vector graphics (svg) 1.1 (second edition)the definition of 'rx' in that specification.
... recomm
endation initial definition for <rect> ...
ry - SVG: Scalable Vector Graphics
the way the value of the ry attribute is interpreted dep
end on both the rx attribute and the width of the rectangle: if a properly specified value is provided for ry but not for rx (or the opposite), then the browser will consider the missing value equal to the defined one.
... candidate recomm
endation definition as a geometry property scalable vector graphics (svg) 1.1 (second edition)the definition of 'ry' in that specification.
... recomm
endation initial definition for <ellipse> scalable vector graphics (svg) 1.1 (second edition)the definition of 'ry' in that specification.
... recomm
endation initial definition for <rect> ...
spacing - SVG: Scalable Vector Graphics
the spacing attribute indicates how the user agent should determine the spacing between typographic characters that are to be r
endered along a path.
... exact this value indicates that the typographic characters should be r
endered exactly according to the spacing rules as specified by the layout rules for text-on-a-path.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'spacing' in that specification.
... recomm
endation initial definition ...
stroke-dasharray - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specification specification status comment scalable vector graphics (svg) 2the definition of 'stroke-dasharray' in that specification.
... candidate recomm
endation definition for shapes and texts scalable vector graphics (svg) 1.1 (second edition)the definition of 'stroke-dasharray' in that specification.
... recomm
endation initial definition for shapes and texts ...
stroke-opacity - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specification specification status comment scalable vector graphics (svg) 2the definition of 'stroke-opacity' in that specification.
... candidate recomm
endation definition for shapes and texts scalable vector graphics (svg) 1.1 (second edition)the definition of 'stroke-opacity' in that specification.
... recomm
endation initial definition for shapes and texts ...
stroke-width - SVG: Scalable Vector Graphics
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown specification specification status comment scalable vector graphics (svg) 2the definition of 'stroke-width' in that specification.
... candidate recomm
endation definition for shapes and texts scalable vector graphics (svg) 1.1 (second edition)the definition of 'stroke-width' in that specification.
... recomm
endation initial definition for shapes and texts ...
stroke - SVG: Scalable Vector Graphics
candidate recomm
endation definition for shapes and texts.
... recomm
endation initial definition for shapes and texts browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknown note: for information on using the context-stroke (and context-fill) values from html documents, see the documentation for the non-standard -moz-context-properties property.
transform - SVG: Scalable Vector Graphics
matrix(a,b,c,d,e,f) is equivalent to applying the transformation matrix:(acebdf001)\begin{pmatrix} a & c & e \\ b & d & f \\ 0 & 0 & 1 \
end{pmatrix} which maps coordinates from a previous coordinate system into a new coordinate system by the following matrix equalities:(xnewcoordsysynewcoordsys1)=(acebdf001)(xprevcoordsysyprevcoordsys1)=(axprevcoordsys+cyprevcoordsys+ebxprevcoordsys+dyprevcoordsys+f1) \begin{pmatrix} x_{\mathrm{newcoordsys}} \\ y_{\mathrm{newcoordsys}} \\ 1 \
end{pmatrix} = \begin{pmatrix} a & c & e \\ b & d & f \\ 0 ...
...& 0 & 1 \
end{pmatrix} \begin{pmatrix} x_{\mathrm{prevcoordsys}} \\ y_{\mathrm{prevcoordsys}} \\ 1 \
end{pmatrix} = \begin{pmatrix} a x_{\mathrm{prevcoordsys}} + c y_{\mathrm{prevcoordsys}} + e \\ b x_{\mathrm{prevcoordsys}} + d y_{\mathrm{prevcoordsys}} + f \\ 1 \
end{pmatrix} example html,body,svg { height:100% } <svg viewbox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"> <rect x="10" y="10" width="30" height="20" fill="green" /> <!-- in the following example we are applying the matrix: [a c e] [3 -1 30] [b d f] => [1 3 40] [0 0 1] [0 0 1] which transform the rectangle as such: top left corner: oldx=10 oldy=10 newx = a * oldx + c * oldy + e = 3 * 10 - 1 * 10 + 30 = 50 newy = b * oldx + d * oldy + f = 1 * 10 + 3 * 10 + 40 = 80 top right corner: oldx=...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of 'transform' in that specification.
... recomm
endation initial definition ...
x1 - SVG: Scalable Vector Graphics
candidate recomm
endation definition for <line> scalable vector graphics (svg) 2the definition of 'x1' in that specification.
... candidate recomm
endation definition for <lineargradient> scalable vector graphics (svg) 1.1 (second edition)the definition of 'x1' in that specification.
... recomm
endation initial definition for <line> scalable vector graphics (svg) 1.1 (second edition)the definition of 'x1' in that specification.
... recomm
endation initial definition for <lineargradient> ...
y1 - SVG: Scalable Vector Graphics
candidate recomm
endation definition for <line> scalable vector graphics (svg) 2the definition of 'y1' in that specification.
... candidate recomm
endation definition for <lineargradient> scalable vector graphics (svg) 1.1 (second edition)the definition of 'y1' in that specification.
... recomm
endation initial definition for <line> scalable vector graphics (svg) 1.1 (second edition)the definition of 'y1' in that specification.
... recomm
endation initial definition for <lineargradient> ...
Content type - SVG: Scalable Vector Graphics
svg supports all of the syntax alternatives for <color> defined in css2 syntax and basic data types, and (dep
end on the implementation) in the future css color module level 3.
...this ensures that white (#ffffff) can be specified with the short notation (#fff) and removes any dep
endencies on the color depth of the display.
...the meaning of a percentage length value dep
ends on the attribute for which the percentage length value has been specified.
... percentage <percentage> percentages are specified as a number followed by a "%" character: percentage ::= number "%" note that the definition of <number> dep
ends on whether the percentage is specified in a stylesheet or in an attribute that is not also a presentation attribute.
<circle> - SVG: Scalable Vector Graphics
a value lower or equal to zero disables r
endering of the circle.
... global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<circle>' in that specification.
... recomm
endation initial definition ...
<clipPath> - SVG: Scalable Vector Graphics
thus, it affects the r
endering of an element, but not the element's inherent geometry.
...e: userspaceonuse|objectboundingbox ; default value: userspaceonuse; animatable: yes global attributes core attributes most notably: id styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage presentation attributes most notably: clip-path, clip-rule, color, display, fill, fill-opacity, fill-rule, filter, mask, opacity, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility usage notes categoriesnonepermitted contentany number of the following elements, in any order:animation elementsdescriptive elementsshape elements<text>, <use> specifications specification status comment ...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<clippath>' in that specification.
... recomm
endation initial definition ...
<defs> - SVG: Scalable Vector Graphics
objects created inside a <defs> element are not r
endered directly.
...ects --> <use x="5" y="5" xlink:href="#mycircle" fill="url('#mygradient')" /> </svg> attributes global attributes core attributes most notably: id lang styling attributes class, style event attributes global event attributes, document element event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility usage notes categoriescontainer element, structural elementpermitted contentany number of the following elements, in any o...
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of '<defs>' in that specification.
... recomm
endation initial definition ...
<feComposite> - SVG: Scalable Vector Graphics
the second set does not wipe out the background, with the result that the background sometimes shines through and is other cases is bl
ended into itself (i.e., "double-counting").</desc> <filter id="overflood" filterunits="objectboundingbox" x="-5%" y="-5%" width="110%" height="110%"> <feflood flood-color="#ffffff" flood-opacity="1" result="flood"/> <fecomposite in="sourcegraphic" in2="backgroundimage" operator="over" result="comp"/> <femerge> <femergenode in="flood"/> <femergenode in="comp"/> </femerge> </...
..." xlink:href="#twobluetriangles"/> <use transform="translate(650,25)" xlink:href="#twobluetriangles"/> <use transform="translate(775,25)" xlink:href="#twobluetriangles"/> <use transform="translate(900,25)" xlink:href="#twobluetriangles"/> </g> </defs> <rect fill="none" stroke="blue" x="1" y="1" width="1098" height="648"/> <g font-family="verdana" font-size="40" shape-r
endering="crispedges"> <desc>r
ender the examples using the filters that draw on top of an opaque white surface, thus obliterating the background.</desc> <g enable-background="new"> <text x="15" y="75">opacity 1.0</text> <text x="15" y="115" font-size="27">(with feflood)</text> <text x="15" y="200">opacity 0.5</text> <text x="15" y="240" font-size="27">(with f...
...red50" filter="url(#xorflood)" /> <text x="15" y="275">xor</text> </g> <g transform="translate(900,25)"> <use xlink:href="#red100" filter="url(#arithmeticflood)" /> <use xlink:href="#red50" filter="url(#arithmeticflood)" /> <text x="-25" y="275">arithmetic</text> </g> </g> <g transform="translate(0,325)" enable-background="new"> <desc>r
ender the examples using the filters that do not obliterate the background, thus sometimes causing the background to continue to appear in some cases, and in other cases the background image bl
ends into itself ("double-counting").</desc> <text x="15" y="75">opacity 1.0</text> <text x="15" y="115" font-size="27">(without feflood)</text> <text x="15" y="2...
... recomm
endation initial definition ...
<metadata> - SVG: Scalable Vector Graphics
example <svg width="400" viewbox="0 0 400 300" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <metadata> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:connect="http://www.w3.org/1999/08/29-svg-connections-in-rdf#"> <rdf:description about="#cablea"> <connect:
ends rdf:resource="#socket1"/> <connect:
ends rdf:resource="#computera"/> </rdf:description> <rdf:description about="#cableb"> <connect:
ends rdf:resource="#socket2"/> <connect:
ends rdf:resource="#computerb"/> </rdf:description> <rdf:description about="#cablen"> <connect:
ends rdf:resource="#socket5"/> <connect:
ends>everything</connect:
ends...
...> </rdf:description> <rdf:description about="#hub"> <connect:
ends rdf:resource="#socket1"/> <connect:
ends rdf:resource="#socket2"/> <connect:
ends rdf:resource="#socket3"/> <connect:
ends rdf:resource="#socket4"/> <connect:
ends rdf:resource="#socket5"/> </rdf:description> </rdf:rdf> </metadata> <title>network</title> <desc>an example of a computer network based on a hub.</desc> <style> svg { /* default styles to be inherited */ fill: white; stroke: black; } text { fill: black; stroke: none; } path { fill: none; } </style> <!-- define symbols used in the svg --> <defs> <!-- hubplug symbol.
... candidate recomm
endation allowed global event attributes on the element.
... recomm
endation initial definition ...
<text> - SVG: Scalable Vector Graphics
if text is included in svg not inside of a <text> element, it is not r
endered.
...bly: id, tabindex styling attributes class, style, font-family, font-size, font-size-adjust, font-stretch, font-style, font-variant, font-weight conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, dominant-baseline, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, text-anchor, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-chec...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<text>' in that specification.
... recomm
endation initial definition ...
<title> — the SVG accessible name element - SVG: Scalable Vector Graphics
text in a <title> element is not r
endered as part of the graphic, but browsers usually display it as a tooltip.
... if an element can be described by visible text, it is recomm
ended to reference that text with an aria-labelledby attribute rather than using the <title> element.
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<title>' in that specification.
... recomm
endation initial definition ...
<use> - SVG: Scalable Vector Graphics
since the cloned nodes are not exposed, care must be taken when using css to style a use element and its cloned desc
endants.
... global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<use>' in that specification.
... recomm
endation initial definition ...
Example - SVG: Scalable Vector Graphics
this is done completely in w3c standards–xhtml, svg, and javascript–no flash or any v
endor-specific extensions.
... </p> <p> this is done completely in w3c standards–xhtml, svg and javascript–no flash or any v
endor specific extensions. currently, this will work in mozilla firefox version 1.5 and above.
... // return this as a 2-tuple (x,y) in an array function dimensions() { // our r
endering element var display = display(); var width = parseint( display.getattributens(null,'width') ); var height = parseint( display.getattributens(null,'height') ); return [width,height]; } // this is called by mouse move events var mouse_x = 200, mouse_y = 150; function onmousemove(evt) { mouse_x = evt.clientx; mouse_y = evt.clienty; var widget = document.getelem...
... if( this.elt === null ) { var svg = 'http://www.w3.org/2000/svg'; this.elt = document.createelementns(svg,'line'); this.elt.setattributens(null,'stroke','green'); this.elt.setattributens(null,'stroke-width','3'); this.elt.setattributens(null,'stroke-opacity','0.5'); display().app
endchild( this.elt ); } this.elt.setattributens(null,'x1',old_x); this.elt.setattributens(null,'y1',old_y); this.elt.setattributens(null,'x2',this.x); this.elt.setattributens(null,'y2',this.y); } function update() { // first call?
Specification Deviations - SVG: Scalable Vector Graphics
there are a few places where we have consciously decided to make gecko deviate from or ext
end the svg specification.
...ext
ending the 'class' attribute to apply to all svg elements will allow svg authors to use the selectors api to select any svg element based on class.
...ext
ending the 'style' attribute to apply to all svg elements should only really be visible to svg authors if they call viewcss.getcomputedstyle on the element or one of its desc
endants.
... since these elements and their desc
endants are not displayed, it seems unlikely that anyone will either specify 'style' or call getcomputedstyle on them.
SVG fonts - SVG: Scalable Vector Graphics
since accessing the correct font file is however crucial for r
endering text correctly, a font description technology was added to svg to provide this ability.
... it was not meant for compatibility with other formats like postscript or otf, but rather as a simple means of embedding glyph information into svg when r
endered.
...all following attributes are r
endering instructions for the font layout engine, for example, how much of the glyphs' overall heights are asc
enders.
...the above example states that if the r
enderer has a local font available named "super sans bold", it should use this instead.
Tools for SVG - SVG: Scalable Vector Graphics
to store inkscape specific data, it ext
ends the svg file with elements and attributes in a custom namespace, but you can also choose to export as plain svg.
... other r
enderers several projects exist that can create a raster image from an svg source.
...to r
ender graphs on the web jsxgraph supports vml, svg and canvas, automatically deciding which technology to use based on browser capabilities.
... in gis (geographic information system) applications svg is often used as both storage and r
endering format.
Subdomain takeovers - Web security
if an attacker can do this, they can potentially read cookies set from the main domain, perform cross-site scripting, or circumvent content security policies, thereby enabling them to capture protected information (including logins) or s
end malicious content to unsuspecting users.
...dep
ending on the size of the organization, this may require communication and coordination across multiple departments, which can only increase the likelihood for a vulnerable misconfiguration.
... put pressure on hosting v
endors to close gaps; ask how they verify that someone claiming a virtual host actually has a legitimate claim to the domain name.
... work within your organization to make this part of the v
endor qualification process.
Web Components
this has traditionally not been so easy for custom markup structures — think of the complex html (and associated style and script) you've sometimes had to write to r
ender custom ui controls, and how using them multiple times can turn your page into a mess if you are not careful.
... shadow dom: a set of javascript apis for attaching an encapsulated "shadow" dom tree to an element — which is r
endered separately from the main document dom — and controlling associated functionality.
... html templates: the <template> and <slot> elements enable you to write markup templates that are not displayed in the r
endered page.
... html templates <template> contains an html fragment that is not r
endered when a containing document is initially loaded, but can be displayed at runtime using javascript, mainly used as the basis of custom element structures.
child - XPath
recomm
endation xpath 3.0the definition of 'child' in that specification.
... recomm
endation xpath 2.0the definition of 'child' in that specification.
... recomm
endation xpath 1.0the definition of 'child' in that specification.
... recomm
endation initial definition.
self - XPath
recomm
endation xpath 3.0the definition of 'self' in that specification.
... recomm
endation xpath 2.0the definition of 'self' in that specification.
... recomm
endation xpath 1.0the definition of 'self' in that specification.
... recomm
endation initial definition.
Axes - XPath
for further information on using xpath expressions, please see the for further reading section at the
end of transforming xml with xslt document.
... desc
endant indicates all of the children of the context node, and all of their children, and so forth.
... desc
endant-or-self indicates the context node and all of its desc
endants.
... following indicates all the nodes that appear after the context node, except any desc
endant, attribute, and namespace nodes.
Index - XPath
2 axes transforming_xml_with_xslt, xpath, xpath_reference, xslt, xslt_reference for further information on using xpath expressions, please see the for further reading section at the
end of transforming xml with xslt document.
... 7 desc
endant axe, xpath the desc
endant axis indicates all of the children of the context node, and all of their children, and so forth.
... 8 desc
endant-or-self axe, xpath the desc
endant-or-self axis indicates the context node and all of its desc
endants.
... 9 following axe, xpath the following axis indicates all the nodes that appear after the context node, except any desc
endant, attribute, and namespace nodes.
JavaScript/XSLT Bindings - XSLT: Extensible Stylesheet Language Transformations
figure 1 : instantiating an xsltprocessor var xsltprocessor = new xsltprocessor(); // load the xsl file using synchronous (third param is set to false) xmlhttprequest var myxmlhttprequest = new xmlhttprequest(); myxmlhttprequest.open("get", "example.xsl", false); myxmlhttprequest.s
end(null); var xslref = myxmlhttprequest.responsexml; // finally import the .xsl xsltprocessor.importstylesheet(xslref); for the actual transformation, xsltprocessor requires an xml document, which is used in conjunction with the imported xsl file to produce the final result.
...by making the second parameter "true", it will clone all desc
endants as well (a deep clone).
... the cloned dom can then be easily inserted into the xml document using node.app
endchild(), as shown in figure 2.
... // importnode is used to clone the nodes we want to process via xslt - true makes it do a deep clone var mynode = document.getelementbyid("example"); var clonednode = xmlref.importnode(mynode, true); // add the cloned dom into the xml document xmlref.app
endchild(clonednode); once the stylesheet has been imported, xsltprocessor has to perform two methods for the actual transformation, namely xsltprocessor.transformtodocument() and xsltprocessor.transformtofragment().
WebAssembly Concepts - WebAssembly
this article explains the concepts behind how webassembly works including its goals, the problems it solves, and how it runs inside the web browser's r
endering engine.
...it is not primarily int
ended to be written by hand, rather it is designed to be an effective compilation target for low-level source languages like c, c++, rust, etc.
... webassembly is a different language from javascript, but it is not int
ended as a replacement.
...if the application uses opengl, the html also contains a <canvas> element that is used as the r
endering target.
Cross-domain Content Scripts - Archive of obsolete content
ction(message) { console.log(message); }); the "page.html" file embeds an iframe whose content is served from "http://en.m.wikipedia.org/": <!doctype html> <!-- page.html --> <html> <head></head> <body> <iframe id="wikipedia" src="http://en.m.wikipedia.org/"></iframe> </body> </html> the "page-script.js" file locates "today's featured article" and s
ends its content to "main.js": // page-script.js var iframe = window.document.getelementbyid("wikipedia"); var todaysfeaturedarticle = iframe.contentwindow.document.getelementbyid("mp-tfa"); self.postmessage(todaysfeaturedarticle.textcontent); for this to work, we need to add the "cross-domain-content" key to "package.json": "permissions": { "cross-domain-content": ["http://en.m.wikipedia.org/"...
... the "main.js": creates a panel whose content is supplied by "panel.html" and adds a content script "panel-script.js" to it s
ends the panel a "show" message when it is shown adds a button which shows the panel when it is clicked // main.js var data = require("sdk/self").data; var forecast_panel = require("sdk/panel").panel({ height: 50, contenturl: data.url("panel.html"), contentscriptfile: data.url("panel-script.js") }); forecast_panel.on("show", function(){ forecast_panel.port.emit("show"); }); require("sdk/ui/b...
...egionalforecast/json/500?key=your-api-key"; self.port.on("show", function () { var request = new xmlhttprequest(); request.open("get", url, true); request.onload = function () { var jsonresponse = json.parse(request.responsetext); var summary = getsummary(jsonresponse); var element = document.getelementbyid("forecast_summary"); element.textcontent = summary; }; request.s
end(); }); function getsummary(forecast) { return forecast.regionalfcst.fcstperiods.period[0].paragraph[0].$; } finally, we need to add the "cross-domain-content" key to "package.json": "permissions": { "cross-domain-content": ["http://datapoint.metoffice.gov.uk"] } content permissions and unsafewindow if you use "cross-domain-content", then javascript values in content scripts will not be...
self - Archive of obsolete content
the content script in the options property of self: // main.js const tabs = require("sdk/tabs"); tabs.open({ url: "./page.html", onready: function(tab) { tab.attach({ contentscriptfile: "./content-script.js", contentscriptoptions: { a: "blah" } }); } }); // content-script.js alert(self.options.a); port you can use port to receive messages from, and s
end messages to, the main add-on code.
... methods the self object has four methods, which enable the content script to s
end messages to, and receive messages from, the main add-on code.
... postmessage() s
end a message from a content script to a listener in the main add-on code: self.postmessage(contentscriptmessage); this takes a single parameter, the message payload, which may be any json-serializable value.
Modules - Archive of obsolete content
the use of modules greatly improves the maintainability of code, by splitting it up into indep
endent components, and enforcing logical boundaries between them.
...this becomes a problem when two scripts try to define the same property: // index.js: loadscript("www.foo.com/a.js"); loadscript("www.foo.com/b.js"); foo; // => 5 // a.js: foo = 3; // b.js: foo = 5; in the above example, the value of foo dep
ends on the order in which the subscripts are loaded: there is no way to access the property foo defined by "a.js", since it is overwritten by "b.js".
...rewriting the loadscript function using sandboxes, we
end up with: function loadscript(url, imports) { let global = components.utils.sandbox(url); global.imports = imports; global.exports = {}; loader.loadsubscript(url, global); return global.exports; } note that the object returned by sandbox is a wrapper to the sandbox, not the sandbox itself.
Module structure of the SDK - Archive of obsolete content
a commonjs module is a piece of reusable javascript: it exports certain objects which are thus made available to dep
endent code.
... for example, this add-on places external modules in a "dep
endencies" directory: my-addon lib main.js dep
endencies geolocation.js it can then load them in the same way it would load a local module.
... for example, to load from main: // main.js code var geo = require("./dep
endencies/geolocation"); freezing the sdk freezes the exports object returned by require.
simple-prefs - Archive of obsolete content
dep
ending on the preference type, this may be an integer, string, or boolean value.
...the type of the stored value dep
ends on the default value.
...the type of the stored value dep
ends on the default value.
content/symbiont - Archive of obsolete content
this may take one of the following values: "start": load content scripts immediately after the document element for the page is inserted into the dom, but before the dom content itself has been loaded "ready": load content scripts once dom content has been loaded, corresponding to the domcontentloaded event "
end": load content scripts once all the content (dom, js, css, images) for the page has been loaded, at the time the window.onload event fires this property is optional and defaults to "
end".
... symbiont symbiont is composed from the worker trait, therefore instances of symbiont and their desc
endants expose all the public properties exposed by worker along with additional public properties that are listed below: properties contentscriptfile the local file urls of content scripts to load.
...this may have one of the following values: "start": load content scripts immediately after the document element for the page is inserted into the dom, but before the dom content itself has been loaded "ready": load content scripts once dom content has been loaded, corresponding to the domcontentloaded event "
end": load content scripts once all the content (dom, js, css, images) for the page has been loaded, at the time the window.onload event fires contentscriptoptions read-only value exposed to content scripts under self.options property.
content/worker - Archive of obsolete content
worker worker is composed from the eventemitter trait, therefore instances of worker and their desc
endants expose all the public properties exposed by eventemitter along with additional public properties that are listed below.
... parameters data : number,string,json the data to s
end.
... properties port object that allows you to: s
end customized messages to the worker using the port.emit function receive events from the worker using the port.on function url the url of the content.
ui/button/toggle - Archive of obsolete content
dep
ending on your application, you might want a button to have different state in different browser windows or different tabs.
...when the button is in the toolbar, this appears in a tooltip, and when the button is in the menu, it appears underneath the button as a leg
end.
...togglebutton({ id: "my-button2", label: "my button2", icon: "./firefox-16.png" }); var button3 = togglebutton({ id: "my-button3", label: "my button3", icon: { "16" : "./firefox-16.png", "32" : "./firefox-32.png", "64" : "./firefox-64.png" } }); if you use the final form, firefox will automatically choose the best-fit icon for your button, dep
ending on the device screen resolution and where the button is in the ui.
util/object - Archive of obsolete content
ext
end(arguments) returns an object that inherits from the first argument and contains all of the properties from all following arguments, with precedence from right to left.
... ext
end(source1, source2, source3) is the equivalent of merge(object.create(source1), source2, source3).
... let { ext
end } = require("sdk/util/object"); var a = { alpha: "a" }; var b = { beta: "b" }; var g = { gamma: "g", alpha: null }; var x = ext
end(a, b, g); console.log(a); // { alpha: "a" } console.log(b); // { beta: "b" } console.log(g); // { gamma: "g", alpha: null } console.log(x); // { alpha: null, beta: "b", gamma: "g" } parameters arguments : object n arguments that get merged into a new object.
window/utils - Archive of obsolete content
returns nsidomwindow op
endialog(options) opens a top level window and returns its nsidomwindow representation.
...it wraps window.op
endialog.
... for the set of features you can set, see the window.op
endialog documentation.
console - Archive of obsolete content
dep
ending on the console's underlying implementation and user interface, you may be able to examine the properties of non-primitive objects that are logged.
... console.time
end(name) stops the specified timer and logs the elapsed time in seconds since its start.
... the complete set of logging levels is given in the table below, along with the set of functions that will result in output at each level: level will log calls to: all any console method debug debug(), error(), exception(), info(), log(), time(), time
end(), trace(), warn() info error(), exception(), info(), log(), time(), time
end(), trace(), warn() warn error(), exception(), warn() error error(), exception() off nothing setting the logging level the logging level defaults to "error".
jpm - Archive of obsolete content
installing jpm globally npm install jpm --global dep
ending on your setup, you might need to run this as an administrator: sudo npm install jpm --global installing jpm locally if you do not wish to, or are unable to, install jpm globally, you may instead install it locally: cd $home && npm install jpm to run jpm from a terminal when installed locally, you must add the directory "$home/node_modules/.bin/" to your terminal's path first.
... add the following line to the
end of the file $home/.profile to add it to your path permanently (as the file .profile is executed every time a new terminal is opened): export path="$home/node_modules/.bin/:$path" installing jpm from git alternatively, you can also get the latest version of jpm using git: git clone https://github.com/mozilla-jetpack/jpm.git cd jpm npm install npm link after installing jpm after installation, at the command prompt, type: jpm you should see a screen summarizing the available jpm commands.
...unless an id field is present in package.json, jpm prep
ends "@" to name and use the result as the id field in the add-on's install manifest.
package.json - Archive of obsolete content
dep
endencies a string or an array of strings specifying the names of packages that this add-on requires in order to function properly.
... note: it is recomm
ended that you use an spdx license id.
...a tool "fixpack" will reorder your package.json as follows: name first description second version third author fourth all other keys in alphabetical order dep
endencies and devdep
endencies sorted alphabetically newline at the
end of the file more details here: "github - henrikjoreteg/fixpack: a package.json file scrubber for the truly insane." https://github.com/henrikjoreteg/fixpack ...
Displaying annotations - Archive of obsolete content
if it finds any it binds functions to that element's mouseenter and mouseleave events to s
end messages to the main module, asking it to show or hide the annotation.
... like the selector, the matcher also listens for the window's unload event and on unload s
ends a detach message to the main module, so the add-on can clean it up.
...this function: initializes the content script instance with the current set of annotations provides a handler for messages from that content script, handling the three messages - show, hide and detach - that the content script might s
end adds the worker to an array, so we it can s
end messages back later.
Bootstrapped extensions - Archive of obsolete content
this may be a directory or an xpi file dep
ending on whether the add-on is installed unpacked or not.
... resourceuri nsiuri a uri pointing at the root of the add-ons files, this may be a jar: or file: uri dep
ending on whether the add-on is installed unpacked or not.
... dave towns
end provides a basic code base to load ui for each opened window in a bootstrapped extension.
Bookmarks - Archive of obsolete content
specifying default_index as the index at which to insert the new folder places it at the
end of the list.
...etservice(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 referenced by newbkmkid.
... // an nsinavbookmarkobserver var myext_bookmarklistener = { onbeginupdatebatch: function() {}, on
endupdatebatch: function() {}, onitemadded: function(aitemid, afolder, aindex) {}, onitemremoved: function(aitemid, afolder, aindex) {}, onitemchanged: function(abookmarkid, aproperty, aisannotationproperty, avalue) { myextension.dosomething(); }, onitemvisited: function(abookmarkid, avisitid, time) {}, onitemmoved: function(aitemid, aoldparent, aoldindex, anewparent, anewindex) {}, ...
Modules - Archive of obsolete content
the use of eval() will probably not be of concern because it is only being used on the exported_symbols array which should not dep
end on user input.
... // at the
end of your code: (assuming neither 'i' nor 'thatobj' is being exported!) for (var i=0; i < exported_symbols.length; i++) {thatobj[exported_symbols[i]] = eval(exported_symbols[i]);} } or for one-time-only usage of a module: (function (thatobj) { thatobj = thatobj || window; var exported_symbols = [ // put the symbols here ]; // your code here...
... // at the
end of your code: (assuming neither 'i' nor 'thatobj' is being exported!) for (var i=0; i < exported_symbols.length; i++) {thatobj[exported_symbols[i]] = eval(exported_symbols[i]);} })(); // can put an object argument here ...
Post data to window - Archive of obsolete content
this offers examples of s
ending post data to the server and displaying the server response.
... preprocessing post data the apostdata argument of the (global) loaduri(), op
endialog(), and (tab)browser.loaduriwithflags() methods expects the post data in the form of an nsiinputstream (because they eventually call nsiwebnavigation.loaduri()) while post data can be created using nsimimeinputstream.
... posting data to the current tab there is a convenience method in global scope (in firefox, chrome://browser/content/browser.js): loaduri(auri, areferrer, apostdata, aallowthirdpartyfixup); posting data to a new window window.op
endialog('chrome://browser/content', '_blank', 'all,dialog=no', auri, aflags, areferrer, apostdata); ...
Extension Versioning, Update and Compatibility - Archive of obsolete content
it varies dep
ending on what type of add-on you are providing information for: for an extension or plugin bundle it must be urn:mozilla:extension:<id> for a theme it must be urn:mozilla:theme:<id> for any other type of add-on it must be urn:mozilla:item:<id> note: prior to gecko 2.0 (firefox 4.0), the ordering of the versions within the <rdf:seq> is significant.
... the behavior dep
ends on the version of the client application, of course.
...other tags aren't included in the result but do have their contents displayed, so the following snippet: <span><q>text</q></span> would be r
endered exactly the same as: <q>text</q> sample file <!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> <html lang="en-us" dir="ltr" xmlns="http://www.w3.org/1999/xhtml"> <h2>my extension</h2> <ul> <li>this update fixes some stability related issues.</li> </ul> </html> what
end-user sees the content of updateinfourl will be displayed...
Setting up an extension development environment - Archive of obsolete content
note: for an ext
ended guide on how to set up even more user profiles, take a look at multiple firefox profiles.
... recomm
ended development preferences not all preferences are defined by default, and are therefore not listed by default.
...this will s
end more detailed information about installation and update problems to the error console.
Working with BFCache - Archive of obsolete content
when the user hits the 'back' button, either the window in bfcache is thawed or a new inner window is created, dep
ending on whether there's a window in the bfcache.
...that might come from the http cache or not, dep
ending on whether it's been evicted; typically it does come from the http cache.
...freezing susp
ends timeouts and interval timers on the frozen window, so they won't execute.
Using Dehydra - Archive of obsolete content
example: printing the location of type declarations save the following c++ code dumptypes.cc: typedef int myint; struct foo { int i; char *c; }; save the following analysis script dumptypes.js: function process_type(t) { print("type found: " + t.name + " location: " + t.loc); } function input_
end() { print("hello, world!"); } compile using the following command: $ g++ -fplugin=~/dehydra/gcc_dehydra.so -fplugin-arg=~/dumptypes.js -o/dev/null -c dumptypes.cc note:for g++4.5 and up use -fplugin-arg-gcc_dehydra-script= rather than -fplugin-arg it should print the following results: type found: foo location: test.cc:2:12 type found: myint location: test.cc:1:13 hello, world!
... see documentation for: process_type, input_
end, print, .loc property example: using attributes to mark a class as "final" save the following code as final.cc: // this class should not be subclassed!
... */ function isfinal(c) { if (!c.attributes) return false; for each (let a in c.attributes) if (a.name == 'user' && a.value == 'final') return true; return false; } function process_type(t) { if (t.bases) for each (let base in t.bases) if (isfinal(base.type)) error("class " + t.name + " ext
ends final class " + base.type.name, t.loc); } compile using the following command: $ g++ -fplugin=~/dehydra/gcc_dehydra.so -fplugin-arg=~/final.js -o/dev/null -c final.cc it should print the following results and return with an error code: final.cc:8: error: class subclass ext
ends final class myclass see documentation for: process_type, error, .bases property, .attributes property ...
Drag and Drop Example - Archive of obsolete content
var boardobserver = { getsupportedflavours : function () { var flavours = new flavourset(); flavours.app
endflavour("text/unicode"); return flavours; }, ondragover: function (event, flavour, session) {}, ondrop: function (event, dropdata, session) { if (dropdata.data != "") { var elem = document.createelement(dropdata.data); event.target.app
endchild(elem); elem.setattribute("left", "" + event.pagex); elem.setattribute("top", "" + event.pagey); elem.setattrib...
...next, app
endchild is called to add the new element to the stack, which is the target of the event.
...(event, listobserver)"/> </vbox> </window> var listobserver = { ondragstart: function (event, transferdata, action) { var txt = event.target.getattribute("elem"); transferdata.data = new transferdata(); transferdata.data.adddataforflavour("text/unicode", txt); } }; var boardobserver = { getsupportedflavours : function () { var flavours = new flavourset(); flavours.app
endflavour("text/unicode"); return flavours; }, ondragover: function (event, flavour, session) {}, ondrop: function (event, dropdata, session) { if (dropdata.data != "") { var elem = document.createelement(dropdata.data); event.target.app
endchild(elem); elem.setattribute("left", "" + event.pagex); elem.setattribute("top", "" + event.pagey); elem.setattrib...
Drag and Drop - Archive of obsolete content
event handlers are called when the user starts and
ends dragging, and at various points in-between.
... ondrag
end called when the drag operation is finished.
...the action can be changed during the drag dep
ending on what is being dragged over.
Layout FAQ - Archive of obsolete content
how do you find out if there are any reflows that are p
ending and wait to show the view until afterwards, but if none are p
ending, show the view immediately?
... what is the best way to determine whether there are any p
ending changes?
...that won't help with p
ending style changes, but it'll work to detect cases when the popup or something in it needs to be reflown.
Layout System Overview - Archive of obsolete content
galley and page presentations: the presentation generally is constrained by the width of the window in which the presentation is to be displayed, and a height that ext
ends as far as necessary.
...this is especially critical when the user is typing into the document: it would be quite unusable if typing a character at the
end of a document in the html editor caused the entire document to be reformatted - it would be too slow, at least on low-
end machines.
...the idea of formatting text and graphics to fit within a given screen area sounds simple, but the interaction of in-flow and out-of-flow elements, the considerations of incremental page r
endering, and the performance concerns of dynamic content changes makes for a system that has a lot of work to do, and a lot of data to manage.
popChallengeResponse - Archive of obsolete content
the current implementation does not conform to that defined in the cmmf draft, and we int
end to change this implementation to that defined in the cmc rfc..
... [note that a different -- integer must be used for each challenge.] s
ender generalname, -- the name of the s
ender.
... -- request is being made) of rand, where rand is specified as -- rand ::= sequence { -- int integer, -- - the randomly-generated integer a (above) -- s
enderhash octet string -- - the result of applying the one-way function (owf) to -- - the s
ender's general name -- } -- the size of "int" must be small enough such that "rand" can be -- contained within a single pkcs #1 encryption block.
statusBar - Archive of obsolete content
namespace: jetpack.statusbar methods copybackground embediframe app
end the app
end methods adds a new item to the statusbar.
...syntax jetpack.statusbar.app
end(options); possible options are: url width (string/length) the width of the panel-item html (string) the html code which will be used inside the item onload (event) this event fires when the item was app
ended.
... example jetpack.statusbar.app
end({ html: 'hello <i>world</i>!', onready: function(widget){ $(widget).click(function(){ jetpack.tabs.open("http://www.jogkey.de"); }); } }); ...
FAQ - Archive of obsolete content
prism is built on top of the mozilla platform and its gecko r
endering engine, just like mozilla firefox, so it provides the same capabilities to web applications that firefox provides, including support for html, javascript, css, and <canvas>.
... how does prism r
ender web pages?
... prism uses gecko, the same browser r
endering system found in firefox.
RDF Datasource How-To - Archive of obsolete content
an "address book" datasource could translate a database file into statements like "spammer128@hotmail.com's real name is 'billy dumple'" and "spammer128@hotmail.com is considered an 'important fri
end'." statements from one datasource can be combined with statements from another datasource using a composite datasource.
... by combining statements from the imap datasource and address book datasource, above, we'd be able to identify the s
ender of "message 126" as an "important fri
end".
...there are basically two approaches that you can take in this
endeavor: delegate to an inner proxy.
Abc Assembler Tests - Archive of obsolete content
tests can be found in /test/acceptance/abcasm and
end with the .abs extension.
... when run, the assembler tests include the abcasm/abs_helper.as file which defines the following functions: start(summary:string):void - start a new test section described by summary
end():void - test section finished compare_stricteq(name:string, expected:*, actual:*):void - compare the results of a testcase where name is the testcase name compare_typeerror(name:string, expected:*, actual:*):void - special function for comparing typeerrors (runtimeerrors) - will only compare the first 22 chars of expected and actual so that test can be run in release and releasedebugger configurations.
... * * *****
end license block ***** */ function main() { getlocal0 pushscope findproperty start pushstring "instructions that start with the letter l" callpropvoid start 1 newfunction .function_id(runtest) getlocal0 call 0 findproperty
end callpropvoid
end 0 returnvoid } function runtest() { // test null <= null == true findproperty compare_stricteq pushs...
The new nsString class implementation (1999) - Archive of obsolete content
this document is int
ended to briefly describe the new nsstring class architecture, and discuss the implications on memory management, optimizations, internationalization and usage patterns.
... static void ensurecapacity(nsstrimpl& astring,pruint32 anewlength); static void growcapacity(nsstrimpl& astring,pruint32 anewlength); static void app
end(nsstrimpl& adest,const nsstrimpl& asource,pruint32 anoffset,print32 acount); static void app
endcstring(nsstrimpl& adest,const char* asource,pruint32 anoffset,print32 acount); static void assign(nsstrimpl& adest,const nsstrimpl& asource,pruint32 anoffset,print32 acount); static void assigncstring(nsstrimpl& adest,const char* asource,pruint32 anoffset,print32 acount); // assign a char or ...
...our minimalistic nsimemoryagent interface is just rich enough to support the nsstring idiom, and could be ext
ended to serve as the general memory allocation idiom.
Treehydra Manual - Archive of obsolete content
instead of representing code in "easy" form like dehydra, treehydra relies on gimple, the gcc internals "middle-
end" intermediate representation.
...callbacks and gcc intermediate representations like dehydra, treehydra s
ends program representations to the user javascript via callbacks.
...this is called just before gcc converts the c++-specific ast to the generic (language-indep
endent) representation.
Using gdb on wimpy computers - Archive of obsolete content
you can add this function to the .gdbinit file in your home directory: def prun tbreak main run set auto-solib-add 0
end how do i load shared libraries?
...0x404ccdeb in __sigsusp
end (set=0xbf5ffbc0) at ../sysdeps/unix/sysv/linux/sigsusp
end.c:48 48 ../sysdeps/unix/sysv/linux/sigsusp
end.c: no such file or directory.
...[switching to thread 2051 (runnable)] 0x404ccdeb in __sigsusp
end (set=0xbf5ffbac) at ../sysdeps/unix/sysv/linux/sigsusp
end.c:48 48 ../sysdeps/unix/sysv/linux/sigsusp
end.c: no such file or directory.
Venkman Introduction - Archive of obsolete content
you can also start the browser with the -venkman command line option, which launches venkman initially instead of an application front
end.
... commands are entered in the text box, and responses are app
ended to the
end of the output.
... in addition to step in, which will execute a single line of javascript and stop, step over can be used to step over a imp
ending function call, and return control to the debugger when the call returns.
Binding Attachment and Detachment - Archive of obsolete content
if at any time a resolution of style on the element determines that a different binding should be attached, the old binding (and all bindings that it explicitly ext
ends in its inheritance chain) will be detached.
... if a binding is attached and it already specifies an inherited binding using the ext
ends attribute, then the base binding at the
end of the inheritance chain is the one that will inherit from the most derived binding that is already attached.
...the final inheritance chain is: d1->d2 ->d3 ->t when bindings are detached using element.style.mozbinding, any base bindings that were attached through the ext
ends attribute on the binding will also be removed.
DOM Interfaces - Archive of obsolete content
this means that, dep
ending on the details regarding the insertion points of the binding, it's possible that some non-anonymous nodes appear in the list.
... getanonymouselementbyattribute the getanonymouselementbyattribute methods retrieves an anonymous desc
endant with a specified attribute value.
... return value element - the return value of getanonymouselementbyattribute is an anonymous desc
endant of the given element with matching attribute name and value.
getFolder - Archive of obsolete content
the first set contains platform-indep
endent locations; the second set contains platform-specific locations.
... you are encouraged to use the platform-indep
endent locations.
...this parameter is available in netscape 6 or later and may be case sensitive (dep
ending on the operating system).
accesskey - Archive of obsolete content
if a label doesn't have the specified character, the character will be app
ended to the label with parentheses.
... it is recomm
ended that you only use characters that appear in the label.
...for these languages, you can assign an accesskey different than any of the label characters, and the accesskey text will always be app
ended as described above.
XUL Events - Archive of obsolete content
attribute: ondragdrop drag
end the drag
end event is sent to the source node (the node that was dragged) when the drag is finished.
... attribute: ondrag
end dragenter the dragenter event is sent when the mouse pointer first moves over an element during a drag.
...dep
ending on the value of the overflow property, scrollbars may have appeared.
List of commands - Archive of obsolete content
lection from the clipboard cmd_selectall cmd_selectnone cmd_copylink cmd_copyimagelocation cmd_copyimagecontents cmd_scrolltop cmd_scrollbottom cmd_scrollpageup cmd_scrollpagedown cmd_scrolllineup cmd_scrolllinedown cmd_scrollleft cmd_scrollright cmd_selectcharprevious cmd_selectcharnext cmd_wordprevious cmd_wordnext cmd_selectwordprevious cmd_selectwordnext cmd_beginline cmd_
endline cmd_selectbeginline cmd_select
endline cmd_selectlineprevious cmd_selectlinenext cmd_selectpageprevious cmd_selectpagenext cmd_selectmovetop cmd_selectmovebottom editor commands (legal when the focus is anywhere where you can type text): cmd_paste - paste a selection from the clipboard cmd_pastequote cmd_delete cmd_deletecharbackward cmd_deletecharforward cmd_deletewordbackwa...
...rd cmd_deletewordforward cmd_deletetobeginningofline cmd_deleteto
endofline cmd_scrolltop cmd_scrollbottom cmd_movetop cmd_movebottom cmd_selecttop cmd_selectbottom cmd_linenext cmd_lineprevious cmd_selectlinenext cmd_selectlineprevious cmd_charprevious cmd_charnext cmd_selectcharprevious cmd_selectcharnext cmd_beginline cmd_
endline cmd_selectbeginline cmd_select
endline cmd_wordprevious cmd_wordnext cmd_selectwordprevious cmd_selectwordnext cmd_scrollpageup cmd_scrollpagedown cmd_scrolllineup cmd_scrolllinedown cmd_movepageup cmd_movepagedown cmd_selectpageup cmd_selectpagedown other commands the following list other commands (prefixed by cmd_ or browser:) which have not been categorized here yet (though they are in the alphabetical list below): http://lx...
...nkey/sou...okmarkstree.js list of commands (listed alphabetically) browser:addbookmark browser:addbookmarkas browser:addgroupmarkas browser:back browser:editpage browser:find browser:findagain browser:findprev browser:forward browser:home browser:managebookmark browser:open browser:openfile browser:print browser:printpreview browser:savepage browser:searchinternet browser:s
endpage browser:uploadfile cmd_bm_copy cmd_bm_cut cmd_bm_delete cmd_bm_expandfolder cmd_bm_export cmd_bm_find cmd_bm_import cmd_bm_managefolder cmd_bm_movebookmark cmd_bm_newbookmark cmd_bm_newfolder cmd_bm_newseparator cmd_bm_open cmd_bm_openinnewtab cmd_bm_openinnewwindow cmd_bm_paste cmd_bm_properties cmd_bm_rename cmd_bm_selectall cmd_bm_setnewbookmarkfolder cmd_bm_setnewsea...
Menus - Archive of obsolete content
</menu> <spacer flex="1"/> <image src="logo.png"/> </menubar> in this example, a logo image is placed on the
end of a menubar.
...however, this t
ends to become more difficult for the user to use, so you should avoid adding too many levels of submenus.
... this item will be highlighted, and will do certain functions dep
ending on the kind of item it is, and the way in which it has been activated, whether via the keyboard or mouse.
OpenClose - Archive of obsolete content
somepopup.openpopup(document.documentelement, "
end_before", 0, 0, false, false); the second argument to openpopup is the anchor position, which specifies which side of the anchor the popup is positioned on.
... for instance, the value '
end_before' as used in the above example, indicates to place the left edge of the popup along the right edge of the the anchor element, aligned along the top edge of both.
...as long as you pass the right value dep
ending on the situation, it isn't too important to know the specifics of the difference between both cases.
Popup Guide - Archive of obsolete content
a popup is a menu or floating window without a title bar, borders or other window decorations that may ext
end outside of the edge of the main window.
...often, dep
ending on what was clicked on, certain commands may be hidden if not applicable to that element.
... features of items on a menu to learn about the various features of items on a menu, see features of the menuitem element modifying the items on a menu to app
end, insert and remove elements from a menu, see modifying a menu.
Recursive Generation - Archive of obsolete content
naturally, the parent will be the new result's content, rather than the outer containing element, and the starting point will be the
endpoint of the previous iteration.
...however, since c is the only element that will
end up having any additional content, only the second <hbox> element will have additional children added to it.
... for a nested item, the builder processes the query in the same way as usual, however instead of using the ref attribute as the seed starting point, the
end point or member is used instead.
Simple Query Syntax - Archive of obsolete content
in reality, the builder could be considered to convert a simple query into an ext
ended query, so that it can be processed in the same way.
...this form of attribute syntax on a rule is equivalent to a <triple> in the ext
ended syntax.
...note that the menulist itself must use the ext
ended syntax since it doesn't iterate over the children of a resource.
Custom toolbar button - Archive of obsolete content
bird mail overlay chrome://messenger/content/messenger.xul chrome://custombutton/content/button.xul # thunderbird compose overlay chrome://messenger/content/messengercompose/messengercompose.xul chrome://custombutton/content/button.xul # thunderbird address book overlay chrome://messenger/content/addressbook/addressbook.xul chrome://custombutton/content/button.xul # sunbird overlay chrome://cal
endar/content/cal
endar.xul chrome://custombutton/content/button.xul optionally remove the sections for toolbars that you do not need.
...iltoolbarpalette"> <toolbarbutton id="custom-button-1"/> </toolbarpalette> <!-- thunderbird compose --> <toolbarpalette id="msgcomposetoolbarpalette"> <toolbarbutton id="custom-button-1"/> </toolbarpalette> <!-- thunderbird address book --> <toolbarpalette id="addressbooktoolbarpalette"> <toolbarbutton id="custom-button-1"/> </toolbarpalette> <!-- sunbird --> <toolbarpalette id="cal
endartoolbarpalette"> <toolbarbutton id="custom-button-1"/> </toolbarpalette> <!-- button details --> <toolbarbutton id="custom-button-1" label="custom" tooltiptext="my custom toolbar button" oncommand="custombutton[1]()" class="toolbarbutton-1 chromeclass-toolbar-additional custombutton" /> </overlay> optionally customize the file by changing the label and tooltiptext in the last ...
...if you want to make it clear that your made-up name is not a real domain, add .invalid to the
end.
Creating an Installer - Archive of obsolete content
here is an example: function donefn ( name , result ){ alert("the package " + name + " was installed with a result of " + result); } var xpi = new object(); xpi["cal
endar"] = "cal
endar.xpi"; installtrigger.install(xpi,donefn); first, we define a callback function donefn() which will be called when the install is complete.
... next, we create an array xpi which will hold the name (cal
endar) and url (cal
endar.xpi) of the installer.
... when this section of script is executed, the file cal
endar.xpi will be installed.
Scroll Bars - Archive of obsolete content
a scroll bar is made up of several parts: the slider, which is the main part of the scroll bar with the adjustable box, and the two arrow buttons on the
end.
...the default is horizontal, which creates a scroll bar that ext
ends from left to right.
... you can also specify vertical which creates a scroll bar that ext
ends from top to bottom.
Scrolling Menus - Archive of obsolete content
if the available space is too small, arrows will appear on each
end of the menu.
...note that the exact behavior of the scrolling will dep
end on the current theme.
...olling list of buttons the following example shows how to create a scrolling list of buttons (you will need to resize the window to see the arrow buttons): example 1 : source view <arrowscrollbox orient="vertical" flex="1"> <button label="red"/> <button label="blue"/> <button label="green"/> <button label="yellow"/> <button label="orange"/> <button label="silver"/> <button label="lav
ender"/> <button label="gold"/> <button label="turquoise"/> <button label="peach"/> <button label="maroon"/> <button label="black"/> </arrowscrollbox> if you try this example, it will first open at full size.
Templates - Archive of obsolete content
other values that you can use will dep
end on the datasource you are using.
...it is constructed by taking the namespace url used by the datasource and app
ending the property name.
...so we
end up with the labels on the buttons set to the names of the bookmarks.
The Chrome URL - Archive of obsolete content
the chrome urls are indep
endent of where the files might physically be located.
...the <part> is either 'content', 'skin' or 'locale' dep
ending on which part you want.
...chrome://messenger/content/messenger.xul chrome://messenger/content/attach.js chrome://messenger/skin/icons/folder-inbox.gif chrome://messenger/locale/messenger.dtd to refer to subdirectories, you can just add them to the
end of the chrome url.
Tree Box Objects - Archive of obsolete content
note that redrawing does not occur until the calling script
ends since mozilla does not redraw in the background.
... the last argument to getcellat() is the child type which is filled in with a string dep
ending on what part of the cell the coordinate is at.
...again, the column should be either a string or a column object dep
ending on which version you are using.
Tree View Details - Archive of obsolete content
a container may be r
endered differently than a non-container.
...this tree will only support a single parent level with an inner child level, but it could be ext
ended to support additional levels without too much effort.
...they are added near the
end of the complete example, shown here: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window onload="init();" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <tree id="elementlist" flex="1"> <treecols> <treecol id="element" label="element" primary="true" flex="1"/> </treecols> <treechildren/> </tree> <script> <![cd...
Using the standard theme - Archive of obsolete content
ension/skin/custom.css" type="text/css"?> <tt>@import</tt> chains first, import the global skin in your custom style sheet using the css <tt>@import</tt> rule: @import url("chrome://global/skin/"); you then have to associate your xul file with your custom style sheet only: <?xml-stylesheet href="chrome://myextension/skin/custom.css" type="text/css"?> applying different custom style sheets dep
ending on the selected theme mozilla is able to automatically pick your custom style sheet dep
ending on the theme currently chosen by the user.
... that is, dep
ending on the theme currently selected by the user, you can provide different custom style sheets for your extensions.
... for this to work, you need to create an approriate directory structure, with directory names corresponding to the names of the themes you want to ext
end, and of course, your adapted custom style sheets.
action - Archive of obsolete content
one desc
endant of the action body should have a uri attribute set to the member variable.
... this element and its desc
endants may use variables in place of attribute values.
...boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
browser - Archive of obsolete content
if this attribute is set to true or omitted, autoscroll will be enabled or dep
ending on the user preference general.autoscroll.
... chrome (default behaviour): a browser, int
ended to be used for loading privileged content using a chrome:// uri.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
editor - Archive of obsolete content
this value will be overridden dep
ending on the content type of the document in the editor.
...this value will be overridden dep
ending on the content type of the document in the editor.
... inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
resizer - Archive of obsolete content
the resizer will s
end a command event after the resize is complete.
... bottom
end resized down and toward the
end of the line (toward the right for left-to-right locales, toward the left for right-to-left locales).
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
scrollbar - Archive of obsolete content
the scroll bar may also be used indep
endently when a numeric value or percentage needs to be selected by the user.
... the user can adjust the position of the scroll bar by clicking arrows on either
end of the scroll bar or by dragging the scroll bar thumb around.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
tabs - Archive of obsolete content
attributes closebutton, disableclose, disabled, onclosetab, onnewtab, onselect, setfocus, selectedindex, tabbox, tabindex, tooltiptextnew, value, properties accessibletype, disabled, itemcount, selectedindex, selecteditem, tabindex, value, methods advanceselectedtab, app
enditem, getindexofitem, getitematindex, insertitemat, removeitemat examples (example needed) attributes closebutton obsolete since gecko 1.9.2 type: boolean if this attribute is set to true, the tabs row will have a "new tab" button and "close" button on the
ends.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
... app
enditem( label, value ) return type: element creates a new item and adds it to the
end of the existing list of items.
toolbox - Archive of obsolete content
properties accessible, customtoolbarcount, externaltoolbars, palette, toolbarset methods app
endcustomtoolbar, collapsetoolbar, expandtoolbar examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yourwindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="toolbox example" width="300"> <toolbox> <toolbar> <toolbarbutton label="back"/> <toolbarbutton label="forward"/> <toolbarbutton l...
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
...(), haschildnodes(), insertbefore(), isdefaultnamespace(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata app
endcustomtoolbar( name, currentset ) firefox only return type: element adds a custom toolbar to the toolbox with the given name.
treeitem - Archive of obsolete content
the treeitem contains a single row and all of what appear to the user as that row's desc
endants.
...thus, it should be placed on an element that is a desc
endant of a template.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
Dialogs in XULRunner - Archive of obsolete content
roupbox flex="1"> <caption label="select favorite fruit"/> <radiogroup> <radio id="1" label="oranges because they are fruity"/> <radio id="2" selected="true" label="strawberries because of color"/> <radio id="3" label="bananna because it pre packaged"/> </radiogroup> </groupbox> </dialog> xul window elements have a special method to open dialogs, called window.op
endialog().
... here is the code needed to open a dialog: function op
endialog() { window.op
endialog("chrome://basicapp/content/dialog.xul", "newdlg", "modal"); } the resulting dialog looks like this on windows 2000, and will look similar on other operating systems: the first thing that caught my eye about dialog is the button-related attributes on the element.
...ers 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.app
endfilters(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 --- } } xul does not currently support any other common dialogs.
Using LDAP XPCOM with XULRunner - Archive of obsolete content
the solution is to use the bsmedberg stub, described in using dep
endent libraries in extension components: the component library is just a loader of the real library and all its dep
endencies, so as all the needed libraries are loaded.
...ix) \ $(xpcom_frozen_ldopts) \ $(nspr_libs) \ $(null) include $(topsrcdir)/config/rules.mk defines += -dmoz_dll_prefix=\"$(dll_prefix)\" ldapstubloader.cpp: // copyright (c) 2005 benjamin smedberg <benjamin@smedbergs.us> #include "nscore.h" #include "nsmodule.h" #include "prlink.h" #include "nsilocalfile.h" #include "nsstringapi.h" #include "nscomptr.h" static char const *const kdep
endentlibraries[] = { #ifdef ns_win32 moz_dll_prefix "nsldap32v50" moz_dll_suffix, moz_dll_prefix "nsldappr32v50" moz_dll_suffix, #
endif //ns_win32 #ifdef ns_unix moz_dll_prefix "ldap50" moz_dll_suffix, moz_dll_prefix "prldap50" moz_dll_suffix, #
endif //ns_unix nsnull }; // component.dll on windows, libcomponent.dll on linux static char krealcomponent[] = moz_dll_prefix "mozldap" moz_dll_s...
...r, 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_queryinterface(libraries)); if (!library) return ns_error_unexpected; library->setnativeleafname(ns_literal_cstring("libraries")); library->app
endnative(ns_literal_cstring("dummy")); // loop through and load dep
endent libraries for (char const *const *dep
endent = kdep
endentlibraries; *dep
endent; ++dep
endent) { library->setnativeleafname(nsdep
endentcstring(*dep
endent)); prlibrary *lib; library->load(&lib); // 1) we don't care if this failed!
XUL Application Packaging - Archive of obsolete content
required example: buildid=20060201 id specifies the unique application id required the application id, like extension ids, can be formatted either like an email applicationname@v
endor.tld or a uuid {12345678-1234-1234-1234-123456789abc}.
... the email format is recomm
ended for newly developed applications.
... example: id=testapplication@example.tld v
endor specifies the application v
endor optional example: v
endor=grinch productions profile specifies the path to use for the application's profile, based within the user's application data directory optional example: profile=myappdata the [gecko] section the gecko section specifies what version of xulrunner is required by the application.
2006-10-27 - Archive of obsolete content
peter weilbacher responded to alex's posting on the same day, stating that he is not sure what packaging system solaris 10 x86 uses but thinks that he might need to install the developer packages of x and/or xr
ender and freetype which should contain the libxr
ender.* and libfreetype.* files that are need for the linking.
... moz_cairo_libs = -l$(libxul_dist)/lib -lmozcairo -lmozlibpixman \ -l/usr/sfw/lib -lxr
ender -lfreetype -lfontconfig october 27: alex replied to masaki posting, stating that he was going to use the work around that he provided and would provide feedback if it was successful or not.
... axel responded by stating that cédric should s
end them a nice note to correct that.
2006-09-29 - Archive of obsolete content
summary: mozilla.dev.quality - september 23-29, 2006 announcements litmus down because of hardware failure - we are working to fix it - the hardware that litmus runs on failed over the week
end, so litmus is still down.
...he is looking for an approach to recomm
end to whom a bug report should be assigned (i.e.
...he has a working web-based tool called sibyl for providing both developer and component recomm
endations for bug reports.
2006-11-03 - Archive of obsolete content
discussions ext
ended validation certificates major discussion this week started by gervase markham about security certificates, more specifically ext
ended validation certificates.
... the aim of the group is to develop a new, higher standard for the validation which is done before certificate issuance, called ext
ended validation.
... a decision has to be made as to the usefulness of ext
ended validation certificates and weather or not they will make a difference to the reliability of information in certificates.
2006-11-24 - Archive of obsolete content
discussions continuing discussions on the ext
ended validation certificates large amount of activity this week regarding the ext
ended validation certificates, duane posted several snippets of interesting debates as to whether or not the protocol should be introduced.
... mozilla backing off from "ext
ended validation"?
... yet more people disgruntled by ev proposal mozilla, opera and co only tout open standards as it suits them in addition eddy nigg posted an alternative proposal for the use of ext
ended validation certificates ev certificates / another proposal meetings none during this week.
2006-09-29 - Archive of obsolete content
it was determined that the generated elements from wordpress do not follow the wc3 guidelines in app
endix c of xhtml 1.0.
... discussion on how to determine whether there is p
ending layout changes or reflows when using a popup.
...that won't help with p
ending style changes, but it'll work to detect cases when the popup or something in it needs to be reflown.
2006-11-03 - Archive of obsolete content
summary: mozilla.dev.apps.cal
endar - october 27 - november 3, 2006 announcements test day results the cal
endar qa team had a successful test day on tuesday discussions storage format for events storage format of timestamps in lightning.
... wcap cal
endar subscription discussions about cal
endar subscriptions.
... last check-ins on sun-cal
endar-event-dialog.* files discussions about some localization issues with sun-cal
endar-event-dialog.
NPAPI plugin developer guide - Archive of obsolete content
plug-in basics how plug-ins are used plug-ins and helper applications how plug-ins work understanding the runtime model plug-in detection how gecko finds plug-ins checking plug-ins by mime type overview of plug-in structure understanding the plug-in api plug-ins and platform indep
endence windowed and windowless plug-ins the default plug-in using html to display plug-ins plug-in display modes using the object element for plug-in display nesting rules for html elements using the appropriate attributes using the embed element for plug-in display using custom embed attributes plug-in references plug-in development overview writing plug-ins ...
... registering plug-ins ms windows unix mac os x drawing a plug-in instance handling memory s
ending and receiving streams working with urls getting version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, platforms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization instance creation instance destruction shutdown initialize and shutdown example drawing and event handling the npwindow structure drawing plug-ins printing the plug-in setting the window getting information ...
... drawing area forcing a paint message making a plug-in opaque making a plug-in transparent creating pop-up menus and dialog boxes event handling for windowless plug-ins streams receiving a stream telling the plug-in when a stream is created telling the plug-in when a stream is deleted finding out how much data the plug-in can accept writing the stream to the plug-in s
ending the stream in random-access mode s
ending the stream in file mode s
ending a stream creating a stream pushing data into the stream deleting the stream example of s
ending a stream urls getting urls getting the url and displaying the page posting urls posting data to an http server uploading files to an ftp server s
ending mail memory allocating and fre...
Adobe Flash - Archive of obsolete content
enter some text in the html form field below and then click outside the field, or hit the enter key, to s
end the text to the flash movie below: the example is missing.
... var myflash = document.getelementbyid("myflash").setvariable("myvar", s
endtext); a more expanded code example that shows how example 2 was created is shown in this source listing.
...} in the above code listing, the javascript function handles what flash s
ends it, and is named the same as the embed element's name attribute, concatenated with "_dofscommand".
Summary of Changes - Archive of obsolete content
proprietary or deprecated feature w3c feature or recomm
ended replacement deprecated font html 4.01 span plus css1 color: ; font-family: ; font-size: ; deprecated center or align="center" css1 text-align: center; for in-line elements like text or image deprecated center or align="center" css1 margin-left: auto; margin-right: auto; for block-level elements deprecated bgcolor css1 background-color: ; non-standard embed html 4.01 object deprecated applet html 4.01 object non-standard marquee html 4.01 div plus scriptin...
...g non-standard bgsound html 4.01 object proprietary or deprecated feature w3c feature or recomm
ended replacement ie5+ id_attribute_value document.all.id_attribute_value document.all[id_attribute_value] dom level 2: document.getelementbyid(id_attribute_value) ie5+ formname.inputname.value dom level 1: document.forms["formname"].inputname.value ie5+ inputname.value dom level 1: document.forms["formname"].inputname.value ie5+ formctrlname dom level 1: document.forms["formname"].formctrlname ie5+ document.forms(0) dom level 1: document.forms[0] ie elemref.innertext dom level 1 (core) interface we could introduce dom 3 core textcontent attribute here ...
......e3-textcontent ie5+ elemref.style.pixeltop dom level 2: parseint(elemref.style.top, 10) ie5+ elemref.style.pixelleft = x; elemref.style.pixeltop = y; dom level 2: elemref.style.left = x + "px"; elemref.style.top = y + "px"; ie5+ new activexobject("microsoft.xmlhttp") new xmlhttprequest() proprietary or deprecated feature w3c feature or recomm
ended replacement ...
-ms-hyphenate-limit-lines - Archive of obsolete content
the -ms-hyphenate-limit-lines css property is a microsoft extension specifying the maximum number of consecutive lines in an element that may be
ended with a hyphenated word.
... for instance, if 2, then no more than 2 successive lines may
end with a hyphenated word.
... if 0 then no lines may
end with a hyphenated word.
Debug - Archive of obsolete content
the debug object is an instrinsic global object that s
ends output to a debugger.
... debug.write s
ends strings to the script debugger.
... debug.writeln s
ends strings to the script debugger, followed by a newline character.
Properly Using CSS and JavaScript in XHTML Documents - Archive of obsolete content
this misunderstanding is compounded by the fact that, prior to version 9, microsoft® internet explorer only supports xhtml if it is served with mime media type text/html rather than the recomm
ended application/xhtml+xml.
... recomm
endations do not use inline style or script in xhtml replacing inline style and script with external files containing the css rules and javascript is the best approach for authoring xhtml in a backwardly compatible fashion that will not break if the mime type of the content is changed from text/html to application/xhtml+xml.
... this recomm
endation may seem rather strong however it is made with the intention of reducing future problems with xhtml content when the transition from serving xhtml as text/html to application/xhtml+xml occurs in the next few years.
Styling the Amazing Netscape Fish Cam Page - Archive of obsolete content
it's also a weird feeling when someone asks you to work on something that has near-leg
endary status in your mind.
...at the
end of it, there were a series of div elements that contained a picture of the fish, the name of the fish, and one or more paragraphs of text about the fish.
... unfortunately, a few browsers don't get this right, and
end up flowing the cards as a single vertical column instead of putting the fish side by side.
Implementation Status - Archive of obsolete content
xpath expressions in xforms section title status notes bugs 7.1 xpath datatypes supported 7.2 evaluation context partial 7.3 references, dep
endencies, and dynamic dep
endencies partial we probably already do most of it due to our 1.0 work, but we haven't verified we meet the 1.1 standards, yet 7.4 expression categories supported 7.4.2 model binding expressions and computed expressions supported 7.4.3 expression...
...we'd like to expand how we r
ender labels bound to different, unique types.
... is dispatching events instead of calling directly 332231; 10.12 refresh partial is dispatching events instead of calling directly 332231; 10.13 reset supported 10.14 load partial no xforms-link-error generated if @src invalid 333782; 10.15 s
end supported 10.16 message partial output inside message doesn't work correctly 366886; 10.17 conditional execution of xforms actions supported 10.18 iteration of xforms actions supported 11.
XForms Output Element - Archive of obsolete content
cal
endar - used to represent instance data of type date (xhtml/xul).
...xforms output is most often used when a form author needs to r
ender simple text of an instance node (xhtml/xul).
... analogous widgets are <xhtml:span/> and <xul:description/> cal
endar a form author may notice a xforms output element represented by a cal
endar widget in the mozilla xforms processor if the control meets the following criteria (xhtml/xul).
XForms Range Element - Archive of obsolete content
single-node binding special incremental - supported, default value is false start - lower bound of possible values
end - upper bound of possible values step - is used for incrementing/decrementing values start/
end/step attributes if the value of the bound instance node is outside the range of values specified by the start and
end attributes, then the range element receives a xforms-out-of-range event.
...
end specifies the upper bound of possible values, i.e.
...if this attribute is omitted, then it is assumed to be the value of
end - start / 20.
Using XForms and PHP - Archive of obsolete content
parsing submitted data dep
ending on the submission type, you might get different data formats on the server side.
...how to actually parse and use the xml data dep
ends heavily on what you want to achieve and on the php version.
...$newnode = $dom->create_element("boo"); $root->app
end_child($newnode); ...
Archived open Web documentation - Archive of obsolete content
talk:array.foreach() ok, in the
end i didn't remove the old code as it isn't hosted anywhere (i thought the github reference contained the code) but inserted a faster implementation above while retaining the rest of the document.
...if you're using older versions of tools that rely on old browser bugs or generate browser-specific code, it may be time to upgrade: stopiteration the stopiteration object was used to tell the
end of the iteration in the legacy iterator protocol.
...you can opt in in html as follows: window.importdialog() because opening windows on mobile isn't necessarily appropriate, the firefox mobile team designed the importdialog() method to replace window.op
endialog().
Correctly Using Titles With External Stylesheets - Archive of obsolete content
this can lead to a stylesheet being ignored, which is typically not what an author int
ends to do.
...any link element referring to a stylesheet with a title attribute must be either preferred or alternate, dep
ending on the value of the rel attribute.
... recomm
endations authors should make sure that any stylesheet which should always be applied is persistent instead of preferred.
Mozilla's DOCTYPE sniffing - Archive of obsolete content
the public identifier "-//o'reilly and associates//dtd html ext
ended 1.0//en".
... the public identifier "-//o'reilly and associates//dtd html ext
ended relaxed 1.0//en".
... the public identifier "-//spyglass//dtd html 2.0 ext
ended//en".
RDF in Fifty Words or Less - Archive of obsolete content
the inbox "folder" was really just a pointer to an internet resource that contains more rdf that ext
ends the graph.
...formatting a graph into xml: <rdf:rdf xmlns:rdf="http://www.w3.org/tr/wd-rdf-syntax#" xmlns:sm="http://www.mozilla.org/smart-mail/schema#"> <rdf:description about="http://www.mozilla.org/smart-mail/get-mail.cgi?user=waterson&folder=inbox"> <sm:message id="4025293"> <sm:recipient> chris waterson "waterson@netscape.com" </sm:recipient> <sm:s
ender> aunt helga "helga@netcenter.net" </sm:s
ender> <sm:received-by>x-wing.mcom.com</sm:received-by> <sm:subject>great recipe for yam soup!</sm:subject> <sm:body> http://www.mozilla.org/smart-mail/get-body.cgi?id=4025293 </sm:body> </sm:message> <sm:message id="4025294"> <sm:recipient> chris waterson "waterson@ne...
...tscape.com" </sm:recipient> <sm:s
ender> sarah waterson "waterson.2@postbox.acs.ohio-state.edu" </sm:s
ender> <sm:received-by>x-wing.mcom.com</sm:received-by> <sm:subject>we won our ultimate game</sm:subject> <sm:body> http://www.mozilla.org/smart-mail/get-body.cgi?id=4025294 </sm:body> </sm:message> </rdf:description> </rdf:rdf> upon receipt of the above monstrosity, the rdf engine folds the rdf into the graph at the appropriate place, and the tree control that actually implements the ui to the bookmarks is notified that it should begin drawing some icons for the latest message about yam soup from aunt helga.
Common causes of memory leaks in extensions - Extensions
for example: var windows = []; function injavascriptcodemodule(window) { // forgetting or failing to pop the window again windows.push(window); } both of these cases can happen if you forget to declare local variables with var or let, which means they
end up belonging to the global scope.
...for example, the following code snippets — part of a bootstrap.js — will leak: function leakref() {} function modifydocument(document) { var a = document.createelement("a"); document.body.app
endchild(a); // the new dom node holding a reference to leakref will prevent // that function object from being garbage collected and hence // will leak the whole bootstrap compartment.
... services.obs.removeobserver(myobserver, "private-browsing"); } in javascript code modules it recomm
ended to also observe the xpcom-shutdown or quit-application notifications and unregister your observers from that topic: var myobserver = { observe: function(subject, topic, data) { if (topic == "xpcom-shutdown") { services.obs.removeobserver(myobserver, "private-browsing"); services.obs.removeobserver(myobserver, "xpcom-shutdown"); } else { // do something with "pri...
Introduction to game development for the Web - Game development
also useful to help make your game playable even when the user isn't connected to the web (such as when they're stuck on an airplane for hours on
end).
... 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 s
ending their input somewhere else, thereby missing important action.
... xmlhttprequest and file api the combination of xmlhttprequest and the file api lets you s
end and receive any kind of data you want (don't let the "xml" throw you!) from a web server.
3D games on the Web - Game development
for rich gaming experiences on the web, the weapon of choice is webgl, which is r
endered on html <canvas>.
...you can generate and r
ender dynamic 3d graphics with javascript that is hardware accelerated.
...they can be split into vertex shaders and fragment shaders (or pixel shaders) — the former transforms shape positions to real 3d drawing coordinates, while the latter computes r
endering colors and other attributes.
Async scripts for asm.js - Game development
putting async into action getting async compilation is easy: when writing your javascript, just use the async attribute like so: <script async src="file.js"></script> or, to do the same thing via script: var script = document.createelement('script'); script.src = "file.js"; document.body.app
endchild(script); (scripts created from script default to async.) the default html shell emscripten generates produces the latter.
... two common situations in which a script is *not* async (as defined by the html spec) are: <script async>code</script> and var script = document.createelement('script'); script.innerhtml = "code"; document.body.app
endchild(script); both are counted as 'inline' scripts and get compiled and then run immediately.
...instead of using eval or innerhtml, both of which trigger synchronous compilation, you should use a blob with an object url: var blob = new blob([codestring]); var script = document.createelement('script'); var url = url.createobjecturl(blob); script.onload = script.onerror = function() { url.revokeobjecturl(url); }; script.src = url; document.body.app
endchild(script); the setting of src rather than innerhtml is what makes this script async.
Desktop mouse and keyboard controls - Game development
it's also easier to test control-indep
endent features like gameplay on desktop if you develop it there, so you don't have to push the files to a mobile device every time you make a change in the source code.
... you can see this example in action online at
end3r.github.io/javascript-game-controls and the full source code can be found at github.com/
end3r/javascript-game-controls.
...his.world.width*0.5) { // shoot } } if you'd like to differentiate the mouse buttons being pressed, there are three defaults you can pick from: this.game.input.mousepointer.leftbutton.isdown; this.game.input.mousepointer.moddlebutton.isdown; this.game.input.mousepointer.rightbutton.isdown; keep in mind that instead of mousepointer, it's better to use activepointer for platform indep
endent input if you want to keep the support for mobile touch interactions.
Unconventional controls - Game development
implementing mobile and desktop controls is recomm
ended is a must, and gamepad controls add that extra experience.
...interestingly enough, the first captain rogers game (asteroid belt of sirius) was optimized for low-
end, small-screen, cheap smartphones running firefox os, so you can see the difference three years can make — you can read the whole story in our building games for firefox os tv hacks post.
... using a tv remote to control the game
ended up being surprisingly easy, because the events fired by the controller are emulating conventional keyboard keys.
WebRTC data channels - Game development
a webrtc data channel lets you s
end text or binary data over an active connection to a peer.
... in the context of a game, this lets players s
end data to each other, whether text chat or game status information.
... reliable channels guarantee that messages you s
end arrive at the other peer and in the same order in which they're sent.
Game over - Game development
it's fun to watch the ball bouncing off the walls and be able to move the paddle around, but other than that the game does nothing and doesn't have any progression or
end goal.
...hitting the bottom wall will
end the game.
... first, replace where you initially called setinterval() setinterval(draw, 10); with: var interval = setinterval(draw, 10); then replace the second if statement with the following: if(y + dy < ballradius) { dy = -dy; } else if(y + dy > canvas.height-ballradius) { alert("game over"); document.location.reload(); clearinterval(interval); // needed for chrome to
end game } letting the paddle hit the ball the last thing to do in this lesson is to create some kind of collision detection between the ball and the paddle, so it can bounce off it and get back into the play area.
Track the score and win - Game development
counting the score if you can see your score throughout the game, eventually you can impress your fri
ends.
...x < b.x+brickwidth && y > b.y && y < b.y+brickheight) { dy = -dy; b.status = 0; score++; if(score == brickrowcount*brickcolumncount) { alert("you win, congratulations!"); document.location.reload(); clearinterval(interval); // needed for chrome to
end game } } } } } } thanks to this, your users can actually win the game when they destroy all the bricks, which is quite important when it comes to games.
... compare your code the latest code looks (and works) like this, in case you want to compare and contrast it with yours: exercise: add more points per brick hit, print out the number of collected points in the
end game alert box.
Animations and tweens - Game development
to the
end, we use the add.tween() method, specifying brick.scale as the argument as this is what we want to tween.
... the to() method defines the state of the object at the
end of the tween.
... it takes an object containing the chosen parameter's desired
ending values (scale takes a scale value, 1 being 100% of size, 0 being 0% of size, etc.), the time of the tween in milliseconds and the type of easing to use for the tween.
Build the brick field - Game development
r
endering the brick image next, let's load the image of the brick — add the following load.image() call just below the others: function preload() { // ...
...add a call to initbricks at the
end of the create() function: function create(){ // ...
...add the initbricks() function at the
end of our games code, just before the closing </script> tag, as shown below.
Load the assets and print them on screen - Game development
(note that the file name does not also have to be the same, but we'd recomm
end it, as it makes everything easier to follow.) of course, to load the image, it must be available in our code directory.
... now, to show it on the screen we will use another phaser method called add.sprite(); add the following new code line inside the create() function as shown: function create() { ball = game.add.sprite(50, 50, 'ball'); } this will add the ball to the game and r
ender it on the screen.
...that's it — if you load your index.html file you will see the image already loaded and r
endered on the canvas!
Player paddle and controls - Game development
r
endering the paddle from the framework point of view the paddle is very similar to the ball — we need to add a variable to represent it, load the relevant image asset, and then do the magic.
... r
endering the paddle, with physics next up, we will init our paddle by adding the following add.sprite() call inside the create() function — add it right at the bottom: paddle = game.add.sprite(game.world.width*0.5, game.world.height-5, 'paddle'); we can use the world.width and world.height values to position the paddle exactly where we want it: game.world.width*0.5 will be right in the middle o...
...to do that we can use the system's default input (mouse or touch, dep
ending on platform) and set the paddle position to where the input position is.
Bézier curve - MDN Web Docs Glossary: Definitions of Web-related terms
the
end points of the lines are then steadily moved to the next point.
... a third imaginary line is drawn with its starting point moving steadily on the first helper line and the
end point on the second helper line.
... on this imaginary line a point is drawn from its starting point moving steadily to its
end point.
CSS Object Model (CSSOM) - MDN Web Docs Glossary: Definitions of Web-related terms
the css object model (cssom) is a map of all css selectors and relevant properties for each selector in the form of a tree, with a root node, sibling, desc
endant, child, and other relationship.
...both of them are part of the critical r
endering path which is a series of steps that must happen to properly r
ender a website.
... the cssom, together with the dom, to build the r
ender tree, which is in turn used by the browser to layout and paint the web page.
Client hints - MDN Web Docs Glossary: Definitions of Web-related terms
accept-ch: dpr, width, viewport-width, downlink and / or <meta http-equiv="accept-ch" content="dpr, width, viewport-width, downlink"> when a client receives the accept-ch header, if supported, it app
ends client hint headers that match the advertised field-values.
... for example, based on accept-ch example above, the client could app
end dpr, width, viewport-width, and downlink headers to all subsequent requests.
...the client can then give the server information about the client's environment, and the server can determine which resources to s
end based on that information.
First contentful paint - MDN Web Docs Glossary: Definitions of Web-related terms
first contentful paint (fcp) is when the browser r
enders the first bit of content from the dom, providing the first feedback to the user that the page is actually loading.
... the first contentful paint time stamp is when the browser first r
endered any text, image (including background images), non-white canvas or svg.
... this excludes any content of iframes, but includes text with p
ending webfonts.
HTTP header - MDN Web Docs Glossary: Definitions of Web-related terms
headers are case-insensitive, begins at the start of a line and are immediately followed by a ':' and a value dep
ending of the header itself.
... the value finish at the next crlf or at the
end of the message.
...nd location: /newpage.html a typical set of headers: 304 not modified access-control-allow-origin: * age: 2318192 cache-control: public, max-age=315360000 connection: keep-alive date: mon, 18 jul 2016 16:06:00 gmt server: apache vary: accept-encoding via: 1.1 3dc30c7222755f86e824b93feb8b5b8c.cloudfront.net (cloudfront) x-amz-cf-id: tol0fem6ui4fgldrkjx0vao5hpkkgzulyn2twd2gawltr7vlnjtvzw== x-back
end-server: developer6.webapp.scl3.mozilla.com x-cache: hit from cloudfront x-cache-info: cached ...
Houdini - MDN Web Docs Glossary: Definitions of Web-related terms
houdini is a set of low level apis that give developers the power to ext
end css, providing the ability to hook into the styling and layout process of a browser’s r
endering engine.
...houdini code doesn't wait for that first r
endering cycle to be complete.
... rather, it is included in that first cycle, creating r
enderable, understandable styles.
Parse - MDN Web Docs Glossary: Definitions of Web-related terms
html tokens include start and
end tags, as well as attribute names and values.
...parsing can continue when a css file is encountered, but <script> tags—particularly those without an async or defer attribute—blocks r
endering, and pauses parsing of html.
...the browser then creates a r
ender tree from both these structures to be able to paint the content to the screen.
Texel - MDN Web Docs Glossary: Definitions of Web-related terms
a texel is a single-pixel within a texture map, which is an image that gets used (in whole or in part) as the image presented on a polygon's surface within a 3d r
endered image.
... the process of mapping the appropriate texel’s to their corresponding points on a polygon is called texture mapping, which is a stage of the process of r
endering a 3d image for display.
...when texture mapping occurs the r
enderer maps texel’s to the appropriate pixels.
Thread - MDN Web Docs Glossary: Definitions of Web-related terms
the main thread is the one used by the browser to handle user events, r
ender and paint the display, and to run the majority of the code that comprises a typical web page or app.
... however, modern javascript offers ways to create additional threads, each executing indep
endently while possibly communicating between one another.
...this allows slow, complex, or long-running tasks to be executed indep
endently of the main thread, preserving the overall performance of the site or app—as well as that of the browser overall.
WCAG - MDN Web Docs Glossary: Definitions of Web-related terms
web content accessibility guidelines (wcag) are a recomm
endation published by the web accessibility initiative group at the w3c.
... wcag 2.0 which superseded wcag 1.0 was published as a w3c recomm
endation on 11 december 2008.
... learn more general knowledge wcag on wikipedia technical knowledge accessibility information on mdn the wcag 2.0 recomm
endation at the w3c ...
Fundamental CSS comprehension - Learn web development
you've covered a lot in this module, so it must feel good to have reached the
end!
... note: bear in mind that the second ruleset sets font-size: 10px; on the <html> element — this means that for any desc
endants of <html>, an em will be equal to 10px rather than 16px as it is by default.
... (this is of course, provided the desc
endants in question don't have any ancestors sitting in between them and <html> in the hierarchy that have a different font-size set on them.
Images, media, and form elements - Learn web development
there are some additional elements, such as <textarea> for multiline text input, and also elements used to contain and label parts of forms such as <fieldset> and <leg
end>.
... styling text input elements elements that allow for text input, such as <input type="text">, specific types such as <input type="email">, and the <textarea> element are quite easy to style and t
end to behave just like other boxes on your page.
... as explained in the lessons on form styling in the html part of this course, many of the more complex input types are r
endered by the operating system and are inaccessible to styling.
Attribute selectors - Learn web development
[attr$=value] li[class$="-box"] matches elements with an attr attribute whose value
ends with value.
... (aside: it may help to note that ^ and $ have long been used as anchors in so-called regular expressions to mean begins with and
ends with.) the next example shows usage of these selectors: li[class^="a"] matches any attribute value which starts with a, so matches the first two list items.
... li[class$="a"] matches any attribute value that
ends with a, so matches the first and third list item.
Styling tables - Learn web development
unfortunately, it doesn't look good when r
endered on the screen (see it live at punk-bands-unstyled.html): with only the default browser styling it looks cramped, hard to read, and boring.
...normally, table columns t
end to be sized according to how much content they contain, which produces some strange results.
...lthough it might be the look you want, who knows?) with border-collapse: collapse; set, the borders collapse down into one, which looks much better: we've put a border around the whole table, which is needed because we'll be putting some borders round the table header and footer later on — it looks really odd and disjointed when you don't have a border round the whole outside of the table and
end up with gaps.
The box model - Learn web development
the box will ext
end in the inline direction to fill the space available in its container.
...the browser r
enders this as a block box, so the paragraph begins on a new line, and expands to the full width available to it.
...the box's area stops at the border — it does not ext
end into the margin.
Supporting older browsers - Learn web development
previous overview: css layout next in this module, we recomm
end using flexbox and grid as the main layout methods for your designs.
...it would be better to sp
end the time on things which make the site more accessible, thus serving far more users.
... the guide to progressive enhancement in grid layout can help you understand the ie version of the grid, and we have included some additional useful links at the
end of this lesson.
Getting started with CSS - Learn web development
to select only an <em> that is nested inside an <li> element i can use a selector called the desc
endant combinator, which simply takes the form of a space between two other selectors.
... li em { color: rebeccapurple; } this selector will select any <em> element that is inside (a desc
endant of) an <li>.
...this has different states dep
ending on whether it is unvisited, visited, being hovered over, focused via the keyboard, or in the process of being clicked (activated).
How CSS works - Learn web development
based on the selectors it finds, it works out which rules should be applied to which nodes in the dom, and attaches style to them as required (this intermediate step is called a r
ender tree).
... the r
ender tree is laid out in the structure it should appear in after the rules have been applied to it.
...the span nodes are also parents, with text nodes as their children: p ├─ "let's use:" ├─ span | └─ "cascading" ├─ span | └─ "style" └─ span └─ "sheets" this is how a browser interprets the previous html snippet —it r
enders the above dom tree and then outputs it in the browser like so: p {margin:0;} applying css to the dom let's say we added some css to our document, to style it.
Web fonts - Learn web development
for example: font-family: 'zantrokeregular', serif; you should
end up with a demo page with some nice fonts implemented on them.
... you've reached the
end of this article, and already did some skill testing in our active learning sections, but can you remember the most important information going forward?
... you can find an assessment to verify that you've retained this information at the
end of the module — see typesetting a community school homepage.
What text editors are available? - Learn web development
online manual yes bluefish gpl 3 free windows, mac, linux mailing list, wiki online manual yes brackets mit/bsd free windows, mac, linux forum, irc github wiki yes coda closed source $99 mac twitter, forum, e-mail ebook yes codelobster closed source free windows, mac, linux forum, e-mail no
end user doc yes emacs gpl 3 free windows, mac, linux faq, mailing list, news group online manual yes espresso closed source $75 mac faq, e-mail no
end user doc, but plug-in doc yes gedit gpl free windows, mac, linux mailing list, irc online manual yes kate lgpl, gpl free windows, mac, linux m...
... it dep
ends on your needs and plans.
... an extensible editor comes with fewer built-in features, but can be ext
ended based on your needs.
What are browser developer tools? - Learn web development
how to open the devtools in your browser the devtools live inside your browser in a subwindow that looks roughly like this, dep
ending on what browser you are using: how do you pull it up?
...try entering the following snippets of code into the console one by one (and then pressing enter): alert('hello!'); document.queryselector('html').style.backgroundcolor = 'purple'; const mywordmark = document.createelement('img'); mywordmark.setattribute('src','https://blog.mozilla.org/press/wp-content/themes/onemozilla/img/mozilla-wordmark.png'); document.queryselector('h1').app
endchild(mywordmark); now try entering the following incorrect versions of the code and see what you get.
... alert('hello!); document.cheeseselector('html').style.backgroundcolor = 'purple'; const mywordmark = document.createelement('img'); mybanana.setattribute('src','https://blog.mozilla.org/press/wp-content/themes/onemozilla/img/mozilla-wordmark.png'); document.queryselector('h1').app
endchild(mywordmark); you'll start to see the kind of errors that the browser returns.
Structuring a page of content - Learn web development
previous overview: introduction to html structuring a page of content ready for laying it out using css is a very important skill to master, so in this assessment you'll be tested on your ability to think about how a page might
end up looking, and choose appropriate structural semantics to build a layout on top of.
... hints and tips use the w3c nu html checker to catch unint
ended mistakes in your html, css, and svg — mistakes you might have otherwise missed — so that you can fix them.
... the provided css is designed so that when the correct structural elements are added to the markup, they will appear green in the r
endered page.
Gecko SDK
firefox, since you do not access parts of the front
end from within a component.
... furthermore, since a component contains basic functionality, it is int
ended to run with every product of the mozilla platform.
... note: you can subscribe to a cal
endar of the firefox release schedule.
Getting from Content to Layout
elements that need to be restyled are marked with flags (e.g element_has_p
ending_restyle) and are stored in the mp
endingrestyles hashtable.
... a list of restyle roots (places in the content tree where all desc
endants need to be restyled but nothing on the parent chain does) are also stored.
... frame construction regardless of whether content nodes are inserted/app
ended/deleted, frames can be created and destroyed, based on whatever is optimal for the changes in the content tree.
How Mozilla determines MIME Types
this is, however, overridden by the actual mime type the server s
ends (if any).
...however, starting in mozilla 1.7alpha, mozilla does do content sniffing, like this: when the content-type sent by the server is one of (case-sensitively) text/plain text/plain; charset=iso-8859-1 text/plain; charset=iso-8859-1 and the server did not s
end a content-encoding header, mozilla will sniff the first block of data it gets and check for non-text bytes.
... if the server did not s
end a content-type header, mozilla uses the unknown decoder to find a mime type.
How to get a stacktrace for a bug report
accessing crash report ids outside of firefox if you cannot load firefox at all you can find the crash report files at this location dep
ending on your operating system: windows : %appdata%\mozilla\firefox\crash reports\submitted\ os x : ~/library/application support/firefox/crash reports/submitted/ linux : ~/.mozilla/firefox/crash reports/submitted/ each file in this folder contains one submitted crash report id.
....dump and .extra files) into the 'p
ending' subdirectory of its 'crash reports' directory.
... if breakpad successfully s
ends the crash report to the reporting server then, by default, the files added to the 'p
ending' subdirectory for the crash are removed, and a .txt file is placed in the 'submitted' directory containing the crash id created by the reporting server.
Implementing QueryInterface
it has more than one return, but the primary return is at the
end of the function as expected; and the additional return is clear and alone at the top of the function.
...the ns_impl_query_interface2 macro can write this function for you (though it pains me to recomm
end macros), e.g., ns_impl_query_interface2(nsmyimplementation, nsix, nsiy) // implements |nsmyimplementation::queryinterface| as above ns_impl_query_interface1(nsfoo, nsifoo) // |nsfoo::queryinterface| provides |nsifoo| and |nsisupports| ns_impl_query_interface0(nsbar) // |nsbar::queryinterface| can only provide an |nsisupports| similarly, ...
...in this case the macro is for convenience only, so i don't recomm
end it, but i do offer it up as an alternative.
Download
whether partial data can actually be retained dep
ends on the saver and the download source, and may not be known before the download is started.
...this dep
ends on the saver and the download source.
... whether partial data can actually be retained dep
ends on the saver and the download source, and may not be known before the download is started.
FxAccountsOAuthClient.jsm
fxaccountsoauthclient fxaccountsoauthclient( object options object parameters string client_id string state string oauth_uri string content_uri [optional] string scope [optional] string action [optional] string authorization
endpoint ); parameters client_id - oauth id returned from client registration.
... authorization
endpoint optional optional authorization
endpoint for the oauth server.
...parameters none examples using the fxaccountsoauthclient chrome code let parameters = { oauth_uri: oauth_server_
endpoint, client_id: oauth_client_id, content_uri: content_server_url, state: oauth_state } let client = new fxaccountsoauthclient({ parameters: parameters }); client.oncomplete = function (tok
endata) { // tok
endata consists of two properties: "tok
endata.state" and "tok
endata.code" }; client.launchwebflow(); ...
Following the Android Toasts Tutorial from a JNI Perspective
for example, navigating away from an email before you s
end it triggers a "draft saved" toast to let you know that you can continue editing later.
...because we don't want to keep typing string signatures everywhere, we can
end up with typos and hard to trace back errors, we use the sig object.
.../ no arguments sig.void // return } ] static_fields: [ { name: 'length_short', sig: sig.int } ] }); var geckoappshell = jni.loadclass(my_jenv, sig.geckoappshell.substr(1, sig.geckoappshell.length - 2), { static_methods: [ { name: 'getcontext', sig: '()' + sig.context } ] }); // ok this
ends the jni declare stuff, now below you will see native-by-jni side-by-side // context context = getapplicationcontext(); var context = geckoappshell.getcontext(); // charsequence text = 'hello toast!'; var text = 'hello toast!'; // int duration = toast.length_short; var duration = toast.length_short; // toast toast = toast.maketext(context, text, duration); var ...
Deferred
function(resolve, reject) { dosomething(function cb(good) { if (good) resolve(); else reject(); }); }); method overview void resolve([optional] avalue); void reject([optional] areason); properties attribute type description promise read only promise a newly created promise, initially in the p
ending state.
... note: calling this method with a p
ending promise as the avalue argument, and then calling it again with another value before the promise is resolved or rejected, will have no effect the second time, as the associated promise is already resolved to the p
ending promise value as its resolution.
... * initially in p
ending state.
SourceMap.jsm
sourcemapgenerator.prototype.tostring() r
enders the source map being generated to a string.
... sourcenode.prototype.prep
end(chunk) prep
end a chunk of generated js to this source node.
...useful for trimming whitespace from the
end of a source node, etc.
QA phase
after you test your localization, you should s
end it to a remote repository, which will serve as a backup for your work and will let others follow your progress.
...after doing hg commit, you still need to s
end the changes to the remote repository.
...this s
ends your commits to the remote repository.
Localization sign-off reviews
does not need to be approved before revision merge between release channels, although it is recomm
ended.
... access key changes we ensure that when access keys are changed that they are consistent with the keyboard layout for that particular locale and not bl
ended between two or more distinct layouts.
...go grab a drink with fri
ends and enjoy your latest success!
MathML3Testsuite
when the markup is intentionally errorous, the correct behavior is not defined by the recomm
endation and hence the tests are considered passed if there is no fatal error (crash, etc).
...note that in general, comparing with the "sample r
endering" is not enough to conclude on the success/failure of the test.
... so please do not edit these pages if you are not able to explain gecko's r
endering.
Mozilla MathML Status
altimg, altimg-width, altimg-height, altimg-valign, alttext accepted, but do not have any effect on the r
endering.
... cdgroup accepted, but does not have any effect on the r
endering.
... xref accepted, but does not have any effect on the r
endering.
Mozilla Port Blocking
background on 08/15/2001, cert issued a vulnerability note vu#476267 for a "cross-protocol" scripting attack, known as the html form protocol attack which allowed s
ending arbitrary data to most tcp ports.
... a simple exploit of this hole allows an attacker to s
end forged unsigned mail through a mail server behind your firewall: a really nasty hole.
..."access to the port number given has been disabled for security reasons." "establishing a connection to an unsafe or otherwise banned port was prohibited" "0x804b0013 (ns_error_port_access_not_allowed)" if your product or web site uses a port which is blocked by mozilla's default port blocking rules, you can either change the port of your service to a unblocked value (recomm
ended if possible) or ask your mozilla users to enable the port.
Mozilla Quirks Mode Behavior
obsolete since gecko 8.0 prior to gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) text-decoration in quirks mode had line thickness and position adjusted on desc
endant text to match the desc
endant.
...i don't follow the code in nscssr
enderingborders well enough to tell, though.] in quirks mode a fixed width specified on a table cell resets the nowrap attribute.
... html parser in quirks mode, we parsed html comments in a non-sgml way compatible with other browsers instead of treating "--" as the comment start and
end delimiter.
Activity Monitor, Battery Status Menu and top
(apple support documentation specifically recomm
ends it for troubleshooting battery life problems.) unfortunately "energy impact" is not a good measure for either users or software developers and it should be avoided.
... ioreg -l | grep board-id in contrast, on mac os 10.9 it is computed via a simpler machine model-indep
endent formula that only factors in cpu usage and wakeup frequency.
...and it appears that a program with an “energy impact” of roughly 20 or more will eventually show up as significant, and programs that have much higher “energy impact” values t
end to show up more quickly.
Leak-hunting strategies and tips
strategy for finding leaks when trying to make a particular testcase not leak, i recomm
end focusing first on the largest object graphs (since these entrain many smaller objects), then on smaller reference-counted object graphs, and then on any remaining individual objects or small object graphs that don't entrain other objects.
... because (1) large graphs of leaked objects t
end to include some objects pointed to by global variables that confuse gc-based leak detectors, which can make leaks look smaller (as in bug 99180) or hide them completely and (2) large graphs of leaked objects t
end to hide smaller ones, it's much better to go after the large graphs of leaks first.
...sometimes these cycles ext
end through js objects (discussed further below), and since js is garbage-collected, every pointer acts like an owning pointer and the potential for fan-out is larger.
PRIOMethods
{ prdesctype file_type; prclosefn close; prreadfn read; prwritefn write; pravailablefn available; pravailable64fn available64; prfsyncfn fsync; prseekfn seek; prseek64fn seek64; prfileinfofn fileinfo; prfileinfo64fn fileinfo64; prwritevfn writev; prconnectfn connect; pracceptfn accept; prbindfn bind; prlistenfn listen; prshutdownfn shutdown; prrecvfn recv; prs
endfn s
end; prrecvfromfn recvfrom; prs
endtofn s
endto; prpollfn poll; pracceptreadfn acceptread; prtransmitfilefn transmitfile; prgetsocknamefn getsockname; prgetpeernamefn getpeername; prgetsockoptfn getsockopt; prsetsockoptfn setsockopt; }; typedef struct priomethods priomethods; parameters file_type type of file represented (tos).
... s
end s
end all the bytes specified.
... s
endto s
end bytes to specified network address.
PRIntervalTime
a platform-dep
endent type that represents a monotonically increasing integer--the nspr runtime clock.
... syntax #include <prinrval.h> typedef pruint32 printervaltime; #define pr_interval_min 1000ul #define pr_interval_max 100000ul #define pr_interval_no_wait 0ul #define pr_interval_no_timeout 0xfffffffful description the units of printervaltime are platform-dep
endent.
...waiting on events more than half a day in the future must therefore be based on a cal
endar time.
PR_GetRandomNoise
description pr_getrandomnoise provides a random value, dep
ending on platform.
... the length of the random value is dep
endent on the platform and its ability to provide a random value at that moment.
... pr_getrandomnoise is int
ended to provide a "seed" value for a another random number generator that may be suitable for cryptographic operations.
PR_ImplodeTime
converts a clock/cal
endar time to an absolute time.
... syntax #include <prtime.h> prtime pr_implodetime(const prexplodedtime *exploded); parameters the function has these parameters: exploded a pointer to the clock/cal
endar time to be converted.
... description this function converts the specified clock/cal
endar time to an absolute time and returns the converted time value.
PR_NormalizeTime
adjusts the fields of a clock/cal
endar time to their proper ranges, using a callback function.
... syntax #include <prtime.h> void pr_normalizetime ( prexplodedtime *time, prtimeparamfn params); parameters the function has these parameters: time a pointer to a clock/cal
endar time in the prexplodedtime format.
... call this function in these situations: to normalize a time after performing arithmetic operations directly on the field values of the cal
endar time object.
PR_ReadDir
if the
end of the directory is reached or an error occurs, null.
... if the
end of the directory is reached, pr_readdir returns null, and pr_geterror returns pr_no_more_files_error.
... see also pr_op
endir ...
Building NSS
it has minimal dep
endencies, including only standard c and c++ libraries, plus zlib.
... this is recomm
ended, as the build is faster and more reliable.
...this is recomm
ended.
FIPS Mode - an explanation
it requires that all cryptography done by us government personnel must be done in "devices" that have been indep
endently tested, and certified by nist, to meet the extensive requirements of that document.
... to that
end, mozilla products can function in a "fips mode", which is really "fips 140 mode", when paired with a compliant copy of nss.
... mozilla's nss cryptographic software has been tested by government-approved indep
endent testing labs and certified by nist as being fips 140 compliant when operated in fips mode on 4 previous occasions.
NSS 3.17.1 release notes
applications that use or dep
end on these symbols can and will break in future nss releases.
... added support for linux on little-
endian powerpc64.
...y returns all the bugs fixed in nss 3.17.1: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.17.1 acknowledgements the nss development team would like to thank antoine delignat-lavaud, security researcher at inria paris in team prosecco, and the advanced threat research team at intel security, who both indep
endently discovered and reported this issue, for responsibly disclosing the issue by providing advance copies of their research.
NSS 3.20 release notes
nss 3.20 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_20_rtm/src/ new in nss 3.20 new functionality the tls library has been ext
ended to support dhe ciphersuites in server applications.
... new types in sslt.h ssldhegrouptype - enumerates the set of dhe parameters embedded in nss that can be used with function ssl_dhegroupprefset new macros in ssl.h ssl_enable_server_dhe - a socket option user to enable or disable dhe ciphersuites for a server socket notable changes in nss 3.20 the tls library has been ext
ended to support dhe ciphersuites in server applications.
... nss embeds fixed dhe parameters sized 2048, 3072, 4096, 6144 and 8192 bits, which were copied from version 08 of the internet-draft "negotiated finite field diffie-hellman ephemeral parameters for tls", app
endix a.
NSS 3.28.3 release notes
seckeyecpublickey had been ext
ended with a new attribute, named "encoding".
... compatibility nss 3.28.3 shared libraries are backward compatible with most older nss 3.x shared libraries, but dep
ending on your application, may be incompatible, if you application has been compiled against header files of versions 3.28, 3.28.1, or 3.28.2.
... if you had compiled your application against header files of nss 3.28, nss 3.28.1 or nss 3.28.2, it it recomm
ended that you recompile your application against nss 3.28.3, at the time you upgrade to nss 3.28.3.
NSS 3.29.1 release notes
seckeyecpublickey had been ext
ended with a new attribute, named "encoding".
... compatibility nss 3.29.1 shared libraries are backward compatible with most older nss 3.x shared libraries, but dep
ending on your application, may be incompatible, if you application has been compiled against header files of versions 3.28, 3.28.1, 3.28.2 nss 3.29.1.
... if you had compiled your application against header files of nss 3.28, nss 3.28.1, nss 3.28.2 or nss 3.29, it it recomm
ended that you recompile your application against nss 3.29.1 (or nss 3.28.3), at the time you upgrade to nss 3.29.1 (or nss 3.28.3).
NSS 3.48 release notes
tls ext
ended master secret is enabled by default, where possible.
... maxout not block size (cve-2019-11745) bug 1593141 - add `notbefore` or similar "beginning-of-validity-period" parameter to mozilla::pkix::trustdomain::checkrevocation bug 1591363 - fix a pbkdf2 memory leak in nsc_generatekey if key length > max_key_len (256) bug 1592869 - use arm neon for ctr_xor bug 1566131 - ensure sha-1 fallback disabled in tls 1.2 bug 1577803 - mark pkcs#11 token as fri
endly if it implements ckp_public_certificates_token bug 1566126 - power ghash vector acceleration bug 1589073 - use of new pr_assert_arg in certdb.c bug 1590495 - fix a crash in pk11_makecertfromhandle bug 1591742 - ensure des iv length is valid before usage from pkcs#11 bug 1588567 - enable mozilla::pkix gtests in nss ci bug 1591315 - update nsc_decrypt length in constant time bug 1562671 - ...
...increase nss mp kdf default iteration count, by default for modern key4 storage, optionally for legacy key3.db storage bug 1590972 - use -std=c99 rather than -std=gnu99 bug 1590676 - fix build if arm doesn't support neon bug 1575411 - enable tls ext
ended master secret by default bug 1590970 - ssl_settimefunc has incomplete coverage bug 1590678 - remove -wmaybe-uninitialized warning in tls13esni.c bug 1588244 - nss changes for delegated credential key strength checks bug 1459141 - add more cbc padding tests that missed nss 3.47 bug 1590339 - fix a memory leak in btoa.c bug 1589810 - fix uninitialized variable warnings from certdata.perl bug 1573118 - enable tls 1.3 by default in nss this bugzilla query returns all the bugs fixed in nss 3.48: https://bugzilla.mozilla.org/buglist.cg...
NSS sources building testing
because nss dep
ends on the base library nspr, you should download the archive that combines both nss and nspr.
... if you are a software developer and int
end to contribute enhancements to nss, you should obtain the latest development snapshot of nss using mercurial/hg (a distributed source control management tool).
...the results directory
ends up next to the nss directory, not within it).
gtstd.html
the fortezza module is int
ended for use with fortezza hardware tokens.
...the nss teams strongly recomm
ends that users should not attempt to operate a ca for use in mission critical production business uses using nss's command line tools, nor with the simple command line test tools that come with any package of cryptographic libraries.
...for production deployment, the nss team strongly recomm
ends that you either: use certificates from a competent third-party ca that is already known to your relying party software (e.g.
Utility functions
9 and later dsau_encodedersig mxr 3.2 and later dsau_encodedersigwithlen mxr 3.9 and later hash_begin mxr 3.4 and later hash_clone mxr 3.10 and later hash_create mxr 3.4 and later hash_destroy mxr 3.4 and later hash_
end mxr 3.4 and later hash_gethashobject mxr 3.2 and later hash_gethashobjectbyoidtag mxr 3.8 and later hash_gethashtypebyoidtag mxr 3.8 and later hash_gettype mxr 3.12 and later hash_hashbuf mxr 3.10 and later hash_resultlen mxr...
... sgn_comparedigestinfo mxr 3.2 and later sgn_copydigestinfo mxr 3.2 and later sgn_createdigestinfo mxr 3.2 and later sgn_destroycontext mxr 3.2 and later sgn_destroydigestinfo mxr 3.2 and later sgn_digest mxr 3.2 and later sgn_
end mxr 3.2 and later sgn_newcontext mxr 3.2 and later sgn_update mxr 3.2 and later vfy_begin mxr 3.2 and later vfy_createcontext mxr deprecated 3.12 use vfy_createcontextdirect or vfy_createcontextwithalgorithmid vfy_createcontextdirect mxr 3.12 and ...
...later vfy_createcontextwithalgorithmid mxr 3.12 and later vfy_destroycontext mxr 3.2 and later vfy_
end mxr 3.2 and later vfy_update mxr 3.2 and later vfy_verifydata mxr deprecated 3.12 use vfy_verifydatadirect or vfy_verifydatawithalgorithmid vfy_verifydatadirect mxr 3.12 and later vfy_datawithalgorithmid mxr 3.12 and later vfy_verifydigest mxr deprecated 3.12 use vfy_verifydigestdirect or vfy_verifydigestwithalgorithmid vfy_verifydigestdirect mxr 3.12 and later vfy_verifydigestwithalgorithmid mxr 3.12 and later ...
Necko Architecture
uris (recall that a url is just one implementation of a uri) can be created as individual components indep
endently of necko, or they can be retrieved via the nsiioservice interface.
...in fact, most of what the nsiioservice does can be done indep
endently of the nsiioservice, by hand.
... dep
endencies necko requires the following libraries for linking: nspr xpcom original document information author(s): jud valeski last updated date: november 8, 1999 copyright information: portions of this content are © 1998–2007 by individual mozilla.org contributors; content available under a creative commons license | details.
Multithreading in Necko
for example, the http protocol handler has code that runs on the socket transport thread to kick off p
ending requests well before the main thread would get around to doing so.
...once at the limit of its buffers, it yields the thread to another p
ending file transport object.
...however, the details of the implementation are heavily platform dep
endent.
Rhino JavaScript compiler
compiler command line java org.mozilla.javascript.tools.jsc.main [options] file1.js [file2.js...] where options are: -ext
ends java-class-name specifies that a java class ext
ending the java class java-class-name should be generated from the incoming javascript source file.
... -o outputfile writes the class file to outputfile, which should
end in .class and must be a writable filename.
...$ java org.mozilla.javascript.tools.jsc.main -ext
ends java.applet.applet -implements java.lang.runnable nervoustext.js --norrisboyd 12:26, 13 june 2007 (pdt) ...
Rhino overview
in addition, rhino has implemented javaadapters, which allows javascript to implement any java interface or ext
end any java class with a javascript object.
...javascript: the definitive guide is recomm
ended, and contains a chapter on rhino.
... javascript language versions some behavior in the javascript engine is dep
endent on the language version.
Rhino serialization
serialization provides a way to save the state of an object and write it out to a file or s
end it across a network connection.
...they're int
ended mainly as examples of the use of serialization: $ java org.mozilla.javascript.tools.shell.main js> function f() { return 3; } js> serialize(f, "f.ser") js> quit() $ java org.mozilla.javascript.tools.shell.main js> f = deserialize("f.ser") function f() { return 3;} js> f() 3 js> here we see a simple case of a function being serialized to a file and then read into a new instance of rhino and called.
...these classes ext
end objectoutputstream and objectinputstream respectively.
Rhino shell
if it is not instance of java.io.outputstream, the process output is read, converted to a string, app
ended to the output property value converted to string and put as the new value of the output property.
...if it is not instance of java.io.outputstream, the process error output is read, converted to a string, app
ended to the err property value converted to string and put as the new value of the err property.
...the shell will also quit in interactive mode if an
end-of-file character is typed at the prompt.
Rebranding SpiderMonkey (1.8.5)
you see these lines: install:: $(pkg_config_files) @echo pkg_config_file: $(pkg_config_files) those two lines should be modified to read back: install:: $brand.pc @echo pkg_config_file: $brand.pc note: while it is possible to automate the manual editing process, this has been discouraged due to the fact that these files are automatically generated and very little constant data can be dep
ended upon.
... it also allows these instructions to apply to a wide range platforms without introducing more software dep
endencies.
...you may now perform the build and installation of your custom branded spidermonkey library: make note: dep
ending on your system you may need administrative rights to perform the installation: make install the following information isn't technically needed for using your library but it will help other applications use your library.
GC Rooting Guide
these do not need to be wrapped in any of rooting classes, but they should be immediately used to initialize a js::rooted<t> if there is any code that could gc before the
end of the containing function; a raw pointer must never be stored on the stack during a gc.
...rc, &str, "my string"); } } if a pointer to your structure is stored in some other structure, then its trace() method should invoke yours: struct myowningstruct { myclass* mything; void trace(jstracer* trc, const char* name) { if (mything) mything->trace(trc, "my thing"); } } if the toplevel structure is not stored in a jsobject, then how it gets traced dep
ends on why it should be alive.
... the simplest approach is to use js::persistentrooted (usable on anything with a trace method with the appropriate signature): js::persistentrooted<myowningstruct> immortalstruct; but note that js::persistentrooted in a struct or class is a rather dangerous thing to use -- it will keep a gc thing alive, and most gc things
end up keeping their global alive, so if your class/struct is reachable in any way from that global, then nothing will ever be cleaned up by the gc.
How to embed the JavaScript engine
ions opts(cx); opts.setfileandline(filename, lineno); bool ok = js::evaluate(cx, opts, script, strlen(script), &rval); if (!ok) return 1; } jsstring *str = rval.tostring(); printf("%s\n", js_encodestring(cx, str)); } js_destroycontext(cx); js_shutdown(); return 0; } build and run the hello world example build command line dep
ends on the os and the tools.
...*/ js_fs_
end }; js_fs_
end terminates the table.
... original document information author: br
endan eich ...
Introduction to the JavaScript shell
note: this function is int
ended only for use when testing the javascript engine.
... note: this function is int
ended only for use when testing the javascript engine.
... note: this function is int
ended only for use when testing the javascript engine.
JSNewEnumerateOp
the meaning dep
ends on enum_op.
...the meaning dep
ends on enum_op.
...(spidermonkey, noting the jsclass_new_enumerate flag, will cast that function pointer back to type jsnewenumerateop before calling it.) the behavior dep
ends on the value of enum_op: jsenumerate_init a new, opaque iterator state should be allocated and stored in *statep.
JS_ReportErrorNumber
the number of additional arguments required dep
ends on the error message, which is determined by the errorcallback.
... description these functions create a jserrorreport, populate it with an error message obtained from the given jserrorcallback, and either report it to the current error reporter callback or create an error object and set it as the p
ending exception.
...the source code seems to say we ignore the .exntype, actually, but surely i'm just missing something.) otherwise, if any javascript code is running in cx (for example, if the caller is a jsnative that was called from a script), then an error object is created and becomes the p
ending exception.
JS_SetBranchCallback
specifies a callback function that is automatically called when a script branches backward during execution, when a function returns, and at the
end of the script.
... if the callback raises an exception using js_setp
endingexception() and returns js_false, then the javascript engine propagates the exception to the script that was executing at the time.
... description js_setbranchcallback specifies a callback function that is automatically called when a script branches backward during execution, when a function returns, and at the
end of the script.
JS_YieldRequest
momentarily susp
end the current jsapi request, allowing garbage collection to run if another thread has requested it.
... js_yieldrequest momentarily susp
ends the current request.
...the effect is the same as a call to js_susp
endrequest immediately followed by a call to js_resumerequest.
SpiderMonkey 31
get it here mozilla-esr31 you will find it in "firefox ext
ended support release 31" package on hg release platform support spidermonkey 31 is supported on all the platforms where firefox 31 runs.
... when all jsapi operation has completed, the corresponding js_shutdown method (currently non-mandatory, but highly recomm
ended as it may become mandatory in the future) uninitializes spidermonkey, cleaning up memory and allocations performed by js_init.
... it is not required to call js_shutdown at present, but it is strongly recomm
ended: calling it may be required in a future spidermonkey release.
Split object
inner objects implement the jsext
endedclass.outerobject hook, which returns a pointer to the corresponding outer object.
... outer objects implement the jsext
endedclass.innerobject hook.
...the
end of the scope chain is the global object for the script.
TPS Bookmark Lists
rator should be moved to (i.e., this separator would be inserted into the bookmark list at the position of the named bookmark, causing that bookmark to be positioned below this separator) example: { separator: true } bookmark lists and phase actions following are the functions you can use in phase actions related to bookmarks: bookmarks.add - the bookmark items in the list are added to the
end of their parent folder in the specified order.
... that is, the first item is app
ended to its parent folder, then the second, and so forth.
...if location is specified without position, then the bookmark is moved to the
end of the specified folder.
Using RAII classes in Mozilla
ensuring raii classes are not used as temporaries a common mistake when using raii classes is to accidentally forget to name object, which causes its scope to be different from what is int
ended.
... for example, instead of writing: autolock lock(mmutex); which causes the lock to be held until the
end of the block, one might write: autolock(mmutex); which erroneously causes the lock to be released at the
end of the statement.
...raii nsautoscriptblocker { public: explicit nsautoscriptblocker(jscontext *cx moz_guard_object_notifier_param) { // note: no ',' before macro moz_guard_object_notifier_init; nscontentutils::addscriptblocker(cx); } ~nsautoscriptblocker() { nscontentutils::removescriptblocker(); } private: moz_decl_use_guard_object_notifier }; moz_guard_object_notifier_param is added to the
end of the constructor's parameter list.
Setting up an update server
you'll find the correct size in bytes at the
end of the line that begins "size", not the one that begins "size on disk".
... installing the update you may want to start by deleting any p
ending updates to ensure that no previously found updates interfere with installing the desired update.
...the policy file location dep
ends on the operating system you are using.
Gecko Roles
role_droplist represents the cal
endar control.
...either this object, or a singleton desc
endant, should implement the document interface.
... role_cal
endar a cal
endar that allows the user to select a date.
XForms Accessibility
he wrote: navindex was in xforms - it was stripped out as it was believed the focus model was dep
endent on the content which used it.
... cal
endar - see the docs.
... cal
endar - see the docs.
Manipulating bookmarks using Places
specifying default_index as the index at which to insert the new folder places it at the
end of the list.
...etservice(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 referenced by newbkmkid.
... // an nsinavbookmarkobserver var myext_bookmarklistener = { onbeginupdatebatch: function() {}, on
endupdatebatch: function() {}, onitemadded: function(aitemid, afolder, aindex) {}, onitemremoved: function(aitemid, afolder, aindex) {}, onitemchanged: function(abookmarkid, aproperty, aisannotationproperty, avalue) { myextension.dosomething(); }, onitemvisited: function(abookmarkid, avisitid, time) {}, onitemmoved: function(aitemid, aoldparent, aoldindex, anewparent, anewindex) {}, ...
The Publicity Stream API
the publicity stream is provided as a central place for applications to publicize application usage for the purpose of notifying a user's fri
ends of the applications which their fri
ends are using.
...this stream can be pulled down by getpublicitystream() and helps determine the results for getuserrecomm
endedapps().
...it is not recomm
ended that applications consume the publicity stream in any way (please use your own server for any in-app social aspects).
XML Extras
begins with lower case letter xmlhttprequest creation new activexobject("msxml2.xmlhttp") new xmlhttprequest() xmlhttprequest.s
end("some string") ok ok starting with milestone 0.9.7 (actually nightly 2001-11-28).
... with older builds, passing strings to s
end() works only in chrome, see post.html sample.
... the "workaround" is to use domparser object's parsefromstring() method to create a document from string, and pass the temporary document into s
end().
XPCOM Glue without mozalloc
starting with xulrunner 2.0, the frozen linkage dep
endent glue (xpcomglue_s.lib on windows, libxpcomglue_s.a on linux and mac) is dep
endent on the new infallible memory allocation routines (mozalloc).
... since these routines didn't exist prior to xulrunner 2.0, xpcom components that link against the frozen linkage dep
endent glue will not be compatible with xulrunner applications prior to 2.0.
... resulting xpcom components will no longer have a dep
endency on mozalloc, and will thus be compatible with xulrunner applications prior to 2.0 as well.
Avoiding leaks in JavaScript XPCOM components
this t
ends to be solved in one of two ways: either break the cycle at some point or ensure that the cycle is never created in the first place by making one of the pointers not own a reference (which carries the potential for crashes just like malloc and free).
...authors of javascript code that uses xpcom objects can't dep
end on all of the benefits of garbage collection.
...this makes program behavior dep
end on when garbage collection happens, which means the api is nondeterministic, which is really bad.
mozIStorageStatement
value); void bindint32parameter(in unsigned long aparamindex, in long avalue); void bindint64parameter(in unsigned long aparamindex, in long long avalue); void bindnullparameter(in unsigned long aparamindex); void bindblobparameter(in unsigned long aparamindex, [array,const,size_is(avaluesize)] in octet avalue, in unsigned long avaluesize); mozistoragep
endingstatement executeasync(mozistoragestatementcallback acallback); boolean executestep(); boolean step(); void execute(); attributes attribute type description columncount unsigned long number of columns returned.
... mozistoragep
endingstatement executeasync( [optional] mozistoragestatementcallback acallback ); parameters acallback a callback object that will be notified of progress, errors, and query completion.
... return value a mozistoragep
endingstatement object that can be used to cancel the execution of the statement.
nsIAccessNode
obsolete since gecko 2.0 innerhtml domstring the innerhtml for the dom node this is a text string of all the markup inside the dom node, not including the start and
end tag for the node.
... note: the meanings of width, height and other size measurements dep
end on the version of css being used.
... note: the meanings of width, height and other size measurements dep
end on the version of css being used.
nsIAccessible
to select an accessible you can use nsiaccessible.setselected(), nsiaccessible.takeselection() and nsiaccessible.ext
endselection().
...the following methods are int
ended for this nsiaccessible.actioncount, nsiaccessible.getactionname(), nsiaccessible.getactiondescription() and nsiaccessible.doaction().
... ext
endselection this method ext
ends the current selection from its current accessible anchor node to this accessible.
nsIAccessibleRole
role_droplist 47 represents the cal
endar control.
...either this object, or a singleton desc
endant, should implement the document interface.
... role_cal
endar 113 a cal
endar that allows the user to select a date.
nsIAsyncInputStream
note: this method exists in part to support pipes, which have both an input
end and an output
end.
... if the input
end of a pipe is closed, then writes to the output
end of the pipe will fail.
... the error code returned when an attempt is made to write to a "broken" pipe corresponds to the status code passed in when the input
end of the pipe was closed, which greatly simplifies working with pipes in some cases.
nsIAsyncOutputStream
note: this method exists in part to support pipes, which have both an input
end and an output
end.
... if the output
end of a pipe is closed, then reads from the input
end of the pipe will fail.
... the error code returned when an attempt is made to read to a "closed" pipe corresponds to the status code passed in when the output
end of the pipe was closed, which greatly simplifies working with pipes in some cases.
nsIBidiKeyboard
linux this implementation dep
ends on the gecko and gtk+ version.
...in the gecko 1.9 branch, we are going to implement all the interface, with xkb functions for xlib and gtk2 back
ends.
... on the gtk2 back
end, we will have gtk+ version checking, to use gtk+ implementations, if the problem doesn't exist.
nsIBinaryOutputStream
xpcom/io/nsibinaryoutputstream.idlscriptable this interface allows writing of primitive data types (integers, floating-point values, booleans, and so on.) to a stream in a binary, untagged, fixed-
endianness format.
... this might be used, for example, to implement network protocols or to produce architecture-neutral binary disk files, that is ones that can be read and written by both big-
endian and little-
endian platforms.
... output is written in big-
endian order (high-order byte first), as this is traditional network order.
nsICachingChannel
the default value of this attribute dep
ends on the particular implementation of nsicachingchannel.
...dep
ending on the value of nsirequest.loadflags(), the cache entry may be validated, overwritten, or simply read.
...unlike load_bypass_cache, it does not force an
end-to-
end load (that is, it does not affect proxy caches).
nsIChannel
load_retargeted_document_uri 17 if the
end consumer for this load has been retargeted after discovering its content, this flag will be set: load_replace 18 this flag is set to indicate that this channel is replacing another channel.
... load_targeted 20 set (for example by the uriloader) to indicate whether or not the
end consumer for this load has been determined.
... note: extensions should not call this method, because it t
ends to fail when a request is redirected, rather than redirecting transparentlynote: nsichannel implementations are not required to implement this method.
nsICollection
it provides basic operations on those items like: getting, setting, app
ending, removing, and so on.
... inherits from: nsiserializable last changed in gecko 1.7 method overview void app
endelement(in nsisupports item); void clear(); pruint32 count(); nsienumerator enumerate(); nsisupports getelementat(in pruint32 index); void queryelementat(in pruint32 index, in nsiidref uuid, [iid_is(uuid),retval] out nsqiresult result); void removeelement(in nsisupports item); void setelementat(in pruint32 index, in nsisupports item); methods app
endelement() app
ends a new item to the collection.
... void app
endelement( in nsisupports item ) parameters item nsisupports item to be app
ended to the list.
nsICommandLine
method overview long findflag(in astring aflag, in boolean acasesensitive); astring getargument(in long aindex); boolean handleflag(in astring aflag, in boolean acasesensitive); astring handleflagwithparam(in astring aflag, in boolean acasesensitive); void removearguments(in long astart, in long a
end); nsifile resolvefile(in astring aargument); nsiuri resolveuri(in astring aargument); attributes attribute type description length long number of arguments in the command line.
...void removearguments( in long astart, in long a
end ); parameters astart the index to the first argument to remove from the command line; this is 0-based, and the name of the application is not included.
... a
end the index to the last argument to remove from the command line.
nsIControllers
to create an instance, use: var controllers = components.classes["@mozilla.org/xul/xul-controllers;1"] .createinstance(components.interfaces.nsicontrollers); method overview void app
endcontroller(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(in unsigned long index, in nsicontroller controlle...
...r); void removecontroller(in nsicontroller controller); nsicontroller removecontrollerat(in unsigned long index); attributes attribute type description commanddispatcher nsidomxulcommanddispatcher obsolete since gecko 1.9 methods app
endcontroller() adds a controller to the
end of the list.
... void app
endcontroller( in nsicontroller controller ); parameters controller a controller to be added to the list of controllers.
nsICycleCollectorListener
ecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the order of calls will be call to begin(); then for every node in the graph a call to noteobject() and calls to noteedge() for every edge starting at that node; then a call to begindescriptions(); then for every black node in the cycle collector graph a call to either describerefcountedobject() or to describegcedobject(); and then a call to
end().
...method overview void begin(); void begindescriptions(); void describegcedobject(in unsigned long long aaddress, in boolean amarked); void describerefcountedobject(in unsigned long long aaddress, in unsigned long aknownedges, in unsigned long atotaledges); void
end(); void noteedge(in unsigned long long afromaddress, in unsigned long long atoaddress, in string aedgename); void noteobject(in unsigned long long aaddress, in string aobjectdescription); methods begin() void begin(); parameters none.
...describegcedobject() void describegcedobject( in unsigned long long aaddress, in boolean amarked ); parameters aaddress amarked describerefcountedobject() void describerefcountedobject( in unsigned long long aaddress, in unsigned long aknownedges, in unsigned long atotaledges ); parameters aaddress aknownedges atotaledges
end() void
end(); parameters none.
nsIDeviceMotion
void addwindowlistener( in nsidomwindow awindow ); parameters awindow the dom window that the accelerometer should begin s
ending mozorientation events to.
... removelistener() tells the accelerometer to stop s
ending updates to the specified nsidevicemotionlistener.
...void removewindowlistener( in nsidomwindow awindow ); parameters awindow the dom window that the accelerometer should stop s
ending mozorientation events to.
nsIFormHistory2
method overview void addentry(in astring name, in astring value); boolean entryexists(in astring name, in astring value); boolean nameexists(in astring name); void removeallentries(); void removeentriesbytimeframe(in long long abegintime, in long long a
endtime); void removeentriesforname(in astring name); void removeentry(in astring name, in astring value); attributes attribute type description dbconnection mozistorageconnection returns the underlying db connection the form history module is using.
...void removeentriesbytimeframe( in long long abegintime, in long long a
endtime ); parameters abegintime the beginning of the timeframe, in microseconds.
... a
endtime the
end of the timeframe, in microseconds.
nsIFrameScriptLoader
if this function is called on a chromemessagebroadcaster (for example, a global frame message manager or a window message manager) then: loadframescript() will load the frame script indep
endently into each applicable frame: every open frame in the given window for the window message manager, or every frame in every window for the global message manager if aallowdelayedload is true, then the script will also be loaded into any applicable new frames opened after the loadframescript() call.
... if this function is called on a chromemessages
ender: it will load the frame script only into this chromemessages
ender's frame aallowdelayedload should always be true.
... it's possible that the frame for this chromemessages
ender is not yet available at the time of the loadframescript() call, and if you pass false in this situation, your process script won't be loaded.
nsIHttpActivityObserver
activity subtype constants constant value description activity_subtype_request_header 0x5001 the http request is about to be queued for s
ending.
... interpreting activity data dep
ending on the values of the aactivitytype and aactivitysubtype fields, the aextrasizedata and aextrastringdata parameters take on different meanings.
... socket transport activity when the activity type is activity_type_socket_transport and the subtype is status_s
ending_to, the aextrasizedata parameter contains the number of bytes sent.
nsILocalFileMac
obsolete since gecko 1.9.2 boolean ispackage(); void launchwithdoc(in nsilocalfile adoctoload, in boolean alaunchinbackground); void op
endocwithapp(in nsilocalfile aapptoopenwith, in boolean alaunchinbackground); void setfiletypeandcreatorfromextension(in string aextension); obsolete since gecko 1.9.2 void setfiletypeandcreatorfrommimetype(in string amimetype); obsolete since gecko 1.9.2 attributes attribute type description bundledisplayname astring returns the display name of the application bundle (usually the human r...
... op
endocwithapp() open the document that this file points to with the given application.
... void op
endocwithapp( in nsilocalfile aapptoopenwith, in boolean alaunchinbackground ); parameters aapptoopenwith the application with which to open the document.
nsIMicrosummaryObserver
1.0 66 introduced gecko 1.8 obsolete 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) method overview void oncontentloaded(in nsimicrosummary microsummary); void onelementapp
ended(in nsimicrosummary microsummary); void onerror(in nsimicrosummary microsummary); methods oncontentloaded() called when an observed microsummary updates its content.
... onelementapp
ended() called when an element is app
ended to a microsummary set.
... void onelementapp
ended( in nsimicrosummary microsummary ); parameters microsummary the microsummary that has just been app
ended to the set.
nsIMsgIdentity
sigbottom boolean what should our signature be at the
end of the quoted text when replying above it?
...cothers boolean bcclist astring dobcc boolean dobcclist astring draftfolder astring stationeryfolder astring showsavemsgdlg boolean directoryserver astring overrideglobalpref boolean autocompletetomydomain boolean if this is false, don't app
end the user's domain to an autocomplete address with no matches.
...if this is set, this is the smtp server that should be used for the message s
end.
nsIMsgSearchSession
to create an instance, use: var searchsession = components.classes["@mozilla.org/messenger/searchsession;1"] .createinstance(components.interfaces.nsimsgsearchsession); to use the instance app
end 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.app
endterm(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 app
endterm(in nsimsgsearchterm term); void registerlistener(in nsimsgsearchnotify listener); void unregisterlistener(in nsimsgsearchnotify listener); void ge...
... createterm() nsimsgsearchterm createterm(); app
endterm() void app
endterm(in nsimsgsearchterm term); parameters term registerlistener() adds a listener to the search session.
nsIMsgWindow
method overview void displayhtmlinmessagepane(in astring title, in astring body, in boolean clearmsghdr); void stopurls(); void closewindow(); attributes attribute type description windowcommands nsimsgwindowcommands this allows the back
end code to s
end commands to the ui, such as clearmsgpane.
... statusfeedback nsimsgstatusfeedback this allows the back
end code to s
end status feedback to the ui.
... msgheadersink nsimsgheadersink this allows the back
end code to s
end message header information to the ui.
nsIPrintingPrompt
tup() - displays a native dialog showprogress() - displays a xul dialog method overview void showpagesetup(in nsiprintsettings printsettings, in nsiobserver aobs); void showprintdialog(in nsiwebbrowserprint webbrowserprint, in nsiprintsettings printsettings); void showprogress(in nsiwebbrowserprint webbrowserprint, in nsiprintsettings printsettings, in nsiobserver op
endialogobserver, in boolean isforprinting, out nsiwebprogresslistener webprogresslistener, out nsiprintprogressparams printprogressparams, out boolean notifyonopen); methods showpagesetup() shows the print progress dialog.
... void showprogress( in nsiwebbrowserprint webbrowserprint, in nsiprintsettings printsettings, in nsiobserver op
endialogobserver, in boolean isforprinting, out nsiwebprogresslistener webprogresslistener, out nsiprintprogressparams printprogressparams, out boolean notifyonopen ); parameters webbrowserprint represents the document to be printed.
... printsettings printsettings for print "job" op
endialogobserver an observer that will be notifed when the dialog is opened.
nsIProcessScriptLoader
if this function is called on a chromemessages
ender: it will load the process script only into this chromemessages
ender's child process aallowdelayedload should always be true.
... it's possible that the child process for this chromemessages
ender is not yet available at the time of the loadprocessscript() call, and if you pass false in this situation, your process script won't be loaded.
... if you are calling loadprocessscript() on a chromemessages
ender, you should always pass true here.
nsIRadioInterfaceLayer
al(in domstring number); void enumeratecalls(in nsiriltelephonycallback callback); void getdatacalllist(); unsigned short getnumberofmessagesfortext(in domstring text); void hangup(in unsigned long callindex); void registercallback(in nsiriltelephonycallback callback); void registerdatacallcallback(in nsirildatacallback callback); void rejectcall(in unsigned long callindex); void s
endsms(in domstring number, in domstring message, in long requestid, in unsigned long long processid); void setupdatacall(in long radiotech, in domstring apn, in domstring user, in domstring passwd, in long chappap, in domstring pdptype); void starttone(in domstring dtmfchar); void stoptone(); void unregistercallback(in nsiriltelephonycallback callback); void unregisterdatacallcallback(in n...
... missing exception missing description registerdatacallcallback() void registerdatacallcallback( in nsirildatacallback callback ); parameters callback missing description exceptions thrown missing exception missing description rejectcall() void rejectcall( in unsigned long callindex ); parameters callindex missing description exceptions thrown missing exception missing description s
endsms() s
ends a message to a specified number.
... void s
endsms( in domstring number, in domstring message, in long requestid, in unsigned long long processid ); parameters number a domstring with a telephone number to s
end to.
nsISearchEngine
getsubmission() gets a nsisearchsubmission object that contains information about what to s
end to the search engine, including the uri and postdata, if applicable.
...this allows the search service to provide a different nsisearchsubmission dep
ending on e.g.
...possible values dep
end on the application's installed search engines.
nsISelection2
method overview void getrangesforinterval(in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, out pruint32 resultcount, [retval, array, size_is(resultcount)] out nsidomrange results); void getrangesforintervalcomarray(in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, in rangearray results); native code only!
... void getrangesforinterval( in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, out pruint32 resultcount, [retval, array, size_is(resultcount)] out nsidomrange results ); parameters beginnode beginoffset
endnode
endoffset these four parameters represent the range to compare against the selection.
... native code only!getrangesforintervalcomarray void getrangesforintervalcomarray( in nsidomnode beginnode, in print32 beginoffset, in nsidomnode
endnode, in print32
endoffset, in prbool allowadjacent, in rangearray results ); parameters beginnode beginoffset
endnode
endoffset these four parameters represent the range to compare against the selection.
nsITraceableChannel
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.
... onstoprequest: the http request is
ending.
...rface: function(aiid) { if (aiid.equals(ci.nsistreamlistener) || aiid.equals(ci.nsisupports)) { return this; } throw cr.ns_nointerface; } }; var httpresponseobserver = { observe: function(asubject, atopic, adata) { var newlistener = new tracinglistener(); asubject.queryinterface(ci.nsitraceablechannel); newlistener.originallistener = asubject.setnewlistener(newlistener); ///////
end - do not edit newlistener.promisedone.then( function() { // no error happened console.log('yay response done:', newlistener.responsebody); }, function(areason) { // promise was rejected, right now i didnt set up rejection, but i should listen to on abort or bade status code then reject maybe } ).catch( function(acatch) { console.error('something went wrong, a ty...
nsIWebBrowserPersist
persist_flags_app
end_to_file 32768 app
end the downloaded data to the target file.
...this is used when converting to text for mail s
ending.
...the basic set is just & < > " for interoperability with older products that don't support α and fri
ends.
nsIWebSocketListener
sg); void onmessageavailable(in nsisupports acontext, in autf8string amsg); void onserverclose(in nsisupports acontext, in unsigned short acode, in autf8string areason); void onstart(in nsisupports acontext); void onstop(in nsisupports acontext, in nsresult astatuscode); methods onacknowledge() called to acknowledge a message sent via nsiwebsocketchannel.s
endmsg() or nsiwebsocketchannel.s
endbinarymsg().
... asize number of bytes placed in os s
end buffer.
... onserverclose() called when the server s
ends a close message.
nsIXMLHttpRequest
though actually, if you use addeventlistener from c++ weird things will happen too, since the result will dep
end on what js happens to be on the stack when you do it....
... example code this is a simple example code for opening a simple http request from a xul application (like a mozilla extension) without using observers: var req = components.classes["@mozilla.org/xmlextras/xmlhttprequest;1"].createinstance(); req.open('post', "http://www.foo.bar:8080/nietzsche.do", true); req.s
end('your=data&and=more&stuff=here'); example 2 var {cu: utils, cc: classes, ci: instances} = components; cu.import('resource://gre/modules/services.jsm'); function xhr(url, cb) { let xhr = cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createinstance(ci.nsixmlhttprequest); let handler = ev => { evf(m => xhr.removeeventlistener(m, handler, !1)); switch (ev.type) { ...
...you only want this if your url is to a zip file or some file you want to download and make a nsiarraybufferinputstream out of it or something xhr.s
end(null); } xhr('https://www.gravatar.com/avatar/eb9895ade1bd6627e054429d1e18b576?s=24&d=identicon&r=pg&f=1', data => { services.prompt.alert(null, 'xhr success', data); var file = os.path.join(os.constants.path.desktopdir, "test.png"); var promised = os.file.writeatomic(file, new uint8array(data)); promised.then( function() { alert('succesfully saved image to de...
nsIXPConnect
deferreleasesuntilaftergarbagecollection prbool obsolete since gecko 1.9 p
endingexception nsiexception constants constant value description init_js_standard_classes 1 << 0 flag_system_global_object 1 << 1 omit_components_object 1 << 2 xpc_xow_clearscope 1 tells updatexows() to clear the scope of all of the xows it finds.
...if the caller int
ends to use the return value from this call, the caller is responsible for rooting the jsval before making a call to this method.
... void flagsystemfilenameprefix( in string afilenameprefix, in prbool awantnativewrappers ); parameters afilenameprefix the utf-8 filename prefix to match, which should
end with a slash (/) character.
nsIXULAppInfo
this has traditionally been in the form "{aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee}" but for new applications a more readable form is encouraged: "appname@v
endor.tld".
... v
endor acstring the name of the application v
endor.
...can be an empty string if v
endor is not set.
nsIXULTemplateQueryProcessor
the reference is always a placeholder for the starting point and the member is always a placeholder for the
end points (the results).
...for instance, when examining an xml source, an xml query processor might begin at the node referred by the reference variable and
end at a list of that node's children.
...the reference aref may be used to determine the reference when calculating the value for the binding, for example when a value should dep
end on the value of another variable.
nsIXULWindow
constants constant value description lowestz 0 loweredz 4 the z level of an indep
endent window opened with the "alwayslowered" chrome flag.
... normalz 5 the default z level of an indep
endent window.
... raisedz 6 the z level of an indep
endent window opened with the "alwaysraised" chrome flag.
XPCOM Interface Reference by grouping
(i'm fully aware that this will be a great point of discussion and probably will
end in tears, but since i'm the first person to apparently take a swing at this, i get first dibs.) the primary sections consist of: browser this section contains elements associated with the view pane or the content of the "browser window" proper.
...ditabletext nsiaccessibleevent nsiaccessiblehyperlink nsiaccessiblehypertext nsiaccessibleimage nsiaccessibleprovider nsiaccessibleretrieval nsiaccessiblerole nsiaccessiblescrolltype nsiaccessibleselectable nsiaccessiblestates nsiaccessibletable nsiaccessibletext nsiaccessibletreecache nsiaccessiblevalue nsiaccessnode nsisyncmessages
ender script nsiscriptableunescapehtml nsiscriptableunicodeconverter nsiscripterror nsiscripterror2 stylesheet nsistylesheetservice url nsiuri nsiurl util nsidomserializer nsidomxpathevaluator nsidomxpathexception nsidomxpathexpression nsidomxpathresult xslt nsixsltexception nsixsltprocessor download ...
...ntmanagerextension element nsieditormailsupport message nsidbchangeannouncer nsidbchangelistener nsimessenger nsimsgcompfields nsimsgcustomcolumnhandler nsimsgdatabase nsimsgdbhdr nsimsgdbview nsimsgdbviewcommandupdater nsimsgfolder nsimsgidentity nsimsgmessageservice nsimsgs
endlater nsimsgthread nsimsgwindow nsimsgwindowcommands user history nsibrowserhistory nsibrowsersearchservice nsimicrosummary nsimicrosummarygenerator nsimicrosummaryobserver nsimicrosummaryservice nsimicrosummaryset ...
Xptcall Porting Guide
the stubs forward calls to a platform specific method that uses the interface information supplied by the overridden getinterfaceinfo to extract the parameters and build an array of platform indep
endent nsxptcminivariant structs which are in turn passed on to the overridden callmethod.
... the platform dep
endent code is responsible for doing any cleanup and returning.
...i
ended up with larger stubs than i would have preferred rather than battle the compiler over what would happen to the stack before my asm code began running.
XPIDL Syntax
end-of-line) comments are permitted between any two tokens.
... a `%{' that appears at the beginning of a line is the start of a raw code fragment, which ext
ends until the
end of a line that begins with `%}'.
...*(ident ",") ident type_decl /= [prop_list] "native" ident [parens] const_decl = "const" type_spec ident "=" expr op_decl = [prop_list] (type_spec / "void") parameter_decls raise_list parameter_decls = "(" [*(param_decl ",") param_decl] ")" param_decl = [prop_list] ("in" / "out" / "inout") type_spec ident attr_decl = [prop_list] ["readonly"] "attribute" type_spec *(ident ",") ident ; desc
ending order of precedence expr /= expr ("|" / "^" / "&") expr ; unequal precedence "|" is lowest expr /= expr ("<<" / ">>") expr expr /= expr ("+" / "-") expr expr /= expr ("*" / "/" / "%") expr expr /= ["-" / "+" / "~"] (scoped_name / literal / "(" expr ")" ) ; numeric literals: quite frankly, i'm sure you know how these kinds of ; literals work, and these are annoying to specify in abnf.
xpidl
the libidl compiler dep
ends on glib, also from the gnome project.
...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 (recomm
ended) -v verbose mode (nyi) -t create a typelib of a specific version number -i add entry to start of include path for ``#include "nsithing.idl" -o use basename (e.g.
... ``/tmp/nsithing) for output -e use explicit output filename -d write dep
endencies (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) ...
LDAP Support
this document is int
ended to "fill in the gaps" about how enterprise customers can leverage and customize ldap support in mozilla thunderbird.
... it is not int
ended as an introduction to ldap and mozilla products.
...in such a scenario, it may be hard to tell which person you really want to s
end the message to.
Use SQLite
getservice(ci.nsiproperties); var dbfile = dirservice.get("profd", ci.nsifile); dbfile.app
end("tbird.sqlite"); var dbservice = cc["@mozilla.org/storage/service;1"].
... getservice(ci.mozistorageservice); var dbconnection; if (!dbfile.exists()) dbconnection = this._dbcreate(dbservice, dbfile); else { dbconnection = dbservice.op
endatabase(dbfile); } this.dbconnection = dbconnection; }, _dbcreate: function(adbservice, adbfile) { var dbconnection = adbservice.op
endatabase(adbfile); this._dbcreatetables(dbconnection); return dbconnection; }, _dbcreatetables: function(adbconnection) { for(var name in this.dbschema.tables) adbconnection.createtable(name, this.dbschema.tables[name]); }, }; window.addeventlistener("load", function(e) { tbirdsqlite.onload(e); }, false); this is another practical sample on how to handle op
endatabase and sql queries on the client side, using in-memory (blob) sto...
...rage of 2mb: var db = op
endatabase('mydb', '1.0', 'test db', 2 * 1024 * 1024); var msg; db.transaction(function (tx) { tx.executesql('create table if not exists logs (id unique, log)'); tx.executesql('insert into logs (id, log) values (1, "foobar")'); tx.executesql('insert into logs (id, log) values (2, "logmsg")'); msg = '<p>log message created and row inserted.</p>'; document.queryselector('#status').innerhtml = msg; }); db.transaction(function (tx) { tx.executesql('select * from logs', [], function (tx, results) { var len = results.rows.length, i; msg = "<p>found rows: " + len + "</p>"; document.queryselector('#status').innerhtml += msg; for (i = 0; i < len; i++){ msg = "<p><b>" + results.rows.item(i).log + "</b></p>"; document.queryselector('#status')...
Working with ArrayBuffers
this example is based on the fact that the imagedata returned from canvasr
enderingcontext2d.getimagedata is a uint8clampedarray view for an arraybuffer.
... the following codeblock provides a basic example of getting and setting uint8clampedarray and arraybuffer of imagedata: // context is a canvasr
enderingcontext2d of some canvas var imagedata = context.getimagedata(x, y, w, h); var array = imagedata.data; // array is a uint8clampedarray var buffer = imagedata.data.buffer; // buffer is a arraybuffer // incomingbuffer is a typedarray var imagedata2 = context.createimagedata(w, h); imagedata2.data.set(incomingbuffer); further, if you have a byte array pixelbuffer, and you need to create imagedata from it.
... method 3: transfer byte array by calling memcpy this is the recomm
ended method, as it only takes a couple of milliseconds, even for large arrays.
Gecko Plugin API Reference - Plugins
plug-in basics how plug-ins are used plug-ins and helper applications how plug-ins work understanding the runtime model plug-in detection how gecko finds plug-ins checking plug-ins by mime type overview of plug-in structure understanding the plug-in api plug-ins and platform indep
endence windowed and windowless plug-ins the default plug-in using html to display plug-ins plug-in display modes using the object element for plug-in display nesting rules for html elements using the appropriate attributes using the embed element for plug-in display using custom embed attributes plug-in references plug-in development overview writing plug-ins registering plug-ins ms windows unix mac os x draw...
...ing a plug-in instance handling memory s
ending and receiving streams working with urls getting version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, platforms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization instance creation instance destruction shutdown initialize and shutdown example drawing and event handling the npwindow structure drawing plug-ins printing the plug-in setting the window getting information windowed plug-ins mac os windows unix event handling ...
... drawing area forcing a paint message making a plug-in opaque making a plug-in transparent creating pop-up menus and dialog boxes event handling for windowless plug-ins streams receiving a stream telling the plug-in when a stream is created telling the plug-in when a stream is deleted finding out how much data the plug-in can accept writing the stream to the plug-in s
ending the stream in random-access mode s
ending the stream in file mode s
ending a stream creating a stream pushing data into the stream deleting the stream example of s
ending a stream urls getting urls getting the url and displaying the page posting urls posting data to an http server uploading files to an ftp server s
ending mail memory allocating and fre...
Browser Console - Firefox Developer Tools
input/output messages: commands s
end to the browser via the command line, and the result of executing them.
...try running this code in the browser console's command line (remember that to s
end multiple lines to the browser console, use shift+enter): var newtabbrowser = gbrowser.getbrowserfortab(gbrowser.selectedtab); newtabbrowser.addeventlistener("load", function() { newtabbrowser.contentdocument.body.innerhtml = "<h1>this page has been eaten</h1>"; }, true); newtabbrowser.contentdocument.location.href = "https://mozilla.org/"; it adds a listener to the currently selected tab's lo...
...on windows, the following code will add a new item to the browser's main menu: var parent = window.document.getelementbyid("appmenuprimarypane"); var makethetea = gbrowser.ownerdocument.defaultview.document.createelementns("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem"); makethetea.setattribute("label", "a nice cup of tea?"); parent.app
endchild(makethetea); on macos, this similar code will add a new item to the "tools" menu: var parent = window.document.getelementbyid("menu_toolspopup"); var makethetea = gbrowser.ownerdocument.defaultview.document.createelementns("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul", "menuitem"); makethetea.setattribute("label", "a nice cup of tea?"); parent.app
endchild(makethetea); ...
Break on DOM mutation - Firefox Developer Tools
there are three choices: subtree modification execution pauses if any of the elementʼs desc
endant nodes are modified.
... that means, the script execution is stopped whenever a child node or desc
endant node deeper in the dom structure is added to or removed from the element the option is set on.
... examples for when this breakpoint is triggered are calling node.app
endchild() and node.removechild(), calling childnode.remove() or setting element.innerhtml on one of the subnodes.
Monster example - Firefox Developer Tools
bcdefghijklmnopqrstuvwxyz"; var namelength = randomint(min_name_length, max_name_length); var name = ""; for (var j = 0; j < namelength; j++) { name += chars[randomint(0, chars.length-1)]; } return name; } this.name = randomname(); this.eyecount = randomint(0, 25); this.tentaclecount = randomint(0, 250); } function makemonsters() { var monsters = { "fri
endly": [], "fierce": [], "undecided": [] }; for (var i = 0; i < monster_count; i++) { monsters.fri
endly.push(new monster()); } for (var i = 0; i < monster_count; i++) { monsters.fierce.push(new monster()); } for (var i = 0; i < monster_count; i++) { monsters.undecided.push(new monster()); } console.log(monsters); } var makemonstersbutton = document.g...
...specifically: the code creates an object with three properties, each an array: one for fierce monsters one for fri
endly monsters one for monsters who haven't decided yet.
... for each array, the code creates and app
ends 5000 randomly-initialized monsters.
Examine and edit CSS - Firefox Developer Tools
(note that this setting is indep
endent of the "browser styles" checkbox in the computed view.) user-agent styles are displayed against a different background, and the link to the filename and line number contains the prefix (user agent): element {} rule the element {} rule at the top of the rules list isn't actually a css rule.
... filtering rules there's a box at the top of the rules view labeled "filter styles": as you type: any rules which don't contain the typed string at all are hidden any declarations which contain the typed string are highlighted click the "x" at the
end of the search box to remove the filter.
... while you're editing css, the context menu you'll see is the normal one for working with editable text: css variable autocompletion css variable names will auto-complete dep
ending on the variables defined in the css.
CSS Grid Inspector: Examine grid layouts - Firefox Developer Tools
ext
end lines infinitely: by default, grid lines/tracks are only shown inside the element with display: grid set on it; when toggling this option on, the grid lines ext
end to the edge of the viewport along each axis.
... ext
end lines infinitely by default, the grid lines/tracks are only shown inside the element with display: grid set on it.
... when you check the "ext
end lines infinitely" option, the grid lines ext
end to the edge of the viewport along each axis.
Settings - Firefox Developer Tools
note that this setting is indep
endent of the "browser styles" checkbox in the inspector's computed view.
... enable new console front
end switch to the experimental new console.
... enable new debugger front
end enable the new debugger.
Shader Editor - Firefox Developer Tools
webgl is a javascript api for r
endering interactive 3d graphics and 2d graphics in the browser without using plugins.
... with webgl you provide 2 programs called shaders which are called at the appropriate stages of the opengl r
endering pipeline: a vertex shader, which computes the clip space coordinates of each vertex to be drawn, and a fragment shader, which determines the color for each pixel to be drawn.
...javascript code running in the page then s
ends them for compilation using the webgl apis, and they're executed on the device's gpu when needed.
Tips - Firefox Developer Tools
alt + click on a node to expand or collapse it and all its desc
endants.
...the file name will have -fullpage app
ended to it as well.
... when a request is selected click "edit and res
end" to modify its headers and s
end it again.
Web Console Helpers - Firefox Developer Tools
$(selector, element) looks up a css selector string selector , returning the first node desc
ended from element that matches.
... $$(selector, element) looks up a css selector string selector, returning an array of dom nodes desc
ended from element that match.
...when used, "-fullpage" will be app
ended to the file name.
Web console keyboard shortcuts - Firefox Developer Tools
command windows macos linux scroll to start of console output (only if the command line is empty) home home home scroll to
end of console output (only if the command line is empty)
end end end page up through console output page up page up page up page down through console output page down page down page down go backward through command history up arrow up arrow up arrow go forward through command history down arrow down arrow down arrow ...
... initiate reverse search through command history/step backwards through matching commands f9 ctrl + r f9 step forward through matching command history (after initiating reverse search) shift + f9 ctrl + s shift + f9 move to the beginning of the line home ctrl + a ctrl + a move to the
end of the line
end ctrl + e ctrl + e execute the current expression enter return enter add a new line, for entering multiline expressions shift + enter shift + return shift + enter autocomplete popup these shortcuts apply while the autocomplete popup is open: command windows macos linux choose the current autocomplete suggestion tab tab tab cancel the autoc...
...n up arrow up arrow up arrow move to the next autocomplete suggestion down arrow down arrow down arrow page up through autocomplete suggestions page up page up page up page down through autocomplete suggestions page down page down page down scroll to start of autocomplete suggestions home home home scroll to
end of autocomplete suggestions
end end end global shortcuts these shortcuts work in all tools that are hosted in the toolbox.
The JavaScript input interpreter - Firefox Developer Tools
$(selector, element) looks up a css selector string selector , returning the first node desc
ended from element that matches.
... $$(selector, element) looks up a css selector string selector, returning an array of dom nodes desc
ended from element that match.
...when used, "-fullpage" will be app
ended to the file name.
AbsoluteOrientationSensor - Web APIs
the actual reading frequency dep
ends device hardware and consequently may be less than requested.
... specifications specification status comment generic sensor api candidate recomm
endation defines sensors in general.
... candidate recomm
endation ...
Accelerometer.Accelerometer() - Web APIs
the actual reading frequency dep
ends device hardware and consequently may be less than requested.
... specifications specification status comment generic sensor api candidate recomm
endation defines sensors in general.
... candidate recomm
endation ...
AesCtrParams - Web APIs
note: see app
endix b of the nist sp800-38a standard for more information.
...the nist sp800-38a standard, which defines ctr, suggests that the counter should occupy half of the counter block (see app
endix b.2), so for aes it would be 64.
... recomm
endation ...
AesGcmParams - Web APIs
the aes-gcm specification recomm
ends that the iv should be 96 bits long, and typically contains bits from a random number generator.
...the aes-gcm specification recomm
ends that it should be 96, 104, 112, 120 or 128, although 32 or 64 bits may be acceptable in some applications: app
endix c of the specification provides additional guidance here.
... recomm
endation ...
AmbientLightSensor.AmbientLightSensor() - Web APIs
the actual reading frequency dep
ends device hardware and consequently may be less than requested.
... specifications specification status comment generic sensor api candidate recomm
endation defines sensors in general.
... candidate recomm
endation ...
Animation.ready - Web APIs
a new promise is created every time the animation enters the "p
ending" play state as well as when the animation is canceled, since in both of those scenarios, the animation is ready to be started again.
... since the same promise is used for both p
ending play and p
ending pause requests, authors are advised to check the state of the animation when the promise is resolved.
...you'll typically use a construct similar to this when using the ready promise: animation.ready.then(function() { // do whatever needs to be done when // the animation is ready to run }); example in the following example, the state of the animation will be running when the current ready promise is resolved because the animation does not leave the p
ending play state in between the calls to pause and play and hence the current ready promise does not change.
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.
...when the time specified by the loop
end property is reached, playback continues at the time specified by loopstart example in this example, the audiocontext.decodeaudiodata function is used to decode an audio track and put it into an audiobuffersourcenode.
...oad = function() { var audiodata = request.response; audioctx.decodeaudiodata(audiodata, function(buffer) { mybuffer = buffer; source.buffer = mybuffer; source.playbackrate.value = playbackcontrol.value; source.connect(audioctx.destination); source.loop = true; }, function(e){"error with decoding audio data" + e.err}); } request.s
end(); } // wire up buttons to stop and play audio, and range slider control play.onclick = function() { getdata(); source.start(0); play.setattribute('disabled', 'disabled'); playbackcontrol.removeattribute('disabled'); } specification specification status comment web audio apithe definition of 'loop' in that specification.
AudioBufferSourceNode - Web APIs
the most recent call replaces the previous one, if the audiobuffersourcenode has not already reached the
end of the buffer.
... audiobuffersourcenode.loop a boolean attribute indicating if the audio asset must be replayed when the
end of the audiobuffer is reached.
... audiobuffersourcenode.loop
end optional a floating-point number indicating the time, in seconds, at which playback of the audiobuffer stops and loops back to the time indicated by loopstart, if loop is true.
AudioContext.baseLatency - Web APIs
the
end of the audio graph — into the host system's audio subsystem ready for playing.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 58chrome android full support 58firefox android no support noopera android full support 43safari ios no support nosamsung internet android full support 7.0leg
end full support full support no support no supportexperimental.
AudioContext.resume() - Web APIs
the resume() method of the audiocontext interface resumes the progression of time in an audio context that has previously been susp
ended.
... example the following snippet is taken from our audiocontext states demo (see it running live.) when the susp
end/resume button is clicked, the audiocontext.state is queried — if it is running, susp
end() is called; if it is susp
ended, resume() is called.
... susresbtn.onclick = function() { if(audioctx.state === 'running') { audioctx.susp
end().then(function() { susresbtn.textcontent = 'resume context'; }); } else if(audioctx.state === 'susp
ended') { audioctx.resume().then(function() { susresbtn.textcontent = 'susp
end context'; }); } } specifications specification status comment web audio apithe definition of 'resume()' in that specification.
AudioContext - Web APIs
it's recomm
ended to create one audiocontext and reuse it instead of initializing a new one each time, and it's ok to use a single audiocontext for several different audio source and pipeline concurrently.
... audiocontext.resume() resumes the progression of time in an audio context that has previously been susp
ended/paused.
... audiocontext.susp
end() susp
ends the progression of time in the audio context, temporarily halting audio hardware access and reducing cpu/battery usage in the process.
AudioParam.exponentialRampToValueAtTime() - Web APIs
the change starts at the time specified for the previous event, follows an exponential ramp to the new value given in the value parameter, and reaches the new value at the time given in the
endtime parameter.
... syntax var audioparam = audioparam.exponentialramptovalueattime(value,
endtime) parameters value a floating point number representing the value the audioparam will ramp to by the given time.
...
endtime a double representing the exact time (in seconds) after the ramping starts that the changing of the value will stop.
AudioParam.linearRampToValueAtTime() - Web APIs
the change starts at the time specified for the previous event, follows a linear ramp to the new value given in the value parameter, and reaches the new value at the time given in the
endtime parameter.
... syntax var audioparam = audioparam.linearramptovalueattime(value,
endtime) parameters value a floating point number representing the value the audioparam will ramp to by the given time.
...
endtime a double representing the exact time (in seconds) after the ramping starts that the changing of the value will stop.
AudioWorkletNode.port - Web APIs
note: the port at the other
end of the channel is available under the port property of the processor.
... // ping-pong-processor.js class pingpongprocessor ext
ends audioworkletprocessor { constructor (...args) { super(...args) this.port.onmessage = (e) => { console.log(e.data) this.port.postmessage('pong') } } process (inputs, outputs, parameters) { return true } } registerprocessor('ping-pong-processor', pingpongprocessor) now in our main scripts file we'll load the processor, create an instance of audioworkletnode p...
... const audiocontext = new audiocontext() await audiocontext.audioworklet.addmodule('ping-pong-processor.js') const pingpongnode = new audioworkletnode(audiocontext, 'ping-pong-processor') // s
end the message containing 'ping' string // to the audioworkletprocessor from the audioworkletnode every second setinterval(() => pingpongnode.port.postmessage('ping'), 1000) pingpongnode.port.onmessage = (e) => console.log(e.data) pingpongnode.connect(audiocontext.destination) this will output "ping" and "pong" strings to the console every second.
AudioWorkletNode - Web APIs
it has an associated audioworkletprocessor, which does the actual audio processing in a web audio r
endering thread.
...the other
end is available under the port property of the processor.
... // white-noise-processor.js class whitenoiseprocessor ext
ends audioworkletprocessor { process (inputs, outputs, parameters) { const output = outputs[0] output.foreach(channel => { for (let i = 0; i < channel.length; i++) { channel[i] = math.random() * 2 - 1 } }) return true } } registerprocessor('white-noise-processor', whitenoiseprocessor) next, in our main script file we'll load the processor, create an instance...
AudioWorkletProcessor.port - Web APIs
note: the port at the other
end of the channel is available under the port property of the node.
... // ping-pong-processor.js class pingpongprocessor ext
ends audioworkletprocessor { constructor (...args) { super(...args) this.port.onmessage = (e) => { console.log(e.data) this.port.postmessage('pong') } } process (inputs, outputs, parameters) { return true } } registerprocessor('ping-pong-processor', pingpongprocessor) now in our main scripts file we'll load the processor, create an instance of audioworkletnode p...
... const audiocontext = new audiocontext() await audiocontext.audioworklet.addmodule('ping-pong-processor.js') const pingpongnode = new audioworkletnode(audiocontext, 'ping-pong-processor') // s
end the message containing 'ping' string // to the audioworkletprocessor from the audioworkletnode every second setinterval(() => pingpongnode.port.postmessage('ping'), 1000) pingpongnode.port.onmessage = (e) => console.log(e.data) pingpongnode.connect(audiocontext.destination) this will output "ping" and "pong" strings to the console every second.
BaseAudioContext.createScriptProcessor() - Web APIs
it is recomm
ended for authors to not specify this buffer size and allow the implementation to pick a good buffer size to balance between latency and audio quality.
...ction getdata() { request = new xmlhttprequest(); request.open('get', 'viper.ogg', true); request.responsetype = 'arraybuffer'; request.onload = function() { var audiodata = request.response; audioctx.decodeaudiodata(audiodata, function(buffer) { mybuffer = buffer; source.buffer = mybuffer; }, function(e){"error with decoding audio data" + e.err}); } request.s
end(); } // give the node a function to process audio events scriptnode.onaudioprocess = function(audioprocessingevent) { // the input buffer is the 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 (...
...ata[sample] = inputdata[sample]; // add noise to each output sample outputdata[sample] += ((math.random() * 2) - 1) * 0.2; } } } getdata(); // wire up play button playbutton.onclick = function() { source.connect(scriptnode); scriptnode.connect(audioctx.destination); source.start(); } // when the buffer source stops playing, disconnect everything source.on
ended = function() { source.disconnect(scriptnode); scriptnode.disconnect(audioctx.destination); } specifications specification status comment web audio apithe definition of 'createscriptprocessor' in that specification.
BiquadFilterNode() - Web APIs
the meaning of the other options dep
ends on the value of this one.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 6.0notes full support 6.0notes notes before samsung internet 7.0, the default values were not supported.leg
end full support full support no support no support compatibility unknown compatibility unknownsee implementation notes.see implementation notes.
CSS Painting API - Web APIs
paintr
enderingcontext2d implements a subset of the canvasr
enderingcontext2d api.
... it has an output bitmap that is the size of the object it is r
endering to.
... dictionaries paintr
enderingcontext2dsettings a dictionary providing a subset of canvasr
enderingcontext2d settings.
Drawing text - Web APIs
drawing text the canvas r
endering context provides two methods to r
ender text: filltext(text, x, y [, maxwidth]) fills a given text at the given (x,y) position.
...possible values: start,
end, left, right or center.
... function draw() { var ctx = document.getelementbyid('canvas').getcontext('2d'); var text = ctx.measuretext('foo'); // textmetrics object text.width; // 16; } gecko-specific notes in gecko (the r
endering engine of firefox, firefox os and other mozilla based applications), some prefixed apis were implemented in earlier versions to draw text on a canvas.
ChildNode.before() - Web APIs
examples inserting an element var parent = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); var span = document.createelement("span"); child.before(span); console.log(parent.outerhtml); // "<div><span></span><p></p></div>" inserting text var parent = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); child.before("text"); console.log(parent.outerhtml); // "<div>text<p></p></div>" inserting an element and text var pare...
...nt = document.createelement("div"); var child = document.createelement("p"); parent.app
endchild(child); var span = document.createelement("span"); child.before(span, "text"); console.log(parent.outerhtml); // "<div><span></span>text<p></p></div>" childnode.before() is unscopable the before() method is not scoped into the with statement.
...{ return; } object.defineproperty(item, 'before', { configurable: true, enumerable: true, writable: true, value: function before() { var argarr = array.prototype.slice.call(arguments), docfrag = document.createdocumentfragment(); argarr.foreach(function (argitem) { var isnode = argitem instanceof node; docfrag.app
endchild(isnode ?
CrashReportBody - Web APIs
examples crash reports are generally only retrievable via
endpoints set up using the report-to header.
... some sample json might look like this: { "type": "crash", "age": 42, "url": "https://example.com/", "user_agent": "mozilla/5.0 (x11; linux x86_64; rv:60.0) gecko/20100101 firefox/60.0", "body": { "reason": "oom" } } note: crash reports are always delivered to the
endpoint group named default; there is currently no way to override this.
... if you want to receive other kinds of reports, but not crash reports, make sure to use a different name for the
endpoint group that you choose for those reports.
CustomElementRegistry.upgrade() - Web APIs
syntax customelements.upgrade(root); parameters root a node instance with shadow-containing desc
endant elements that are to be upgraded.
... if there are no desc
endant elements that can be upgraded, no error is thrown.
... examples taken from the html spec: const el = document.createelement("spider-man"); class spiderman ext
ends htmlelement {} customelements.define("spider-man", spiderman); console.assert(!(el instanceof spiderman)); // not yet upgraded customelements.upgrade(el); console.assert(el instanceof spiderman); // upgraded!
CustomElementRegistry - Web APIs
customelementregistry.wh
endefined() returns an empty promise that resolves when a custom element becomes defined with the given name.
... // create a class for the element class wordcount ext
ends htmlparagraphelement { constructor() { // always call super first in constructor super(); // count words in element's parent element var wcparent = this.parentnode; function countwords(node){ var text = node.innertext || node.textcontent return text.split(/\s+/g).length; } var count = 'words: ' + countwords(wcparent); // create a shadow root var shadow = this.attachshadow({mode: ...
...'open'}); // create text node and add word count to it var text = document.createelement('span'); text.textcontent = count; // app
end it to the shadow root shadow.app
endchild(text); // update count when element content changes setinterval(function() { var count = 'words: ' + countwords(wcparent); text.textcontent = count; }, 200) } } // define the new element customelements.define('word-count', wordcount, { ext
ends: 'p' }); note: the customelementregistry is available through the window.customelements property.
DOMException() - Web APIs
candidate recomm
endation adds the constructor for the domexception class.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
DOMException.code - Web APIs
candidate recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support 4opera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
DOMException.message - Web APIs
candidate recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support 4opera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknown ...
DOMRectReadOnly.fromRect() - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 57chrome android full support 57firefox android no support noopera android full support 43safari ios full support 10.3samsung internet android full support 7.0leg
end full support full support no support no support ...
DataTransfer.setData() - Web APIs
if data for the given type does not exist, it is added at the
end of the drag data store, such that the last item in the types list will be the new type.
...use the event target's id for the data ev.datatransfer.setdata("text/plain", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); ev.preventdefault(); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); // get the data, which is the id of the drop target var data = ev.datatransfer.getdata("text"); ev.target.app
endchild(document.getelementbyid(data)); // clear the drag data cache (for all formats/types) ev.datatransfer.cleardata(); } </script> <body> <h1>examples of <code>datatransfer</code>: <code>setdata()</code>, <code>getdata()</code>, <code>cleardata()</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag it to the drop zone and ...
... recomm
endation initial definition ...
DataTransfer - Web APIs
datatransfer.mozusercancelled read only this property applies only to the drag
end event, and is true if the user canceled the drag operation by pressing escape.
...if data for the type does not exist, it is added at the
end, such that the last item in the types list will be the new format.
... recomm
endation not included in w3c html5 recomm
endation ...
DataTransferItemList.length - Web APIs
t/uri-list"); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.items; // loop through the dropped items and log their data for (var i = 0; i < data.length; i++) { if ((data[i].kind == 'string') && (data[i].type.match('^text/plain'))) { // this item is the target node data[i].getasstring(function (s){ ev.target.app
endchild(document.getelementbyid(s)); }); } else if ((data[i].kind == 'string') && (data[i].type.match('^text/html'))) { // drag data item is html data[i].getasstring(function (s){ console.log("...
...drop: uri = " + s); }); } } } function dragover_handler(ev) { console.log("dragover"); ev.preventdefault(); // set the dropeffect to move ev.datatransfer.dropeffect = "move" } function drag
end_handler(ev) { console.log("drag
end"); var datalist = ev.datatransfer.items; // clear any remaining drag data datalist.clear(); } html <div> <p id="source" ondragstart="dragstart_handler(event);" ondrag
end="drag
end_handler(event);" draggable="true"> select this element, drag it to the drop zone and then release the selection to move the element.</p> </div> <div id="target" ondro...
... recomm
endation not included in w3c html5 recomm
endation ...
DataTransferItemList.remove() - Web APIs
ri-list"); } function drop_handler(ev) { console.log("drop"); ev.preventdefault(); var data = event.datatransfer.items; // loop through the dropped items and log their data for (var i = 0; i < data.length; i++) { if ((data[i].kind == 'string') && (data[i].type.match('^text/plain'))) { // this item is the target node data[i].getasstring(function (s){ ev.target.app
endchild(document.getelementbyid(s)); }); } else if ((data[i].kind == 'string') && (data[i].type.match('^text/html'))) { // drag data item is html data[i].getasstring(function (s){ console.log("...
...drop: uri = " + s); }); } } } function dragover_handler(ev) { console.log("dragover"); ev.preventdefault(); // set the dropeffect to move ev.datatransfer.dropeffect = "move" } function drag
end_handler(ev) { console.log("drag
end"); var datalist = ev.datatransfer.items; for (var i = 0; i < datalist.length; i++) { datalist.remove(i); } // clear any remaining drag data datalist.clear(); } html <h1>example uses of <code>datatransferitemlist</code> methods and property</h1> <div> <p id="source" ondragstart="dragstart_handler(event);" ondrag
end="drag
end_handler(event);...
... recomm
endation not included in w3c html5 recomm
endation ...
DeprecationReportBody - Web APIs
anticipatedremoval a date object (r
endered as a string) representing the date when the feature is expected to be removed from the current browser.
... the report details are displayed via the displayreports() fuction, which takes the observer callback's reports parameter as its parameter: function displayreports(reports) { const outputelem = document.queryselector('.output'); const list = document.createelement('ul'); outputelem.app
endchild(list); for(let i = 0; i < reports.length; i++) { let listitem = document.createelement('li'); let textnode = document.createtextnode('report ' + (i + 1) + ', type: ' + reports[i].type); listitem.app
endchild(textnode); let innerlist = document.createelement('ul'); listitem.app
endchild(innerlist); list.app
endchild(listitem); for (let key in reports[i].body) { ...
... let innerlistitem = document.createelement('li'); let keyvalue = reports[i].body[key]; innerlistitem.textcontent = key + ': ' + keyvalue; innerlist.app
endchild(innerlistitem); } } } the reports parameter contains an array of all the reports in the observer's report queue.
Document.createDocumentFragment() - Web APIs
the usual use case is to create the document fragment, app
end elements to the document fragment and then app
end the document fragment to the dom tree.
... since the document fragment is in memory and not part of the main dom tree, app
ending children to it does not cause page reflow (computation of element's position and geometry).
... html <ul id="ul"> </ul> javascript var element = document.getelementbyid('ul'); // assuming ul exists var fragment = document.createdocumentfragment(); var browsers = ['firefox', 'chrome', 'opera', 'safari', 'internet explorer']; browsers.foreach(function(browser) { var li = document.createelement('li'); li.textcontent = browser; fragment.app
endchild(li); }); element.app
endchild(fragment); result specifications specification status comment domthe definition of 'document.createdocumentfragment()' in that specification.
Document.importNode() - Web APIs
to include it, you need to call an insertion method such as app
endchild() or insertbefore() with a node that is currently in the document tree.
... if deep is set to true, then externalnode and all of its desc
endants are copied.
... example const iframe = document.queryselector("iframe"); const oldnode = iframe.contentwindow.document.getelementbyid("mynode"); const newnode = document.importnode(oldnode, true); document.getelementbyid("container").app
endchild(newnode); notes before they can be inserted into the current document, nodes from external documents should either be: cloned using document.importnode(); or adopted using document.adoptnode().
Document.readyState - Web APIs
var span = document.createelement("span"); span.textcontent = "a <span> element."; document.body.app
endchild(span); break; case "complete": // the page is fully loaded.
... recomm
endation html5the definition of 'document readiness' in that specification.
... recomm
endation initial specification.
DocumentFragment - Web APIs
usage notes a common use for documentfragment is to create one, assemble a dom subtree within it, then app
end or insert the fragment into the dom using node interface methods such as app
endchild() or insertbefore().
...because all of the nodes are inserted into the document at once, only one reflow and r
ender is triggered instead of potentially one for each node inserted if they were inserted separately.
... example html <ul id="list"></ul> javascript var list = document.queryselector('#list') var fruits = ['apple', 'orange', 'banana', 'melon'] var fragment = new documentfragment() fruits.foreach(function (fruit) { var li = document.createelement('li') li.innerhtml = fruit fragment.app
endchild(li) }) list.app
endchild(fragment) result specifications specification status comment domthe definition of 'documentfragment' in that specification.
DocumentOrShadowRoot.activeElement - Web APIs
if so, you can get more detail by using the object's selectionstart and selection
end properties.
...which elements are focusable varies dep
ending on the platform and the browser's current configuration.
...morbi sed euismod diam.</textarea> </form> <p>active element id: <b id="output-element"></b></p> <p>selected text: <b id="output-text"></b></p> javascript function onmouseup(e) { const activetextarea = document.activeelement; const selection = activetextarea.value.substring( activetextarea.selectionstart, activetextarea.selection
end ); const outputelement = document.getelementbyid('output-element'); const outputtext = document.getelementbyid('output-text'); outputelement.innerhtml = activetextarea.id; outputtext.innerhtml = selection; } const textarea1 = document.getelementbyid('ta-example-one'); const textarea2 = document.getelementbyid('ta-example-two'); textarea1.addeventlistener('mouseup', onmouseup, false); ...
How to create a DOM tree - Web APIs
on"); personelem1.setattribute("first-name", "eric"); personelem1.setattribute("middle-initial", "h"); personelem1.setattribute("last-name", "jung"); var addresselem1 = doc.createelement("address"); addresselem1.setattribute("street", "321 south st"); addresselem1.setattribute("city", "denver"); addresselem1.setattribute("state", "co"); addresselem1.setattribute("country", "usa"); personelem1.app
endchild(addresselem1); var addresselem2 = doc.createelement("address"); addresselem2.setattribute("street", "123 main st"); addresselem2.setattribute("city", "arlington"); addresselem2.setattribute("state", "ma"); addresselem2.setattribute("country", "usa"); personelem1.app
endchild(addresselem2); var personelem2 = doc.createelement("person"); personelem2.setattribute("first-name", "jed"); personel...
...em2.setattribute("last-name", "brown"); var addresselem3 = doc.createelement("address"); addresselem3.setattribute("street", "321 north st"); addresselem3.setattribute("city", "atlanta"); addresselem3.setattribute("state", "ga"); addresselem3.setattribute("country", "usa"); personelem2.app
endchild(addresselem3); var addresselem4 = doc.createelement("address"); addresselem4.setattribute("street", "123 west st"); addresselem4.setattribute("city", "seattle"); addresselem4.setattribute("state", "wa"); addresselem4.setattribute("country", "usa"); personelem2.app
endchild(addresselem4); var addresselem5 = doc.createelement("address"); addresselem5.setattribute("street", "321 south avenue"); addresselem5.setattribute("city", "denver"); addresselem5.setattribute("state", "co"); addresselem5.setattr...
...ibute("country", "usa"); personelem2.app
endchild(addresselem5); peopleelem.app
endchild(personelem1); peopleelem.app
endchild(personelem2); doc.app
endchild(peopleelem); see also the dom chapter of the xul tutorial.
DragEvent.dataTransfer - Web APIs
example this example illustrates accessing the drag and drop data within the drag
end event handler.
...} dragtarget.addeventlistener("drag
end", function(ev) { // call the drag and drop data processor if (ev.datatransfer !== null) processdata(ev.datatransfer); }, false); specifications specification status comment html living standardthe definition of 'dragevent.datatransfer' in that specification.
... recomm
endation initial definition ...
DragEvent - Web APIs
drag
end this event is fired when a drag operation is being
ended (by releasing a mouse button or hitting the escape key).
... globaleventhandlers.ondrag
end a global event handler for the drag
end event.
... recomm
endation initial definition ...
EXT_disjoint_timer_query - Web APIs
the ext_disjoint_timer_query extension is part of the webgl api and provides a way to measure the duration of a set of gl commands, without stalling the r
endering pipeline.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... ext.
endqueryext() the timer stops when all commands prior to
endqueryext have been fully executed.
EXT_sRGB - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants this extension exposes the following constants, which can be used in the teximage2d(), texsubimage2d(), r
enderbufferstorage() and getframebufferattachmentparameter() methods.
... recomm
endation initial definition.
EXT_texture_filter_anisotropic - Web APIs
using just mipmapping, these lookups have a t
endency to average to grey.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... recomm
endation initial definition.
Element.getClientRects() - Web APIs
originally, microsoft int
ended this method to return a textrectangle object for each line of text.
... for html <area> elements, svg elements that do not r
ender anything themselves, display:none elements, and generally any elements that are not directly r
endered, an empty list is returned.
... tablerectdiv.style.width = (rect.width - 2) + 'px'; tablerectdiv.style.height = (rect.height - 2) + 'px'; document.body.app
endchild(tablerectdiv); } } (function() { /* call function addclientrectsoverlay(elt) for all elements with assigned class "withclientrectsoverlay" */ var elt = document.getelementsbyclassname('withclientrectsoverlay'); for (var i = 0; i < elt.length; i++) { addclientrectsoverlay(elt[i]); } })(); result specifications specification status comment c...
Element.getElementsByClassName() - Web APIs
the element method getelementsbyclassname() returns a live htmlcollection which contains every desc
endant element which has the specified class name or names.
... examples matching a single class to look for elements that include among their classes a single specified class, we just provide that class name when calling getelementsbyclassname(): element.getelementsbyclassname('test'); this example finds all elements that have a class of test, which are also a desc
endant of the element that has the id of main: document.getelementbyid('main').getelementsbyclassname('test'); matching multiple classes to find elements whose class lists include both the red and test classes: element.getelementsbyclassname('red test'); examining the results you can use either the item() method on the returned htmlcollection or standard array syntax to examine individual eleme...
...mentsbyclassname('colorbox'); for (var i=0; i<matches.length; i++) { matches[i].classlist.remove('colorbox'); matches.item(i).classlist.add('hueframe'); } instead, use another method, such as: var matches = element.getelementsbyclassname('colorbox'); while (matches.length > 0) { matches.item(0).classlist.add('hueframe'); matches[0].classlist.remove('colorbox'); } this code finds desc
endant elements with the "colorbox" class, adds the class "hueframe", by calling item(0), then removes "colorbox" (using array notation).
Element.getElementsByTagName() - Web APIs
all desc
endants of the specified element are searched, but not the element itself.
... element.getelementsbytagname is similar to document.getelementsbytagname(), except that it only searches for elements that are desc
endants of the specified element.
...only the element's desc
endants are included, not the element itself.
FileSystemDirectoryEntry.createReader() - Web APIs
when it returns an empty array, the
end of the directory has beenr reached, and the recursion
ends.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤37chrome android full support 18firefox android full support 50opera android no support nosafari ios full support 11.3samsung internet android full support yesleg
end full support full support no support no supportexperimental.
FileSystemDirectoryEntry.removeRecursively() - Web APIs
the filesystemdirectoryentry interface's method removerecursively() removes the directory as well as all of its content, hierarchically iterating over its entire subtree of desc
endant files and directories.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... no support 50 — 52notes notes while the removerecursively() method existed, it immediately called the error callback with ns_error_dom_security_err.opera android no support nosafari ios no support nosamsung internet android full support yesleg
end full support full support no support no supportnon-standard.
FileSystemEntry.fullPath - Web APIs
this can also be thought of as a path which is relative to the root directory, with a "/" prep
ended to it to make it absolute.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... ≤37chrome android full support 18firefox android full support 50opera android no support nosafari ios full support 11.3samsung internet android full support yesleg
end full support full support no support no supportexperimental.
MediaKeyStatusMap.has() - Web APIs
specifications specification status comment encrypted media extensions recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 4.0leg
end full support full support compatibility unknown compatibility unknownexperimental.
MediaKeyStatusMap.keys() - Web APIs
specifications specification status comment encrypted media extensions recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 4.0leg
end full support full support compatibility unknown compatibility unknownexperimental.
MediaKeyStatusMap.size - Web APIs
recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 4.0leg
end full support full support compatibility unknown compatibility unknownexperimental.
MediaKeyStatusMap.values() - Web APIs
specifications specification status comment encrypted media extensions recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 4.0leg
end full support full support compatibility unknown compatibility unknownexperimental.
MediaRecorder.start() - Web APIs
a blob is created and the data is collected in it until the time slice period elapses or the source media
ends.
... each time a blob is filled up to that point (the timeslice duration or the
end-of-media, if no slice duration was provided), a dataavailable event is sent to the mediarecorder with the recorded data.
... when the source stream
ends, state is set to inactive and data gathering stops.
MediaSource.readyState - Web APIs
ended: the source is attached to a media element but the stream has been
ended via a call to mediasource.
endofstream().
...rl.createobjecturl(mediasource); mediasource.addeventlistener('sourceopen', sourceopen); } else { console.error('unsupported mime type or codec: ', mimecodec); } function sourceopen (_) { //console.log(this.readystate); // open var mediasource = this; var sourcebuffer = mediasource.addsourcebuffer(mimecodec); fetchab(asseturl, function (buf) { sourcebuffer.addeventlistener('update
end', function (_) { mediasource.
endofstream(); video.play(); //console.log(mediasource.readystate); //
ended }); sourcebuffer.app
endbuffer(buf); }); }; specifications specification status comment media source extensionsthe definition of 'readystate' in that specification.
... recomm
endation initial definition.
active - Web APIs
a stream is considered active if at least one of its mediastreamtracks is not in the mediastreamtrack.
ended state.
... once every track has
ended, the stream's active property becomes false.
... candidate recomm
endation initial definition.
MediaStream.getTracks() - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 45chrome android full support 45firefox android full support yesopera android no support nosafari ios full support yessamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
MediaStream.id - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...— 6.0leg
end full support full support no support no support see also mediastream, the interface this property belongs to.
MediaStream.onaddtrack - Web APIs
example this example adds a listener which, when a new track is added to the stream, app
ends a new item to a list of tracks; the new item shows the track's kind ("audio" or "video") and label.
... stream.onaddtrack = function(event) { let tracklist = document.getelementbyid("tracks"); let label = document.createelement("li"); label.innerhtml = event.track.kind + ": " + event.track.label; tracklist.app
endchild(label); }; specifications specification status comment media capture and streamsthe definition of 'mediastream.onaddtrack' in that specification.
... candidate recomm
endation initial specification.
MediaStream - Web APIs
mediastream.
ended read only a boolean value set to true if the
end of the stream has been reached.
... this has been removed from the specification; you should instead check the value of mediastreamtrack.readystate to see if its value is
ended for the track or tracks you want to ensure have finished playing.
... candidate recomm
endation ...
MediaStreamTrack.enabled - Web APIs
the enabled property on the mediastreamtrack interface is a boolean value which is true if the track is allowed to r
ender the source stream or false if it is not.
... syntax const enabledflag = track.enabled track.enabled = [true | false] value when true, enabled indicates that the track is permitted to r
ender its actual media to the output.
... candidate recomm
endation initial specification.
Using the MediaStream Recording API - Web APIs
stop.onclick = function() { mediarecorder.stop(); console.log(mediarecorder.state); console.log("recorder stopped"); record.style.background = ""; record.style.color = ""; } note that the recording may also stop naturally if the media stream
ends (e.g.
... if you were grabbing a song track and the track
ended, or the user stopped sharing their microphone).
...r sound clip'); const clipcontainer = document.createelement('article'); const cliplabel = document.createelement('p'); const audio = document.createelement('audio'); const deletebutton = document.createelement('button'); clipcontainer.classlist.add('clip'); audio.setattribute('controls', ''); deletebutton.innerhtml = "delete"; cliplabel.innerhtml = clipname; clipcontainer.app
endchild(audio); clipcontainer.app
endchild(cliplabel); clipcontainer.app
endchild(deletebutton); soundclips.app
endchild(clipcontainer); const blob = new blob(chunks, { 'type' : 'audio/ogg; codecs=opus' }); chunks = []; const audiourl = window.url.createobjecturl(blob); audio.src = audiourl; deletebutton.onclick = function(e) { let evttgt = e.target; evttgt.parentnode.parentno...
MediaTrackConstraints - Web APIs
the specifics vary somewhat dep
ending on the type of the constrainable property.
...this may be a single one of the following strings, or a list of them to allow multiple source surfaces: application the stream contains all of the windows of the application chosen by the user r
endered into the one video track.
... specifications specification status comment media capture and streams candidate recomm
endation initial definition.
Capabilities, constraints, and settings - Web APIs
function keydownhandler(event) { if (event.key == "tab") { let elem = event.target; let str = elem.value; let position = elem.selectionstart; let newstr = str.substring(0, position) + " " + str.substring(position, str.length); elem.value = newstr; elem.selectionstart = elem.selection
end = position + 2; event.preventdefault(); } } videoconstrainteditor.addeventlistener("keydown", keydownhandler, false); audioconstrainteditor.addeventlistener("keydown", keydownhandler, false); show constrainable properties the browser supports the last significant piece of the puzzle: code that displays, for the user's reference, a list of the constrainable properties which their browser...
...s = navigator.mediadevices.getsupportedconstraints(); for (let constraint in supportedconstraints) { if (supportedconstraints.hasownproperty(constraint)) { let elem = document.createelement("li"); elem.innerhtml = "<code><a href='/docs/web/api/mediatracksupportedconstraints/" .concat(constraint) + "' target='_blank'>" + constraint + "</a></code>"; supportedconstraintlist.app
endchild(elem); } } error handling we also have some simple error handling code; handleerror() is called to handle promises which fail, and the log() function app
ends the error message to a special logging <div> box under the video.
... candidate recomm
endation initial definition.
PaymentRequest.shippingType - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.details - Web APIs
payment.show().then(paymentresponse => { var paymentdata = { // payment method string method: paymentresponse.methodname, // payment details as you requested details: paymentresponse.details, // shipping address information address: todict(paymentresponse.shippingaddress) }; // s
end information to the server }); specifications specification status comment payment request api candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.payerEmail - Web APIs
syntax var payeremail = paymentresponse.payeremail; specifications specification status comment payment request api candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentRequest.payerName - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 7.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.requestId - Web APIs
candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 8.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.shippingAddress - Web APIs
rd shipping in us'; shippingoption.amount.value = '5.00'; details.total.amount.value = '60.00'; } details.displayitems.splice(2, 1, shippingoption); details.shippingoptions = [shippingoption]; } else { delete details.shippingoptions; } resolve(details); } specifications specification status comment payment request api candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.shippingOption - Web APIs
s.total.amount.value = '67.00'; } else { reject('unknown shipping option \'' + shippingoption + '\''); return; } selectedshippingoption.selected = true; othershippingoption.selected = false; details.displayitems.splice(2, 1, selectedshippingoption); resolve(details); } specifications specification status comment payment request api candidate recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
performance.getEntries() - Web APIs
performance.mark not supported"); return; } // create some performance entries via the mark() method performance.mark("begin"); do_work(50000); performance.mark("
end"); performance.mark("begin"); do_work(100000); performance.mark("
end"); do_work(200000); performance.mark("
end"); // use getentries() to iterate through the each entry let p = performance.getentries(); for (var i=0; i < p.length; i++) { console.log("entry[" + i + "]"); check_performanceentry(p[i]); } // use getentriesbytype() to get all "mark" entries p = performan...
... candidate recomm
endation performance timelinethe definition of 'getentries()' in that specification.
... recomm
endation initial definition.
performance.getEntriesByName() - Web APIs
performance.mark not supported"); return; } // create some performance entries via the mark() method performance.mark("begin"); do_work(50000); performance.mark("
end"); performance.mark("begin"); do_work(100000); performance.mark("
end"); do_work(200000); performance.mark("
end"); // use getentries() to iterate through the each entry var p = performance.getentries(); for (var i=0; i < p.length; i++) { log("entry[" + i + "]"); check_performanceentry(p[i]); } // use getentries(name, entrytype) to get specific entries p = performanc...
... candidate recomm
endation performance timelinethe definition of 'getentriesbyname()' in that specification.
... recomm
endation initial definition.
performance.getEntriesByType() - Web APIs
performance.mark not supported"); return; } // create some performance entries via the mark() method performance.mark("begin"); dowork(50000); performance.mark("
end"); performance.mark("begin"); dowork(100000); performance.mark("
end"); dowork(200000); performance.mark("
end"); // use getentries() to iterate through the each entry var p = performance.getentries(); for (var i=0; i < p.length; i++) { log("entry[" + i + "]"); checkperformanceentry(p[i]); } // use getentries(name, entrytype) to get specific entries p = performance.g...
... candidate recomm
endation performance timelinethe definition of 'getentriesbytype()' in that specification.
... recomm
endation initial definition.
Performance.timeOrigin - Web APIs
recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 62chrome android full support 62firefox android full support 53opera android full support 46safari ios no support nosamsung internet android full support 8.0leg
end full support full support no support no support compatibility unknown compatibility unknownexperimental.
PerformanceEntry.entryType - Web APIs
syntax var type = entry.entrytype; return value the return value dep
ends on the subtype of the performanceentry object and affects the value of the performanceentry.name property as shown by the table below.
... candidate recomm
endation performance timelinethe definition of 'entrytype' in that specification.
... recomm
endation initial definition.
PerformanceMeasure - Web APIs
1" 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 ext
ends the following performanceentry properties by qualifying/constrainting the properties as follows: performanceentry.entrytype returns "measure".
... performanceentry.duration returns a domhighrestimestamp that is the duration of the measure (typically, the measure's
end mark timestamp minus its start mark timestamp).
... recomm
endation basic definition.
PerformancePaintTiming - Web APIs
the performancepainttiming interface of the paint timing provides timing information about "paint" (also called "r
ender") operations during web page construction.
... "paint" refers to conversion of the r
ender tree to on-screen pixels.
...="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 ext
ends the following performanceentry properties (for "paint" performance entry types) by qualifying and constraining the properties as follows: performanceentry.entrytype returns "paint".
PerformanceResourceTiming.connectStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PerformanceResourceTiming.domainLookupStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PerformanceResourceTiming.fetchStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PerformanceResourceTiming.redirectStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PerformanceResourceTiming.responseStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
PerformanceResourceTiming.secureConnectionStart - Web APIs
example in the following example, the value of the *start and *
end properties of all "resource" type events are logged.
... function print_performanceentries() { // use getentriesbytype() to just get the "resource" events var p = performance.getentriesbytype("resource"); for (var i=0; i < p.length; i++) { print_start_and_
end_properties(p[i]); } } function print_start_and_
end_properties(perfentry) { // print timestamps of the performanceentry *start and *
end properties properties = ["connectstart", "connect
end", "domainlookupstart", "domainlookup
end", "fetchstart", "redirectstart", "redirect
end", "requeststart", "responsestart", "response
end", "secureconnectionstart"]; for (var i=0; i < properties.length; i++) { // check each property var supported = properties[i] in perfentry; if (suppor...
... candidate recomm
endation initial definition.
Using the Performance API - Web APIs
the base interface for these standards is the performance interface and its methods and properties are ext
ended by different standards.
... function calculate_time() { var starttime; var
endtime; starttime = performance.now(); do_task();
endtime = performance.now(); return (
endtime - starttime); } serializing the performance object json serialization of the performance object is done via the tojson() method.
... " + json.stringify(timing) + "</p>"; var navigation = perf.navigation; o.innerhtml += "<p>peformance.navigation = " + json.stringify(navigation) + "</p>"; } } specifications the interfaces described in this document are defined in the high resolution time standard which has two levels: high-resolution time level 2; editors draft; work in progress high-resolution time; w3c recomm
endation 17 december 2012 interoperability as shown in the performance interface's browser compatibility table, most of the performance interfaces are broadly implemented by desktop browsers.
Using Performance Timeline - Web APIs
performance extensions performance timeline ext
ends the performance object with three methods that provide different mechanisms to get a set of performance records (metrics), dep
ending on the specified filter criteria.
...performance.mark not supported"); return; } // create some performance entries via the mark() and measure() methods performance.mark("begin"); do_work(50000); performance.mark("
end"); do_work(50000); performance.measure("measure1", "begin", "
end"); // use getentries() to iterate all entries var p = performance.getentries(); for (var i=0; i < p.length; i++) { log("all entry[" + i + "]"); print_perf_entry(p[i]); } // use getentries(name, entrytype) to get specific entries p = performance.getentries({name : "measure1", entrytype: "measure"}); for (v...
... performance timeline; w3c recomm
endation 12 december 2013 see also performance timeline (overview) a primer for web performance timing apis ...
Multi-touch interaction - Web APIs
pointer events ext
end dom input events to support various pointing input devices such as pen/stylus and touch screens as well as mouse.
... in this application, when a pointer is placed down on an element, the background color of the element changes, dep
ending on the number of active touch points the element has.
... ev.target.style.background = "white"; break; case 1: // single touch point ev.target.style.background = "yellow"; break; case 2: // two simultaneous touch points ev.target.style.background = "pink"; break; default: // three or more simultaneous touches ev.target.style.background = "lightblue"; } } event logging these functions are used s
end to event activity to the application window (to support debugging and learning about the event flow).
Pointer events - Web APIs
pointerevent interface the pointerevent interface ext
ends the mouseevent interface and has the following properties.
... pointerenter onpointerenter fired when a pointer is moved into the hit test boundaries of an element or one of its desc
endants, including as a result of a pointerdown event from a device that does not support hover (see pointerdown).
... pointer events – level 2 recomm
endation adds haspointercapture method and clarifies more edge cases and dynamic scenarios.
PublicKeyCredentialCreationOptions.pubKeyCredParams - Web APIs
if this array contains multiple elements, they are sorted by desc
ending order of preference.
... alg: -37 } ], challenge: new uint8array(26) /* this actually is given from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { id: new uint8array(26), /* to be changed for each user */ name: "jdoe@example.com", displayname: "john doe", } }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // s
end attestation response and client extensions // to the server to proceed with the registration // 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 'pubkeycredparams' in that specification.
... recomm
endation initial definition.
PublicKeyCredentialCreationOptions.rp - Web APIs
this property is int
ended for display (e.g.
...ver */, rp: { name: "example corp", id : "login.example.com", icon: "https://login.example.com/login.ico" }, user: { id: new uint8array(16), name: "jdoe@example.com", displayname: "john doe" }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // s
end attestation response and client extensions // to the server to proceed with the registration // 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 'rp' in that specification.
... recomm
endation initial definition.
PushEvent.PushEvent() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... full support 17firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 37safari no support nowebview android no support nochrome android full su...
... 44 full support 44 full support 48notes notes push enabled by default.opera android full support 37safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportexperimental.
PushEvent.data - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... full support 17firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 44safari no support nowebview android no support nochrome android full su...
... 44 full support 44 full support 48notes notes push enabled by default.opera android full support 43safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportexperimental.
PushManager.hasPermission() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... full support 17firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 29safari no support nowebview android no support nochrome android full su...
...roid full support 48notes full support 48notes notes push enabled by default.opera android full support 29safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportexperimental.
PushManager.register() - Web APIs
the register method is used to ask the system to request a new
endpoint for notifications.
... if the method call is successful, the request's result will be a string, which is the
endpoint url.
... example var req = navigator.push.register(); req.onsuccess = function(e) { var
endpoint = req.result; debug("new
endpoint: " +
endpoint ); } req.onerror = function(e) { debug("error getting a new
endpoint: " + json.stringify(e)); } specification specification status comment push api working draft defines the pushmanager interface.
PushManager.supportedContentEncodings - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... full support 17firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 47safari no support nowebview android no support nochrome android full su...
...roid full support 48notes full support 48notes notes push enabled by default.opera android full support 44safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no supportexperimental.
PushManager - Web APIs
pushmanager.unregister() unregisters and deletes a specified subscription
endpoint.
... example this.onpush = function(event) { console.log(event.data); // from here we can write the data to indexeddb, s
end it to any open // windows, display a notification, etc.
... } navigator.serviceworker.register('serviceworker.js').then( function(serviceworkerregistration) { serviceworkerregistration.pushmanager.subscribe().then( function(pushsubscription) { console.log(pushsubscription.
endpoint); // the push subscription details needed by the application // server are now available, and can be sent to it using, // for example, an xmlhttprequest.
PushMessageData.arrayBuffer() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetarraybuffer experimentalchrome full support 50edge full support ≤79firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 37safari no support nowebview android no support nochrome android full su...
...pport 50firefox android full support 48opera android full support 37safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
PushMessageData.blob() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...android webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetblob experimentalchrome full support 50edge full support ≤79firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 37safari no support nowebview android no support nochrome android full su...
...pport 50firefox android full support 48opera android full support 37safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
PushMessageData.json() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...android webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetjson experimentalchrome full support 50edge full support ≤79firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 37safari no support nowebview android no support nochrome android full su...
...pport 50firefox android full support 48opera android full support 37safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
PushMessageData.text() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...android webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internettext experimentalchrome full support 50edge full support ≤79firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 37safari no support nowebview android no support nochrome android full su...
...pport 50firefox android full support 48opera android full support 37safari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
PushSubscription.subscriptionId - Web APIs
the
endpoint read-only property of the pushsubscription interface returns a domstring containing the subscription id associated with the push subscription.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android full support 42firefox android no support noopera android full support 29safari ios no support nosamsung internet android full support 4.0leg
end full support full support no support no support ...
RTCDTMFToneChangeEvent.tone - Web APIs
if all queued tones have finished playing (that is, rtcdtmfs
ender.tonebuffer is empty).
... dtmfs
ender.ontonechange = function( ev ) { let tone = ev.tone; if (tone === "") { tone = "<none>" } document.getelementbyid("playingtone").innertext = tone; }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdtmftonechangeevent.tone' in that specification.
... candidate recomm
endation initial specification.
RTCDTMFToneChangeEvent - Web APIs
it app
ends each tone to a display box as it's played, and, once all tones have been sent, re-enabled a previously-disabled "s
end" button, allowing the next dmtf string to be entered.
... dtmfs
ender.addeventlistener("change", function(event) { if (event.tone !== "") { dialstringbox.innertext += event.tone; } else { s
enddtmfbutton.disabled = false; } }, false); specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdtmftonechangeevent' in that specification.
... candidate recomm
endation initial definition.
RTCDataChannel: bufferedamountlow event - Web APIs
let pc = new rtcpeerconnection(); let dc = pc.createdatachannel("s
endfile"); let source = /* source data object */ dc.bufferedamountlowthreshold = 65536; pc.addeventlistener("bufferedamountlow", ev => { if (source.position <= source.length) { dc.s
end(source.readfile(65536)); } }, false); after creating the rtcpeerconnection, this calls rtcpeerconnection.createdatachannel() to create the data channel.
... you can also set up a listener for bufferedamountlow using its event handler property, onbufferedamountlow: pc.onbufferedamountlow = ev => { if (source.position <= source.length) { dc.s
end(source.readfile(65536)); } } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'bufferedamountlow' in that specification.
... candidate recomm
endation ...
RTCDataChannel: close event - Web APIs
dc.addeventlistener("close", ev => { messageinputbox.disabled = true; s
endbutton.disabled = true; connectbutton.disabled = false; disconnectbutton.disabled = true; }, false); all this code does in response to receiving the close event is to disable an input box and its "s
end" button, and to enable the button used to start a call (while disabling the one that
ends a call).
... you can also use the onclose event handler property to set a handler for close events: dc.onclose = ev => { messageinputbox.disabled = true; s
endbutton.disabled = true; connectbutton.disabled = false; disconnectbutton.disabled = true; } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'close' in that specification.
... candidate recomm
endation initial specification.
RTCDataChannel: error event - Web APIs
examples // strings for each of the sctp cause codes found in rfc // 4960, section 3.3.10: // https://tools.ietf.org/html/rfc4960#section-3.3.10 const sctpcausecodes = [ "no sctp error", "invalid stream identifier", "missing mandatory parameter", "stale cookie error", "s
ender is out of resource (i.e., memory)", "unable to resolve address", "unrecognized sctp chunk type received", "invalid mandatory parameter", "unrecognized parameters", "no user data (sctp data chunk has no data)", "cookie received while shutting down", "restart of an association with new addresses", "user-initiated abort", "protocol violation" ]; dc.addeventlistener("error", ev =...
... in addition, however, dep
ending on the value of errordetail, additional information may be output.
... candidate recomm
endation initial specification.
RTCDataChannel.onclose - Web APIs
this way, the message entry field and the s
end button are only enabled for use when the connection is actually open.
... let pc = new rtcpeerconnection(); let dc = pc.createdatachannel("messagechannel")}}; dc.onopen = function(event) { document.getelementbyid("messagebox").disabled = false; document.getelementbyid("s
endbutton").disabled = false; }; dc.onclose = function(event) { document.getelementbyid("messagebox").disabled = true; document.getelementbyid("s
endbutton").disabled = true; } /* now negotiate the connection, etc...
... candidate recomm
endation initial specification.
RTCDataChannel.onmessage - Web APIs
the new elements are then attached to the
end of the document.
... let pc = new rtcpeerconnection(); let dc = pc.createdatachannel(); dc.onmessage = function(event) { var el = document.createelement("p"); var txtnode = document.createtextnode(event.data); el.app
endchild(txtnode); receivebox.app
endchild(el); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdatachannel.onmessage' in that specification.
... candidate recomm
endation initial specification.
RTCDataChannel.onopen - Web APIs
it then establishes an open event handler which updates some user interface elements to prepare them for being used to s
end messages over the data channel.
... let dc = mypeerconnection.createdatachannel("message channel"); dc.onopen = function(event) { let messagebox = document.getelementbyid("messagebox"); let s
endbutton = document.getelementbyid("s
endbutton"); messagebox.disabled = false; messagebox.focus(); s
endbutton.disabled = false; } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdatachannel.onopen' in that specification.
... candidate recomm
endation initial specification.
Range() - Web APIs
the range() constructor returns a newly created range object whose start and
end is the global document object.
... syntax range = new range() example in this example we create a new range with the range() constructor, and set its beginning and
end positions using the range.setstartbefore() and range.set
endafter() methods.
... html <p>first paragraph.</p> <p>second paragraph.</p> <p>third paragraph.</p> <p>fourth paragraph.</p> javascript const paragraphs = document.queryselectorall('p'); // create new range const range = new range(); // start range at second paragraph range.setstartbefore(paragraphs[1]); //
end range at third paragraph range.set
endafter(paragraphs[2]); // get window selection const selection = window.getselection(); // add range to window selection selection.addrange(range); result specification specification status comment domthe definition of 'range.range()' in that specification.
Range.collapsed - Web APIs
the range.collapsed read-only property returns a boolean flag indicating whether the start and
end points of the range are at the same position.
... it returns true if the start and
end boundary points of the range are the same point in the dom, false if not.
... syntax iscollapsed = range.collapsed; example let range = document.createrange(); range.setstart(startnode, startoffset); range.set
end(
endnode,
endoffset); iscollapsed = range.collapsed; specifications specification status comment domthe definition of 'range.collapsed' in that specification.
Range.extractContents() - Web APIs
html id attributes are also cloned, which can lead to an invalid document if a partially-selected node is extracted and app
ended to the document.
... syntax documentfragment = range.extractcontents(); example basic example var range = document.createrange(); range.selectnode(document.getelementsbytagname("div").item(0)); var documentfragment = range.extractcontents(); document.body.app
endchild(documentfragment); moving items between containers this example lets you move items between two containers.
...button = document.getelementbyid('swap'); button.addeventlistener('click', e => { selection = window.getselection(); for (let i = 0; i < selection.rangecount; i++) { const range = selection.getrangeat(i); if (range.commonancestorcontainer === list1 || range.commonancestorcontainer.parentnode === list1) { const documentfragment = range.extractcontents(); list2.app
endchild(documentfragment); } else if (range.commonancestorcontainer === list2 || range.commonancestorcontainer.parentnode === list2) { const documentfragment = range.extractcontents(); list1.app
endchild(documentfragment); } } }); result specifications specification status comment domthe definition of 'range.extractcontents()' in that specifi...
ReadableStream.ReadableStream() - Web APIs
the controller parameter passed to this method is a readablestreamdefaultcontroller or a readablebytestreamcontroller, dep
ending on the value of the type property.
...the controller parameter passed to this method is a readablestreamdefaultcontroller or a readablebytestreamcontroller, dep
ending on the value of the type property.
... const stream = new readablestream({ start(controller) { interval = setinterval(() => { let string = randomchars(); // add the string to the stream controller.enqueue(string); // show it on the screen let listitem = document.createelement('li'); listitem.textcontent = string; list1.app
endchild(listitem); }, 1000); button.addeventlistener('click', function() { clearinterval(interval); fetchstream(); controller.close(); }) }, pull(controller) { // we don't really need a pull in this example }, cancel() { // this is called if the reader cancels, // so we should stop generating strings clearinterval(interval); } }); specificati...
Report - Web APIs
by s
ending requests to the
endpoints defined via the report-to http header.
... the report details are displayed via the displayreports() fuction, which takes the observer callback's reports parameter as its parameter: function displayreports(reports) { const outputelem = document.queryselector('.output'); const list = document.createelement('ul'); outputelem.app
endchild(list); for(let i = 0; i < reports.length; i++) { let listitem = document.createelement('li'); let textnode = document.createtextnode('report ' + (i + 1) + ', type: ' + reports[i].type); listitem.app
endchild(textnode); let innerlist = document.createelement('ul'); listitem.app
endchild(innerlist); list.app
endchild(listitem); for (let key in reports[i].body) { ...
... let innerlistitem = document.createelement('li'); let keyvalue = reports[i].body[key]; innerlistitem.textcontent = key + ': ' + keyvalue; innerlist.app
endchild(innerlistitem); } } } the reports parameter contains an array of all the reports in the observer's report queue.
Request.mode - Web APIs
cors — allows cross-origin requests, for example to access various apis offered by 3rd party v
endors.
...the navigate value is int
ended to be used only by html navigation.
... default mode requests can be initiated in a variety of ways, and the mode for a request dep
ends on the particular means by which it was initiated.
RsaHashedKeyGenParams - Web APIs
this should be set to rsassa-pkcs1-v1_5, rsa-pss, or rsa-oaep, dep
ending on the algorithm you want to use.
...some organizations are now recomm
ending that it should be 4096.
... recomm
endation ...
SVGAnimatedString.animVal - Web APIs
syntax var = object.animval specifications specification status comment scalable vector graphics (svg) 1.1 (second edition) recomm
endation scalable vector graphics (svg) 2 candidate recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android no support nofirefox android full support yesopera android full support yessafari ios full support yessamsung internet android no support noleg
end full support full support no support no support ...
SVGAnimatedString.baseVal - Web APIs
specifications specification status comment scalable vector graphics (svg) 1.1 (second edition) recomm
endation scalable vector graphics (svg) 2 candidate recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android no support nofirefox android full support yesopera android full support yessafari ios full support yessamsung internet android no support noleg
end full support full support no support no support ...
SVGAnimatedString - Web APIs
specifications specification status comment scalable vector graphics (svg) 1.1 (second edition) recomm
endation scalable vector graphics (svg) 2 candidate recomm
endation browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android no support nofirefox android full support yesopera android full support yessafari ios full support yessamsung internet android no support noleg
end full support full support no support no support ...
SVGLength - Web APIs
console.log("value: " + val.value + ", valueinspecifiedunits " + val.unittype + ": " + val.valueinspecifiedunits + ", valueasstring: " + val.valueasstring); } ]]></script> <rect id="myrect" x="1cm" y="1cm" fill="green" stroke="black" stroke-width="1" width="1cm" height="1cm" /> </svg> results on a desktop monitor (pixel units will be dpi-dep
endent): value: 37.7952766418457, valueinspecifiedunits: 6: 1, valueasstring: 1cm value: 26.66666603088379, valueinspecifiedunits 9: 20, valueasstring: 20pt value: 26.66666603088379, valueinspecifiedunits 8: 0.277777761220932, valueasstring: 0.277778in constants name value description svg_lengthtype_unknown 0 the unit type is not one of predefined unit types.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support no support no support compatibility unknown compatibility unknown ...
SVGStringList - Web APIs
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 app
enditem(in domstring 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.
...if the index is greater than or equal to numberofitems, then the new item is app
ended to the
end of the list.
... app
enditem(in domstring newitem) domstring inserts a new item at the
end of the list.
ScriptProcessorNode - Web APIs
if the buffer size is not defined, which is recomm
ended, the browser will pick one that its heuristic deems appropriate.
...function getdata() { request = new xmlhttprequest(); request.open('get', 'viper.ogg', true); request.responsetype = 'arraybuffer'; request.onload = function() { var audiodata = request.response; audioctx.decodeaudiodata(audiodata, function(buffer) { mybuffer = buffer; source.buffer = mybuffer; }, function(e){"error with decoding audio data" + e.err}); } request.s
end(); } // give the node a function to process audio events scriptnode.onaudioprocess = function(audioprocessingevent) { // the input buffer is the 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 (...
...t outputdata[sample] = inputdata[sample]; // add noise to each output sample outputdata[sample] += ((math.random() * 2) - 1) * 0.2; } } } getdata(); // wire up play button playbutton.onclick = function() { source.connect(scriptnode); scriptnode.connect(audioctx.destination); source.start(); } // when the buffer source stops playing, disconnect everything source.on
ended = function() { source.disconnect(scriptnode); scriptnode.disconnect(audioctx.destination); } specifications specification status comment web audio apithe definition of 'scriptprocessornode' in that specification.
Selection.focusNode - Web APIs
the selection.focusnode read-only property returns the node in which the selection
ends.
...the focus is where the user
ended the selection.
...the selection's focus moves, but the selection's anchor, the other
end of the selection, does not move.
Selection.modify() - Web APIs
specify "move" to move the current cursor position or "ext
end" to ext
end the current selection.
...nam libero tempore, cum soluta nobis est elig
endi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assum
enda est, omnis dolor repell
endus.</p> <label for="granularity">granularity:</label> <select id="granularity"> <option value="character">character</option> <option value="word">word</option> <option value="sentence">sentence</option> <option value="line">line</option> <option value="paragr...
...aph">paragraph</option> <option value="lineboundary">line boundary</option> <option value="sentenceboundary">sentence boundary</option> <option value="paragraphboundary">paragraph boundary</option> <option value="documentboundary">document boundary</option> </select> <br><br> <button>ext
end selection</button> javascript let select = document.queryselector('select'); let button = document.queryselector('button'); button.addeventlistener('click', modify); function modify() { let selection = window.getselection(); selection.modify('ext
end', 'forward', select.value); } result specifications this method is not part of any specification.
Selection.setBaseAndExtent() - Web APIs
focusnode the node at the
end of the selection.
... note: if the focus position appears before the anchor position in the document, the direction of the selection is reversed — the caret is placed at the beginning of the text rather the
end, which matters for any keyboard command that might follow.
... for example, shift + ➡︎ would cause the selection to narrow from the beginning rather than grow at the
end.
ServiceWorkerGlobalScope.onmessage - Web APIs
note: service workers define the ext
endable event to allow ext
ending the lifetime of the event.
... for the message event, service workers use the ext
endablemessageevent interface which ext
ends the ext
endableevent interface.
...(they used to be represented by serviceworkermessageevent objects, which have now been deprecated.) syntax serviceworkerglobalscope.onmessage = function(ext
endablemessageevent) { ...
ServiceWorkerGlobalScope: pushsubscriptionchange event - Web APIs
bubbles no cancelable no interface pushsubscriptionchangeevent event handler property onpushsubscriptionchange usage notes although examples demonstrating how to share subscription related information with the application server t
end to use fetch(), this is not necessarily the best choice for real-world use, since it will not work if the app is offline, for example.
... self.addeventlistener("pushsubscriptionchange", event => { event.waituntil(swregistration.pushmanager.subscribe(event.oldsubscription.options) .then(subscription => { return fetch("register", { method: "post", headers: { "content-type": "application/json" }, body: json.stringify({
endpoint: subscription.
endpoint }) }); }) ); }, false); when a pushsubscriptionchange event arrives, indicating that the subscription has expired, we resubscribe by calling the push manager's subscribe() method.
...this is delivered to the app server using a fetch() call to post a json formatted r
endition of the subscription's
endpoint to the app server.
ServiceWorkerRegistration.navigationPreload - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 17 full support 17 full support 16disabled disabled from version 16: this feature is behind the enable service workers preference.firefox full support 44notes full support 44notes notes ext
ended support releases (esr) before firefox 78 esr do not support service workers and the push api.ie no support noopera full support 46safari full support 11.1webview android full support 59chrome android f...
...ull support 59firefox android full support 44opera android full support 43safari ios full support 11.3samsung internet android full support 4.0leg
end full support full support no support no supportexperimental.
SharedWorkerGlobalScope.onconnect - Web APIs
the connecting port can be referenced through the event object's ports parameter; this reference can have an onmessage handler attached to it to handle messages coming in through the port, and its postmessage() method can be used to s
end messages back to the main thread using the worker.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 1.0leg
end full support full support no support no support compatibility unknown compatibility unknown ...
SourceBuffer.changeType() - Web APIs
the changetype() method of the sourcebuffer interface sets the mime type that future calls to app
endbuffer() should expect the new media data to conform to.
... invalidstateerror the sourcebuffer is not a member of the parent media source's sourcebuffers list, or the buffer's updating property indicates that a previously queued app
endbuffer() or remove() is still being processed.
... usage notes if the parent mediasource is in its "
ended" readystate, calling changetype() will transition the media source to the "open" readystate and fire a simple event named sourceopen at the parent media source.
SourceBuffer.removeAsync() - Web APIs
syntax removepromise = sourcebuffer.removeasync(start,
end); parameters start a double representing the start of the time range, in seconds.
...
end a double representing the
end of the time range, in seconds.
... specification status comment media source extensions recomm
endation initial definition.
SpeechSynthesisUtterance - Web APIs
end fired when the utterance has finished being spoken.
... also available via the on
end property.
...ndow.speechsynthesis; var voices = synth.getvoices(); var inputform = document.queryselector('form'); var inputtxt = document.queryselector('input'); var voiceselect = document.queryselector('select'); for(var i = 0; i < voices.length; i++) { var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; option.value = i; voiceselect.app
endchild(option); } inputform.onsubmit = function(event) { event.preventdefault(); var utterthis = new speechsynthesisutterance(inputtxt.value); utterthis.voice = voices[voiceselect.value]; synth.speak(utterthis); inputtxt.blur(); } specifications specification status comment web speech apithe definition of 'speechsynthesisutterance' in that specification.
Storage Access API - Web APIs
the storage access api is int
ended to solve this problem; embedded cross-origin content can request unrestricted access to its first-party storage on a site-by-site basis via the document.requeststorageaccess() method, and check whether it already has access via the document.hasstorageaccess() method.
...scripts, images, stylesheets, etc.) will load with access to their first-party storage, which means they may s
end cookie headers and honor incoming set-cookie headers.
... in firefox, the storage access grants are phased out after 30 cal
endar days passing, whereas in safari the storage access grants are phased out after 30 days of browser usage passed without user interaction.
StyleSheet.media - Web APIs
the media property of the stylesheet interface specifies the int
ended destination media for style information.
... it is a read-only, array-like medialist object and can be removed with deletemedium() and added with app
endmedium().
...e="text/css" media="screen, print"> body { background-color: snow; } </style> </head> <body> <script> for (var isheetindex = 0; isheetindex < document.stylesheets.length; isheetindex++) { console.log('document.stylesheets[' + string(isheetindex) + '].media: ' + json.stringify(document.stylesheets[isheetindex].media)); if (isheetindex === 0) document.stylesheets[isheetindex].media.app
endmedium('handheld'); if (isheetindex === 1) document.stylesheets[isheetindex].media.deletemedium('print'); console.log('document.stylesheets[' + string(isheetindex) + '].media: ' + json.stringify(document.stylesheets[isheetindex].media)); } /* will log: document.stylesheets[0].media: {"0":"screen"} document.stylesheets[0].media: {"0":"screen","1":"handheld"} document.stylesheets[1].medi...
SubtleCrypto.deriveBits() - Web APIs
onst sharedsecret = await window.crypto.subtle.derivebits( { name: "ecdh", namedcurve: "p-384", public: publickey }, privatekey, 128 ); const buffer = new uint8array(sharedsecret, 0, 5); const sharedsecretvalue = document.queryselector(".ecdh .derived-bits-value"); sharedsecretvalue.classlist.add("fade-in"); sharedsecretvalue.addeventlistener("animation
end", () => { sharedsecretvalue.classlist.remove("fade-in"); }); sharedsecretvalue.textcontent = `${buffer}...[${sharedsecret.bytelength} bytes total]`; } // generate 2 ecdh key pairs: one for alice and one for bob // in more normal usage, they would generate their key pairs // separately and exchange public keys securely const generatealiceskeypair = window.crypto.subtle.generatekey( { ...
...ait window.crypto.subtle.derivebits( { "name": "pbkdf2", salt: salt, "iterations": 100000, "hash": "sha-256" }, keymaterial, 256 ); const buffer = new uint8array(derivedbits, 0, 5); const derivedbitsvalue = document.queryselector(".pbkdf2 .derived-bits-value"); derivedbitsvalue.classlist.add("fade-in"); derivedbitsvalue.addeventlistener("animation
end", () => { derivedbitsvalue.classlist.remove("fade-in"); }); derivedbitsvalue.textcontent = `${buffer}...[${derivedbits.bytelength} bytes total]`; } const derivebitsbutton = document.queryselector(".pbkdf2 .derive-bits-button"); derivebitsbutton.addeventlistener("click", () => { getderivedbits(); }); specifications specification status comment web cryptography ...
... recomm
endation initial definition.
SubtleCrypto.encrypt() - Web APIs
the web crypto api supports three different aes modes: ctr (counter mode) cbc (cipher block chaining) gcm (galois/counter mode) it's strongly recomm
ended to use authenticated encryption, which includes checks that the ciphertext has not been modified by an attacker.
...gcm does provide built-in authentication, and for this reason it's often recomm
ended over the other two aes modes.
... recomm
endation initial definition.
SubtleCrypto.exportKey() - Web APIs
*/ async function exportcryptokey(key) { const exported = await window.crypto.subtle.exportkey( "pkcs8", key ); const exportedasstring = ab2str(exported); const exportedasbase64 = window.btoa(exportedasstring); const pemexported = `-----begin private key-----\n${exportedasbase64}\n-----
end private key-----`; const exportkeyoutput = document.queryselector(".exported-key"); exportkeyoutput.textcontent = pemexported; } /* generate a sign/verify key pair, then set up an event listener on the "export" button.
...*/ async function exportcryptokey(key) { const exported = await window.crypto.subtle.exportkey( "spki", key ); const exportedasstring = ab2str(exported); const exportedasbase64 = window.btoa(exportedasstring); const pemexported = `-----begin public key-----\n${exportedasbase64}\n-----
end public key-----`; const exportkeyoutput = document.queryselector(".exported-key"); exportkeyoutput.textcontent = pemexported; } /* generate an encrypt/decrypt key pair, then set up an event listener on the "export" button.
... recomm
endation initial definition.
SyncEvent - Web APIs
this interface inherits from the ext
endableevent interface.
... 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/ext
endableevent" target="_top"><rect x="116" y="1" width="150" height="50" fill="#fff" 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">ext
endableevent</text></a><polyline points="266,25 276,20 276,30 266,25" stroke="#d4dde4" fill="none"/><line x1="276" y1="2...
... methods inherits methods from its parent, ext
endableevent.
TextTrack.mode - Web APIs
the exact appearance and manner of that performance varies dep
ending on each text track's kind.
... in general: tracks whose kind is "subtitles" or "captions" are r
endered with the cues overlaid over the top of the video.
...the user can then navigate to the desired chapter, which begins at the cue's start position and
ends at the cue's
end position.
TextTrackCue - Web APIs
the cue includes the start time (the time at which the text will be displayed) and the
end time (the time at which it will be removed from the display), as well as other information.
... texttrackcue.
endtime a double that represents the video time that the cue will stop being displayed, in seconds.
... recomm
endation initial definition ...
TimeRanges - Web APIs
a timeranges object includes one or more ranges of time, each specified by a starting and
ending time offset.
... you reference each time range by using the start() and
end() methods, passing the index number of the time range you want to retrieve.
... timeranges.
end() returns the time for the
end of the specified range.
Touch.clientX - Web APIs
when the touch
end event handler is invoked, the changes in the touch.clientx and touch.clienty coordinates, from the starting touch point to the
ending touch point, are calculated.
... // register touchstart and touch
end listeners for element 'source' var src = document.getelementbyid("source"); var clientx, clienty; src.addeventlistener('touchstart', function(e) { // cache the client x/y coordinates clientx = e.touches[0].clientx; clienty = e.touches[0].clienty; }, false); src.addeventlistener('touch
end', function(e) { var deltax, deltay; // compute the change in x and y coordinates.
... touch events recomm
endation initial definition.
Touch.clientY - Web APIs
when the touch
end event handler is invoked, the changes in the touch.clientx and touch.clienty coordinates, from the starting touch point to the
ending touch point, are calculated.
... // register touchstart and touch
end listeners for element 'source' var src = document.getelementbyid("source"); var clientx, clienty; src.addeventlistener('touchstart', function(e) { // cache the client x/y coordinates clientx = e.touches[0].clientx; clienty = e.touches[0].clienty; }, false); src.addeventlistener('touch
end', function(e) { var deltax, deltay; // compute the change in x and y coordinates.
... touch events recomm
endation initial definition.
TouchEvent.changedTouches - Web APIs
the changedtouches read-only property is a touchlist whose touch points (touch objects) varies dep
ending on the event type, as follows: for the touchstart event, it is a list of the touch points that became active with the current event.
... for the touch
end event, it is a list of the touch points that have been removed from the surface (that is, the set of touch points corresponding to fingers no longer touching the surface).
... touch events recomm
endation initial definition.
TouchEvent.touches - Web APIs
in following code snippet, the touchstart event handler checks the length of the touchevent.touches list to determine the number of touch points that were activated and then invokes different handlers dep
ending on the number of touch points.
... someelement.addeventlistener('touchstart', function(e) { // invoke the appropriate handler dep
ending on the // number of touch points.
... touch events recomm
endation initial definition.
Transferable - Web APIs
the functionality of transferable objects still exists, however, but is implemented at a more fundamental level (technically speaking, using the [transferable] webidl ext
ended attribute).
... living standard replaced transferable interface with [transferable] web idl ext
ended attribute.
... recomm
endation initial definition.
UIEvent.initUIEvent() - Web APIs
detail is an unsigned long specifying some detail information about the event, dep
ending on the type of event.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support yesleg
end full support full support compatibility unknown compatibility unknownnon-standard.
UIEvent - Web APIs
several interfaces are direct or indirect desc
endants of this one: mouseevent, touchevent, focusevent, keyboardevent, wheelevent, inputevent, and compositionevent.
... uievent.detailread only returns a long with details about the event, dep
ending on the event type.
... ui events working draft ext
end dom3 document object model (dom) level 3 events specificationthe definition of 'uievent' in that specification.
URLUtilsReadOnly.origin - Web APIs
for url using file: scheme, the value is browser dep
endant.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... nochrome android no support nofirefox android full support 29opera android no support nosafari ios no support nosamsung internet android no support noleg
end full support full support no support no supportexperimental.
USBDevice - Web APIs
usbdevice.v
endorid read only the official usg.org-assigned v
endor id.
... usbdevice.close() returns a promise that resolves when all open interfaces are released and the device session has
ended.
... usbdevice.selectalternateinterface() returns a promise that resolves when the specified alternative
endpoint is selected.
USBInTransferResult - Web APIs
"stall" - the device indicated an error by generating a stall condition on the
endpoint.
... a stall on the control
endpoint does not need to be cleared.
... a stall on a bulk or interrupt
endpoint must be cleared by calling clearhalt() before transferin() can be called again.
USBIsochronousInTransferPacket - Web APIs
it represents the status of an individual packet from a request to transfer data from the usb device to the usb host over an isochronous
endpoint.
... "stall" - the device indicated an error by generating a stall condition on the
endpoint.
... a stall on an isochronous
endpoint does not need to be cleared.
USBIsochronousOutTransferPacket - Web APIs
it represents the status of an individual packet from a request to transfer data from the usb host to the usb device over an isochronous
endpoint.
... "stall" - the device indicated an error by generating a stall condition on the
endpoint.
... a stall on an isochronous
endpoint does not need to be cleared.
User Timing API - Web APIs
this document provides an overview of the mark and measure performance event types including the four user timing methods that ext
end the performance interface.
... creating a performance measure a measure is created by calling performance.measure(measurename, startmarkname,
endmarkname) where measurename is the measure's name and startmarkname and
endmarkname are the start and
end names, respectively, of the marks the measure will be placed between (in the performance timeline).
... duration - set to a domhighrestimestamp that is the duration of the measure (typically, the
end mark timestamp minus the start mark timestamp).
WEBGL_debug_shaders - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... availability: dep
ending on the privacy settings of the browser, this extension might only be available to privileged contexts.
... recomm
endation initial definition.
WEBGL_draw_buffers - Web APIs
webgl extensions are available using the webglr
enderingcontext.getextension() method.
... constants this extension exposes new constants, which can be used in the gl.framebufferr
enderbuffer(), gl.framebuffertexture2d(), gl.getframebufferattachmentparameter() ext.drawbufferswebgl(), and gl.getparameter() methods.
... recomm
endation initial definition.
WEBGL_lose_context - Web APIs
the webgl_lose_context extension is part of the webgl api and exposes functions to simulate losing and restoring a webglr
enderingcontext.
... webgl extensions are available using the webglr
enderingcontext.getextension() method.
... recomm
endation initial definition.
WebGLActiveInfo - Web APIs
the webglactiveinfo interface is part of the webgl api and represents the information returned by calling the webglr
enderingcontext.getactiveattrib() and webglr
enderingcontext.getactiveuniform() methods.
... examples a webglactiveinfo object is returned by: webglr
enderingcontext.getactiveattrib() webglr
enderingcontext.getactiveuniform() or webgl2r
enderingcontext.gettransformfeedbackvarying() webglactiveinfo?
... recomm
endation initial definition.
WebGLFramebuffer - Web APIs
the webglframebuffer interface is part of the webgl api and represents a collection of buffers that serve as a r
endering destination.
...when working with webglframebuffer objects, the following methods of the webglr
enderingcontext are useful: webglr
enderingcontext.bindframebuffer() webglr
enderingcontext.createframebuffer() webglr
enderingcontext.deleteframebuffer() webglr
enderingcontext.isframebuffer() examples creating a frame buffer var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); var buffer = gl.createframebuffer(); specifications specification status comment webgl 1.0the definition of 'webglframebuffer' in that specification.
... recomm
endation initial definition.
WebGLShaderPrecisionFormat - Web APIs
the webglshaderprecisionformat interface is part of the webgl api and represents the information returned by calling the webglr
enderingcontext.getshaderprecisionformat() method.
... examples a webglshaderprecisionformat object is returned by the webglr
enderingcontext.getshaderprecisionformat() method.
... recomm
endation initial definition.
Clearing with colors - Web APIs
« previousnext » an example showing how to clear a webgl r
endering context to a solid color.
...set up the r
endering context and then just clear it solid green.
... var paragraph = document.queryselector("p"), canvas = document.queryselector("canvas"); // getting the webgl r
endering context.
Raining rectangles - Web APIs
order : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } ;(function(){ "use strict" window.addeventlistener("load", setupanimation, false); var gl, timer, rainingrect, scoredisplay, missesdisplay; function setupanimation (evt) { window.removeeventlistener(evt.type, setupanimation, false); if (!(gl = getr
enderingcontext())) return; gl.enable(gl.scissor_test); rainingrect = new rectangle(); timer = settimeout(drawanimation, 17); document.queryselector("canvas") .addeventlistener("click", playerclick, false); var displays = document.queryselectorall("strong"); scoredisplay = displays[0]; missesdisplay = displays[1]; } var score = 0, misses = 0; function drawanimation () { ...
...for each we use a different number, // because we want horizontal size, vertical size and // position to be determined indep
endently.
...s[0], 5 + 120 * randnums[1] ]; rect.position = [ randnums[2]*(gl.drawingbufferwidth - rect.size[0]), gl.drawingbufferheight ]; rect.velocity = 1.0 + 6.0*math.random(); rect.color = getrandomvector(); gl.clearcolor(rect.color[0], rect.color[1], rect.color[2], 1.0); function getrandomvector() { return [math.random(), math.random(), math.random()]; } } function getr
enderingcontext() { var canvas = document.queryselector("canvas"); canvas.width = canvas.clientwidth; canvas.height = canvas.clientheight; var gl = canvas.getcontext("webgl") || canvas.getcontext("experimental-webgl"); if (!gl) { var paragraph = document.queryselector("p"); paragraph.innerhtml = "failed to get webgl context." + "your browser or device may not support webgl...
Animating objects with WebGL - Web APIs
we can do that by creating a new variable to track the time at which we last animated (let's call it then), then adding the following code to the
end of the main function var then = 0; // draw the scene repeatedly function r
ender(now) { now *= 0.001; // convert to seconds const deltatime = now - then; then = now; drawscene(gl, programinfo, buffers, deltatime); requestanimationframe(r
ender); } requestanimationframe(r
ender); this code uses requestanimationframe to ask the browser to call the function "r
ender"...
...we convert that to seconds and then subtract from it the last time to compute deltatime which is the number of second since the last frame was r
endered.
... at the
end of drawscene we add the code to update squarerotation.
Lighting in WebGL - Web APIs
this is a vector that's perp
endicular to the face at that vertex.
... return { position: positionbuffer, normal: normalbuffer, texturecoord: texturecoordbuffer, indices: indexbuffer, }; this should look pretty familiar by now; we create a new buffer, bind it to be the buffer we're working with, then s
end along our array of vertex normals into the buffer by calling bufferdata().
...as a result, we now have an rgb value that will be used by the fragment shader to adjust the color of each pixel we r
ender.
Introduction to WebRTC protocols - Web APIs
the client will s
end a request to a stun server on the internet who will reply with the client’s public address and whether or not the client is accessible behind the router’s nat.
...you would create a connection with a turn server and tell all peers to s
end packets to the server which will then be forwarded to you.
... structure sdp consists of one or more lines of utf-8 text, each beginning with a one-character type, followed by an equals sign ("="), followed by structured text comprising a value or description, whose format dep
ends on the type.
WebSocket - Web APIs
the websocket object provides the api for creating and managing a websocket connection to a server, as well as for s
ending and receiving data on the connection.
... websocket.s
end(data) enqueues data to be transmitted.
...const socket = new websocket('ws://localhost:8080'); // connection opened socket.addeventlistener('open', function (event) { socket.s
end('hello server!'); }); // listen for messages socket.addeventlistener('message', function (event) { console.log('message from server ', event.data); }); specifications specification status html living standardthe definition of 'websocket' in that specification.
The WebSocket API (WebSockets) - Web APIs
with this api, you can s
end messages to a server and receive event-driven responses without having to poll the server for a reply.
... interfaces websocket the primary interface for connecting to a websocket server and then s
ending and receiving data on the connection.
... living standard websockets candidate recomm
endation rfc 6455: the websocket protocol ietf rfc ...
Controlling multiple parameters with ConstantSourceNode - Web APIs
you could use a loop and change the value of each affected audioparam one at a time, but there are two drawbacks to doing it that way: first, that's extra code that, as you're about to see, you don't have to write; and second, that loop uses valuable cpu time on your thread (likely the main thread), and there's a way to offload all that work to the audio r
endering thread, which is optimized for this kind of work and may run at a more appropriate priority level than your code.
...since constantsourcenode's offset value is simply sent straight through to all of its outputs, it acts as a splitter for that value, s
ending it to each connected parameter.
...we connect its output to the gain audioparam on both gainnode2 and gainnode3, and we start the constant node running by calling its start() method; now it's s
ending the value 0.5 to the two gain nodes' values, and any change to constantnode.offset will automatically set the gain of both gainnode2 and gainnode3 (affecting their audio inputs as expected).
Functions and classes available to Web Workers - Web APIs
8 (8) no support no support no support formdata formdata objects provide a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the xmlhttprequest s
end() method.
... 53.0 (53) only on mobile (yes) only on mobile no support no support notifications allows web pages to control the display of system notifications to the
end user 41 (41) ?
... 21 (21) and 26 (26) for url() constructor no support no support no support webgl with offscreencanvas webgl (web graphics library) is a javascript api for r
endering interactive 3d and 2d graphics within any compatible web browser without the use of plug-ins.
window.cancelIdleCallback() - Web APIs
specifications specification status comment cooperative scheduling of background tasks proposed recomm
endation initial definition.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android full support yessafari ios no support nosamsung internet android full support 5.0leg
end full support full support no support no supportexperimental.
Window.customElements - Web APIs
example you'll see of this property being used is to get access to the customelementregistry.define() method to define and register a new custom element, e.g.: let customelementregistry = window.customelements; customelementregistry.define('my-custom-element', mycustomelement); however, it is usually shortened to something like the following: customelements.define('element-details', class ext
ends htmlelement { constructor() { super(); const template = document .getelementbyid('element-details-template') .content; const shadowroot = this.attachshadow({mode: 'open'}) .app
endchild(template.clonenode(true)); } } ); see our web-components-examples repo for more usage examples.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...to change preferences in firefox, visit about:config.opera android full support 41safari ios full support 10.3samsung internet android full support 6.0leg
end full support full support no support no supportuser must explicitly enable this feature.user must explicitly enable this feature.
Window.devicePixelRatio - Web APIs
this is useful when dealing with the difference between r
endering on a standard display versus a hidpi or retina display, which use more screen pixels to draw the same objects, resulting in a sharper image.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 1chrome android full support 18firefox android full support 18opera android full support 11.1safari ios full support 1samsung internet android full support 1.0leg
end full support full support ...
Window.prompt() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...it is not clear whether this is a bug or int
ended behavior.
...has the value allow-modals.safari ios full support 1samsung internet android full support 1.0notes full support 1.0notes notes starting with samsung internet 5.0, this method is blocked inside an <iframe> unless its sandbox attribute has the value allow-modals.leg
end full support full supportsee implementation notes.see implementation notes.
Window.stop() - Web APIs
recomm
endation browser compatibility the compatibility table in this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... yeschrome android full support yesfirefox android full support yesopera android full support yessafari ios full support yessamsung internet android full support yesleg
end full support full support no support no support ...
WindowEventHandlers.onbeforeunload - Web APIs
will always be shown // chrome requires returnvalue to be set e.returnvalue = ''; }); guarantee the browser unload by removing the returnvalue property of the event window.addeventlistener('beforeunload', function (e) { // the absence of a returnvalue property on the event will guarantee the browser unload happens delete e['returnvalue']; }); notes when your page uses javascript to r
ender content, the javascript may stop when leaving and then navigating back to the page.
... recomm
endation html5the definition of 'globaleventhandlers' in that specification.
... recomm
endation ...
WindowOrWorkerGlobalScope.fetch() - Web APIs
to automatically s
end cookies for the current domain, this option must be provided.
...fetch with the keepalive flag is a replacement for the navigator.s
endbeacon() api.
...tus}`); } return response.blob(); }) .then(function(response) { let objecturl = url.createobjecturl(response); myimage.src = objecturl; }); in the fetch with init then request example (see fetch request init live), we do the same thing except that we pass in an init object when we invoke fetch(): const myimage = document.queryselector('img'); let myheaders = new headers(); myheaders.app
end('content-type', 'image/jpeg'); const myinit = { method: 'get', headers: myheaders, mode: 'cors', cache: 'default' }; let myrequest = new request('flowers.jpg'); fetch(myrequest, myinit).then(function(response) { // ...
WindowOrWorkerGlobalScope.indexedDB - Web APIs
example the following code creates a request for a database to be opened asychronously, after which the database is opened when the request's onsuccess handler is fired: var db; function op
endb() { var dbopenrequest = window.indexeddb.open('todolist'); dbopenrequest.onsuccess = function(e) { db = dbopenrequest.result; } } specifications specification status comment indexed database api draftthe definition of 'indexeddb' in that specification.
... recomm
endation defined in a windoworworkerglobalscope partial in the newest spec.
... recomm
endation initial definition.
WindowOrWorkerGlobalScope.queueMicrotask() - Web APIs
this lets your code run without interfering with any other, potentially higher priority, code that is p
ending, but before the browser regains control over the execution context, potentially dep
ending on work you need to complete.
... microtasks are especially useful for libraries and frameworks that need to perform final cleanup or other just-before-r
endering tasks.
...enqueued microtasks are executed after all p
ending tasks have completed but before yielding control to the browser's event loop.
WritableStream.getWriter() - Web APIs
it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
WritableStreamDefaultWriter.WritableStreamDefaultWriter() - Web APIs
it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
WritableStreamDefaultWriter.close() - Web APIs
it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
WritableStreamDefaultWriter.write() - Web APIs
it then calls a function called s
endmessage(), passing the newly created stream and a string.
... const list = document.queryselector('ul'); function s
endmessage(message, writablestream) { // defaultwriter is of type writablestreamdefaultwriter const defaultwriter = writablestream.getwriter(); const encoder = new textencoder(); const encoded = encoder.encode(message, { stream: true }); encoded.foreach((chunk) => { defaultwriter.ready .then(() => { return defaultwriter.write(chunk); }) .then(() => { console.log("chunk written to...
...am = new writablestream({ // implement the sink write(chunk) { return new promise((resolve, reject) => { var buffer = new arraybuffer(2); var view = new uint16array(buffer); view[0] = chunk; var decoded = decoder.decode(view, { stream: true }); var listitem = document.createelement('li'); listitem.textcontent = "chunk decoded: " + decoded; list.app
endchild(listitem); result += decoded; resolve(); }); }, close() { var listitem = document.createelement('li'); listitem.textcontent = "[message received] " + result; list.app
endchild(listitem); }, abort(err) { console.log("sink error:", err); } }, queuingstrategy); s
endmessage("hello, world.", writablestream); you can find the full code in our simple write...
XMLHttpRequest.response - Web APIs
the xmlhttprequest response property returns the response's body content as an arraybuffer, blob, document, javascript object, or domstring, dep
ending on the value of the request's responsetype property.
...you may attempt to request the data be provided in a specific format by setting the value of responsetype after calling open() to initialize the request but before calling s
end() to s
end the request to the server.
... var url = 'somepage.html'; //a local page function load(url, callback) { var xhr = new xmlhttprequest(); xhr.onreadystatechange = function() { if (xhr.readystate === 4) { callback(xhr.response); } } xhr.open('get', url, true); xhr.s
end(''); } specifications specification status comment xmlhttprequest living standard whatwg living standard ...
XMLHttpRequest.upload - Web APIs
load
end onload
end the upload finished.
... this event does not differentiate between success or failure, and is sent at the
end of the upload regardless of the outcome.
... prior to this event, one of load, error, abort, or timeout will already have been delivered to indicate why the upload
ended.
XMLSerializer.serializeToString() - Web APIs
usage notes compatible node types the specified root node—and all of its desc
endants—must be compatible with the xml serialization algorithm.
... the following types are also permitted as desc
endants of the root node, in addition to node and attr: documenttype document documentfragment element comment text processinginstruction attr if any other type is encountered, a typeerror exception is thrown.
... elements in the html namespace that have no child nodes (thereby representing empty tags) are serialized with both begin and
end tags ("<someelement></someelement>") instead of using the empty-element tag ("<someelement/>").
XRSession.cancelAnimationFrame() - Web APIs
once started, the session schedules its first frame to be r
endered by calling requestanimationframe().
... the pausexr() function shown at the bottom can be called to susp
end the webvr session, in essence, by canceling any p
ending animation frame callback.
... const xr = navigator.xr; let requesthandle = null; let xrsession = null; if (xr) { xr.issessionsupported('immersive-vr') .then((issupported) => { if (issupported) { startxr(); } }); } function framecallback(time, xrframe) { xrsession.requestanimationframe(framecallback); // update and r
ender the frame } async function startxr() { xrsession = xr.requestsession("immersive-vr"); if (xrsession) { stopbutton.onclick = stopxr; requesthandle = xrsession.requestanimationframe(framecallback); } } function pausexr() { if (xrsession && requesthandle) { xrsession.cancelanimationframe(requesthandle); requesthandle = null; } } specifications specificatio...
XRSession: squeeze event - Web APIs
bubbles yes cancelable no interface xrinputsourceevent event handler property onsqueeze for details on how the squeezestart, squeeze, and squeeze
end events work, and how you should react to them, see primary squeeze actions in inputs and input sources.
...the handler fetches the pose representing the target ray for tracked-pointer inputs and s
ends the pose's transform to a function called myhandlesqueezewithray().
...if you need to track a squeeze action that isn't instantaneous, listen for the squeezestart and squeeze
end events to sense when the squeeze action begins and
ends.
XRSession.visibilityState - Web APIs
visible the virtual scene r
endered by the xrsession is currently visible to the user and is the primary focus of the user's attention.
... to that
end, the session's requestanimationframe() callbacks are being processed at the xr device's native refresh rate and input controllers are being processed as normal.
... visible-blurred while the virtual scene r
endered by the xrsession may currently be visible to the user, it is not the user's primary focus at the moment; it's also possible the session is not currently visible at all.
XRSessionEvent - Web APIs
these events occur, for example, when the session
ends or the visibility of its context changes.
...
end fired at the session when it has
ended, after being terminated by the application or the user agent.
...it reacts by calling a function mysessionvisible() with a boolean indicating whether or not the session is visible; this function might, for instance, spin up or reconfigure a worker that handles r
endering the scene.
XRSystem - Web APIs
onsessionstarted(xrsession); }); } else { // shut down the already running xrsession xrsession.
end() .then(() => xrsession = null); } } this code starts by checking to see if webxr is available by looking for the navigator.xr property.
...if there isn't, we use requestsession() to start one and, once the returned promise resolves, we call a function onsessionstarted() to set up our session for r
endering and so forth.
... if, on the other hand, there is already an ongoing xr session, we instead call
end() to
end the current session.
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 r
ender the 3d scene.
...thus the values specified in an xrviewport define a rectangle whose bottom-left corner is at (x, y) and which ext
ends width pixels toward the left and height pixels upward.
... these values may be passed directly into the webglr
enderingcontext.viewport() method: let xrviewport = xrwebgllayer.getviewport(xrview); gl.viewport(xrviewport.x, xrviewport.y, xrviewport.width, xrviewport.height); example this example sets up an animation frame callback using requestanimationframe().
XRVisibilityState - Web APIs
visible the virtual scene r
endered by the xrsession is currently visible to the user and is the primary focus of the user's attention.
... to that
end, the session's requestanimationframe() callbacks are being processed at the xr device's native refresh rate and input controllers are being processed as normal.
... visible-blurred while the virtual scene r
endered by the xrsession may currently be visible to the user, it is not the user's primary focus at the moment; it's also possible the session is not currently visible at all.
XRWebGLLayer.antialias - Web APIs
the read-only xrwebgllayer property antialias is a boolean value which is true if the r
endering layer's frame buffer supports antialiasing.
... syntax let antialiasingsupported = xrwebgllayer.antialias; value a boolean value which is true if the webgl r
endering layer's frame buffer is configured to support antialiasing.
... let gllayer = xrsession.r
enderstate.baselayer; gl.bindframebuffer(gl.framebuffer, gllayer.framebuffer); /* ..
XRWebGLLayer.ignoreDepthValues - Web APIs
the read-only xrwebgllayer property ignoredepthvalues is a boolean value which is true if the session has been configured to ignore the values in the depth buffer while r
endering the scene.
... the depth, in tandem with the coordinates of each point being r
endered, makes it possible to more accurately represent the scene in the 3d space.
... examples if the web application which is using wexr is r
endering its content without using a depth buffer—or if the depth buffer's contents are invalid—you should disable the use of the depth buffer for webxr r
endering by setting ignoredepthvalues to true when creating the xrwebgllayer.
XRWebGLLayerInit.framebufferScaleFactor - Web APIs
the xrwebgllayerinit dictionary's framebufferscalefactor property, when specified upon instantiating a new xrwebgllayer using its constructor, xrwebgllayer(), specifies the scaling factor to use when determining the size of the frame buffer to use when r
endering the scene, relative to the default xr device display resolution.
...see managing r
endering quality in webxr performance guide for more information.
... xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl, { framebufferscalefactor: 0.5 }); }); specifications specification status comment webxr device apithe definition of 'xrwebgllayerinit.framebufferscalefactor' in that specification.
XRWebGLLayerInit.stencil - Web APIs
when using the xrwebgllayer() constructor to create a new webgl r
endering layer for webxr, providing as the layerinit parameter an object whose stencil property is false requests that the new layer be created without a stencil buffer.
...also just like the depth buffer, the value of an enter in the stencil buffer directly affects how (or if) the corresponding pixel is drawn during r
endering.
... xrsession.updater
enderstate({ baselayer: new xrwebgllayer(xrsession, gl, { stencil: false }); }); specifications specification status comment webxr device apithe definition of 'xrwebgllayerinit.stencil' in that specification.
msWriteProfilerMark - Web APIs
syntax window.mswriteprofilermark("start-r
ender"); parameters bstrprofilermarkname[in] an event name.
... notes mswriteprofilermark enables you to inject dom based performance markers in addition to existing javascript api to learn exactly when parts of the page are being r
endered, building a waterfall view for every one of our impressions showing latency per object, which can be useful for more accurately debugging real users perf issues.
... for windows xp, this method s
ends an event to an event tracing session with traceevent; for systems after windows xp, this method writes an event with eventwrite.
Using the alert role - Accessibility
when this role is added to an element, the browser will s
end out an accessible alert event to assistive technology products which can then notify the user about it.
... let myalert = document.createelement("p"); myalert.setattribute("role", "alert"); let myalerttext = document.createtextnode("you must agree with our terms of service to create an account."); myalert.app
endchild(myalerttext); document.body.app
endchild(myalert); note: the same result can be achieved with less code when using a script library like jquery: $("<p role='alert'>you must agree with our terms of service to create an account.</p>").app
endto(document.body); example 3: adding alert role to an existing element sometimes it's useful to add an alert role to an element that is already visibl...
... note: in most cases this approach is not recomm
ended, because it's not ideal to hide error or alert text that is currently not applicable.
Using the status role - Accessibility
when the role is added to an element, the browser will s
end out an accessible status event to assistive technology products which can then notify the user about it.
... assistive technologies may reserve some cells of a braille display to r
ender the status.
... notes aria attributes used status related aria techniques alert role live region roles live region attributes compatibility the paciello group published some data on compatibility via their 2014 blog post: screen reader support for aria live regions tbd: add updated support information for common ua and at product combinations additional resources previous recomm
endations from wai-aria 1.0 (2014) for the status role ...
ARIA: Comment role - Accessibility
<p>the last half of the song is a slow-rising cresc
endo that peaks at the <span role="mark" aria-details="thread-1">
end of the guitar solo</span>, before fading away sharply.</p> <div role="comment" id="thread-1" data-author="chris"> <h3>chris said</h3> <p class="comment-text">i really think this moment could use more cowbell.</p> <p><time datetime="2019-03-30t19:29">march 30 2019, 19:29</time></p> </div> to associate the comment with the tex...
... multiple comments since aria-details can now accept multiple ids, we can associate multiple comments with the same annotation, like so: <p>the last half of the song is a slow-rising cresc
endo that peaks at the <mark aria-details="thread-1 thread-2">
end of the guitar solo</mark>, before fading away sharply.</p> <div role="comment" id="thread-1" data-author="chris"> <h3>chris said</h3> <p class="comment-text">i really think this moment could use more cowbell.</p> <p><time datetime="2019-03-30t19:29">march 30 2019, 19:29</time></p> </div> <div role="comment" id="thread-2" data-author="chris"> <h3>marcus said</h3> <p class=...
... i think the cowbell could distract from the solo.</p> <p><time datetime="2019-03-30t21:02">march 30 2019, 21:02</time></p> </div> </div> accessibility concerns landmark roles are int
ended to be used sparingly, to identify larger overall sections of the document.
ARIA: Complementary role - Accessibility
examples <div role="complementary"> <h2>tr
ending articles</h2> <ul> <li><a href="#">18 tweets that will make you feel all the feels</a></li> <li><a href="#">stop searching for the perfect lunch containers because i've found them</a></li> <li><a href="#">the time has come to finally decide what we should be calling these foods</a></li> <li><a href="#">17 really good posts we saw on tumblr this week</a></li> <li><a h...
...ref="#">10 parent hacks we know work because we tried them</a></li> </ul> </div> accessibility concerns landmark roles are int
ended to be used sparingly, to identify larger overall sections of the document.
... recomm
endation wai-aria authoring practicesthe definition of 'complementary landmark role' in that specification.
ARIA: gridcell role - Accessibility
it is int
ended to mimic the functionality of the html td element for table-style grouping of information.
...the ids provided for aria-describedby should correspond to parent elements int
ended to be the rows and columns.
...as such, it is recomm
ended to use the utilize native html table markup instead of recreating a table's form and functionality with aria and javascript.
ARIA: Navigation Role - Accessibility
lists) of links that are int
ended to be used for website or page content navigation.
... examples <div role="navigation" aria-label="customer service"> <ul> <li><a href="#">help</a></li> <li><a href="#">order tracking</li> <li><a href="#">shipping & delivery</a></li> <li><a href="#">returns</a></li> <li><a href="#">contact us</a></li> <li><a href="#">find a store</a></li> </ul> </div> accessibility concerns landmark roles are int
ended to be used sparingly, to identify larger overall sections of the document.
... recomm
endation wai-aria authoring practicesthe definition of 'navigation landmark role' in that specification.
ARIA: img role - Accessibility
this seems to work ok across some browser/screenreader combinations, but some of them
end up reading the label out twice.
... another example where this might be suitable is when using ascii emoji combinations, like the leg
endary "table flip": <div role="img" aria-label="table flip"> <p> (╯°□°)╯︵ ┻━┻ </p> </div> associated wai-aria roles, states, and properties aria-label an accessible name is required.
... recomm
endation screen reader support tbd ...
Alerts - Accessibility
here is a simple form: <form method="post" action="post.php"> <fieldset> <leg
end>please enter your contact details</leg
end> <label for="name">your name (required):</label> <input name="name" id="name" aria-required="true"/> <br /> <label for="email">e-mail address (required):</label> <input name="email" id="email" aria-required="true"/> <br /> <label for="website">website (optional):</label> <input name="website" id="website"/> </fie...
...ldset> <label for="message">please enter your message (required):</label> <br /> <textarea name="message" id="message" rows="5" cols="80" aria-required="true"></textarea> <br /> <input type="submit" name="submit" value="s
end message"/> <input type="reset" name="reset" value="reset form"/> </form> checking for validity and notifying the user form validations consists of several steps: checking if the e-mail address or entered name are valid.
...cript"> function removeoldalert() { var oldalert = document.getelementbyid("alert"); if (oldalert){ document.body.removechild(oldalert); } } function addalert(amsg) { removeoldalert(); var newalert = document.createelement("div"); newalert.setattribute("role", "alert"); newalert.setattribute("id", "alert"); var msg = document.createtextnode(amsg); newalert.app
endchild(msg); document.body.app
endchild(newalert); } function checkvalidity(aid, asearchterm, amsg) { var elem = document.getelementbyid(aid); var invalid = (elem.value.indexof(asearchterm) < 0); if (invalid) { elem.setattribute("aria-invalid", "true"); addalert(amsg); } else { elem.setattribute("aria-invalid", "false"); removeoldalert(); } } </script> t...
Accessibility: What users can do to browse more safely - Accessibility
personalization and accessibility settings from the article, "understanding success criterion 2.3.1: three flashes or below threshold" "flashing can be caused by the display, the computer r
endering the image or by the content being r
endered.
...understanding personalization and accessibility settings can actually be a money-saving
endeavor.
...examples include: transitionrun transitionstart transition
end transitioncancel edge 75 and above (desktop, in windows 10) according to eric bailey, in his april 30, 2019 article revisiting prefers-reduced-motion, the reduced motion media query, "while microsoft edge does not have support for prefers-reduced-motion, it will become chrome under the hood soon." safari 10.1 and above (desktop) do not enable auto-play (does not work for gifs) ios safari 1...
Accessibility and Spacial Patterns - Accessibility
they t
end to "float" visually or be "captured" by adjacent symbols with high luminance-contrast.
... the nature of space can change dep
ending upon what mime type is being used, and its version.
... for example, borders on svg can ext
end both inward and outward from its dimensions, or for newer versions of svg, entirely outward from it, thus reducing the space around the svg to enable perception.
HTML To MSAA - Accessibility
e char) state_system_ readonly n/a n/a n/a button role_system_ pushbutton from child nodes n/a state_system_ focusable state_system_ default if @type attribute has value "submit" n/a "press" n/a caption bstr role n/a n/a n/a description_for (0x100f), points to table element div bstr role n/a n/a n/a n/a n/a n/a fieldset role_system_ grouping text equivalent from child leg
end element n/a n/a labelled_by (1003), points to leg
end element n/a n/a hr role_system_ separator n/a n/a n/a n/a n/a n/a img, input @type=image role_system_ graphic from @alt attribute, empty @alt attribute means name can't be calculated at all n/a state_system_ animated if image has more than one frame n/a "showlongdesc" if @longdesc attribute is presented n/a if @usemap attribute is used ...
...a n/a state_system_ readonly if @readonly attribute is used state_system_ protected n/a "activate" n/a input type="checkbox" role_system_ checkbutton n/a n/a state_system_ marqueed used as state checkable state_system_ mixed for html 5 if intermediate property of dom element returns true state_system_ checked if checked property of dom element returns true n/a "check"/"uncheck"/"cycle" dep
ending on state event_object_ statechange when state is changed input type="radio" role_system_ radiobutton n/a n/a state_system_ marqueed used as state checkable state_system_ checked if checked property of dom element returns true n/a "select" event_object_ statechange when state is changed label role_system_ statictext from child nodes n/a n/a n/a n/a n/a leg
end role_system_ staticte...
...nadd if selected event_object_ selectionremove if unselected select @size > 1 role_system_ list n/a n/a state_system_ multiselectable if multiselectable n/a n/a n/a select @size = 1 role_system_ combobox n/a name of focused option state_system_ expanded if combobox open state_system_ collapsed if combobox is collapsed state_system_ haspopup state_system_ focusable n/a "open"/"close" dep
ending on state event_object_ valuechange when selected option is changed table role_system_ table from @summary attribute n/a described_by (0x100e) points to caption element n/a n/a td, th role_system_ cell n/a n/a n/a n/a n/a n/a thead role_system_ columnheader n/a n/a n/a n/a n/a n/a abbr, acronym, blockquote, form, frame, h1-h6, iframe bstr role n/a n/a n/a n/a n/a n/a ...
Understandable - Accessibility
the user should be warned/advised of the imp
ending change before it occurs.
...when a simple instruction or prompt is required, you can use <label> elements for single inputs like name or age, a combination or <label>s and <fieldset>s/<leg
end>s for multiple inputs that go together (like the elements of a date of birth or postal address).
... 3.3.6 error prevention (all) (aaa) this principle builds on 3.3.4, ext
ending its requirements to all user input situations, not just ones involving sensitive data.
-webkit-border-before - CSS: Cascading Style Sheets
it maps to a physical border dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top, border-right, border-bottom, or border-left property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... it relates to -webkit-border-after, -webkit-border-start, and -webkit-border-
end, which define the other borders of the element.
:-moz-focusring - CSS: Cascading Style Sheets
if :-moz-focusring matches, then :focus also matches, but the converse is not always true: it dep
ends on whether the user agent has focus ring drawing enabled and how the element was focused.
... whether the user agent has focus ring drawing enabled can dep
end on operating system settings and other factors, so the precise behavior of this pseudo-class will vary from platform to platform.
... note: developers t
end to use :-moz-focusring to differentiate between the focus state when the user focuses an element via a mouse click versus keyboard tabbing.
::after (:after) - CSS: Cascading Style Sheets
we can use these classes to add pseudo-elements to the
end of paragraphs.
... recomm
endation introduces the two-colon syntax.
... recomm
endation initial definition, using the one-colon syntax.
:disabled - CSS: Cascading Style Sheets
html <form action="#"> <fieldset id="shipping"> <leg
end>shipping address</leg
end> <input type="text" placeholder="name"> <input type="text" placeholder="address"> <input type="text" placeholder="zip code"> </fieldset> <br> <fieldset id="billing"> <leg
end>billing address</leg
end> <label for="billing-checkbox">same as shipping address:</label> <input type="checkbox" id="billing-checkbox" checked> <br> <input type="t...
... recomm
endation defines the semantics of html and forms.
... recomm
endation defines the pseudo-class, but not the associated semantics.
At-rules - CSS: Cascading Style Sheets
(at the candidate recomm
endation stage, but only implemented in gecko as of writing) @font-feature-values (plus @swash, @ornaments, @annotation, @stylistic, @styleset and @character-variant) — define common names in font-variant-alternates for feature activated differently in opentype.
... (at the candidate recomm
endation stage, but only implemented in gecko as of writing) conditional group rules much like the values of properties, each at-rule has a different syntax.
... specifications specification status comment css conditional rules module level 3 candidate recomm
endation initial definition compatibility standardthe definition of 'css at-rules' in that specification.
Box alignment in Flexbox - CSS: Cascading Style Sheets
the axes and flex-direction flexbox respects the writing mode of the document, therefore if you are working in english and set justify-content to flex-
end this will align the items to the
end of the flex container.
...set justify-content: flex-
end and the extra space is placed before the items, justify-content: space-around and it is placed either side of the item in that dimension, etc.
... on the cross axis align-self makes sense as we potentially have additional space in the flex container in that dimension, in which a single item can be moved to the start and
end.
CSS Color - CSS: Cascading Style Sheets
css color is a css module that deals with colors, color types, color bl
ending, opacity, and how you can apply these colors and effects to html content.
... not all css properties that take a <color> as a value are part of this module, but they do dep
end upon it.
... specifications specification status comment css color module level 4 working draft css color module level 3 recomm
endation css level 2 (revision 1) recomm
endation css level 1 recomm
endation initial definition ...
CSS Display - CSS: Cascading Style Sheets
candidate recomm
endation added run-in, flow, flow-root, contents and multi-keyword values.
... recomm
endation added the table model values and inline-block.
... recomm
endation initial definition.
Relationship of flexbox to other layout methods - CSS: Cascading Style Sheets
there is a note in the flexbox spec stating that in the future, once it is completed, the definitions in box alignment level 3 will supersede those of flexbox: "note: while the alignment properties are defined in css box alignment [css-align-3], flexible box layout reproduces the definitions of the relevant ones here so as to not create a normative dep
endency that may slow down advancement of the spec.
... in some cases you could happily use either layout method, but as you become confident with both you will find each one suiting different layout needs, and you will
end up with both methods in your css.
... warning: current implementations in most browsers will remove any element with display: contents from the accessibility tree (but desc
endants will remain).
Using CSS counters - CSS: Cascading Style Sheets
the generated text is the value of the innermost counter of the given name in scope at the given pseudo-element.the counter is r
endered in the specified style (decimal by default).
...the counters are r
endered in the specified style (decimal by default).
... recomm
endation initial definition ...
Using z-index - CSS: Cascading Style Sheets
layers are r
endered in numerical order, with larger numbers above smaller numbers.
... layer -3 layer -2 layer -1 layer 0 (default r
endering layer) layer 1 layer 2 layer 3 ...
... top layer (closest to the observer) notes: when no z-index property is specified, elements are r
endered on the default r
endering layer 0 (zero).
Basic concepts of CSS Scroll Snap - CSS: Cascading Style Sheets
using scroll-snap-align the scroll-snap-align property can take a value of start,
end, or center — indicating the point the content should snap to in the scroll container.
... this is potentially useful if you have a fixed element, for example a navigation bar, which could
end up overlapping scrolled content.
... note: the scroll-snap-stop property is currently marked at risk in the current candidate recomm
endation spec, therefore it may be removed.
CSS Scroll Snap - CSS: Cascading Style Sheets
css scroll snap is a module of css that introduces scroll snap positions, which enforce the scroll positions that a scroll container’s scrollport may
end at after a scrolling operation has completed.
... reference css properties on containers scroll-snap-type scroll-snap-stop scroll-padding scroll-padding-top scroll-padding-right scroll-padding-bottom scroll-padding-left scroll-padding-inline scroll-padding-inline-start scroll-padding-inline-
end scroll-padding-block scroll-padding-block-start scroll-padding-block-
end css properties on children scroll-snap-align scroll-margin scroll-margin-top scroll-margin-right scroll-margin-bottom scroll-margin-left scroll-margin-inline scroll-margin-inline-start scroll-margin-inline-
end scroll-margin-block scroll-margin-block-start scroll-margin-block-
end guides basic concepts ...
...of css scroll snap browser compatibility and scroll snap specification specification status comment css scroll snap module level 1 candidate recomm
endation initial definition ...
Basic Shapes - CSS: Cascading Style Sheets
the arguments which are accepted vary dep
ending on the shape that you are creating.
... .shape { shape-outside: circle(50%) border-box; } what is worth noting is that the margin-box will clip the shape, therefore shapes created in reference to other shapes which ext
end past the margin box will have the shape clipped to the margin box.
...the centre of the circle is now nearer the content and the circle ext
ends past the margin-box.
CSS Text Decoration - CSS: Cascading Style Sheets
reference properties letter-spacing text-align text-decoration text-decoration-color text-decoration-line text-decoration-offset text-decoration-skip-ink text-decoration-style text-decoration-thickness text-emphasis text-emphasis-color text-emphasis-position text-emphasis-style text-indent text-r
endering text-shadow text-transform white-space word-spacing guides none.
...be careful when removing the text decoration on anchors since users often dep
end on the underline to denote hyperlinks.</p> <p class="underover">this text has lines above <em>and</em> below it.</p> <p class="thick">this text has a really thick purple underline in supporting browsers.</p> <p class="blink">this text might blink for you, dep
ending on the browser you use.</p> specifications specification status comment css text decoration ...
...module level 4 working draft css text decoration module level 3 candidate recomm
endation css level 2 (revision 1) recomm
endation css level 1 recomm
endation initial definition ...
Child combinator - CSS: Cascading Style Sheets
this is stricter than the desc
endant combinator, which matches all elements matched by the second selector for which there exists an ancestor element matched by the first selector, regardless of the number of "hops" up the dom.
... recomm
endation no change.
... recomm
endation initial definition.
Class selectors - CSS: Cascading Style Sheets
recomm
endation css level 2 (revision 1)the definition of 'child selectors' in that specification.
... recomm
endation css level 1the definition of 'child selectors' in that specification.
... recomm
endation initial definition ...
ID selectors - CSS: Cascading Style Sheets
recomm
endation css level 2 (revision 1)the definition of 'id selectors' in that specification.
... recomm
endation css level 1the definition of 'id selectors' in that specification.
... recomm
endation initial definition ...
Syntax - CSS: Cascading Style Sheets
the last declaration of a block doesn't need to be terminated by a semi-colon, though it is often considered good style to do it as it prevents forgetting to add it when ext
ending the block with another declaration.
... a statement is a building block that begins with any non-space characters and
ends at the first closing brace or semi-colon (outside a string, non-escaped and not included into another {}, () or [] pair).
... at-rules that start with an at sign, '@' (u+0040 commercial at), followed by an identifier and then continuing up to the
end of the statement, that is up to the next semi-colon (;) outside of a block, or the
end of the next block.
Type selectors - CSS: Cascading Style Sheets
recomm
endation no changes css level 2 (revision 1)the definition of 'type selectors' in that specification.
... recomm
endation css level 1the definition of 'type selectors' in that specification.
... recomm
endation initial definition ...
Using CSS custom properties (variables) - CSS: Cascading Style Sheets
for instance, you cannot set a property for an element and expect to retrieve it in a sibling's desc
endant's rule.
... the property is only set for the matching selector and its desc
endants, like any normal css.
...for example, var(--foo, red, blue) defines a fallback of red, blue — anything between the first comma and the
end of the function is considered a fallback value.
animation - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...'play' : 'pause'); anim.style.animationplaystate = ''; anim.classlist.add('a' + (i + 1)); }, 100) } } animation.foreach(function (node, index) { node.addeventlistener('animationstart', function () { togglebutton(button[index], 'pause'); }); node.addeventlistener('animation
end', function () { togglebutton(button[index], 'restart'); }); }); button.foreach(function (btn, index) { btn.addeventlistener('click', function () { playpause(index); }); }); }) a description of which properties are animatable is available; it's worth noting that this description is also valid for css transitions.
.../value_definition_syntax#brackets" title="brackets: enclose several entities, combinators, and multipliers to transform them as a single component">[0,1]>, <number>, <number <a href="/docs/css/value_definition_syntax#brackets" title="brackets: enclose several entities, combinators, and multipliers to transform them as a single component">[0,1]>, <number>)<step-timing-function> = step-start | step-
end | steps(<integer>[, <step-position>]?)where <step-position> = jump-start | jump-
end | jump-none | jump-both | start |
end examples cylon eye <div class="view_port"> <div class="polling_message"> listening for dispatches </div> <div class="cylon_eye"></div> </div> .polling_message { color: white; float: left; margin-right: 2%; } .view_port { background-color: black; heigh...
block-size - CSS: Cascading Style Sheets
the block-size css property defines the horizontal or vertical size of an element's block, dep
ending on its writing mode.
... it corresponds to either the width or the height property, dep
ending on the value of writing-mode.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
border-block-color - CSS: Cascading Style Sheets
the border-block-color css property defines the color of the logical block borders of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... border-block-color: yellow; border-block-color: #f5f6f7; the border color in the other dimension can be set with border-inline-color which sets border-inline-start-color, and border-inline-
end-color.
border-block-style - CSS: Cascading Style Sheets
the border-block-style css property defines the style of the logical block borders of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <'border-style'> values */ border-block-style: dashed; border-block-style: dotted; border-block-style: groove; the border style in the other dimension can be set with border-inline-style, which sets border-inline-start-style, and border-inline-
end-style.
border-block-width - CSS: Cascading Style Sheets
the border-block-width css property defines the width of the logical block borders of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <'border-width'> values */ border-block-width: 5px; border-block-width: thick; the border width in the other dimension can be set with border-inline-width, which sets border-inline-start-width, and border-inline-
end-width.
border-bottom-color - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant changes, though the transparent keyword, now included in <color> which has been ext
ended, has been formally removed.
... recomm
endation initial definition ...
border-bottom-style - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation no significant change.
... recomm
endation initial definition.
border-image-outset - CSS: Cascading Style Sheets
the parts of the border image that are r
endered outside the element's border box with border-image-outset do not trigger overflow scrollbars and don't capture mouse events.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation initial definition ...
border-image-width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if this property's value is greater than the element's border-width, the border image will ext
end beyond the padding (and/or content) edge.
... candidate recomm
endation initial definition ...
border-inline-color - CSS: Cascading Style Sheets
the border-inline-color css property defines the color of the logical inline borders of an element, which maps to a physical border color dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-color and border-bottom-color, or border-right-color and border-left-color property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... border-inline-color: yellow; border-inline-color: #f5f6f7; the border color in the other dimension can be set with border-block-color which sets border-block-start-color, and border-block-
end-color.
border-inline-style - CSS: Cascading Style Sheets
the border-inline-style css property defines the style of the logical inline borders of an element, which maps to a physical border style dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-style and border-bottom-style, or border-left-style and border-right-style properties dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <'border-style'> values */ border-inline-style: dashed; border-inline-style: dotted; border-inline-style: groove; the border style in the other dimension can be set with border-block-style, which sets border-block-start-style, and border-block-
end-style.
border-inline-width - CSS: Cascading Style Sheets
the border-inline-width css property defines the width of the logical inline borders of an element, which maps to a physical border width dep
ending on the element's writing mode, directionality, and text orientation.
... it corresponds to the border-top-width and border-bottom-width, or border-left-width, and border-right-width property dep
ending on the values defined for writing-mode, direction, and text-orientation.
... /* <'border-width'> values */ border-inline-width: 5px 10px; border-inline-width: 5px; border-inline-width: thick; the border width in the other dimension can be set with border-block-width, which sets border-block-start-width, and border-block-
end-width.
top - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... the effect of top dep
ends on how the element is positioned (i.e., the value of the position property): when position is set to absolute or fixed, the top property specifies the distance between the element's top edge and the top edge of its containing block.
... recomm
endation initial definition.
touch-action - CSS: Cascading Style Sheets
this means that in practice, touch-action is typically applied only to top-level elements which have some custom behavior, without needing to specify touch-action explicitly on any of that element's desc
endants.
...non-replaced inline elements, table rows, row groups, table columns, and column groupsinheritednocomputed valueas specifiedanimation typediscrete formal syntax auto | none | [ [ pan-x | pan-left | pan-right ] | [ pan-y | pan-up | pan-down ] | pinch-zoom ] | manipulation examples disabling all gestures the most common usage is to disable all gestures on an element (and its non-scrollable desc
endants) that provides its own dragging and zooming behavior – such as a map or game surface.
... recomm
endation latest recomm
endation.
var() - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...for example, var(--foo, red, blue) defines a fallback of red, blue; that is, anything between the first comma and the
end of the function is considered a fallback value.
... candidate recomm
endation initial definition ...
widows - CSS: Cascading Style Sheets
candidate recomm
endation ext
ends widows to apply to any type of fragment, including pages, regions, or columns.
... working draft recomm
endations to consider widows in relation to columns.
... recomm
endation initial definition.
width - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation precises on which element it applies to.
... recomm
endation initial definition.
writing-mode - CSS: Cascading Style Sheets
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... candidate recomm
endation add sideways-lr and sideways-rl css writing modes module level 3the definition of 'writing-mode' in that specification.
... proposed recomm
endation initial definition ...
Setting up adaptive streaming media sources - Developer guides
note: you will need to be comfortable with make files and installing dep
endencies to get this software up and running.
... note: you can also split out your audio and video streams into separate files, which can then be prioritised and served separately dep
ending on bandwidth.
...#extinf:10.0, http://media.example.com/segment1.ts #extinf:9.5, http://media.example.com/segment2.ts #ext-x-
endlist note: comprehensive information on how to encode media for apple's hls format can be found on apple's developer pages.
Video player styling basics - Developer guides
in order to facilitate this, a new function is defined called changebuttonstate(), which accepts a type variable indicating the button's functionality: var changebuttonstate = function(type) { // play/pause button if (type == 'playpause') { if (video.paused || video.
ended) { playpause.setattribute('data-state', 'play'); } else { playpause.setattribute('data-state', 'pause'); } } // mute button else if (type == 'mute') { mute.setattribute('data-state', video.muted ?
...to ensure this, a new click handler needs to be defined for the play/pause button so that it too raises the play and pause events: playpause.addeventlistener('click', function(e) { if (video.paused || video.
ended) video.play(); else video.pause(); }); volume the altervolume() function, called when the player's volume buttons are clicked, also changes — it now calls a new function called checkvolume(): var checkvolume = function(dir) { if (dir) { var currentvolume = math.floor(video.volume * 10) / 10; if (dir === '+') { if (currentvolume < 1) video.volume += 0.1; } ...
... the 'volumechange' event is raised, there is no way to know if it was via a volume or a mute change if (currentvolume <= 0) video.muted = true; else video.muted = false; } changebuttonstate('mute'); } var altervolume = function(dir) { checkvolume(dir); } this new checkvolume() function does the same thing as the altervolume() but it also sets the state of the mute button dep
ending on the video's current volume setting.
Web Audio playbackRate explained - Developer guides
defaultplaybackrate and ratechange in addition to playbackrate, we also have a defaultplaybackrate property available, which lets us set the default playback rate: the playback rate to which the media resets; for example, if we change the source of the video, or (in some browsers) when an
ended event is generated.
...for most applications, it's recomm
ended that you limit the range to between 0.5 and 4.
... ie9+ switches to the default playback rate when an
ended event is fired.
Audio and video manipulation - Developer guides
var processor = { timercallback: function() { if (this.video.paused || this.video.
ended) { return; } this.computeframe(); var self = this; settimeout(function () { self.timercallback(); }, 16); // roughly 60 frames per second }, doload: function() { this.video = document.getelementbyid("my-video"); this.c1 = document.getelementbyid("my-canvas"); this.ctx1 = this.c1.getcontext("2d"); var self = this; this.video.addeventliste...
... selecting an audio source the web audio api can receive audio from a variety of sources, then process it and s
end it back out to an audiodestinationnode representing the output device to which the sound is sent after processing.
... libraries currently exist for the following formats : aac: aac.js alac: alac.js flac: flac.js mp3: mp3.js opus: opus.js vorbis: vorbis.js note: at audiocogs, you can try out a few demos; audiocogs also provides a framework, aurora.js, which is int
ended to help you author your own codecs in javascript.
Media events - Developer guides
ended sent when playback completes.
... susp
end sent when loading of the media is susp
ended; this may happen either because the download has completed or because it has been paused for any other reason.
... waiting sent when the requested operation (such as playback) is delayed p
ending the completion of another operation (such as a seek).
Orientation and motion data explained - Developer guides
the x axis follows along the ground plane, perp
endicular to the y axis and positive toward the east (and therefore negative toward the west).
... the z axis is perp
endicular to the ground plane; think of it as a line drawn between the device and the center of the earth.
... the z axis is perp
endicular to the screen or keyboard, and is positive ext
ending outward from the screen.
Rich-Text Editing in Mozilla - Developer guides
.checked) { return true ; } alert("uncheck \"show html\"."); odoc.focus(); return false; } function setdocmode(btosource) { var ocontent; if (btosource) { ocontent = document.createtextnode(odoc.innerhtml); odoc.innerhtml = ""; var opre = document.createelement("pre"); odoc.contenteditable = false; opre.id = "sourcetext"; opre.contenteditable = true; opre.app
endchild(ocontent); odoc.app
endchild(opre); } else { if (document.all) { odoc.innerhtml = odoc.innertext; } else { ocontent = document.createrange(); ocontent.selectnodecontents(odoc.firstchild); odoc.innerhtml = ocontent.tostring(); } odoc.contenteditable = true; } odoc.focus(); } function printdoc() { if (!validatemode()) { return; } var oprntw...
...qtkeuoqjktojm2h53yfl15psj04zc94wdtibr26fxlc2mzrvbccebz2kirfd414tkmlezbvgt33+qcohgha81swysew0r1uzfnylmtpx80pngqq91lwvk2jgvgnfvzg6ycyrat16gftw5kkkfo1eqltfh5q2ett0biwf+aitq4fdbk+imyo1oxvgf03wafjqvbckvdffryetxqiffygazths0zwagd7fg5tnnyntp8/fzvgwjofmgg7gox0sakkgqgdmgkbi0njgmeimpgdk5+wacewed0ywblhguz4hw5oduekrblt7dtgdegxacsiznx8zpmwh7k4rkpjcuhdxcul6mdsmmbxdlwch2+xozsgbnzsncee4euyv4pwcpswypw0uhdybkswu1nyj
endreqtkjwn2+zvttc1vmstb/mvev/weyslasslimcohobjxw+n3ap/sjefnl5gepzmpu4kg7opr1+tofpyuu3becwykcwqcdfmwfkauo90fhkdinbcamvqnymgqueagqwcohbdc1rjv9pild8ibvkz6qyviibqgtjpx4k0xpigezorn1da0cij4vfr0ta3wvbxh/rjdcufv6r2zpgph/e4pxsbcpeatqprjniso203/5s/za171mv8+w1loaaaaaelftksuqmcc"> <img class="intlink" title="undo" onclick="formatdoc('undo');" src="data:image/gif;base64,r0lgodlhfgawaomkadljwlie33morpgjuykl8aezxq...
...vyksfbwze+awibv0ghfog2ewidchjwriqo9e2fx4xd5r+b0ddaenbxbhbhn2dgwdaqfjjyvhcqyrfgoidgiqjawtcqmriwwmfgicnvcaaamoak+blaortluyt7i5uiuhads=" /> </div> <div id="textbox" contenteditable="true"><p>lorem ipsum</p></div> <p id="editmode"><input type="checkbox" name="switchmode" id="switchbox" onchange="setdocmode(this.checked);" /> <label for="switchbox">show html</label></p> <p><input type="submit" value="s
end" /></p> </form> </body> </html> note: if you want to see how to standardize the creation and the insertion of your editor in your page, please see our more complete rich-text editor example.
Making content editable - Developer guides
.checked) { return true ; } alert("uncheck \"show html\"."); odoc.focus(); return false; } function setdocmode(btosource) { var ocontent; if (btosource) { ocontent = document.createtextnode(odoc.innerhtml); odoc.innerhtml = ""; var opre = document.createelement("pre"); odoc.contenteditable = false; opre.id = "sourcetext"; opre.contenteditable = true; opre.app
endchild(ocontent); odoc.app
endchild(opre); document.execcommand("defaultparagraphseparator", false, "div"); } else { if (document.all) { odoc.innerhtml = odoc.innertext; } else { ocontent = document.createrange(); ocontent.selectnodecontents(odoc.firstchild); odoc.innerhtml = ocontent.tostring(); } odoc.contenteditable = true; } odoc.focus(); } ...
...qtkeuoqjktojm2h53yfl15psj04zc94wdtibr26fxlc2mzrvbccebz2kirfd414tkmlezbvgt33+qcohgha81swysew0r1uzfnylmtpx80pngqq91lwvk2jgvgnfvzg6ycyrat16gftw5kkkfo1eqltfh5q2ett0biwf+aitq4fdbk+imyo1oxvgf03wafjqvbckvdffryetxqiffygazths0zwagd7fg5tnnyntp8/fzvgwjofmgg7gox0sakkgqgdmgkbi0njgmeimpgdk5+wacewed0ywblhguz4hw5oduekrblt7dtgdegxacsiznx8zpmwh7k4rkpjcuhdxcul6mdsmmbxdlwch2+xozsgbnzsncee4euyv4pwcpswypw0uhdybkswu1nyj
endreqtkjwn2+zvttc1vmstb/mvev/weyslasslimcohobjxw+n3ap/sjefnl5gepzmpu4kg7opr1+tofpyuu3becwykcwqcdfmwfkauo90fhkdinbcamvqnymgqueagqwcohbdc1rjv9pild8ibvkz6qyviibqgtjpx4k0xpigezorn1da0cij4vfr0ta3wvbxh/rjdcufv6r2zpgph/e4pxsbcpeatqprjniso203/5s/za171mv8+w1loaaaaaelftksuqmcc"> <img class="intlink" title="undo" onclick="formatdoc('undo');" src="data:image/gif;base64,r0lgodlhfgawaomkadljwlie33morpgjuykl8aezxq...
...vyksfbwze+awibv0ghfog2ewidchjwriqo9e2fx4xd5r+b0ddaenbxbhbhn2dgwdaqfjjyvhcqyrfgoidgiqjawtcqmriwwmfgicnvcaaamoak+blaortluyt7i5uiuhads=" /> </div> <div id="textbox" contenteditable="true"><p>lorem ipsum</p></div> <p id="editmode"><input type="checkbox" name="switchmode" id="switchbox" onchange="setdocmode(this.checked);" /> <label for="switchbox">show html</label></p> <p><input type="submit" value="s
end" /></p> </form> </body> </html> note: if you want to see how to standardize the creation and the insertion of your editor in your page, please see our more complete rich-text editor example.
<tfoot>: The Table Foot element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the
end tag may be omitted if there is no more content in the parent <table> element.
... recomm
endation ...
<thead>: The Table Head element - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...the
end tag may be omitted if the <thead> element is immediately followed by a <tbody> or <tfoot> element.
... recomm
endation ...
data-* - HTML: Hypertext Markup Language
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... recomm
endation snapshot of html living standard, no change from html5 html5the definition of 'data-*' in that specification.
... recomm
endation snapshot of html living standard, initial definition.
is - HTML: Hypertext Markup Language
this attribute can only be used if the specified custom element name has been successfully defined in the current document, and ext
ends the element type it is being applied to.
... // create a class for the element class wordcount ext
ends htmlparagraphelement { constructor() { // always call super first in constructor super(); // constructor contents ommitted for brevity ...
... } } // define the new element customelements.define('word-count', wordcount, { ext
ends: 'p' }); <p is="word-count"></p> specifications specification status comment html living standardthe definition of 'is' in that specification.
Quirks Mode and Standards Mode - HTML: Hypertext Markup Language
to ensure that your page uses full standards mode, make sure that your page has a doctype like in this example: <!doctype html> <html lang="en"> <head> <meta charset=utf-8> <title>hello world!</title> </head> <body> </body> </html> the doctype shown in the example, <!doctype html>, is the simplest possible, and the one recomm
ended by html5.
... earlier versions of the html standard recomm
ended other variants, but all existing browsers today will use full standards mode for this doctype, even the dated internet explorer 6.
... in firefox, select view page info from the context menu, and look for r
ender mode.
Reason: CORS header 'Access-Control-Allow-Origin' missing - HTTP
in addition, the wildcard only works for requests made with the crossorigin attribute set to anonymous, and it prevents s
ending credentials like cookies in requests.
... to allow any site to make cors requests without using the * wildcard (for example, to enable credentials), your server must read the value of the request's origin header and use that value to set access-control-allow-origin, and must also set a vary: origin header to indicate that some headers are being set dynamically dep
ending on the origin.
... the exact directive for setting headers dep
ends on your web server.
Content Security Policy (CSP) - HTTP
for example, a page that uploads and displays images could allow images from anywhere, but restrict a form action to a specific
endpoint.
... disposition either "enforce" or "report" dep
ending on whether the content-security-policy-report-only header or the content-security-policy header is used.
...a browser capable of enforcing csp would s
end the following violation report as a post request to http://example.com/_/csp-reports, when the document is visited: { "csp-report": { "document-uri": "http://example.com/signup.html", "referrer": "", "blocked-uri": "http://example.com/css/style.css", "violated-directive": "style-src cdn.example.com", "original-policy": "default-src 'none'; style-src cdn.example.com; report-...
Configuring servers for Ogg media - HTTP
in addition, gecko uses byte-range requests to seek to the
end of the media (assuming you serve the content-length header) in order to determine the duration of the media.
... for example, if the video is 1 minute and 32.6 seconds long, this header would be: x-content-duration: 92.6 if your server provides the x-content-duration header when serving ogg media, gecko doesn't have to do any extra http requests to seek to the
end of the file to calculate its duration.
... another probelm with allowing http compression for media streaming: apache servers don't s
end the content-length response header if gzip encoding is used.
Cache-Control - HTTP
header type general header forbidden header name no cors-safelisted response header yes syntax caching directives have the following rules to be valid: case-insensitive, but lowercase is recomm
ended.
...the resource, if unexpired, is unchanged on the server and therefore the client should not s
end a conditional revalidation for it (e.g.
... examples preventing caching to disable caching of a resource, you can s
end the following response header: good: cache-control: no-store bad: cache-control: private,no-cache,no-store,max-age=0,must-revalidate,pre-check=0,post-check=0 caching static assets for the files in the application that will not change, you can usually add aggressive caching by s
ending the response header below.
Content-Encoding - HTTP
the recomm
endation is to compress data as much as possible and therefore to use this field, but some types of resources, such as jpeg images, are already compressed.
...the http/1.1 standard also recomm
ends that the servers supporting this content-encoding should recognize x-gzip as an alias, for compatibility purposes.
...compression highly dep
ends on server settings and used server modules.
CSP: form-action - HTTP
you can also specify data schemes (not recomm
ended).
... <meta http-equiv="content-security-policy" content="form-action 'none'"> <form action="javascript:alert('foo')" id="form1" method="post"> <input type="text" name="fieldname" value="fieldvalue"> <input type="submit" id="submit" value="submit"> </form> // error: refused to s
end form data because it violates the following // content security policy directive: "form-action 'none'".
... recomm
endation initial definition.
CSP: object-src - HTTP
therefore it is recomm
ended to restrict this fetch-directive (e.g.
...you can also specify data schemas (not recomm
ended).
... recomm
endation initial definition.
CSP: prefetch-src - HTTP
the http content-security-policy (csp) prefetch-src directive specifies valid resources that may be prefetched or prer
endered.
...you can also specify data schemes (not recomm
ended).
... example prefetch resources do not match header given a page with the following content security policy: content-security-policy: prefetch-src https://example.com/ fetches for the following code will return network errors, as the urls provided do not match prefetch-src's source list: <link rel="prefetch" src="https://example.org/"></link> <link rel="prer
ender" src="https://example.org/"></link> specification specification status comment content security policy level 3the definition of 'prefetch-src' in that specification.
CSP: report-to - HTTP
the content-security-policy report-to http response header field instructs the user agent to store reporting
endpoints for an origin.
... report-to: { "group": "csp-
endpoint", "max_age": 10886400, "
endpoints": [ { "url": "https://example.com/csp-reports" } ] }, { "group": "hpkp-
endpoint", "max_age": 10886400, "
endpoints": [ { "url": "https://example.com/hpkp-reports" } ] } content-security-policy: ...; report-to csp-
endpoint report-to: { "grou...
...p": "
endpoint-1", "max_age": 10886400, "
endpoints": [ { "url": "https://example.com/reports" }, { "url": "https://backup.com/reports" } ] } content-security-policy: ...; report-to
endpoint-1 ...
DPR - HTTP
server has to opt in to receive dpr header from the client by s
ending accept-ch and accept-ch-lifetime response headers.
... syntax dpr: <number> examples server first needs to opt in to receive dpr header by s
ending the response headers accept-ch containing dpr and accept-ch-lifetime.
... accept-ch: dpr accept-ch-lifetime: 86400 then on subsequent requests the client might s
end dpr header back: dpr: 1.0 ...
Device-Memory - HTTP
server has to opt in to receive device-memory header from the client by s
ending accept-ch and accept-ch-lifetime response headers.
... device-memory: <number> examples server first needs to opt in to receive device-memory header by s
ending the response headers accept-ch containing device-memory and accept-ch-lifetime.
... accept-ch: device-memory accept-ch-lifetime: 86400 then on subsequent requests the client might s
end device-memory header back: device-memory: 1 specifications specification status comment device memory 1the definition of 'device-memory' in that specification.
Want-Digest - HTTP
the header contains identifiers for one or more digest algorithms that the s
ender wishes the responder to use to create the digest.
... the s
ender may use quality values to indicate its preference ordering among the choices it offers.
... examples want-digest: sha-256 want-digest: sha-512;q=0.3, sha-256;q=1, md5;q=0 basic operation the s
ender provides a list of digests which it is prepared to accept, and the server uses one of them: request: get /item want-digest: sha-256;q=0.3, sha;q=1 response: http/1.1 200 ok digest: sha-256=x48e9qookqqrvdts8nojrjn3owduoywxbf7kbu9dbpe= unsupported digests the server does not support any of the requested digest algorithms, so uses a different algorithm: request: get /item want-...
X-XSS-Protection - HTTP
chrome has removed their xss auditor firefox have not, and will not implement x-xss-protection edge have retired their xss filter this means that if you do not need to support legacy browsers, it is recomm
ended that you use content-security-policy without allowing unsafe-inline scripts instead.
...rather than sanitizing the page, the browser will prevent r
endering of the page if an attack is detected.
...this uses the functionality of the csp report-uri directive to s
end a report.
Network Error Logging - HTTP
the following object keys can be specified in the nel header: report_to the reporting api group to s
end network error reports to (see below).
... the reporting group referenced above is defined in the usual manner within the report-to header, for example: report-to: { "group": "nel", "max_age": 31556952, "
endpoints": [ { "url": "https://example.com/csp-reports" } ] } error reports in these examples, the entire reporting api payload is shown.
...method": "post", "phase": "dns", "protocol": "http/1.1", "referrer": "https://example.com/previous-page", "sampling_fraction": 1, "server_ip": "", "status_code": 0, "type": "dns.name_not_resolved", "url": "https://example-host.com/" } } the type of the network error may be one of the following pre-defined values from the specification, but browsers can add and s
end their own error types: dns.unreachable the user's dns server is unreachable dns.name_not_resolved the user's dns server responded but was unable to resolve an ip address for the requested uri.
HTTP
overview of http the basic features of the client-server protocol: what it can do and its int
ended uses.
...when serving an http request, a server can s
end a set-cookie http header with the response.
...with a few exceptions, policies mostly involve specifying server origins and script
endpoints.
Equality comparisons and sameness - JavaScript
which operation you choose dep
ends on what sort of comparison you are looking to perform.
...for example, someone might say that double equals is an ext
ended version of triple equals, because the former does everything that the latter does, but with type conversion on its operands.
...which one is the better model for understanding dep
ends on how you choose to view things.) however, this way of thinking about the built-in sameness operators is not a model that can be stretched to allow a place for es2015's object.is on this "spectrum".
Concurrency model and the event loop - JavaScript
the execution dep
ends on the number of waiting tasks in the queue.
... (function() { console.log('this is the start'); settimeout(function cb() { console.log('callback 1: this is a msg from call back'); }); // has a default time value of 0 console.log('this is just a message'); settimeout(function cb1() { console.log('callback 2: this is a msg from call back'); }, 0); console.log('this is the
end'); })(); // "this is the start" // "this is just a message" // "this is the
end" // "callback 1: this is a msg from call back" // "callback 2: this is a msg from call back" several runtimes communicating together a web worker or a cross-origin iframe has its own stack, heap, and message queue.
... two distinct runtimes can only communicate through s
ending messages via the postmessage method.
Regular expression syntax cheatsheet - JavaScript
$ matches the
end of input.
... /oon\b/ matches the "oon" in "moon", because "oon" is the
end of the string, thus not followed by a word character.
...the beginning and
end of a string are considered non-words.
Quantifiers - JavaScript
for example, given a string like "some <foo> <bar> new </bar> </foo> thing": /<.*>/ will match "<foo> <bar> new </bar> </foo>" /<.*?>/ will match "<foo>" examples repeated pattern var word
endingwithas = /\w+a+\b/; var delicatemessage = "this is spartaaaaaaa"; console.table(delicatemessage.match(word
endingwithas)); // [ "spartaaaaaaa" ] counting characters var singleletterword = /\b\w\b/g; var notsolongword = /\b\w{1,6}\b/g; var loooongword = /\b\w{13,}\b/g; var sentence = "why do i have to learn multiplication table?"; console.table(sentence.match(singleletterword)); // ["i"] co...
...nsole.table(sentence.match(notsolongword)); // [ "why", "do", "i", "have", "to", "learn", "table" ] console.table(sentence.match(loooongword)); // ["multiplication"] optional character var britishtext = "he asked his neighbour a favour."; var americantext = "he asked his neighbor a favor."; var regexp
ending = /\w+ou?r/g; // \w+ one or several letters // o followed by an "o", // u?
... optionally followed by a "u" // r followed by an "r" console.table(britishtext.match(regexp
ending)); // ["neighbour", "favour"] console.table(americantext.match(regexp
ending)); // ["neighbor", "favor"] greedy versus non-greedy var text = "i must be getting somewhere near the centre of the earth."; var greedyregexp = /[\w ]+/; // [\w ] a letter of the latin alphabet or a whitespace // + one or several times console.log(text.match(greedyregexp)[0]); // "i must be getting somewhere near the centre of the earth" // almost all of the text matches (leaves out the dot character) var nongreedyregexp = /[\w ]+?/; // notice the question mark console.log(text.match(nongreedyregexp)); // "i" // the match is the smallest one possible specifications specification ...
Regular expressions - JavaScript
assertions assertions include boundaries, which indicate the beginnings and
endings of lines and words, and other patterns indicating in some way that a match is possible (including look-ahead, look-behind, and conditional expressions).
...if the m flag is used, ^ and $ match at the start or
end of any line within the input string instead of the start or
end of the entire string.
... within non-capturing parentheses (?: , the regular expression looks for three numeric characters \d{3} or | a left parenthesis \( followed by three digits \d{3}, followed by a close parenthesis \), (
end non-capturing parenthesis )), followed by one dash, forward slash, or decimal point and when found, remember the character ([-\/\.]), followed by three digits \d{3}, followed by the remembered match of a dash, forward slash, or decimal point \1, followed by four digits \d{4}.
Text formatting - JavaScript
startswith,
endswith, includes returns whether or not the string starts,
ends or contains a specified string.
... substring, substr return the specified subset of the string, either by specifying the start and
end indexes or the start index and a length.
... trim trims whitespace from the beginning and
end of the string.
Arrow function expressions - JavaScript
so while searching for this which is not present in the current scope, an arrow function
ends up finding the this from its enclosing scope.
... https://www.ecma-international.org/ecma-262/10.0/index.html#sec-strict-mode-code https://www.ecma-international.org/ecma-262/10.0/index.html#sec-arrow-function-definitions-runtime-semantics-evaluation correction:
end invoked through call or apply since arrow functions do not have their own this, the methods call() and apply() can only pass in parameters.
... var func = (a, b, c) => 1; // syntaxerror: expected expression, got '=>' however, this can be am
ended by putting the line break after the arrow or using parentheses/braces as seen below to ensure that the code stays pretty and fluffy.
Array.prototype.reduce() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...erty] if (!acc[key]) { acc[key] = [] } acc[key].push(obj) return acc }, {}) } let groupedpeople = groupby(people, 'age') // groupedpeople is: // { // 20: [ // { name: 'max', age: 20 }, // { name: 'jane', age: 20 } // ], // 21: [{ name: 'alice', age: 21 }] // } bonding arrays contained in an array of objects using the spread operator and initialvalue // fri
ends - an array of objects // where object field "books" is a list of favorite books let fri
ends = [{ name: 'anna', books: ['bible', 'harry potter'], age: 21 }, { name: 'bob', books: ['war and peace', 'romeo and juliet'], age: 26 }, { name: 'alice', books: ['the lord of the rings', 'the shining'], age: 18 }] // allbooks - list which will contain all fri
ends' books + // additional l...
...ist contained in initialvalue let allbooks = fri
ends.reduce(function(accumulator, currentvalue) { return [...accumulator, ...currentvalue.books] }, ['alphabet']) // allbooks = [ // 'alphabet', 'bible', 'harry potter', 'war and peace', // 'romeo and juliet', 'the lord of the rings', // 'the shining' // ] remove duplicate items in an array note: if you are using an environment compatible with set and array.from(), you could use let orderedarray = array.from(new set(myarray)) to get an array where duplicate items have been removed.
Array.prototype.lastIndexOf() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...if negative, it is taken as the offset from the
end of the array.
...if you int
end to use this in real-world applications, you may be able to calculate from with less complicated code if you ignore those cases.
Array.prototype.splice() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if negative, it will begin that many elements from the
end of the array.
... if deletecount is omitted, or if its value is equal to or larger than array.length - start (that is, if it is equal to or greater than the number of elements left in the array, starting at start), then all the elements from start to the
end of the array will be deleted.
Date.prototype.getTime() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... reduced time precision to offer protection against timing attacks and fingerprinting, the precision of new date().gettime() might get rounded dep
ending on browser settings.
... var
end, start; start = new date(); for (var i = 0; i < 1000; i++) { math.sqrt(i); }
end = new date(); console.log('operation took ' + (
end.gettime() - start.gettime()) + ' msec'); specifications specification ecmascript (ecma-262)the definition of 'date.prototype.gettime' in that specification.
Date.prototype.toString() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
..."(" an implementation dep
endent string representation of the timezone, which might be an abbreviation or full name (there is no standard for names or abbreviations of timezones), e.g.
..."sat sep 01 2018 14:53:26 gmt+1400 (lint)" until ecmascript 2018 (edition 9), the format of the string returned by date.prototype.tostring was implementation dep
endent.
Intl.DateTimeFormat.prototype.formatRangeToParts() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax intl.datetimeformat.prototype.formatrangetoparts(startdate,
enddate) examples basic formatrangetoparts usage this method receives two dates and returns an array of objects containing the locale-specific tokens representing each part of the formatted date range.
...e2)); // > '10:00 – 11:00 am' fmt.formatrangetoparts(date1, date2); // return value: // [ // { type: 'hour', value: '10', source: "startrange" }, // { type: 'literal', value: ':', source: "startrange" }, // { type: 'minute', value: '00', source: "startrange" }, // { type: 'literal', value: ' – ', source: "shared" }, // { type: 'hour', value: '11', source: "
endrange" }, // { type: 'literal', value: ':', source: "
endrange" }, // { type: 'minute', value: '00', source: "
endrange" }, // { type: 'literal', value: ' ', source: "shared" }, // { type: 'dayperiod', value: 'am', source: "shared" } // ] specifications specification intl.datetimeformat.formatrangethe definition of 'formatrangetoparts()' in ...
Intl.DateTimeFormat.prototype.resolvedOptions() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... cal
endar e.g.
... examples using the resolvedoptions method var germanfakeregion = new intl.datetimeformat('de-xx', { timezone: 'utc' }); var usedoptions = germanfakeregion.resolvedoptions(); usedoptions.locale; // "de" usedoptions.cal
endar; // "gregory" usedoptions.numberingsystem; // "latn" usedoptions.timezone; // "utc" usedoptions.month; // "numeric" specifications specification ecmascript internationalization api (ecma-402)the definition of 'intl.datetimeformat.prototype.resolvedoptions' in that specification.
Intl.Locale.prototype.maximize() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...examples of these subtags include locale.hourcycle, locale.cal
endar, and locale.numeric.
... examples using maximize let mylocale = new intl.locale("fr", {hourcycle: "h24", cal
endar: "gregory"}); console.log(mylocale.basename); // prints "fr" console.log(mylocale.tostring()); // prints "fr-u-ca-gregory-hc-h24" let mylocmaximized = mylocale.maximize(); // prints "fr-latn-fr".
Intl.Locale.prototype.minimize() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...examples of these subtags include locale.hourcycle, locale.cal
endar, and locale.numeric.
... examples using minimize let mylocale = new intl.locale("fr-latn-fr", {hourcycle: "h24", cal
endar: "gregory"}); console.log(mylocale.basename); // prints "fr-latn-fr" console.log(mylocale.tostring()); // prints "fr-latn-fr-u-ca-gregory-hc-h24" let mylocminimized = mylocale.minimize(); // prints "fr", since french is only written in the latin script // and is most likely to be spoken in france.
Intl.Locale.prototype.numberingSystem - JavaScript
value description adlm adlam digits ahom ahom digits arab arabic-indic digits arabext ext
ended arabic-indic digits armn armenian upper case numerals — algorithmic armnlow armenian lower case numerals — algorithmic bali balinese digits beng bengali digits bhks bhaiksuki digits brah brahmi digits cakm chakma digits cham cham digits cyrl cyrillic numerals — algorithmic ...
... geor georgian numerals — algorithmic gong gunjala gondi digits gonm masaram gondi digits grek greek upper case numerals — algorithmic greklow greek lower case numerals — algorithmic gujr gujarati digits guru gurmukhi digits hanidays han-character day-of-month numbering for lunar/other traditional cal
endars hanidec positional decimal system using chinese number ideographs as digits hans simplified chinese numerals — algorithmic hansfin simplified chinese financial numerals — algorithmic hant traditional chinese numerals — algorithmic hantfin traditional chinese financial numerals — algorithmic hebr hebrew numerals —...
... algorithmic hmng pahawh hmong digits hmnp nyiakeng puachue hmong digits java javanese digits jpan japanese numerals — algorithmic jpanfin japanese financial numerals — algorithmic jpanyear japanese first-year gannen numbering for japanese cal
endar kali kayah li digits khmr khmer digits knda kannada digits lana tai tham hora (secular) digits lanatham tai tham tham (ecclesiastical) digits laoo lao digits latn latin digits lepc lepcha digits limb limbu digits mathbold mathematical bold digits mathdbl mathematical double-struck digits mathmono mathematical monospace digits ...
Intl.Locale.prototype.toString() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...information about a particular locale (language, script, cal
endar type, etc.) can be encoded in a locale identifier string.
... examples using tostring let mylocale = new intl.locale("fr-latn-fr", {hourcycle: "h24", cal
endar: "gregory"}); console.log(mylocale.basename); // prints "fr-latn-fr" console.log(mylocale.tostring()); // prints "fr-latn-fr-u-ca-gregory-hc-h24" specifications specification ecmascript internationalization api (ecma-402) ...
Intl - JavaScript
"ja-jp-u-ca-japanese": use the japanese cal
endar in date and time formatting, so that 2013 is expressed as the year 25 of the heisei period, or 平成25.
... "en-gb-u-ca-islamic": use british english with the islamic (hijri) cal
endar, where the gregorian date 14 october, 2017 is the hijri date 24 muharram, 1439.
...each constructor or function supports only a subset of the keys defined for the unicode extension, and the supported values often dep
end on the language tag.
JSON.parse() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...javascript handles many characters // incorrectly, either silently deleting them, or treating them as line
endings.
...if the reviver function returns undefined (or returns no value, for example, if execution falls off the
end of the function), the property is deleted from the object.
Object.defineProperty() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...same thing) object.defineproperty(o, 'a', { value: 12 }); // throws a typeerror // ('value' can be changed when 'configurable' is false but not in this case due to 'get' accessor) console.log(o.a); // logs 1 delete o.a; // nothing happens console.log(o.a); // logs 1 if the configurable attribute of o.a had been true, none of the errors would be thrown and the property would be deleted at the
end.
...operty', pattern); } var instance = new testdefinesetandget(); instance.myproperty = 'test'; console.log(instance.myproperty); // i always return this string, whatever you have assigned console.log(instance.myname); // this is my name string inheritance of properties if an accessor property is inherited, its get and set methods will be called when the property is accessed and modified on desc
endant objects.
Object.freeze() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...object.isfrozen(obj); // === true // now any changes will fail obj.foo = 'quux'; // silently does nothing // silently doesn't add the property obj.quaxxor = 'the fri
endly duck'; // in strict mode such attempts will throw typeerrors function fail(){ 'use strict'; obj.foo = 'sparky'; // throws a typeerror delete obj.foo; // throws a typeerror delete obj.quaxxor; // returns true since attribute 'quaxxor' was never added obj.sparky = 'arf'; // throws a typeerror } fail(); // attempted changes through object.defineproperty; // both statements below throw...
...use the pattern on a case-by-case basis based on your design when you know the object contains no cycles in the reference graph, otherwise an
endless loop will be triggered.
Object.prototype.isPrototypeOf() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...baz = new baz(); console.log(baz.prototype.isprototypeof(baz)); // true console.log(bar.prototype.isprototypeof(baz)); // true console.log(foo.prototype.isprototypeof(baz)); // true console.log(object.prototype.isprototypeof(baz)); // true isprototypeof() method, along with the instanceof operator particularly comes in handy if you have code that can only function when dealing with objects desc
ended from a specific prototype chain, e.g., to guarantee that certain methods or properties will be present on that object.
... for example, check if baz object desc
ends from foo.prototype: if (foo.prototype.isprototypeof(baz)) { // do something safe } specifications specification ecmascript (ecma-262)the definition of 'object.prototype.isprototypeof' in that specification.
Promise.allSettled() - JavaScript
it is typically used when you have multiple asynchronous tasks that are not dep
endent on one another to complete successfully, or you'd always like to know the result of each promise.
... in comparison, the promise returned by promise.all() may be more appropriate if the tasks are dep
endent on each other / if you'd like to immediately reject upon any of them rejecting.
... return value a p
ending promise that will be asynchronously fulfilled once every promise in the specified collection of promises has completed, either by successfully being fulfilled or by being rejected.
Promise.any() - JavaScript
a p
ending promise in all other cases.
... rejection if all of the passed-in promises reject, promise.any asynchronously rejects with an aggregateerror object, which ext
ends error, and contains an errors property with an array of rejection values.
...status: ${response.status}`); } else { return response.blob(); } }) } let coffee = fetchanddecode('coffee.jpg'); let tea = fetchanddecode('tea.jpg'); promise.any([coffee, tea]).then(value => { let objecturl = url.createobjecturl(value); let image = document.createelement('img'); image.src = objecturl; document.body.app
endchild(image); }) .catch(e => { console.log(e.message); }); specifications specification promise.any ...
RegExp() constructor - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... m (multiline) treat beginning and
end characters (^ and $) as working over multiple lines.
... in other words, match the beginning or
end of each line (delimited by \n or \r), not only the very beginning or
end of the whole input string.
String.prototype.indexOf() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...on the other hand, 'hello world'.indexof('o', 11) (and with any fromindex value greater than 11) will return -1, as the search is started at position 11, a position after the
end of the string.
...in the latter instance, js seems to be finding an empty string at the
end of the searched string.
String.prototype.matchAll() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... examples regexp.exec() and matchall() prior to the addition of matchall to javascript, it was possible to use calls to regexp.exec (and regexes with the /g flag) in a loop to obtain all the matches: const regexp = regexp('foo[a-z]*','g'); const str = 'table football, foosball'; let match; while ((match = regexp.exec(str)) !== null) { console.log(`found ${match[0]} start=${match.index}
end=${regexp.lastindex}.`); // expected output: "found football start=6
end=14." // expected output: "found foosball start=16
end=24." } with matchall available, you can avoid the while loop and exec with g.
... instead, by using matchall, you get an iterator to use with the more convenient for...of, array spread, or array.from() constructs: const regexp = regexp('foo[a-z]*','g'); const str = 'table football, foosball'; const matches = str.matchall(regexp); for (const match of matches) { console.log(`found ${match[0]} start=${match.index}
end=${match.index + match[0].length}.`); } // expected output: "found football start=6
end=14." // expected output: "found foosball start=16
end=24." // matches iterator is exhausted after the for..of iteration // call matchall again to create a new iterator array.from(str.matchall(regexp), m => m[0]); // array [ "football", "foosball" ] matchall will throw an exception if the g flag is missing.
String.prototype.split() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... if separator appears at the beginning (or
end) of the string, it still has the effect of splitting.
... the array may contain fewer entries than limit if the
end of the string is reached before the limit is reached.
String.prototype.trimStart() - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax str.trimstart(); str.trimleft(); return value a new string representing the calling string stripped of whitespace from its beginning (left
end).
... description the trimstart() / trimleft() methods return the string stripped of whitespace from its left
end.
Symbol() constructor - JavaScript
the symbol() constructor returns a value of type symbol, but is incomplete as a constructor because it does not support the syntax "new symbol()" and it is not int
ended to be subclassed.
... it may be used as the value of an ext
ends clause of a class definition but a super call to it will cause an exception.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
TypedArray - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... typedarray.prototype.fill() fills all the elements of an array from a start index to an
end index with a static value.
... typedarray.prototype.subarray() returns a new typedarray from the given start and
end element index.
WebAssembly.CompileError() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidopera for androidsafari on iossamsung internetnode.jscompileerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Instance() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...efox for androidopera for androidsafari on iossamsung internetnode.jsinstance() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Instance.prototype.exports - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsexportschrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.LinkError() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...fox for androidopera for androidsafari on iossamsung internetnode.jslinkerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Memory.prototype.buffer - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...e for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsbufferchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Memory.prototype.grow() - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...ome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsgrowchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Module() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...irefox for androidopera for androidsafari on iossamsung internetnode.jsmodule() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Module.customSections() - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...droidfirefox for androidopera for androidsafari on iossamsung internetnode.jscustomsectionschrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Module.imports() - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsimportschrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.RuntimeError() constructor - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... for androidopera for androidsafari on iossamsung internetnode.jsruntimeerror() constructorchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Table.prototype.grow() - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...ome for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsgrowchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.Table.prototype.length - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...e for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jslengthchrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
WebAssembly.instantiateStreaming() - JavaScript
if the operation fails, the promise rejects with a webassembly.compileerror, webassembly.linkerror, or webassembly.runtimeerror, dep
ending on the cause of the failure.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... 61firefox android full support 58opera android full support 45safari ios no support nosamsung internet android full support 8.0nodejs no support noleg
end full support full support no support no support ...
WebAssembly.validate() - JavaScript
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
...for androidfirefox for androidopera for androidsafari on iossamsung internetnode.jsvalidatechrome full support 57edge full support 16firefox full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).ie no support noopera full support 44safari full support 11webview android full support 57chrome android full support 57firefox android ...
... full support 52notes full support 52notes notes disabled in the firefox 52 ext
ended support release (esr).opera android full support 43safari ios full support 11samsung internet android full support 7.0nodejs full support 8.0.0leg
end full support full support no support no supportsee implementation notes.see implementation notes.
Remainder (%) - JavaScript
it always takes the sign of the divid
end.
...if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... syntax operator: var1 % var2 examples remainder with positive divid
end 12 % 5 // 2 1 % -2 // 1 1 % 2 // 1 2 % 3 // 2 5.5 % 2 // 1.5 remainder with negative divid
end -12 % 5 // -2 -1 % 2 // -1 -4 % 2 // -0 remainder with nan nan % 2 // nan specifications specification ecmascript (ecma-262)the definition of 'remainder operator' in that specification.
delete operator - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...console.log(delete func); // false cross-browser notes although ecmascript makes iteration order of objects implementation-dep
endent, it may appear that all major browsers support an iteration order based on the earliest added property coming first (at least for properties not on the prototype).
...in explorer, while the property value is indeed set to undefined, if one later adds back a property with the same name, the property will be iterated in its old position--not at the
end of the iteration sequence as one might expect after having deleted the property and then added it back.
void operator - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
...this can cause unint
ended side effects by returning the result of a function call that previously returned nothing.
... to be safe, when the return value of a function is not int
ended to be used, it can be passed to the void operator to ensure that (for example) changing apis do not cause arrow functions' behaviors to change.
break - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... a break statement, with or without a following label, cannot be used within the body of a function that is itself nested within the current loop, switch, or label statement that the break statement is int
ended to break out of.
... block_1: { console.log('1'); break block_2; // syntaxerror: label not found } block_2: { console.log('2'); } break within functions syntaxerrors are also generated in the following code examples which use break statements within functions that are nested within a loop, or labeled block that the break statements are int
ended to break out of.
for - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... final-expression an expression to be evaluated at the
end of each loop iteration.
...again, make sure to use a break statement to
end the loop and also modify (increase) a variable, so that the condition for the break statement is true at some point.
import - JavaScript
(it is recomm
ended not to have any side effects in a module, but you sometimes cannot control this in your module dep
endencies.) use dynamic import only when necessary.
... the static form is preferable for loading initial dep
endencies, and can benefit more readily from static analysis tools and tree shaking.
... the module: file.js function getjson(url, callback) { let xhr = new xmlhttprequest(); xhr.onload = function () { callback(this.responsetext) }; xhr.open('get', url, true); xhr.s
end(); } export function getusefulcontents(url, callback) { getjson(url, data => callback(json.parse(data))); } the main program: main.js import { getusefulcontents } from '/modules/file.js'; getusefulcontents('http://www.example.com', data => { dosomethinguseful(data); }); dynamic import this example shows how to load functionality on to a page based on a user action, in this case a butt...
Strict mode - JavaScript
second, while es5 unconditionally reserves the words class, enum, export, ext
ends, import, and super, before firefox 5 mozilla reserved them only in strict mode.
...but it is the recomm
endation of the ecmascript committee, and browsers will implement it.
...however, don't blindly dep
end on it since there still are numerous browser versions used in the wild that only have partial support for strict mode or do not support it at all (e.g.
<maction> - MathML
toggle: when there is a click on the subexpression, the r
endering alternates the display of selected subexpressions.
... recomm
endation current specification mathml 2.0the definition of 'maction' in that specification.
... recomm
endation initial specification ...
<math> - MathML
display this enumerated attribute specifies how the enclosed mathml markup should be r
endered.
... recomm
endation current specification mathml 2.0the definition of 'the top-level math element' in that specification.
... recomm
endation initial specification ...
Autoplay guide for media and Web Audio APIs - Web media technologies
this sets the autoplay property on the element to true, and when autoplay is true, the media will automatically begin to play as soon as possible after the following have occurred: the page is allowed to use autoplay functionality the element has been created during page load enough media has been received to begin playback and continue to play through to the
end of the media without interruption, assuming there are no dramatic changes in network performance or bandwidth.
... note: it is strongly recomm
ended that you use the autoplay attribute whenever possible, because support for autoplay preferences are more widespread for the autoplay attribute than for other means of playing media automatically.
...the http header is: feature-policy: autoplay 'none' using the <iframe>'s allow attribute: <iframe src="mediaplayer.html" allow="autoplay 'none'"> </iframe> best practices tips and recomm
ended best practices to help you make the most of working with autoplay are offered here.
Privacy, permissions, and information security
as such, pii ext
ends beyond the web to all aspects of life.
...these start at the web server, include the very communication layer used over the network, and then ext
end through the web browser's security offerings before reaching your web app code and the efforts it takes to secure itself and the data the user entrusts to it.
... while specifications for these technologies either state or recomm
end tactics for handling situations like this, browsers may offer different solutions to improve security even further or to try new features, or try to reduce complexity for users, among other possible reasons.
SVG Event Attributes - SVG: Scalable Vector Graphics
event attributes always have their name starting with "on" followed by the name of the event for which they are int
ended.
... attributes animation event attributes onbegin, on
end, onrepeat document event attributes onabort, onerror, onresize, onscroll, onunload document element event attributes oncopy, oncut, onpaste global event attributes oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncuechange, ondblclick, ondrag, ondrag
end, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, on
ended, onerror, ...
...onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onstalled, onsubmit, onsusp
end, ontimeupdate, ontoggle, onvolumechange, onwaiting graphical event attributes onactivate, onfocusin, onfocusout ...
color-profile - SVG: Scalable Vector Graphics
recomm
endation initial definition browser compatibility the compatibility table on this page is generated from structured data.
... if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... leg
end compatibility unknown compatibility unknowndeprecated.
font-stretch - SVG: Scalable Vector Graphics
the font-stretch attribute indicates the desired amount of condensing or expansion in the glyphs used to r
ender the text.
... candidate recomm
endation initial definition of font-stretch in css fonts scalable vector graphics (svg) 1.1 (second edition)the definition of 'font-stretch' in that specification.
... recomm
endation initial definition ...
font-variant - SVG: Scalable Vector Graphics
the font-variant attribute indicates whether the text is to be r
endered using variations of the fontʼs glyphs.
... candidate recomm
endation added many more keywords for different types of variations.
... recomm
endation initial definition ...
horiz-adv-x - SVG: Scalable Vector Graphics
the horiz-adv-x attribute indicates the horizontal advance after r
endering a glyph in horizontal orientation.
... recomm
endation initial definition for <glyph> and <missing-glyph> scalable vector graphics (svg) 1.1 (second edition)the definition of 'horiz-adv-x for <font>' in that specification.
... recomm
endation initial definition for <font> ...
marker-mid - SVG: Scalable Vector Graphics
the marker is r
endered on every vertex other than the first and last vertices of the path data.
... candidate recomm
endation no significant change scalable vector graphics (svg) 1.1 (second edition)the definition of 'marker-mid' in that specification.
... recomm
endation initial definition ...
markerUnits - SVG: Scalable Vector Graphics
animatable yes userspaceonuse this value specifies that the markerwidth and markerunits attributes and the contents of the <marker> element represent values in the current user coordinate system in place for the graphic object referencing the marker (i.e., the user coordinate system for the element referencing the <marker> element via a marker, marker-start, marker-mid, or marker-
end property).
... candidate recomm
endation no significant change scalable vector graphics (svg) 1.1 (second edition)the definition of 'markerunits' in that specification.
... recomm
endation initial definition ...
mask - SVG: Scalable Vector Graphics
candidate recomm
endation ext
ends its usage to html elements.
... ext
ends its syntax by making it a shorthand for the new mask-* properties defined in that specification.
... recomm
endation initial definition ...
opacity - SVG: Scalable Vector Graphics
recomm
endation defines in more detail what this attribute applies to.
... candidate recomm
endation references the specification in css color 3 and notes that there are some related attributes.
... recomm
endation initial definition ...
operator - SVG: Scalable Vector Graphics
working draft refers to css compositing and bl
ending specification for the values and added the lighter value.
... recomm
endation initial definition for <femorphology> scalable vector graphics (svg) 1.1 (second edition)the definition of 'operator for <fecomposite>' in that specification.
... recomm
endation initial definition for <fecomposite> ...
refX - SVG: Scalable Vector Graphics
candidate recomm
endation added keywords left, center, and right.
... candidate recomm
endation initial definition for <symbol> scalable vector graphics (svg) 1.1 (second edition)the definition of 'refx' in that specification.
... recomm
endation initial definition for <marker> ...
refY - SVG: Scalable Vector Graphics
candidate recomm
endation added keywords left, center, and right.
... candidate recomm
endation initial definition for <symbol> scalable vector graphics (svg) 1.1 (second edition)the definition of 'refy' in that specification.
... recomm
endation initial definition for <marker> ...
startOffset - SVG: Scalable Vector Graphics
thus, 0% indicates the start point of the path and 100% indicates the
end point of the path.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'startoffset' in that specification.
... recomm
endation initial definition ...
style - SVG: Scalable Vector Graphics
html,body,svg { height:100% } <svg viewbox="0 0 100 60" xmlns="http://www.w3.org/2000/svg"> <rect width="80" height="40" x="10" y="10" style="fill: skyblue; stroke: cadetblue; stroke-width: 2;"/> </svg> usage notes value <style> default value none animatable no <style> the syntax of style data dep
ends on the style sheet language.
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of 'style' in that specification.
... recomm
endation initial definition ...
target - SVG: Scalable Vector Graphics
the target attribute should be used when there are multiple possible targets for the
ending resource, such as when the parent document is embedded within an html or xhtml document, or is viewed with a tabbed browser.
... candidate recomm
endation removed the _replace value.
... recomm
endation initial definition ...
text-decoration - SVG: Scalable Vector Graphics
candidate recomm
endation defines the property as a shorthand for text-decoration-line, text-decoration-style, and text-decoration-color.
... candidate recomm
endation mainly refers to the definition in css text decoration 3 turning the property into a shorthand for text-decoration-line and text-decoration-style.
... recomm
endation initial definition ...
textLength - SVG: Scalable Vector Graphics
the user agent will ensure that the text does not ext
end farther than that distance, using the method or methods specified by the lengthadjust attribute.
... candidate recomm
endation allowed percentages and numbers as values.
... recomm
endation initial definition ...
vert-adv-y - SVG: Scalable Vector Graphics
the vert-adv-y attribute indicates the vertical advance after r
endering a glyph in vertical orientation.
... recomm
endation initial definition for <glyph> and <missing-glyph> scalable vector graphics (svg) 1.1 (second edition)the definition of 'vert-adv-y for <font>' in that specification.
... recomm
endation initial definition for <font> ...
viewBox - SVG: Scalable Vector Graphics
note: values for width or height lower or equal to 0 disable r
endering of the element.
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of 'viewbox' in that specification.
... recomm
endation initial definition ...
xlink:title - SVG: Scalable Vector Graphics
the use of this information is highly dep
endent on the type of processing being done.
... candidate recomm
endation deprecated the attribute and made it only apply to <a>, <image>, <lineargradient>, <pattern>, <radialgradient>, <script>, <textpath>, and <use> scalable vector graphics (svg) 1.1 (second edition)the definition of 'seed' in that specification.
... recomm
endation initial definition ...
<desc> - SVG: Scalable Vector Graphics
text in a <desc> element is not r
endered as part of the graphic.
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<desc>' in that specification.
... recomm
endation initial definition ...
<ellipse> - SVG: Scalable Vector Graphics
global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation added auto value for rx and ry scalable vector graphics (svg) 1.1 (second edition)the definition of '<ellipse>' in that specification.
... recomm
endation initial definition ...
<feDiffuseLighting> - SVG: Scalable Vector Graphics
the resulting image, which is an rgba opaque image, dep
ends on the light color, light position and surface geometry of the input bump map.
...g-color="white"> <fespotlight x="360" y="5" z="30" limitingconeangle="20" pointsatx="390" pointsaty="80" pointsatz="0"/> </fediffuselighting> <fecomposite in="sourcegraphic" in2="light" operator="arithmetic" k1="1" k2="0" k3="0" k4="0"/> </filter> <circle cx="390" cy="80" r="50" fill="green" filter="url(#lightme3)" /> </svg> expected r
endering: live r
endering: specifications specification status comment filter effects module level 1the definition of '<fediffuselighting>' in that specification.
... recomm
endation initial definition ...
<feSpecularLighting> - SVG: Scalable Vector Graphics
the resulting image dep
ends on the light color, light position and surface geometry of the input bump map.
...such a map is int
ended to be combined with a texture using the add term of the arithmetic <fecomposite> method.
... recomm
endation initial definition ...
<foreignObject> - SVG: Scalable Vector Graphics
tes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes, document event attributes, document element event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<foreignobject>' in that specification.
... recomm
endation initial definition ...
<g> - SVG: Scalable Vector Graphics
this element only includes global attributes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<g>' in that specification.
... recomm
endation initial definition ...
<mask> - SVG: Scalable Vector Graphics
value type: <length> ; default value: 120%; animatable: yes global attributes core attributes most notably: id styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage presentation attributes most notably: clip-path, clip-rule, color, display, fill, fill-opacity, fill-rule, filter, mask, opacity, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility usage notes categoriescontainer elementpermitted contentany number of the following elements, in any order:animation elementsdescriptive elementsshape elementsstructural elementsgradient elements<a>, <altglyphdef>, <clippath>,...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<mask>' in that specification.
... recomm
endation initial definition ...
<path> - SVG: Scalable Vector Graphics
umber> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<path>' in that specification.
... recomm
endation initial definition ...
<pattern> - SVG: Scalable Vector Graphics
value type: <length>|<percentage> ; default value: 0; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility xlink attributes most notably: xlink:title usage notes categoriescontainer elementpermitted contentany number of the fol...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<pattern>' in that specification.
... recomm
endation initial definition ...
<polygon> - SVG: Scalable Vector Graphics
umber> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation no change scalable vector graphics (svg) 1.1 (second edition)the definition of '<polygon>' in that specification.
... recomm
endation initial definition ...
<polyline> - SVG: Scalable Vector Graphics
umber> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<polyline>' in that specification.
... recomm
endation initial definition ...
<rect> - SVG: Scalable Vector Graphics
global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<rect>' in that specification.
... recomm
endation initial definition ...
<svg> - SVG: Scalable Vector Graphics
tes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes, document event attributes, document element event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colinde...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<svg>' in that specification.
... recomm
endation initial definition ...
<tspan> - SVG: Scalable Vector Graphics
ntage> ; default value: none; animatable: yes global attributes core attributes most notably: id, tabindex styling attributes class, style conditional processing attributes most notably: requiredextensions, systemlanguage event attributes global event attributes, graphical event attributes presentation attributes most notably: clip-path, clip-rule, color, color-interpolation, color-r
endering, cursor, display, dominant-baseline, fill, fill-opacity, fill-rule, filter, mask, opacity, pointer-events, shape-r
endering, stroke, stroke-dasharray, stroke-dashoffset, stroke-linecap, stroke-linejoin, stroke-miterlimit, stroke-opacity, stroke-width, text-anchor, transform, vector-effect, visibility aria attributes aria-activedesc
endant, aria-atomic, aria-autocomplete, aria-busy, aria-chec...
... candidate recomm
endation scalable vector graphics (svg) 1.1 (second edition)the definition of '<tspan>' in that specification.
... recomm
endation initial definition ...
SVG element reference - SVG: Scalable Vector Graphics
svg elements a to z a <a> <animate> <animatemotion> <animatetransform> c <circle> <clippath> <color-profile> d <defs> <desc> <discard> e <ellipse> f <febl
end> <fecolormatrix> <fecomponenttransfer> <fecomposite> <feconvolvematrix> <fediffuselighting> <fedisplacementmap> <fedistantlight> <fedropshadow> <feflood> <fefunca> <fefuncb> <fefuncg> <fefuncr> <fegaussianblur> <feimage> <femerge> <femergenode> <femorphology> <feoffset> <fepointlight> <fespecularlighting> <fespotlight> <fetile> <feturbulence> <filter> <foreignobject> g...
...category animation elements <animate>, <animatecolor>, <animatemotion>, <animatetransform>, <discard>, <mpath>, <set> basic shapes <circle>, <ellipse>, <line>, <polygon>, <polyline>, <rect> container elements <a>, <defs>, <g>, <marker>, <mask>, <missing-glyph>, <pattern>, <svg>, <switch>, <symbol>, <unknown> descriptive elements <desc>, <metadata>, <title> filter primitive elements <febl
end>, <fecolormatrix>, <fecomponenttransfer>, <fecomposite>, <feconvolvematrix>, <fediffuselighting>, <fedisplacementmap>, <fedropshadow>, <feflood>,<fefunca>, <fefuncb>, <fefuncg>, <fefuncr>,<fegaussianblur>, <feimage>, <femerge>, <femergenode>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile>, <feturbulence> font elements <font>, <font-face>, <font-face-format>, <font-face-name>, <font-...
...face-src>, <font-face-uri>, <hkern>, <vkern> gradient elements <lineargradient>, <meshgradient>, <radialgradient>, <stop> graphics elements <circle>, <ellipse>, <image>, <line>, <mesh>, <path>, <polygon>, <polyline>, <rect>, <text>, <use> graphics referencing elements <mesh>, <use> light source elements <fedistantlight>, <fepointlight>, <fespotlight> never-r
endered elements <clippath>, <defs>, <hatch>, <lineargradient>, <marker>, <mask>, <meshgradient>, <metadata>, <pattern>, <radialgradient>, <script>, <style>, <symbol>, <title> paint server elements <hatch>, <lineargradient>, <meshgradient>, <pattern>, <radialgradient>, <solidcolor> r
enderable elements <a>, <circle>, <ellipse>, <foreignobject>, <g>, <image>, <line>, <mesh>, <path>, <polygon>, <polyline>, <rect>, <svg>, <switch...
SVG as an Image - SVG: Scalable Vector Graphics
:visited-link styles aren't r
endered.
... recomm
endation defines the usage of svg within <img> elements.
... candidate recomm
endation defines the usage of svg within the background-image property.
Basic Transformations - SVG: Scalable Vector Graphics
<svg width="40" height="50" style="background-color:#bff;"> <rect x="0" y="0" width="10" height="10" transform="translate(30,40)" /> </svg> the example will r
ender a rectangle, translated to the point (30,40) instead of (0,0).
... f) transformation which maps coordinates from a previous coordinate system into a new coordinate system by {xnewcoordsys=axprevcoordsys+cyprevcoordsys+eynewcoordsys=bxprevcoordsys+dyprevcoordsys+f\left{ \begin{matrix} x_{\mathrm{prevcoordsys}} = a x_{\mathrm{newcoordsys}} + c y_{\mathrm{newcoordsys}} + e \\ y_{\mathrm{prevcoordsys}} = b x_{\mathrm{newcoordsys}} + d y_{\mathrm{newcoordsys}} + f \
end{matrix} \right.
...detailed information about this property can be found in the svg recomm
endation.
Patterns - SVG: Scalable Vector Graphics
so while we would still have 4 repeating units inside the pattern, the objects composing that pattern would remain the same size, and you
end up with large areas of nothing in between them.
...patterns usually have a set size and repeat themselves indep
endently of what an object's shape is.
...all three of the preceding examples are shown below on a rectangle that has been slightly elongated to a height of 300px, but i should note that it's not an exhaustive picture, and there are other options available dep
ending on your application.
SVG image element - SVG: Scalable Vector Graphics
« previousnext » the svg <image> element allows for raster images to be r
endered within an svg object.
... in this basic example, a .jpg image referenced by an href attribute will be r
endered inside an svg object: <?xml version="1.0" standalone="no"?> <!doctype svg public "-//w3c//dtd svg 1.1//en" "http://www.w3.org/graphics/svg/1.1/dtd/svg11.dtd"> <svg width="5cm" height="4cm" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <image href="firefox.jpg" x="0" y="0" height="50px" width="50px"/> </svg> there are some important things to take note of (referenced from the w3 specs): if you do not set the x or y attributes, they will be set to 0.
... having a height or width attribute of 0 will disable r
endering of the image.
SVG In HTML Introduction - SVG: Scalable Vector Graphics
source here is the source to the example: <html> <head> <title>xtech svg demo</title> <style> stop.begin { stop-color:yellow; } stop.
end { stop-color:green; } body.invalid stop.
end { stop-color:red; } #err { display:none; } body.invalid #err { display:inline; } </style> <script> function signalerror() { document.getelementbyid('body').setattribute("class", "invalid"); } </script> </head> <body id="body" style="position:absolute; z-index:0; border:1px solid black; left:5%; top:5%; width:90%; height:90%;"> <form> <fieldset> ...
... <leg
end>html form</leg
end> <p><label>enter something:</label> <input type="text"> <span id="err">incorrect value!</span></p> <p><input type="button" value="activate!" onclick="signalerror();"></p> </fieldset> </form> <svg viewbox="0 0 100 100" preserveaspectratio="xmidymid slice" style="width:100%; height:100%; position:absolute; top:0; left:0; z-index:-1;"> <lineargradient id="gradient"> <stop class="begin" offset="0%"/> <stop class="
end" offset="100%"/> </lineargradient> <rect x="0" y="0" width="100" height="100" style="fill:url(#gradient)" /> <circle cx="50" cy="50" r="30" style="fill:url(#gradient)" /> </svg> </body> </html> discussion the page is mainly regular html, css and javascript.
...when the user enters something incorrect into the form, the script sets the invalid attribute on the <body>, and a style rule changes the gradient
end-stop color to red.
Tutorials
registering and logging in, s
ending feedback, buying products, and more.
...it's interactive and you can do it with your fri
ends.
... how browsers work a detailed research article describing different modern browsers, their engines, page r
endering etc.
<xsl:sort> - XSLT: Extensible Stylesheet Language Transformations
syntax <xsl:sort select=expression order="asc
ending" | "desc
ending" case-order="upper-first" | "lower-first" lang=xml:lang-code data-type="text" | "number" /> required attributes none.
... order specifies whether the nodes should be processed in "asc
ending" or "desc
ending" order.
... the default is "asc
ending".
Using the Mozilla JavaScript interface to XSL Transformations - XSLT: Extensible Stylesheet Language Transformations
rather than modifying the dom it is recomm
ended to use stylesheet parameters which are usually easier and can give better performance.
... transformtodocument xsltprocessor.transformtodocument() takes one argument, the source node to transform, and returns a new document with the results of the transformation: var newdocument = processor.transformtodocument(domtobetransformed); the resultant object dep
ends on the output method of the stylesheet: html - htmldocument xml - xmldocument text - xmldocument with a single root element <transformiix:result> with the text as a child transformtofragment you can also use xsltprocessor.transformtofragment() which will return a documentfragment node.
... this is handy because app
ending a fragment to another node transparently app
ends all the children of that fragment, and the fragment itself is not merged.
Compiling a New C/C++ Module to WebAssembly - WebAssembly
file://your_path/hello.html), you will
end up with an error message along the lines of both async and sync fetching of the wasm failed.
... to start with, save the following code as hello3.c in a new directory: #include <stdio.h> #include <emscripten/emscripten.h> int main(int argc, char ** argv) { printf("hello world\n"); } #ifdef __cplusplus extern "c" { #
endif void emscripten_keepalive myfunction(int argc, char ** argv) { printf("myfunction called\n"); } #ifdef __cplusplus } #
endif by default, emscripten-generated code always just calls the main() function, and other functions are eliminated as dead code.
... <button class="mybutton">run myfunction</button> now add the following code at the
end of the first <script> element: document.queryselector('.mybutton') .addeventlistener('click', function() { alert('check console'); var result = module.ccall( 'myfunction', // name of c function null, // return type null, // argument types null // arguments ); }); this illustrates how ccall() is used to call the...
Caching compiled WebAssembly modules - WebAssembly
the function starts off by defining some necessary constants: function instantiatecachedurl(dbversion, url, importobject) { const dbname = 'wasm-cache'; const storename = 'wasm-cache'; setting up the database the first helper function contained inside instantiatecachedurl() — op
endatabase() — creates an object store for storing wasm modules, and also handles clearing out the database if the dbversion is updated; it returns a promise resolving to the new database.
... function op
endatabase() { return new promise((resolve, reject) => { var request = indexeddb.open(dbname, dbversion); request.onerror = reject.bind(null, 'error opening wasm cache database'); request.onsuccess = () => { resolve(request.result) }; request.onupgradeneeded = event => { var db = request.result; if (db.objectstorenames.contains(storename)) { console.log(`clearing out version ${event.oldversion} wasm cache`); db.deleteobjectstore(storename); } console.log(`creating version ${event.newversion} wasm cache`); db.createobjectstore(storename) }; }); } looking up modules in the database our next function — lookupindatabase() — provides a simple promise-based operation for look...
...we start by trying to open a database, then see if we already have a compiled module with the key url stored in the given db: return op
endatabase().then(db => { return lookupindatabase(db).then(module => { if we do, we instantiate it with the given import object: console.log(`found ${url} in wasm cache`); return webassembly.instantiate(module, importobject); }, if not, we compile it from scratch and then store the compiled module in the database with a key of url, for next time we want to use it: errmsg =...
Using the WebAssembly JavaScript API - WebAssembly
this allows a single web app to use multiple indep
endent libraries — each of which are using webassembly internally — to have separate memories that are fully isolated from each other.
... in javascript, a memory instance can be thought of as a resizable arraybuffer (or sharedarraybuffer, in the case of shared memories) and, just as with arraybuffers, a single web app can create many indep
endent memory objects.
...icated place: var tbl = results.instance.exports.tbl; console.log(tbl.get(0)()); // 13 console.log(tbl.get(1)()); // 42 this code accesses each function reference stored in the table in turn, and instantiates them to print the values they hold to the console — note how each function reference is retrieved with a table.prototype.get() call, then we add an extra set of parentheses on the
end to actually invoke the function.
Compiling an Existing C Module to WebAssembly - WebAssembly
luckily, the canvas api has canvasr
enderingcontext2d.getimagedata — that gives you an uint8clampedarray containing the image data in rgba: async function loadimage(src) { // load image const imgblob = await fetch(src).then(resp => resp.blob()); const img = await createimagebitmap(imgblob); // make canvas same size as image const canvas = document.createelement('canvas'); canvas.width = img.width; canvas.height = img.
... dep
ending on the size of your image, you might run into an error where wasm can't grow the memory enough to accommodate both the input and the output image: luckily, the solution to this problem is in the error message.
...to prove that it worked, turn your result buffer into a blob and use it on an <img> element: const blob = new blob([result], {type: 'image/webp'}); const bloburl = url.createobjecturl(blob); const img = document.createelement('img'); img.src = bloburl; document.body.app
endchild(img) behold, the glory of a new webp image.
Private Properties - Archive of obsolete content
it is possible to read this section on its own, but to fully appreciate how namespaces work, and the problem they set out to solve, it is recomm
ended to read the entire article.
...consider the following example: function point(x, y) { this._x = x; this._y = y; } the properties _x and _y are int
ended to be private, and should only be accessed by member functions.
Porting the Library Detector - Archive of obsolete content
ryinfo = { name: i, version: passed.version }; librarylist.push(libraryinfo); } } self.postmessage(librarylist); } testlibraries(); main.js responds to that message by fetching the tab corresponding to that worker using worker.tab, and adding the array of library names to that tab's libraries property: pagemod.pagemod({ include: "*", contentscriptwhen: '
end', contentscriptfile: (data.url('library-detector.js')), onattach: function(worker) { worker.on('message', function(librarylist) { if (!worker.tab.libraries) { worker.tab.libraries = []; } librarylist.foreach(function(library) { if (worker.tab.libraries.indexof(library) == -1) { worker.tab.libraries.push(library); } }); if (wo...
...this means we'll need two additional content scripts: one in the widget's context, which listens for icon mouseover events and s
ends a message to main.js containing the name of the corresponding library: function setlibraryinfo(element) { self.port.emit('setlibraryinfo', element.target.title); } var elements = document.getelementsbytagname('img'); for (var i = 0; i < elements.length; i++) { elements[i].addeventlistener('mouseover', setlibraryinfo, false); } one in the panel, which updates the panel's content wi...
SDK API Lifecycle - Archive of obsolete content
at the same time, developers maintaining and ext
ending the sdk's apis need to be able to introduce new apis that aren't yet fully proven, and to retire old apis when they're no longer optimal or supported by the underlying platform.
...in preparation for this date the sdk team will decide whether to go ahead with removal: this will dep
end on how many developers have successfully migrated from the deprecated module, and on how urgently the module needs to be removed.
Working with Events - Archive of obsolete content
in this case one
end of the conversation emits the events, and the other
end listens to them.
... so there are two main ways you will interact with the eventemitter framework: listening to built-in events emitted by objects in the sdk, such as tabs opening, pages loading, mouse clicks s
ending and receiving user-defined events between content scripts and add-on code this guide only covers the first of these; the second is explained in the working with content scripts guide.
tabs - Archive of obsolete content
the new tab will open in the active window or in a new window, dep
ending on the innewwindow option.
... returns the mime type that the document currently loaded in the tab is being r
endered as.
core/promise - Archive of obsolete content
lets see the implementation of readasync that we used in several of the examples above: const { defer } = require('sdk/core/promise'); function readasync(url) { var deferred = defer(); let xhr = new xmlhttprequest(); xhr.open("get", url, true); xhr.onload = function() { deferred.resolve(xhr.responsetext); }; xhr.onerror = function(event) { deferred.reject(event); }; xhr.s
end(); return deferred.promise; } so defer returns an object that contains a promise and two resolve, reject functions that can be used to resolve / reject that promise.
...earlier described defer may be passed optional prototype argument, in order to make the returned promise and all the subsequent promises dec
endents of that prototype: let { promise, resolve } = defer({ get: function get(name) { return this.then(function(value) { return value[name]; }); } }); promise.get('foo').get('bar').then(console.log); resolve({ foo: { bar: 'taram !!' } }); // => 'taram !!' also promised function maybe be passed a second optional prototype argument to achieve the same effect.
lang/type - Archive of obsolete content
isflat(value) returns true if value is a direct desc
endant of object.prototype or null.
... returns boolean : boolean indicating if value is a direct desc
endant of object.prototype or null.
test/utils - Archive of obsolete content
let { before, after } = require('sdk/test/utils'); let { search } = require('sdk/places/bookmarks'); exports.testcountbookmarks = function (assert, done) { search().on('
end', function (results) { assert.equal(results, 0, 'should be no bookmarks'); done(); }); }; before(exports, function (name, assert) { removeallbookmarks(); }); require('sdk/test').run(exports); both before and after may be asynchronous.
... to make them asynchronous, pass a third argument done, which is a function to call when you have finished: let { before, after } = require('sdk/test/utils'); let { search } = require('sdk/places/bookmarks'); exports.testcountbookmarks = function (assert, done) { search().on('
end', function (results) { assert.equal(results, 0, 'should be no bookmarks'); done(); }); }; before(exports, function (name, assert, done) { removeallbookmarksasync(function () { done(); }); }); require('sdk/test').run(exports); globals functions before(exports, beforefn) runs beforefn before each test in the file.
ui/button/action - Archive of obsolete content
when the button is in the toolbar, this appears in a tooltip, and when the button is in the menu, it appears underneath the button as a leg
end.
...actionbutton({ id: "my-button2", label: "my button2", icon: "./firefox-16.png" }); var button3 = actionbutton({ id: "my-button3", label: "my button3", icon: { "16" : "./firefox-16.png", "32" : "./firefox-32.png", "64" : "./firefox-64.png" } }); if you use the final form, firefox will automatically choose the best-fit icon for your button, dep
ending on the device screen resolution and where the button is in the ui.
Low-Level APIs - Archive of obsolete content
you're more likely to use these if you are building your own modules that implement new apis, thus ext
ending the sdk itself.
... dev/panel enables you to ext
end the firefox developer tools.
jpmignore - Archive of obsolete content
# you can
end patterns with a forward slash (/) to specify a directory.
...for example: .* * !/data/** !/lib/** !/locale/** !/node_modules/** !/package.json !/icon.png !/icon64.png !/copying !/bootstrap.js !/install.rdf this would include all editor backup files and similar in the whitelisted subdirectories, to avoid that you can app
end another blacklist after the whitelist.
Add a Context Menu Item - Archive of obsolete content
in this case the script listens for the user to click on the item, then s
ends a message to the add-on containing the selected text.
... so: the user clicks the item the content script's click event fires, and the content script retrieves the selected text and s
ends a message to the add-on the add-on's message event fires, and the add-on code's handler function is passed the selected text, which it logs more options adding an image you can add an image to a context menu item with the image option.
Display a Popup - Archive of obsolete content
function handleclick(state) { text_entry.show(); } // when the panel is displayed it generated an event called // "show": we will listen for that event and when it happens, // s
end our own "show" event to the panel's script, so the // script can prepare the panel for display.
...text_entry.port.on("text-entered", function (text) { console.log(text); text_entry.hide(); }); the content script "get-text.js" looks like this: // when the user hits return, s
end the "text-entered" // message to main.js.
Using XPCOM without chrome - Archive of obsolete content
below is an example, where we ext
end the xpcom module's unknown class with an nsinavbookmarkobserverinterface 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({ ext
ends: 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 objec...
Canvas code snippets - Archive of obsolete content
function savecanvas(canvas, path, type, options) { return task.spawn(function *() { var reader = new filereader; var blob = yield new promise(accept => canvas.toblob(accept, type, options)); reader.readasarraybuffer(blob); yield new promise(accept => { reader.onload
end = accept }); return yield os.file.writeatomic(path, new uint8array(reader.result), { tmppath: path + '.tmp' }); }); } loading a remote page onto a canvas element the following class first creates a hidden iframe element and attaches a listener to the frame's load event.
...add a listener to the // frame's onload event iframe.addeventlistener('load', this.remotepageloaded, true); //app
end to the
end of the page window.document.body.app
endchild(iframe); return; }; remotecanvas.prototype.remotepageloaded = function() { // look back up the iframe by id var ldrframe = document.getelementbyid('test-iframe'); // get a reference to the window object you need for the canvas // drawwindow method var remotewindow = ldrframe.contentwindow; //draw canvas ...
Downloading Files - Archive of obsolete content
components.utils.import("resource://gre/modules/privatebrowsingutils.jsm"); const webbrowserpersist = components.constructor("@mozilla.org/embedding/browser/nswebbrowserpersist;1", "nsiwebbrowserpersist"); var persist = webbrowserpersist(); var targetfile = services.dirsvc.get("desk", ci.nsifile); targetfile.app
end("file.bin"); // obtain the privacy context of the browser window that the url // we are downloading comes from.
...le with custom progress listener: components.utils.import("resource://gre/modules/privatebrowsingutils.jsm"); const webbrowserpersist = components.constructor("@mozilla.org/embedding/browser/nswebbrowserpersist;1", "nsiwebbrowserpersist"); var persist = webbrowserpersist(); var targetfile = services.dirsvc.get("desk", ci.nsifile); targetfile.app
end("file.bin"); var obj_uri = services.io.newuri(aurltodownload, null, null); // obtain the privacy context of the browser window that the url // we are downloading comes from.
Finding window handles - Archive of obsolete content
nswindowstring = basewindow.nativehandle; components.utils.import('resource://gre/modules/ctypes.jsm'); var objc = ctypes.open(ctypes.libraryname('objc')); // types let id = ctypes.voidptr_t; let sel = ctypes.voidptr_t; // constants let nil = ctypes.voidptr_t(0); //common functions let sel_registername = objc.declare('sel_registername', ctypes.default_abi, sel, ctypes.char.ptr); let objc_msgs
end = objc.declare('objc_msgs
end', ctypes.default_abi, id, id, sel, '...'); /* https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/classes/nsapplication_class/index.html#//apple_ref/occ/instp/nsapplication/orderfront: * [nswindowptr orderfront:nil] */ var orderfront = sel_registername('orderfront:'); var nswindowptr = ctypes.voidptr_t(ctypes.uint64(nswindowstrin...
...g)); var rez_orderfront = objc_msgs
end(nswindowptr, orderfront, nil); console.log('rez_orderfront:', rez_orderfront, rez_orderfront.tostring()); objc.close(); unix under unix systems, the nativehandle holds a string address to a gdkwindow* (the asterik/star means pointer).
HTML in XUL for rich tooltips - Archive of obsolete content
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.app
endchild(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.
...this is recomm
ended for security reasons, especially if remote html is to be inserted.
JavaScript Debugger Service - Archive of obsolete content
(jsdifilter.flag_enabled | jsdifilter.flag_pass) : jsdifilter.flag_enabled, urlpattern: pattern, startline: 0,
endline: 0 }; return filter; }, we then add the filters we want.
... jsd.clearfilters(); // clear the list of filters // we exclude the scripts with the following filenames from being tracked jsd.app
endfilter(createfilter("*/firefox/components/*")); jsd.app
endfilter(createfilter("*/firefox/modules/*")); jsd.app
endfilter(createfilter("xstringbundle")); jsd.app
endfilter(createfilter("chrome://*")); jsd.app
endfilter(createfilter("x-jsd:ppbuffer*")); jsd.app
endfilter(createfilter("xpcsafejsobjectwrapper.cpp")); jsd.app
endfilter(createfilter("file://*")); note that app
endfilter adds the filter to the
end of the list.
Label and description - Archive of obsolete content
absolutely nothing!</description> with white-space: pre; all whitespace, including newlines, is r
endered literally.
...absolutely nothing!</description> with white-space: pre-wrap; all whitespace is r
endered literally, but text is additionally permitted to wrap at spaces.
Windows - Archive of obsolete content
re-using and focusing named windows while specifying the name parameter to window.open or window.op
endialog will prevent multiple windows of that name from opening, each call will actually re-initialize the window and thus lose whatever state the user has put it in.
... var hr = document.createelementns("http://www.w3.org/1999/xhtml", "html:hr"); document.getelementbyid("id1").app
endchild(hr); ...
Listening to events in Firefox extensions - Archive of obsolete content
how events are used by firefox the firefox front
end already listens for a number of these progress events from web pages.
... the internal listeners are used to s
end out progress events to listeners registered with addprogresslistener() (which receives events from the browser that is currently visible) and addtabsprogresslistener() (which receives events from all browsers).
Chapter 1: Introduction to Extensions - Archive of obsolete content
're using manages a whitelist of sites trusted for installing add-ons helps troubleshoot add-ons by disabling them and offering a safe mode confirms and runs updates provides access to add-ons' settings dialogs provides access to add-ons' support sites development environment amenities initially, there wasn't adequate documentation available, and extension developers were largely left to f
end for themselves1; however, now there's a considerable store of knowledge.
...users have flexible customization options, using css in user style sheets and javascript/dom in user scripts (these dep
end on stylish, greasemonkey, and userchrome.js).
Adding menus and submenus - Archive of obsolete content
it doesn't make much sense to do that in this case because we
end up with only two menu items, one of them being a menu with 3 child items.
...dom functions like createelement and app
endchild can be used to accomplish this.
Makefile.mozextension.2 - Archive of obsolete content
ome/$(project).jar ~/.mozilla/default/32p27fdr.slt/chrome/ #################################### ###### define chrome_manifest content $(project) content/ overlay chrome://browser/content/browser.xul chrome://$(project)/content/overlay.xul locale $(project) en-us locale/ skin $(project) classic/1.0 skin/ style chrome://global/content/customizetoolbar.xul chrome://$(project)/skin/overlay.css
endef export chrome_manifest chrome.manifest: @echo generating $(project)/chrome.manifest @echo "$$chrome_manifest" > $(project)/chrome.manifest ###### #firefox {ec8030f7-c20a-464f-9b0e-13a3a9e97384} #thunderbird {3550f703-e582-4d05-9a08-453d09bdfdc6} #nvu {136c295a-4a5a-41cf-bf24-5cee526720d5} #mozilla suite {86c18b42-e466-45a9-ae7a-9b95ba6f5640} #seamonkey {92650c4d-4b8e-4d2a-b7eb-24ecf4f...
...hrome://$(project)/content/about.xul</abouturl> <iconurl>chrome://$(project)/skin/mainicon.png</iconurl> <updateurl>http://$(project).mozdev.org/update.rdf</updateurl> <type>2</type> <targetapplication> <description> <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id> <minversion>2.0</minversion> <maxversion>9.0</maxversion> </description> </targetapplication> </description> </rdf>
endef export install_rdf install.rdf: @echo generating $(project)/install.rdf @echo "$$install_rdf" > $(project)/install.rdf ###### define overlay_xul <overlay id="$(project)-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"><script src="overlay.js"/></overlay> ...
Message Summary Database - Archive of obsolete content
this includes a set of per-message flags, the more commonly used headers (e.g., subject, s
ender, from, to, cc, date, etc), and a few other attributes, e.g., keywords.
...the bottom line is that we haven't been able to justify the very large cost of doing so because there won't be any benefit to the
end-user, at least in the short term.
Microsummary XML grammar reference - Archive of obsolete content
<text> fx downloads</text> </template> </transform> </template> <pages> <include>http://(www\.)?spreadfirefox\.com/(index\.php)?</include> </pages> </generator> namespace the namespace uri for microsummary generator xml documents is: http://www.mozilla.org/microsummaries/0.1 all elements in a microsummary generator document should be in this namespace except the desc
endants of the <template> element, which should be in the xslt namespace: http://www.w3.org/1999/xsl/transform the <generator> element the <generator> element is the root tag for all microsummary generators, and should contain the remainder of the xml code describing the generator.
...the following example identifies a generator as being able to summarize all pages on the www.example.com web site except pages named about.html: <pages> <include> ^http://www\.example\.com/ </include> <exclude>/about\.html</exclude> </pages> note: regular expressions int
ended to match the beginnings of page urls should start with the caret (^) to ensure they do not inadvertently match urls which merely contain the urls they int
end to match.
Prism - Archive of obsolete content
basic desktop integration: support of desktop features can make using the app more natural and convenient for
end users.
...we int
end to propose these extensions for inclusion in future versions of xulrunner.
Merging TraceMonkey Repo - Archive of obsolete content
let the mozilla-central sheriff know that you int
end to perform a tracemonkey merge to mozilla-central.
...you can't really back out a merge easily, so rambo-ing a fix or figuring out how to back out an off
ending changeset is the only way it has been resolved historically.
Supporting per-window private browsing - Archive of obsolete content
to be notified when such a session
ends (i.e., when the last private window is closed), observe the last-pb-context-exited notification.
... 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 recomm
ended).
Table Cellmap - Archive of obsolete content
insertrowsbefore firstrow=0 ***start table dump*** mcolwidths= row(0)=02763344 cell(0)=02763528 cell(0)=0276381c row(0)=02763940 cell(0)=02763990 cell(0)=02763ab4 ***** start table cell map dump ***** 023566b0 cols array orig/span-> 023566b0 ***** start group cell map dump ***** 023565b0 maprowcount=0 tablerowcount=0 *****
end group cell map dump ***** *****
end table cell map dump ***** ***
end table dump*** insertrowsafter ***start table dump*** mcolwidths=-1 -1 row(0)=02763344 cell(0)=02763528 cell(1)=0276381c row(1)=02763940 cell(0)=02763990 cell(1)=02763ab4 ***** start table cell map dump ***** 023566b0 cols array orig/span-> 023566b00=2/0 1=2/0 ***** start group cell map dump ***** 023565b0 maprowcount=2 tabl...
...erowcount=2 row 0 : c0,0 c0,1 row 1 : c1,0 c1,1 c0,0=02763528(0) c0,1=0276381c(1) c1,0=02763990(0) c1,1=02763ab4(1) *****
end group cell map dump ***** *****
end table cell map dump ***** ***
end table dump*** structural information one can imagine the cellmap as grid with equally wide rows and columns where the table cells are drawn.
Table Layout Strategy - Archive of obsolete content
specs the table layout algorithm is based on two w3c recomm
endations: html 4.01 (chapter 11) and css2.1 (chapter 17).in css2 a distinction between fixed and auto layout of tables has been introduced.
...the overload of the initialize and balancecolumnwidths routines dep
ends on the table style and is decided at runtime.
Cmdline tests - Archive of obsolete content
the testsuite allows more flexibility by coding scripts in python allowing any executable to run, s
ending commands to stdin, and asserting output using regular expressions.
...s test.abc, assert stdout contains 'gross stats', 'sweep m reclaimed n pages.' from cmdutils import * def run(): r=runtestlib() r.run_test(name='memstats', command="%s -memstats testdata/memstats.abc" % r.avm, expectedout=[ 'gross stats', 'managed fragmentation', 'gross stats
end', 'sweep\\([0-9]+\\) reclaimed [0-9]+ whole pages' ] ...
Running Tamarin acceptance tests - Archive of obsolete content
tests complete at 2010-09-28 10:39:26.751797 start date: 2010-09-28 10:38:07.221457
end date : 2010-09-28 10:39:26.751797 test time : 0:01:19.530340 passes : 59291 failures : 0 expected failures : 75 tests skipped : 76 the -f flag tells runtests.py to force recompilation of all the scripts.
...data/loca/android_runner.sh' test it out with a simple .abc or no args for usage (should return exitcode=0) $ tamarin-redux/platform/android/android_shell.py hello.abc hello exitcode=0 test it out by retrieving the version information of the shell on the android device $ $avm -dversion shell 1.4 debug build 6299:455bca954565 features avmsystem_32bit;avmsystem_unaligned_int_access;avmsystem_little_
endian;avmsystem_arm;avmsystem_unix; avmfeature_jit;avmfeature_abc_interp;avmfeature_selftest;avmfeature_eval;avmfeature_protect_jitmem; avmfeature_shared_gcheap;avmfeature_cache_gqcn;avmfeature_safepoints;avmfeature_swf12;avmfeature_swf13;avmtweak_exact_tracing; running acceptance tests --androidthreads sets the number of threads to the number of phones found via usb.
Running Tamarin performance tests - Archive of obsolete content
502, use this if cannot be calculated from executable --vm2version specify version of avm2 --vmargs2 args to pass to avm2, if not specified --vmargs will be used --nooptimize do not optimize files when compiling --perfm parse the perfm results from avm --csv= also output to csv file, filename required --csvapp
end app
end to csv file instead of overwriting --score compute and print geometric mean of scores --index= index file to use (must
end with .py) --saveindex= save results to given index file name option details indexing: there are two command line flags that control indexing: --index and —saveindex both require an index filename to be specified after the flag.
... use --csvapp
end if you want to app
end the results to the csv file support files testconfig.txt this file contains instructions for how the harness should handle performance tests.
Tamarin mercurial commit hook - Archive of obsolete content
it is highly recomm
ended that all developers enable the mercurial commit hook for tamarin.
... the hook is located in the tamarin-redux repository in the file utils/hooks/tamarin-commit-hook.py this is a simple mercurial hook that checks the following filetypes ('.cpp', '.h', '.as', '.abs', '.py') for the following: tabs anywhere in the line trailing whitespace windows line
endings (\r\n) "mark_security_change" - looks for this text and warns user as security changes should not be checked into the public tamarin-redux repository.
URIs and URLs - Archive of obsolete content
gateways, proxies, caches, and name resolution services might be used to access some resources, indep
endent of the protocol of their origin, and the resolution of some url may require the use of more than one protocol (e.g., both dns and http are typically used to access an "http" url's resource when it can't be found in a local cache).
...also this parser can identify drives if possible dep
ending on the platform.
Using addresses of stack variables with NSPR threads on win16 - Archive of obsolete content
problem statement win-16 (aka, windows 3.1, et al), is unique in that the architecture dep
ends on the operating environment (i.e., windows) knows the address of the stack, and that there is only one such address.
...what is probably more likely to cause problems is passing addresses of automatically allocated variables to a function that w
ends its way though arbitrary amounts of convoluted logic, and finds its way into an object that is shared.
Creating a Wizard - Archive of obsolete content
mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <wizardpage> <description> this wizard will help you select the type of dog that is best for you." </description> <label value="why do you want a dog?"/> <menulist> <menupopup> <menuitem label="to scare people away"/> <menuitem label="to get rid of a cat"/> <menuitem label="i need a best fri
end"/> </menupopup> </menulist> </wizardpage> <wizardpage description="dog details"> <label value="provide additional details about the dog you would like:"/> <radiogroup> <caption label="size"/> <radio value="small" label="small"/> <radio value="large" label="large"/> </radiogroup> <radiogroup> <caption label="g
ender"/> <radio value="male"...
... to have different code called dep
ending on which page you are on, use the onpagerewound or onpageadvanced attributes on a wizardpage element.
More Button Features - Archive of obsolete content
buttons with extra content buttons may have arbitrary markup contained inside them, and it will be r
endered inside the button.
...this type of button is int
ended to be used like a menu, with scripts attached to each item to perform a task.
More Tree Features - Archive of obsolete content
the user can choose to show the column by selecting it from the drop-down on the
end of the header row.
...reecols> <treecol id="runner" label="runner" flex="2" persist="width ordinal hidden" /> <splitter class="tree-splitter" /> <treecol id="city" label="home city" flex="2" persist="width ordinal hidden" /> <splitter class="tree-splitter" /> <treecol id="starttime" label="start time" flex="1" persist="width ordinal hidden" /> <splitter class="tree-splitter" /> <treecol id="
endtime" label="
end time" flex="1" persist="width ordinal hidden" /> </treecols> <treechildren> <treeitem> <treerow> <treecell label="joshua granville" /> <treecell label="vancouver" /> <treecell label="7:06:00" /> <treecell label="9:10:26" /> </treerow> </treeitem> <treeitem> <treerow> <treecell label="robert valhalla" /> ...
Numeric Controls - Archive of obsolete content
using a value of grid uses a cal
endar grid, as shown in the image below.
...this type has three fields for entering the year, month and date, as well as a dropdown button for displaying a popup cal
endar grid for selecting a day.
XPCOM Examples - Archive of obsolete content
removeallitems(); var cookiemanager = components.classes["@mozilla.org/cookiemanager;1"] .getservice(components.interfaces.nsicookiemanager); var iter = cookiemanager.enumerator; while (iter.hasmoreelements()){ var cookie = iter.getnext(); if (cookie instanceof components.interfaces.nsicookie){ if (cookie.host == "www.mozillazine.org") menu.app
enditem(cookie.name,cookie.value); } } } </script> <hbox> <menulist id="cookiemenu" onpopupshowing="getcookies();"/> </hbox> the getcookies() function will be called whenever the menu is opened, as indicated by the onpopupshowing attribute on the menulist.
...menus have an app
enditem() function which can be used to add an item to the menu, given a label and a value.
XUL Changes for Firefox 1.5 - Archive of obsolete content
the menulist modification methods app
enditem and insertitemat take an extra description argument when creating items this way.
...this has been fixed in firefox 1.5 and all code dep
ending on this non zero-based behaviour should be changed.
XUL accessibility tool - Archive of obsolete content
be aware that the report might take a little while to be ready dep
ending on the complexity of the application being analyzed and the speed of your machine.
... future work the following things have been suggested or are planned for a future version of the tool: new tests: (aaronlev) warning: hardcoded color and pixel sizings (aaronlev) error: duplicate accesskey in a dialog (already have this for menus) (aaronlev) error: form control without accesskey (aaronlev) warning: accesskey as lowercase letter with desc
ender (underlined g,j,y,q,p are hard to read, not recomm
ended) (aaronandy) list of things to check manually, such as a list oftrees in the document (make sure they have accessible column picker equivs) or a list of toolbarbuttons (make sure they have accessible alternatives).
XUL controls - Archive of obsolete content
<datepicker value="2007/03/26"/> datepicker reference <datepicker type="grid"> a datepicker which displays a cal
endar grid for selecting a date.
... <datepicker type="grid" value="2007/02/20"/> datepicker reference <datepicker type="popup" > a datepicker which displays a set of textboxes for date entry, but also has a button for displaying a popup cal
endar grid.
arrowscrollbox - Archive of obsolete content
croll, tabindex properties disabled, scrollboxobject, scrollincrement, smoothscroll, tabindex methods ensureelementisvisible, scrollbyindex, scrollbypixels examples <arrowscrollbox orient="vertical" flex="1"> <button label="red"/> <button label="blue"/> <button label="green"/> <button label="yellow"/> <button label="orange"/> <button label="silver"/> <button label="lav
ender"/> <button label="gold"/> <button label="turquoise"/> <button label="peach"/> <button label="maroon"/> <button label="black"/> </arrowscrollbox> attributes inherited from xul element align, allowevents, allownegativeassertions, class, coalesceduplicatearcs, collapsed, container, containment, context, contextmenu, datasources, dir, empty, equalsize, flags, flex, height, hidden, ...
... inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
broadcasterset - Archive of obsolete content
the broadcasterset and its desc
endants are not displayed.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
command - Archive of obsolete content
see also: command attribute, commandset element attributes disabled, label, oncommand,reserved examples the following code will s
end a paste command (cmd_paste) to the currently focused element: // first include chrome://global/content/globaloverlay.js godocommand("cmd_paste"); example with two buttons <commandset><command id="cmd_openhelp" oncommand="alert('help');"/></commandset> <button label="help" command="cmd_openhelp"/> <button label="more help" command="cmd_openhelp"/> attributes disabled type: boolean in...
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
commandset - Archive of obsolete content
you can s
end a custom event by calling the updatecommands method of the command dispatcher.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
dialog - Archive of obsolete content
warning: if the accept and cancel buttons are actually shown is system dep
endent and is mainly controlled by the value of the boolean preference browser.preferences.instantapply.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
dropmarker - Archive of obsolete content
a dropmarker is not int
ended to be used as a separate element, but as part of another element.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
iframe - Archive of obsolete content
chrome (default behaviour): a browser, int
ended to be used for loading privileged content using a chrome:// uri.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
key - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
...for example: // modify some attributes let key = document.getelementbyid(key_id); key.setattribute("modifiers", "alt shift"); // apply the changes let keyset = document.getelementbyid(keyset_id); keyset.parentnode.app
endchild(keyset); ...
keyset - Archive of obsolete content
the keyset and its desc
endants are not displayed.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
notification - Archive of obsolete content
should be one of the constants described in the notificationbox's app
endnotification method.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
preference - Archive of obsolete content
the type of the property dep
ends on the value of the type property.
... inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
prefpane - Archive of obsolete content
inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
... </prefpane> <script type="application/javascript" src="chrome://myext/content/script0.js"> <script type="application/javascript" src="chrome://myext/content/script1.js"> </prefwindow> when opening a dialog with multiple panes you must include the toolbar feature in the call to op
endialog, for example: window.op
endialog("chrome://example/content/prefwin.xul", "", "chrome,toolbar"); related prefwindow preferences system documentation: introduction: getting started | examples | troubleshooting reference: prefwindow | prefpane | preferences | preference | xul attributes ...
promptBox - Archive of obsolete content
method overview nsidomelement app
endprompt(args, onclosecallback); void removeprompt(nsidomelement aprompt); nodelist listprompts(nsidomelement aprompt); methods app
endprompt() creates a new prompt, adding it to the tab.
... nsidomelement app
endprompt( args, onclosecallback ); parameters args arguments for the prompt.
query - Archive of obsolete content
the attributes and content of the query are dep
endent on the type of datasource being used.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
scale - Archive of obsolete content
the home and
end keys set the scale's value to the minimum and maximum values, respectively.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
stack - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] an element that r
enders its children on top of each other.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
statusbar - Archive of obsolete content
it is virtually equivalent to a standard box, but may be r
endered differently.
... boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
titlebar - Archive of obsolete content
the titlebar will s
end a command event after the move is complete.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
treechildren - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
...space(), isequalnode, issamenode, issupported(), lookupnamespaceuri, lookupprefix, normalize(), queryselector(), queryselectorall(), removeattribute(), removeattributenode(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata example <tree flex="1"> <treecols> <treecol id="s
ender" label="s
ender" flex="1"/> <treecol id="subject" label="subject" flex="2"/> </treecols> <treechildren> <treeitem> <treerow> <treecell label="joe@somewhere.com"/> <treecell label="top secret plans"/> </treerow> </treeitem> <treeitem> <treerow> <treecell label="mel@whereever.com"/> <treecell label="let's do lunch"/> </tr...
where - Archive of obsolete content
less the numeric value of the subject must be less than the value greater the numeric value of the subject must be greater than the value before the string value of subject must come before value alphabetically after the string value of subject must come after value alphabetically startswith the value of subject must start with the value
endswith the value of subject must
end with the value contains the value of subject must contain the value as a substring subject type: string the variable or string to compare.
...oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
wizard - Archive of obsolete content
the wizard will r
endered in a manner suitable for the user's selected theme and platform.
... methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getuserdata, hasattribute(), hasattributens(), hasattributes...
XUL - Archive of obsolete content
they provide a powerful mechanism for ext
ending and customizing existing xul applications.
... xul online live editor (copy & paste snippets from here and run them) xul explorer (a lightweight xul ide) xulexplorer (patched version of xul explorer) extension developer's extension (featuring a live xul editor) xulref sidebar firebug dom inspector spket ide, ide for xul/xbl ample sdk, (cross-browser xul r
enderer in javascript/html) view all...
Deploying XULRunner - Archive of obsolete content
in the
end, most users are afraid of links that don't have a pretty icon so you may want to have a look at the branding section of xulrunner tips.
...this should be fixed with xulrunner 11.0 with xulrunner 11.0 you may need to copy "gkmedias.dll" from the xulrunner directory to the root directory mac os x on mac os x, the exact layout of your application bundle dep
ends on which version of xulrunner you're using.
XULRunner FAQ - Archive of obsolete content
this page is int
ended to answer frequently asked questions and correct common misconceptions about xulrunner.
... right now mozilla recomm
ends that xulrunner should be deployed privately with each application.
Getting started with XULRunner - Archive of obsolete content
it specifies how your application int
ends to use the xulrunner platform as well as configure some information that xulrunner uses to run your application.
... here is mine: [app] v
endor=xultest name=myapp version=1.0 buildid=20100901 id=xulapp@xultest.org [gecko] minversion=1.8 maxversion=200.* note: the minversion and maxversion fields indicate the range of gecko versions your application is compatible with; make sure that you set them so that the version of xulrunner you're using is in that range, or your application won't work.
How to enable locale switching in a XULRunner application - Archive of obsolete content
registry;1"].getservice(); var xulchromereg = chromeregservice.queryinterface(components.interfaces.nsixulchromeregistry); var toolkitchromereg = chromeregservice.queryinterface(components.interfaces.nsitoolkitchromeregistry); var selectedlocale = xulchromereg.getselectedlocale("localeswitchdemo"); var availablelocales = toolkitchromereg.getlocalesforpackage("localeswitchdemo"); // r
ender locale menulist by iterating through the query result from getlocalesforpackage() const xul_ns = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; var localelistbox = document.getelementbyid("locale-listbox"); var selecteditem = null; while(availablelocales.hasmore()) { var locale = availablelocales.getnext(); var listitem = document.createelementns(xul_ns...
... selecteditem = listitem; } localelistbox.app
endchild(listitem); } // highlight current locale localelistbox.selecteditem = selecteditem; } catch (err) { alert (err); } 4.
ant script to assemble an extension - Archive of obsolete content
t name="blogmark" default="createxpi"> <property name="version" value="1.3-rc1"/> <property name="description" value="new context-menu item to add the current page in your blogmarks"/> xpi file is created after "chrome/blogmark.jar" is created, which is then stuffed into "blogmark.xpi" <target name="createxpi" dep
ends="createjar" description="assemble the final build blogmark.xpi"> <zip destfile="blogmark-${version}.xpi"> <zipfileset dir="." includes="chrome/blogmark.jar" /> <zipfileset dir="." includes="install.rdf" /> </zip> </target> everything inside the chrome directory is zipped into chrome/blog...
...mark.jar <target name="createjar" dep
ends="templates" description="assemble the jar"> <jar destfile="chrome/blogmark.jar"> <fileset dir="chrome/"> <include name="**/*"/> <exclude name="**/*~"/> <exclude name="**/*.tpl.*"/> <exclude name="blogmark.jar"/> </fileset> </jar> </target> <target name="templates" description="generate files from templates."> <copy file="chrome/content/blogmark/contents.rdf.tpl.xml" tofile="chrome/content/blogmark/contents.rdf" overwrite="true"> <filterchain> ...
Mozilla.dev.apps.firefox-2006-09-29 - Archive of obsolete content
can't view keith olbermann videos a user inability to launch videos, worked fine for others,
ended up being a flash version problem.
... firefox 2 on windows vista discussion about the "state of affairs" of firefox 2 on windows vista rc1 - update for rc1 listed in update history as 'install p
ending' right-click "copy email address" - bug 353102 a proposed bug fix to the 'copy email address' bug how to use the rss feeds discovery & parsing tool in another open source project?
2006-09-29 - Archive of obsolete content
can't view keith olbermann videos a user inability to launch videos, worked fine for others,
ended up being a flash version problem.
... firefox 2 on windows vista discussion about the "state of affairs" of firefox 2 on windows vista rc1 - update for rc1 listed in update history as 'install p
ending' right-click "copy email address" - bug 353102 a proposed bug fix to the 'copy email address' bug how to use the rss feeds discovery & parsing tool in another open source project?
2006-10-06 - Archive of obsolete content
a: robert helmer pointed out the mozilla.org's config file could be found here and to look for -->mozconfig<---------------------------------------- -->
end mozconfig<---------------------------------------- updated: developer documentation issues for thunderbird 2 eric shepherd has requested feedback for any developer documentation issues that might need dealing with for thunderbird 2.
... cédric corazza recomm
ends that the proposed documention should be made available on the l10n cvs once it reaches a decent stage so that localizers can get a head-start on the localization before the final version is made available.
2006-11-03 - Archive of obsolete content
suggestion made for e-mail popup it suggested that the e-mail popup duration should dep
ends on number of messages and examples of this idea is provided.
... meetings cal
endar project weekly status meeting - 2006/11/01 17:00 utc (meeting notes) cal
endar project weekly qa chat - 2006/11/02 16:30 utc (meeting notes) ...
2006-11-03 - Archive of obsolete content
(http://www.google.com/url?sa=d&q=htt...tail%3fid%3d64) gavin recomm
ended that phil should add |ac_add_options --disable-airbag| to his .mozconfig.
...according to him he has followed the windows build requirements recomm
ended by mozilla.
2006-11-24 - Archive of obsolete content
announcments bon echo status mike beltzner posted a small to-do list with regards to bon echo firefox 1.5.0.9/2.0.0.1 jay patel posted an update of bugs for the firefox 1.5.0.9/2.0.0.1 releases discussion non-ascii r
endering performance boris zbarsky made some suggestions on how to improve international font r
endering cvs commit access changes a large discussion went on about changes to policies surrounding cvs commit access project drivers and technical oversight mike connor suggested ways to better organize project management, policy making, and technical oversight.
... others gave input on this as well meetings because of the firefox summit last week there is no project status meeting this week november 22 gecko 1.9/gran paradiso status meeting: (ag
enda) ...
2006-10-20 - Archive of obsolete content
traffic october 14, 2006, 6:53pm - ed notes that, on windows, composer 0.1's reccom
ended install directory needs to be different than those noted in the release notes.
...nickolay ponomarev, benjamin smedberg, axel hecht clarify some misconceptions about front-
end and back-
end programming with xulrunner, including the difficulty of writing the back
ends in c++ (since that would require a recompilation on every platform frank wanted to support).
Feed content access API
loading the feed and s
ending it to the parser is done using code similar to this: fetch: function(feedurl) { var httprequest = null; function inforeceived() { var data = httprequest.responsetext; var ioservice = components.classes['@mozilla.org/network/io-service;1'] .getservice(components.interfaces.nsiioservice); var uri = ioservice.newuri(feedurl,...
... var listener = new feedtestresultlistener(); try { parser.listener = listener; parser.parsefromstring(data, uri); } catch(e) { alert("error parsing feed."); } } } httprequest = new xmlhttprequest(); httprequest.open("get", feedurl, true); try { httprequest.onload = inforeceived; httprequest.s
end(null); } catch(e) { alert(e); } } the nsifeedprocessor interface lets you parse the feed data from several possible sources; in this case, we're loading a document into a string, then parsing that string using its parsefromstring() method.
Mork
values are merely an opaque sequence of bytes, so their actual content is dep
endent on the mork consumer.
...using the '\' character quotes the next character; at the
end of the line, it represents a continuation such as that found in c\c++ code.
Places utilities for JavaScript
boolean nodeisvisit(anode) determines whether or not a resultnode is a visit item or not boolean nodeisuri(anode) determines whether or not a resultnode is a url item or not boolean nodeisquery(anode) determines whether or not a resultnode is a query item or not boolean nodeisreadonly(anode) determines if a node is read only (children cannot be inserted, sometimes they cannot be removed dep
ending on the circumstance) boolean nodeishost(anode) determines whether or not a resultnode is a host folder or not boolean nodeiscontainer(anode) determines whether or not a resultnode is a container item or not boolean nodeisdynamiccontainer(anode) determines whether or not a result-node is a dynamic-container item.
...the annotation objects returned or s
end from/to all these functions all are arrays of objects which have the properties: name the annotation name flags annotation flags expires annotation expiration mimetype mimetype of the annotation, usually only used for binary annotations type the type used for non-binary annotations value the value of the annotation getannotationsforuri() fetch all annotations for a uri, including...
Retrieving part of the bookmarks tree
it contains administrative data as well as user data, and is therefore not recomm
ended for use in querying.
...rootnode.containeropen = false; if you encounter a node with a type of result_type_folder or another type of container, you can open these folders and desc
end into the hierarchy.
Bundling multiple binary components
since binary components are linked against a single gecko sdk, a dep
endency to a particular version of gecko is created.
...create small wrappers for calling the methods, as you may need to thunk parameters dep
ending on how much has changed between gecko versions.
Component Internals
xpcom s
ends a notification that it's beginning startup.
... xpcom calls autoregistration
end.
Preface
by the
end of the book, if we've done our job, you will have learned how to build a component and you will know something about the framework for these components in gecko, which is xpcom.
...details about downloading the sdk, building, and getting programmatic access to gecko components are provided in the app
endix to this book, setting up the gecko sdk.
Receiving startup notifications
if you want your component to be started as a service, prep
end "service," to the contract id: categorymanager->addcategoryentry(appstartup_category, "mycomponentname", "service,contract-id", pr_true, pr_true, getter_copies(previous)); with "service," specified, the component is instantiated using nsicomponentmanager.getservi...
...what happens next once you've registered with the category manager, at mozilla startup time (or when the embedding application's ns_initembedding() function is called), the appstartupnotifier component is instantiated, and its observe() method is called; this in turn enumerates all components in the app-startup category and s
ends them the appropriate notifications.
Components object
warning: this object is only int
ended for code running with chrome privileges.
...tructor 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 p
ending result for current call stack current javascript call stack utils provides access to several useful features utils.atline provides access to the value of the atline property in the javascript environment.
HOWTO
put the following at the
end of your script: // do async processing // from <https://developer.mozilla.org/en/xpconnect/xpcshell/howto> print("doing async work"); gscriptdone = false; var gthreadmanager = cc["@mozilla.org/thread-manager;1"] .getservice(ci.nsithreadmanager); var mainthread = gthreadmanager.currentthread; while (!gscriptdone) mainthread.processnextevent(true); while (mainthread.hasp
endingevents()) mainthread.processnextevent(true); 2.
...]" 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 app
end 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 reshan...
Profiling XPCShell
then, the next lines shows the amount of time sp
end in the functions in that file.
... the line consists of: the compile count of the function; the call count of the function; the functions name; the starting line number; the
ending line number; the function's size; the amount of time (in milliseconds) the fastest call took; the time of the slowest call; the average time sp
end; the total time; the time sp
end in the function itself is given (that is the total time excluding the time sp
end in functions called from this function).
XPCShell Reference
it dumps whatever is passed to the screen, putting spaces between arguments and app
ending a newline at the
end.
...it only handles one parameter and it doesn't app
end a newline.
NS_OVERRIDE
ns_override is a macro which allows c++ code in mozilla to specify that a method is int
ended to override a base class method.
...ss b: class a { virtual nsresult getfoo(nsifoo** aresult); }; class b : public a { ns_override virtual nsresult getfoo(nsifoo** aresult); }; later, the signature of a::getfoo() is changed to remove the output parameter: class a { - virtual nsresult getfoo(nsifoo** aresult); + virtual already_addrefed<nsifoo> getfoo(); }; b::getfoo() no longer overrides a::getfoo() as was originally int
ended.
XPCOM glue classes
onvertutf16toutf8 externalclass declarationns convertutf8toutf16 externalclass declarationns lossyconvertutf16toascii externalclass declarationns_convertasciitoutf16class declarationns_convertutf16toutf8class declarationns_convertutf8toutf16class declarationns_lossyconvertutf16toasciiclass declarationns_overridens_override is a macro which allows c++ code in mozilla to specify that a method is int
ended to override a base class method.
...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 the set of character encodings understood by the ns_cstringtoutf16 and ns_utf16tocstring functions.nsdep
endentcstringclass declarationnsdep
endentcstring externalclass declarationnsdep
endentcsubstringclass declarationnsdep
endentcsubstring externalclass declarationnsdep
endentstringclass declarationnsdep
endentstring externalclass declarationnsdep
endentsubstringclass declarationnsdep
endentsubstring externalclass declarationnsembedcstringthe nsembedcstring concrete class provides a way to construct a nsacst...
IAccessibleComponent
other-licenses/ia2/accessiblecomponent.idlnot scriptable this interface is implemented by any object that can be r
endered on the screen.
...the coordinates of the returned position are relative to this object's parent or relative to the screen on which this object is r
endered if it has no parent.
WEBGL_lose_context.loseContext() - Web APIs
the webgl_lose_context.losecontext() method is part of the webgl api and allows you to simulate losing the context of a webglr
enderingcontext context.
... recomm
endation initial definition.
WEBGL_lose_context.restoreContext() - Web APIs
the webgl_lose_context.restorecontext() method is part of the webgl api and allows you to simulate restoring the context of a webglr
enderingcontext object.
... recomm
endation initial definition.
WaveShaperNode.WaveShaperNode() - Web APIs
if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
... samsung internet android full support 6.0notes full support 6.0notes notes before samsung internet 7.0, the default values were not supported.leg
end full support full support no support no support compatibility unknown compatibility unknownsee implementation notes.see implementation notes.
WebGLBuffer - Web APIs
when working with webglbuffer objects, the following methods of the webglr
enderingcontext are useful: webglr
enderingcontext.bindbuffer() webglr
enderingcontext.createbuffer() webglr
enderingcontext.deletebuffer() webglr
enderingcontext.isbuffer() examples creating a buffer var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); var buffer = gl.createbuffer(); specifications specification status comment webgl 1.0the definition of 'webglbuffer' in that specification.
... recomm
endation initial definition.
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 r
endering context.
... recomm
endation initial definition.
WebGLProgram - Web APIs
); // bind existing attribute data gl.bindbuffer(gl.array_buffer, buffer); gl.enablevertexattribarray(attributelocation); gl.vertexattribpointer(attributelocation, 3, gl.float, false, 0, 0); // draw a single triangle gl.drawarrays(gl.triangles, 0, 3); deleting the program if there is an error linking the program or you wish to delete an existing program, then it is as simple as running webglr
enderingcontext.deleteprogram().
... recomm
endation initial definition.
WebGLShader - Web APIs
description to create a webglshader use webglr
enderingcontext.createshader, then hook up the glsl source code using webglr
enderingcontext.shadersource(), and finally invoke webglr
enderingcontext.compileshader() to finish and compile the shader.
... recomm
endation initial definition.
WebGLTexture - Web APIs
when working with webgltexture objects, the following methods of the webglr
enderingcontext are useful: webglr
enderingcontext.bindtexture() webglr
enderingcontext.createtexture() webglr
enderingcontext.deletetexture() webglr
enderingcontext.istexture() examples creating a texture var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); var texture = gl.createtexture(); specifications specification status comment webgl 1.0the definition of 'webgltexture' in...
... recomm
endation initial definition.
WebGLTransformFeedback - Web APIs
it allows to preserve the post-transform r
endering state of an object and resubmit this data multiple times.
... when working with webgltransformfeedback objects, the following methods of the webgl2r
enderingcontext are useful: webgl2r
enderingcontext.createtransformfeedback() webgl2r
enderingcontext.deletetransformfeedback() webgl2r
enderingcontext.istransformfeedback() webgl2r
enderingcontext.bindtransformfeedback() webgl2r
enderingcontext.begintransformfeedback() webgl2r
enderingcontext.
endtransformfeedback() webgl2r
enderingcontext.pausetransformfeedback() webgl2r
enderingcontext.resumetransformfeedback() webgl2r
enderingcontext.transformfeedbackvaryings() webgl2r
enderingcontext.gettransformfeedbackvarying() examples creating a webgltransformfeedback object in this example, gl must be a webgl2r
enderingcontext.
WebGLUniformLocation - Web APIs
when working with webgluniformlocation objects, the following methods of the webglr
enderingcontext are useful: webglr
enderingcontext.getuniformlocation() webglr
enderingcontext.uniform() examples getting an uniform location var canvas = document.getelementbyid('canvas'); var gl = canvas.getcontext('webgl'); var location = gl.getuniformlocation(webglprogram, 'uniformname'); specifications specification status comment webgl 1.0the definition of 'webgluniformlocation' in that specification.
... recomm
endation initial definition.
Basic scissoring - Web APIs
clearing the drawing buffer when scissoring applies this is a simple demonstration of a r
endering with scissor().
...in other cases, the fragments may be discarded altogether (so the pixel value is not updated), or it may interact with the already existing pixel value (such as when doing color bl
ending for non-opaque elements in the scene).
Hello GLSL - Web APIs
, 0.0, 1.0); gl_pointsize = 64.0; } </script> <script type="x-shader/x-fragment" id="fragment-shader"> #version 100 void main() { gl_fragcolor = vec4(0.18, 0.54, 0.34, 1.0); } </script> ;(function(){ "use strict" window.addeventlistener("load", setupwebgl, false); var gl, program; function setupwebgl (evt) { window.removeeventlistener(evt.type, setupwebgl, false); if (!(gl = getr
enderingcontext())) return; var source = document.queryselector("#vertex-shader").innerhtml; var vertexshader = gl.createshader(gl.vertex_shader); gl.shadersource(vertexshader,source); gl.compileshader(vertexshader); source = document.queryselector("#fragment-shader").innerhtml var fragmentshader = gl.createshader(gl.fragment_shader); gl.shadersource(fragmentshader,source); gl.co...
... gl.drawarrays(gl.points, 0, 1); cleanup(); } var buffer; function initializeattributes() { gl.enablevertexattribarray(0); buffer = gl.createbuffer(); gl.bindbuffer(gl.array_buffer, buffer); gl.vertexattribpointer(0, 1, gl.float, false, 0, 0); } function cleanup() { gl.useprogram(null); if (buffer) gl.deletebuffer(buffer); if (program) gl.deleteprogram(program); } function getr
enderingcontext() { var canvas = document.queryselector("canvas"); canvas.width = canvas.clientwidth; canvas.height = canvas.clientheight; var gl = canvas.getcontext("webgl") || canvas.getcontext("experimental-webgl"); if (!gl) { var paragraph = document.queryselector("p"); paragraph.innerhtml = "failed to get webgl context." + "your browser or device may not support webgl...
Scissor animation - Web APIs
var gl, color = getrandomcolor(), position; function setupanimation (evt) { window.removeeventlistener(evt.type, setupanimation, false); if (!(gl = getr
enderingcontext())) return; gl.enable(gl.scissor_test); gl.clearcolor(color[0], color[1], color[2], 1.0); // unlike the browser window, vertical position in webgl is // measured from bottom to top.
... position = [ math.random()*(gl.drawingbufferwidth - size[0]), gl.drawingbufferheight ]; // random velocity between 1.0 and 7.0 velocity = 1.0 + 6.0*math.random(); color = getrandomcolor(); gl.clearcolor(color[0], color[1], color[2], 1.0); } } function getrandomcolor() { return [math.random(), math.random(), math.random()]; } function getr
enderingcontext() { var canvas = document.queryselector("canvas"); canvas.width = canvas.clientwidth; canvas.height = canvas.clientheight; var gl = canvas.getcontext("webgl") || canvas.getcontext("experimental-webgl"); if (!gl) { var paragraph = document.queryselector("p"); paragraph.innerhtml = "failed to get webgl context." + "your browser or device may not support webgl...
Textures from code - Web APIs
- 1.0; float distance = length(fragmentposition); float distancesqrd = distance * distance; gl_fragcolor = vec4( 0.2/distancesqrd, 0.1/distancesqrd, 0.0, 1.0 ); } </script> ;(function(){ "use strict" window.addeventlistener("load", setupwebgl, false); var gl, program; function setupwebgl (evt) { window.removeeventlistener(evt.type, setupwebgl, false); if (!(gl = getr
enderingcontext())) return; var source = document.queryselector("#vertex-shader").innerhtml; var vertexshader = gl.createshader(gl.vertex_shader); gl.shadersource(vertexshader,source); gl.compileshader(vertexshader); source = document.queryselector("#fragment-shader").innerhtml var fragmentshader = gl.createshader(gl.fragment_shader); gl.shadersource(fragmentshader,source); gl.co...
...eattributes() { gl.enablevertexattribarray(0); buffer = gl.createbuffer(); gl.bindbuffer(gl.array_buffer, buffer); gl.bufferdata(gl.array_buffer, new float32array([0.0, 0.0]), gl.static_draw); gl.vertexattribpointer(0, 2, gl.float, false, 0, 0); } function cleanup() { gl.useprogram(null); if (buffer) gl.deletebuffer(buffer); if (program) gl.deleteprogram(program); } function getr
enderingcontext() { var canvas = document.queryselector("canvas"); canvas.width = canvas.clientwidth; canvas.height = canvas.clientheight; var gl = canvas.getcontext("webgl") || canvas.getcontext("experimental-webgl"); if (!gl) { var paragraph = document.queryselector("p"); paragraph.innerhtml = "failed to get webgl context." + "your browser or device may not support webgl...
Proxy Auto-Configuration (PAC) file - HTTP
the examples at the
end of this document are complete.
...ange(1, "jun", 1995, 15, "aug", 1995); // returns true from june 1st, 1995, until august 15th, same year daterange("oct", 1995, "mar", 1996); // returns true from october 1995 until march 1996 // (including the entire month of october 1995 and march 1996) daterange(1995); // returns true during the entire year of 1995 daterange(1995, 1997); // returns true from beginning of year 1995 until the
end of year 1997 timerange() syntax // the full range of expansions is analogous to daterange.
HTTP resources and specifications - HTTP
cross-origin resource sharing living standard rfc 7034 http header field x-frame-options informational rfc 6797 http strict transport security (hsts) proposed standard upgrade insecure requests upgrade insecure requests candidate recomm
endation content security policy 1.0 content security policy 1.0 csp 1.1 and csp 3.0 doesn't ext
end the http standard obsolete microsoft document specifying legacy document modes* defines x-ua-compatible note rfc 5689 http extensions for web distributed authoring and versioning (webdav) these extensions of the web, as well as carddav and caldav, a...
...per text coffee pot control protocol (htcpcp/1.0) april 1st joke spec rfc 7168 the hyper text coffee pot control protocol for tea efflux appliances (htcpcp-tea) april 1st joke spec html living standard html defines extensions of http for server-sent events living standard tracking preference expression dnt header editor's draft / candidate recomm
endation reporting api report-to header draft draft spec expect-ct extension for http ietf draft ...
103 Early Hints - HTTP
the http 103 early hints information response status code is primarily int
ended to be used with the link header to allow the user agent to start preloading resources while the server is still preparing a response.
...if you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and s
end us a pull request.
202 Accepted - HTTP
202 is non-committal, meaning that there is no way for the http to later s
end an asynchronous response indicating the outcome of processing the request.
... it is int
ended for cases where another process or server handles the request, or for batch processing.
408 Request Timeout - HTTP
a server should s
end the "close" connection header field in the response, since 408 implies that the server has decided to close the connection rather than continue waiting.
... note: some servers merely shut down the connection without s
ending this message.
Functions - JavaScript
the stack-like behavior can be seen in the following example: function foo(i) { if (i < 0) return; console.log('begin: ' + i); foo(i - 1); console.log('
end: ' + i); } foo(3); // output: // begin: 3 // begin: 2 // begin: 1 // begin: 0 //
end: 0 //
end: 1 //
end: 2 //
end: 3 nested functions and closures you may nest a function within another function.
... in the following example, the function multiply uses rest parameters to collect arguments from the second one to the
end.
Indexed collections - JavaScript
let myarray = new array('wind', 'rain', 'fire') let list = myarray.join(' - ') // list is "wind - rain - fire" push() adds one or more elements to the
end of an array and returns the resulting length of the array.
... let a = ['a', 'b', 'a', 'b', 'a'] console.log(a.indexof('b')) // logs 1 // now try again, starting from after the last match console.log(a.indexof('b', 2)) // logs 3 console.log(a.indexof('z')) // logs -1, because 'z' was not found lastindexof(searchelement[, fromindex]) works like indexof, but starts at the
end and searches backwards.
Loops and iteration - JavaScript
(note that it's possible that number could be zero!) the various loop mechanisms offer different ways to determine the start and
end points of the loop.
...at the
end of every execution, the condition is checked.
JavaScript technologies overview - JavaScript
the core of the dom the document object model (dom) is a cross-platform, language-indep
endent convention for representing and interacting with objects in html, xhtml and xml documents.
... xmlhttprequest makes it possible to s
end asynchronous http requests.
Private class fields - JavaScript
class baseclasswithprivatestaticfield { static #private_static_field static basepublicstaticmethod() { this.#private_static_field = 42 return this.#private_static_field } } class subclass ext
ends baseclasswithprivatestaticfield { } let error = null try { subclass.basepublicstaticmethod() } catch(e) { error = e} console.assert(error instanceof typeerror) private instance fields private instance fields are declared with # names (pronounced "hash names"), which are identifiers prefixed with #.
...base class) when we try to call derived.publicstaticmethod2(), and thus exhibits the same "provenance restriction" as mentioned above: class base { static #privatestaticmethod() { return 42; } static publicstaticmethod1() { return base.#privatestaticmethod(); } static publicstaticmethod2() { return this.#privatestaticmethod(); } } class derived ext
ends base {} console.log(derived.publicstaticmethod1()); // 42 console.log(derived.publicstaticmethod2()); // typeerror private instance methods private instance methods are methods available on class instances whose access is restricted in the same manner as private instance fields.
static - JavaScript
if you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and s
end us a pull request.
... class triple { static triple(n = 1) { return n * 3; } } class biggertriple ext
ends triple { static triple(n) { return super.triple(n) * super.triple(n); } } console.log(triple.triple()); // 3 console.log(triple.triple(6)); // 18 var tp = new triple(); console.log(biggertriple.triple(3)); // 81 (not affected by parent's instantiation) console.log(tp.triple()); // 'tp.triple is not a function'.
Warning: String.x is deprecated; use String.prototype.x instead - JavaScript
warning: string.charat is deprecated; use string.prototype.charat instead warning: string.charcodeat is deprecated; use string.prototype.charcodeat instead warning: string.concat is deprecated; use string.prototype.concat instead warning: string.contains is deprecated; use string.prototype.contains instead warning: string.
endswith is deprecated; use string.prototype.
endswith instead warning: string.includes is deprecated; use string.prototype.includes instead warning: string.indexof is deprecated; use string.prototype.indexof instead warning: string.lastindexof is deprecated; use string.prototype.lastindexof instead warning: string.localecompare i...
... build the array of methods with the following, but the // getownpropertynames() method is non-shimable: // object.getownpropertynames(string).filter(function(methodname) { // return typeof string[methodname] === 'function'; // }); methods = [ 'contains', 'substring', 'tolowercase', 'touppercase', 'charat', 'charcodeat', 'indexof', 'lastindexof', 'startswith', '
endswith', 'trim', 'trimleft', 'trimright', 'tolocalelowercase', 'normalize', 'tolocaleuppercase', 'localecompare', 'match', 'search', 'slice', 'replace', 'split', 'substr', 'concat', 'localecompare' ], methodcount = methods.length, assignstringgeneric = function(methodname) { var method = string.prototype[methodname]; string[methodname] = function(arg1) { ...
SyntaxError: JSON.parse: bad parsing - JavaScript
after minus sign syntaxerror: json.parse: unexpected non-digit syntaxerror: json.parse: missing digits after decimal point syntaxerror: json.parse: unterminated fractional number syntaxerror: json.parse: missing digits after exponent indicator syntaxerror: json.parse: missing digits after exponent sign syntaxerror: json.parse: exponent part is missing a number syntaxerror: json.parse: unexpected
end of data syntaxerror: json.parse: unexpected keyword syntaxerror: json.parse: unexpected character syntaxerror: json.parse:
end of data while reading object contents syntaxerror: json.parse: expected property name or '}' syntaxerror: json.parse:
end of data when ',' or ']' was expected syntaxerror: json.parse: expected ',' or ']' after array element syntaxerror: json.parse:
end of data when proper...
...ty name was expected syntaxerror: json.parse: expected double-quoted property name syntaxerror: json.parse:
end of data after property name when ':' was expected syntaxerror: json.parse: expected ':' after property name in object syntaxerror: json.parse:
end of data after property value in object syntaxerror: json.parse: expected ',' or '}' after property value in object syntaxerror: json.parse: expected ',' or '}' after property-value pair in object literal syntaxerror: json.parse: property names must be double-quoted strings syntaxerror: json.parse: expected property name or '}' syntaxerror: json.parse: unexpected character syntaxerror: json.parse: unexpected non-whitespace character after json data syntaxerror: json.parse error: invalid character at position {0} (edge) error type syntaxe...
SyntaxError: function statement requires a name - JavaScript
examples statements vs expressions a function statement (or function declaration) requires a name, this won't work: function () { return 'hello world'; } // syntaxerror: function statement requires a name you can use a function expression (assignment) instead: var greet = function() { return 'hello world'; }; or, you function is maybe int
ended to be an iife (immediately invoked function expression), which is a function that runs as soon as it is defined.
...this doesn't work: function greeter() { german: function () { return "moin"; } } // syntaxerror: function statement requires a name this would work, for example: function greeter() { german: function g() { return "moin"; } } object methods if you int
ended to create a method of an object, you will need to create an object.
assign - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
bbox - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
binding - Archive of obsolete content
boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
bindings - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
box - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
broadcaster - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
colorpicker - Archive of obsolete content
value property gets and sets color attribute methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
column - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
columns - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
conditions - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
content - Archive of obsolete content
métodos inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
deck - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
grid - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
grippy - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
groupbox - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
hbox - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
image - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
listcol - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
listcols - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
listhead - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
listheader - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
member - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
menubar - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
observes - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
page - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
param - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
popupset - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
preferences - Archive of obsolete content
inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
progressmeter - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
queryset - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
richlistitem - Archive of obsolete content
methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
row - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
rows - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
rule - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
script - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
scrollcorner - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
separator - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
spacer - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
spinbuttons - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
stringbundle - Archive of obsolete content
inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
stringbundleset - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
tabbox - Archive of obsolete content
methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
tabpanel - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
tabpanels - Archive of obsolete content
methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
template - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
textnode - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
timepicker - Archive of obsolete content
methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbargrippy - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbaritem - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbarpalette - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbarseparator - Archive of obsolete content
boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbarset - Archive of obsolete content
boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbarspacer - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
toolbarspring - Archive of obsolete content
boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
treecell - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
treecols - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
treerow - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
treeseparator - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
triple - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
vbox - Archive of obsolete content
oxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
wizardpage - Archive of obsolete content
classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods inherited methods addeventlistener(), app
endchild(), blur, click, clonenode(), comparedocumentposition, dispatchevent(), docommand, focus, getattribute(), getattributenode(), getattributenodens(), getattributens(), getboundingclientrect(), getclientrects(), getelementsbyattribute, getelementsbyattributens, getelementsbyclassname(), getelementsbytagname(), getelementsbytagnamens(), getfeature, getuserdata, hasattribute(), hasattributens(), h...
Custom app bundles for Mac OS X - Archive of obsolete content
.js (this provides some default values for preferences) application bundle contents in addition to the standard directory hierarchy that's required of all mac os x applications, as shown above in application bundle layout, there are some specific rules for what content goes where: the top-level directory is given a name that
ends with .app which designates the whole package as an application bundle.
What XULRunner Provides - Archive of obsolete content
the following features are either already implemented or planned: gecko features xpcom networking gecko r
endering engine dom editing and transaction 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 xu...
xulauncher - Archive of obsolete content
e/application.ini" xulmanifest="$wd/$xulname/chrome/chrome.manifest" xulprefs="$wd/$xulname/defaults/preferences/prefs.js" # make minimal directory structure ############################################################################## mkdir -p $xuldir mkdir -p $xulprefdir # create application.ini file ############################################################################## echo " [app] v
endor=xulauncher.sh name=$xulname version=0.0.1 buildid=`date +%y%m%d` [gecko] minversion=1.8 maxversion=1.9 ">$xulappini # create chrome.manifest file ############################################################################## echo " content $xulname file:$xulname/ ">$xulmanifest # create prefs.js file ############################################################################## echo " pref(\...