Search completed in 0.91 seconds.
HTML attribute: multiple - HTML: Hypertext Markup Language
the boolean
multiple attribute, if set, means the form control accepts one or more values.
... the boolean
multiple attribute, if set, means the form control accepts one or more values.
... the boolean
multiple attribute, if set, means the form control accepts one or more values.
...And 33 more matches
Multiple item extension packaging - Archive of obsolete content
from the release of firefox 53,
multiple item extension packages are no longer supported and will not load.
... from the release of firefox 53,
multiple item extension packages are no longer supported and will not load.
... from the release of firefox 53,
multiple item extension packages are no longer supported and will not load.
...And 19 more matches
Multiple Firefox profiles
a 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.
...t for general-purpose web browsing.
...xpected to be in the next release of firefox and are in final stages of testing.
...And 9 more matches
Multiple Queries - Archive of obsolete content
« previousnext » so far, every template has contained only a single query, even for recursive content.
... « previousnext » so far, every template has contained only a single query, even for recursive content.
...eries.
...And 8 more matches
Multiple Rules - Archive of obsolete content
« previousnext » all of the examples shown so far have used only a single rule.
...es handled earlier matches.
...1"/> </query> <rule> <where subject="?name" rel="contains" value=" "/> <action> <label uri="?" value="?name has two names for a total length of ?letters"/> </action> </rule> </template> </vbox> this example contains only one rule with a condition which checks for names that contain a space character, which has the effect of selecting only those people with
multiple names.
...And 6 more matches
Dragging and Dropping Multiple Items - Web APIs
caution: all of the methods and properties with a moz prefix (such as mozsetdataat() are gecko specific interfaces.
...ata() and cleardata() methods, however, they take an additional argument that specifies the index of the item to retrieve, modify or remove.
...list", 1); dt.mozcleardataat("text/plain", 1); you've removed the second item clearing all types, then the old third item becomes new second item, and its index decreases.
...And 4 more matches
Multiple-column layout - Learn web development
previous overview: css layout next the
multiple-column layout specification gives you a method of laying content out in columns, as you might see in a newspaper.
... previous overview: css layout next the
multiple-column layout specification gives you a method of laying content out in columns, as you might see in a newspaper.
...out in columns, as you might see in a newspaper.
...And 2 more matches
Using multiple DTDs - Archive of obsolete content
normally you have a single dtd (document type definition) to localize a specific xul file.
...le localizable, you normally add a dtd declaration at the beginning of the file like this: <!doctype window system "chrome://myextension/locale/mainwindow.dtd"> where "window" is the local name of the document (root) element.
... dtd declaration at the beginning of the file like this: <!doctype window system "chrome://myextension/locale/mainwindow.dtd"> where "window" is the local name of the document (root) element.
...ale/mainwindow.dtd"> %mainwindowdtd; ]> you can now access the entities declared in the dtds as shown above.
HTMLInputElement.multiple - Web APIs
the htmlinputelement.
multiple property indicates if an input can have more than one value.
... the htmlinputelement.
multiple property indicates if an input can have more than one value.
... the htmlinputelement.
multiple property indicates if an input can have more than one value.
... the htmlinputelement.
multiple property indicates if an input can have more than one value.
Controlling multiple parameters with ConstantSourceNode - Web APIs
this article demonstrates how to use a constantsourcenode to link
multiple parameters together so they share the same value, which can be changed by simply setting the value of the constantsourcenode.offset parameter.
... this article demonstrates how to use a constantsourcenode to link
multiple parameters together so they share the same value, which can be changed by simply setting the value of the constantsourcenode.offset parameter.
...value = volumecontrol.value; } that simple function controls the gain on both nodes.
300 Multiple Choices - HTTP
the http 300
multiple choices redirect status response code indicates that the request has more than one possible responses.
... the http 300
multiple choices redirect status response code indicates that the request has more than one possible responses.
...equest has more than one possible responses.
Using Multiple Queries to Generate More Results - Archive of obsolete content
subject="?start" predicate="http://www.xulplanet.com/rdf/people" object="?people"/> <member container="?people" child="?item"/> </query> <rule> <binding subject="?item" predicate="http://purl.org/dc/elements/1.1/title" object="?title"/> <action> <label uri="?item" value="?title"/> </action> </rule> </queryset> </template> you can view the example.
Index - Web APIs
r the web, there are a large number of web apis available.
...cts
multiple times, if they share the same vertex data, primitive count and type.
...d.
...And 34 more matches
Index - Archive of obsolete content
firefox 3.6, this is no longer permitted.
...ers and cannot be managed through the firefox add-ons manager.
...manager.
...And 28 more matches
Index
are developed by the mozilla.org projects traditionally used its own implementation of security protocols and cryptographic algorithms, originally called netscape security services, nowadays called network security services (nss).
...orm cryptographic operations, nss conforms to a standard called pkcs#11.
...he init function, and nss is designed to do the rest.
...And 27 more matches
<input type="email"> - HTML: Hypertext Markup Language
<input> elements of type email are used to let the user enter and edit an e-mail address, or, if the
multiple attribute is specified, a list of e-mail addresses.
...priate to visually denote whether the current value of the field is a valid e-mail address or not.
... value or that the value was removed.
...And 17 more matches
Index
found 1275 pages: # page tags and summary 1 xpcom add-ons, extensions, landing, mozilla, xpcom xpcom is a cross platform component object model, similar to microsoft com.
...ng the in-memory datasource rdf no summary!
...s created.
...And 15 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
control protocol) and subsequently the first version of the internet protocol or tcp/ip suite, making arpanet a prominent part of the nascent internet.
...ay, codingscripting, glossary, javascript, programming an array is an ordered collection of data (either primitive or object depending upon the language).
...appening without waiting for the previous one to complete).
...And 13 more matches
Choosing the right approach - Learn web development
nd in old-style apis, involves a function being passed into another function as a parameter, which is then invoked when an asynchronous operation has been completed, so that the callback can in turn do something with the result.
...unction being passed into another function as a parameter, which is then invoked when an asynchronous operation has been completed, so that the callback can in turn do something with the result.
...e particular api.
...And 13 more matches
An overview of NSS Internals
are developed by the mozilla.org projects traditionally used its own implementation of security protocols and cryptographic algorithms, originally called netscape security services, nowadays called network security services (nss).
...orm cryptographic operations, nss conforms to a standard called pkcs#11.
...he init function, and nss is designed to do the rest.
...And 11 more matches
<input type="file"> - HTML: Hypertext Markup Language
stored in a github repository.
...itional attributes accept, capture, files,
multiple idl attributes files and value dom interface htmlinputelement properties properties that apply only to elements of type file methods select() value a file input's value attribute contains a domstring that represents the path to the selected file(s).
...es that apply only to elements of type file methods select() value a file input's value attribute contains a domstring that represents the path to the selected file(s).
...And 11 more matches
RTCConfiguration - Web APIs
if this value isn't included in the dictionary, "balanced" is assumed.
...h as a stun or turn server.
... ice candidates, in order to support non-
multiplexed rtcp.
...And 9 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
lex="1" align="end" pack="end"> <button label="happy"/> <button label="sad"/> </box> listing 2: how align and pack respond to orient figure 2: output from listing 2 flex elements ordinarily have fixed height and width.
...box, elements will ordinarily be laid out following their order of appearance in the source code (laid out left to right or top to bottom).
...upopup> </menu> </menupopup> </menu> </menubar> listing 9: a menu definition figure 6: output from listing 9 each item in a menu is marked up with the menuitem tag.
...And 8 more matches
Configuring Build Options
s, /mozilla-central/mozconfig or /comm-central/mozconfig).
...dd_options are passed to client.mk.
...if you need to re-run configure, the easiest way to do it is using ./mach configure; running configure manually is strongly discouraged.
...And 7 more matches
sslfnc.html
returns the function returns one of these values: if successful, secsuccess.
...alues: if successful, secsuccess.
...n cache.
...And 7 more matches
box-lines - CSS: Cascading Style Sheets
this is a property of the original css flexible box layout module draft, and has been replaced by a newer standard.
... this is a property of the original css flexible box layout module draft, and has been replaced by a newer standard.
... box-lines: unset; by default a horizontal box will lay out its children in a single row, and a vertical box will lay out its children in a single column.
...And 7 more matches
Index - Learn web development
ginner, browser, codingscripting, custom, functions, guide, javascript, learn, method, anonymous, invoke, l10n:priority, parameters another essential concept in coding is functions, which allow you to store a piece of code that does a single task inside a defined block, and then call that code whenever you need it using a single short command — rather than having to type out the same code
multiple times.
...uss some important concepts surrounding events, and look at how they work in browsers.
... css, codingscripting, debugging, landing, style, topic, length, specificity cascading stylesheets — or css — is the first technology you should start learning after html.
...And 6 more matches
Viewpoints and viewers: Simulating cameras in WebXR - Web APIs
ed by either the webgl or the webxr api that represents the viewer that you can simply rotate and move around to automatically change what's seen on the screen.
...lerate 2d graphics drawing, the camera is typically placed directly above the center of the scene with the distance and field of view set to allow the entire scene to be presented.
... the camera view, you can get the model view matrix—the transform matrix needed to move the world to simulate the desired camera position—like this: let viewmatrix = view.transform.inverse.matrix; if the library you're using accepts an xrrigidtransform object directly, you can instead get view.transform.inverse, rather than pulling out just the array representing the view matrix.
...And 6 more matches
Understanding WebAssembly text format - WebAssembly
t) .then(obj => { obj.instance.exports.logit(); }); note: you can find this example on github as logger.html (see it live also).
...o tell the program a function returning an i32 is expected.
...ences, the table object can be mutated from javascript using the grow(), get() and set() methods.
...And 6 more matches
Install Manifests - Archive of obsolete content
ble with firefox 3.5 should specify a maxversion of 3.5.*, so that they are automatically compatible with security and stability updates.
...</description> </em:targetapplication> gecko 1.9 based applications allow you to use the special targetapplication id toolkit@mozilla.org to say that the add-on is compatible with any toolkit app with a toolkit version matching the minversion and maxversion.
...bouturl>chrome://myext/content/about.xul</em:abouturl> bootstrap a boolean value that tells the application whether the extension is boot-strappable.
...And 5 more matches
richlistbox - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] this element is used to create a list of listitems (richlistitems), similar to a listbox, but is designed to be used when the items do not contain simple text content.
...ertitemat, invertselection, movebyoffset, removeitemat, removeitemfromselection, scrolltoindex, selectall, selectitem, selectitemrange, timedselect, toggleitemselection examples <richlistbox> <richlistitem> <description>a xul description!</description> </richlistitem> <richlistitem> <button label="a xul button"/> </richlistitem> </richlistbox> the richlistbox element contains
multiple richlistitem elements, which can contain any content.
...ping more letters with select more specific items.
...And 5 more matches
CSS FAQ - Learn web development
recommended to use classes as much as possible, and to use ids only when absolutely necessary for specific uses (like to connect label and form elements or for styling elements that must be semantically unique): using classes makes your styling extensible — even if you only have one element to style with a particular ruleset now, you might want to add more later.
...abel and form elements or for styling elements that must be semantically unique): using classes makes your styling extensible — even if you only have one element to style with a particular ruleset now, you might want to add more later.
...id value for a css property.
...And 5 more matches
How to structure a web form - Learn web development
e first widget, "fruit juice size medium" for the second, and "fruit juice size large" for the third.
...te of the taste_cherry checkbox: <form> <p> <input type="checkbox" id="taste_1" name="taste_cherry" value="cherry"> <label for="taste_1">i like cherry</label> </p> <p> <input type="checkbox" id="taste_2" name="taste_banana" value="banana"> <label for="taste_2">i like banana</label> </p> </form> note: you can find this example in checkbox-label.html (see it live also).
... <input type="checkbox" id="taste_1" name="taste_cherry" value="cherry"> <label for="taste_1">i like cherry</label> </p> <p> <input type="checkbox" id="taste_2" name="taste_banana" value="banana"> <label for="taste_2">i like banana</label> </p> </form> note: you can find this example in checkbox-label.html (see it live also).
...And 5 more matches
Chrome registration
see bug 323455.
...ity restrictions preventing web content from including content at resource: uris, so take care what you make visible there.
...tributes of chrome in that package, or limit the conditions under which the line is used.
...And 5 more matches
Command line options
command line options are used to specify various startup options for mozilla applications.
...ve.
... field=value, for example: to=foo@nowhere.net subject=cool page attachment=www.mozilla.org attachment='file:///c:/test.txt' body=check this page or also in thunderbird 52 and newer: body=c:\path\to\file.txt separate
multiple message options by comma (,), for example: "to=foo@nowhere.net,subject=cool page" .
...And 5 more matches
Using files from web applications - Web APIs
files.
...ile api from extensions or other browser chrome code, you can; however, note there are some additional features to be aware of.
...ever, note there are some additional features to be aware of.
...And 5 more matches
HTML attribute: accept - HTML: Hypertext Markup Language
s that don't match the criteria and aren't selectable.
...<label for="soundfile">select an audio file:</label> <input type="file" id="soundfile" accept="audio/*"> </p> <p> <label for="videofile">select a video file:</label> <input type="file" id="videofile" accept="video/*"> </p> <p> <label for="imagefile">select some images:</label> <input type="file" id="imagefile" accept="image/*"
multiple> </p> note the last example allows you to select
multiple iamges.
...lect an audio file:</label> <input type="file" id="soundfile" accept="audio/*"> </p> <p> <label for="videofile">select a video file:</label> <input type="file" id="videofile" accept="video/*"> </p> <p> <label for="imagefile">select some images:</label> <input type="file" id="imagefile" accept="image/*"
multiple> </p> note the last example allows you to select
multiple iamges.
...And 5 more matches
<input type="checkbox"> - HTML: Hypertext Markup Language
you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
...tive-examples and send us a pull request.
...oss page loads.
...And 5 more matches
listbox - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] this element is used to create a list of items where one or more of the items may be selected.
...he preferences system article.
...e element contains more than this number of rows, a scrollbar will appear which the user can use to scroll to the other rows.
...And 4 more matches
Advanced styling effects - Learn web development
e second length value is the vertical offset — the distance downwards that the shadow is offset from the original box (or upwards, if the value is negative).
...t — the distance downwards that the shadow is offset from the original box (or upwards, if the value is negative).
...egative).
...And 4 more matches
Fundamental text and font styling - Learn web development
fonts that are intended to emulate handwriting, with flowing, connected strokes.
... big red elephant fantasy fonts that are intended to be decorative.
...text-decoration: sets/unsets text decorations on fonts (you'll mainly use this to unset the default underline on links when styling them.) available values are: none: unsets any text decorations already present.
...And 4 more matches
AsyncTestUtils extended framework
ke synthetic set definitions.
...der_with_sets([{count: 3, subject: "foo"}, {count: 3, subject: "bar"}]); this creates a folder with two message sets in it.
...u read the subject lines in the order they were added (or in date order), you would read "foo", "bar", "foo", "bar", "foo", "bar".
...And 4 more matches
XPCOM Stream Guide
case.
...fferedoutputstream complex stream types several stream types leverage primitive stream types to do specialized work.
...lex stream types several stream types leverage primitive stream types to do specialized work.
...And 4 more matches
nsIFilePicker
ory nsilocalfile the directory that the file picker dialog should initially display.
...cker dialog.
...to choose a particular filter to be selected by default.
...And 4 more matches
Storage
this example uses the numbered placeholder indexed by zero for a parameter to be bound later (described in binding parameters).
...r to use.
...1"), getter_addrefs(statement)); ns_ensure_success(rv, rv); rv = statement->bindint32parameter(0, 1234); ns_ensure_success(rv, rv); note: numerical indexes for parameters are always one less than the number you write in the sql.
...And 4 more matches
Key Values - Web APIs
this key generated the value "unidentified".
... some keys are common across
multiple languages, while others exist only on keyboards targeting specific languages.
...keyboards targeting specific languages.
...And 4 more matches
RTCPeerConnection - Web APIs
ld watch each stream for removetrack events on each stream within the rtcpeerconnection.
...he "failed" state.
...he rtcpeerconnection is closed.
...And 4 more matches
Web video codec guide - Web media technologies
bandwidth than the main profile (which is used for standard definition digital tv in some regions) or the high profile (used for blu-ray disc video).
...2:0 chroma subsampling; the high 10 profile adds support for 10-bit color, and advanced forms of high 10 add 4:2:2 and 4:4:4 chroma subsampling.
... container support 3gp, mp4, webm rtp / webrtc compatible yes supporting/maintaining organization mpeg / itu specification https://mpeg.chiariglione.org/standards/mpeg-4/advanced-video-coding https://www.itu.int/rec/t-rec-h.264 licensing proprietary with numerous patents.
...And 4 more matches
page-mod - Archive of obsolete content
the "main.js" code.
...de: "*.mozilla.org", contentscript: 'window.alert("matched!");' }); you can specify a set of urls using a regular expression.
...-mod"); pagemod.pagemod({ include: "*", contentscriptfile: data.url("my-script.js") }); from firefox 34, you can use "./my-script.js" as an alias for the resource:// url pointing to the script in your "data" directory.
...And 3 more matches
Layout System Overview - Archive of obsolete content
on, where the width of the presentation is constrained by the dimensions of the printed output (paper) and the height of each page is fixed.
...stem allowed for
multiple, possibly different, presentations to be supported simultaneously from the same content model.
...ons to be supported simultaneously from the same content model.
...And 3 more matches
Web fonts - Learn web development
you can then use the font family name specified inside @font-face to apply your custom font to anything you like, as normal: html { font-family: "myfont", "bitstream vera serif", serif; } the syntax does get a bit more complex than this; we'll go into more detail below.
...r the paragraphs.
...led "yes, the fonts i'm uploading are legally eligible for web embedding." click download your kit.
...And 3 more matches
Other form controls - Learn web development
e" name="simple"> <option value="banana">big, beautiful yellow banana</option> <option value="cherry">succulent, juicy cherry</option> <option value="lemon">sharp, powerful lemon</option> </select> by default, the height of the select box is enough to display a single value.
...culent, juicy cherry</option> <option value="lemon">sharp, powerful lemon</option> </select> by default, the height of the select box is enough to display a single value.
...ribute provides control over how many options are visible when the select does not have focus.
...And 3 more matches
Responsive images - Learn web development
t vector graphics).
...wport" content="width=device-width">: this forces mobile browsers to adopt their real viewport width for loading web pages (some mobile browsers lie about their viewport width, and instead load pages at a larger viewport width then shrink the loaded page down, which is not very helpful for responsive images or design).
...ecide which image is shown — the first one that returns true will be displayed.
...And 3 more matches
Introduction to events - Learn web development
these — they are considered bad practice.
... btn.removeeventlistener('click', bgchange); this isn't significant for simple, small programs, but for larger, more complex programs it can improve efficiency to clean up old unused event handlers.
... learning.
...And 3 more matches
DeferredTask.jsm
firefox 28 note interface was changed in firefox 28, and old methods were removed.
...ool ispending(); return value returns true if pending, false otherwise.
...e since gecko 28 cancel any pending task.
...And 3 more matches
NSS tools : certutil
ates be created in the key database.
...r single cert, print binary der encoding of extension oid.
...ocess.
...And 3 more matches
Rhino scopes and contexts
e as well as a place to find standard objects like function and object.
...by calling context.initstandardobjects to create all the standard objects: scriptableobject scope = cx.initstandardobjects(); the easiest way to embed rhino is just to create a new scope this way whenever you need one.
...statement x = v + a; is executed, the scope chain is traversed looking for a 'x' property.
...And 3 more matches
mozIStorageConnection
the connection failed to open, or it has been closed.
...curred.
...the sqlite library for the last sqlite operation.
...And 3 more matches
Plug-in Basics - Plugins
ko looks for plugin modules on different systems, see how gecko finds plug-ins.
... when the plug-in software is loaded and unloaded.
... are exported from the plug-in dll and accessed with a system table lookup, which means that they are not related to any particular plug-in instance.
...And 3 more matches
FileList - Web APIs
cted with the <input type="file"> element.
...used for a list of files dropped into web content when using the drag and drop api; see the datatransfer object for details on this usage.
...presenting the file at the specified index in the file list.
...And 3 more matches
HTMLSelectElement - Web APIs
telement.formread only an htmlformelement referencing the form that this element is associated with.
...melement referencing the form that this element is associated with.
...s associated with.
...And 3 more matches
Cognitive accessibility - Accessibility
p define overall organization of page content.
...nism to aid comprehension.
... or search functionality rather than reading and traversing through several pages to find what they need.
...And 3 more matches
Layout using named grid lines - CSS: Cascading Style Sheets
verything else about line-based placement still works in the same way and you can mix named lines and line numbers.
...r</div> <div class="overlay">overlay</div> </div> given that we have this ability to position create lines from named areas and areas from named lines it is worth taking a little bit of time to plan your naming strategy when starting out creating your grid layout.
...l help everyone to use the layouts you create more easily.
...And 3 more matches
Using CSS gradients - CSS: Cascading Style Sheets
o cyan, being fully cyan for 15% of the gradient, and so on.
...int-gradient"></div> <div class="regular-progression"></div> div { width: 120px; height: 120px; float: left; margin-right: 10px; box-sizing: border-box; } .colorhint-gradient { background: linear-gradient(to top, black, 20%, cyan); } .regular-progression { background: linear-gradient(to top, black, cyan); } overlaying gradients gradients support transparency, so you can stack
multiple backgrounds to achieve some pretty fancy effects.
...uses repeating-linear-gradient() to create a gradient that progresses repeatedly in a straight line.
...And 3 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
t validation when supported.
...t almost all value of the id attribute of the <datalist> of autocomplete options max numeric types maximum value maxlength password, search, tel, text, url maximum length (number of characters) of value min numeric types minimum value minlength password, search, tel, text, url minimum length (number of characters) of value
multiple email, file boolean.
...datalist> of autocomplete options max numeric types maximum value maxlength password, search, tel, text, url maximum length (number of characters) of value min numeric types minimum value minlength password, search, tel, text, url minimum length (number of characters) of value
multiple email, file boolean.
...And 3 more matches
HTML documentation index - HTML: Hypertext Markup Language
racters (as utf-16 code units) the user can enter into an <input> or <textarea>.
...ea>.
... equal to the value of maxlength, otherwise the value will never be valid, as it is impossible to meet both criteria.
...And 3 more matches
MIME types (IANA media types) - HTTP
sensitive but are traditionally written in lowercase, with the exception of parameter values, whose case may or may not have specific meaning.
...not have specific meaning.
...s which represent a single file or medium, such as a single text or music file, or a single video.
...And 3 more matches
Loops and iteration - JavaScript
ows an expression of any degree of complexity.
... assumed to be true.) the statement executes.
...for statement declares the variable i and initializes it to 0.
...And 3 more matches
Image file type and format guide - Web media technologies
e: you should typically avoid using bmp for web site content, as it's not a generally-accepted use of the format.
...ed by html, along with xbm.
... format was designed by microsoft for desktop icons of windows systems.
...And 3 more matches
places/bookmarks - Archive of obsolete content
e `group` won't be // present here.
...roperties are and'd together within a single query object, but are or'd together across
multiple query objects.
... (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 here.
...And 2 more matches
Extension Packaging - Archive of obsolete content
this way will not be visible to the user.
...n using the windows registry external installers, such as the java runtime, may wish to install application integration points as an extension, even if the application is not yet installed.
...ion, even if the application is not yet installed.
...And 2 more matches
The Essentials of an Extension - Archive of obsolete content
m:creator> <em:homepageurl>https://developer.mozilla.org/docs/xul_school</em:homepageurl> this is the data that is displayed before and after the extension is installed, that you can see in the add-ons manager.
...nversion> <em:maxversion>10.*</em:maxversion> </description> </em:targetapplication> this node specifies the target application and target versions for the extension, specifically firefox, from version 4 up to version 10.
...s spaced to look like a table, but that is not necessary.
...And 2 more matches
Actionscript Acceptance Tests - Archive of obsolete content
r the dir.asc_args file.
...pecifies additional arguments to pass to the shell when running the test - the user can use the special variable $dir to refer to the current directory.
...s one special keyword that can be used, uses_swfversion.
...And 2 more matches
Tree Selection - Archive of obsolete content
« previousnext » the section will describe how to get and set the selected items in a tree.
...ill be the first top-level item.
...t item at index 1 will be its first child.
...And 2 more matches
Trees - Archive of obsolete content
rows of text in columns.
...ther xul elements is a common source of confusion for xul developers.
...where the data for the cells is supplied from tags placed inside the tree.
...And 2 more matches
tree - Archive of obsolete content
s.
... removed from the selection.
...e element contains more than this number of rows, a scrollbar will appear which the user can use to scroll to the other rows.
...And 2 more matches
Sharp variables in JavaScript - Archive of obsolete content
a sharp variable is a syntax in object initializers that allows serialization of objects that have cyclic references or
multiple references to the same object.
... // this doesn't do much since the sharp variable is out of scope immediately after a = #2 = {}; // slightly more useful since we retain a reference to the new object to reference the sharp variable, simply append another sharp (#) to the end of the variable name.
...sharp variable is out of scope immediately after a = #2 = {}; // slightly more useful since we retain a reference to the new object to reference the sharp variable, simply append another sharp (#) to the end of the variable name.
...And 2 more matches
Flexbox - Learn web development
ting and frustrating.
... of the elements you want to affect.
...u want to follow along with this example): here we see that the children are indeed breaking out of their container.
...And 2 more matches
Responsive design - Learn web development
for the user's needs.
...iple media queries within a stylesheet, tweaking your whole layout or parts of it to best suit the various screen sizes.
...t-based flexible grid.
...And 2 more matches
CSS basics - Learn web development
r example, there are many color values in addition to red.) note the other important parts of the syntax: apart from the selector, each ruleset must be wrapped in curly braces.
...d in curly braces.
...claration, you must use a colon (:) to separate the property from its value or values.
...And 2 more matches
Creating hyperlinks - Learn web development
hyperlinks are really important — they are what makes the web a web.
...g else that lives on the web.
...nt directories: if you wanted to include a hyperlink inside projects/index.html pointing to pdfs/project-brief.pdf, you'd have to go up a directory level, then back down into the pdf directory.
...And 2 more matches
Graceful asynchronous programming with Promises - Learn web development
presentation of the above functionality might look something like this: choosetoppings(function(toppings) { placeorder(toppings, function(order) { collectorder(order, function(pizza) { eatpizza(pizza); }, failurecallback); }, failurecallback); }, failurecallback); this is messy and hard to read (often referred to as "callback hell"), requires the failurecallback() to be called
multiple times (once for each nested function), with other issues besides.
...za(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 we can keep playing video games while we wait for the pizza to be ready to collect), and each operation is guaranteed to wait for previous operations to complete before running.
...fulfilled.
...And 2 more matches
Accessible Toolkit Checklist
ntly focused widget does not need the enter key events - making keystrokes do the right thing msaa support (default state) links enter key activates link (thus default button no longer shows dark border when link is focused) msaa support, including linked and traversed states, and accessible value that holds destination url text fields - single and
multiple line it's probably best to use native widgets for these, otherwise 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 i...
...p toggle a combo box open and closed escape closes combo box if it was open (be careful not to have it cancel entire dialog) up/down arrow key navigation.
...election, selectable, multiselectable and extselectable states, and statechange events for checkbox children trees when a tree view is tabbed to, select the first item if nothing else is already selected up/down arrow key navigation left arrow to first collapse a branch, then move to parent right arrow to first expand a branch, then move to first child
multiple selection is possible with ctrl+arrow to move focus without selecting, then space to select item, shift+space to select to current point or control+space to toggle selection of current item typing letter or several letters to navigate (similar to list support for this) shift+f10 or context menu key to bring up context menu for current item (on os x ctrl+space is used to bring up conte...
...And 2 more matches
Firefox
firefox is mozilla's popular web browser, available for
multiple platforms including windows, macos, and linux on the desktop and all android and ios mobile devices.
...is the new tab page, which includes a "top sites" section showing sites you visit that firefox thinks you're likely to want to visit again, as well as potentially some sites that have been pinned to always appear in that space.
...mentation.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.
...And 2 more matches
Embedding the editor
oxobject for each <editor> tag, and allows javascript to access properties of this box object (such as the nsieditorshell).
...y native ui.
...ent which is editable, and which may embody more than one editor.
...And 2 more matches
DMD
on your dmd report while your working directory is $objdir/dist/bin.
...m/html/nshtmldocument.cpp:3710) #08: nsidocument::docaddsizeofincludingthis(nswindowsizes*) const (/home/njn/moz/mi5/dom/base/nsdocument.cpp:12820) } } the choice of whether to record an allocation stack trace for all blocks is controlled by an option (see below).
... invoked, i.e.
...And 2 more matches
certutil
and managing certificates in the certificate database.
...te chain verification process.
...eemail member's thawte consulting (pty) ltd.
...And 2 more matches
JSAPI User Guide
do not need to call js_initclass to make a new instance of that class—otherwise there would be a chicken-and-egg problem making the global object—but you should call js_initclass if you require a constructor function for script authors to call via new, and/or a class prototype object (myclass.prototype) for authors to extend with new properties at run time.
...call a global function named "foo" that takes no arguments.
...obalobj, "foo", 0, 0, &rval); jsval argv[2]; /* call a function in obj's scope named "method", passing two arguments.
...And 2 more matches
JS_THREADSAFE
note: js_threadsafe is now permanently on.
...ns that any potentially long-running operation in a native must be bracketed with calls to js_suspendrequest() and js_resumerequest().
...re likely to crash.
...And 2 more matches
IAccessibleHyperlink
s one greater than the maximum value for the indices used with the methods of this interface.
...ethods of this interface.
...ssibletext.
...And 2 more matches
XPCOM
xpcom is a cross platform component object model, similar to microsoft com.
...eady_addrefed in association with nscomptr allows you to assign in a pointer without addrefing it.binary compatibilityif mozilla decides to upgrade to a compiler that does not have the same abi as the current version, any built component may fail.
...s created.
...And 2 more matches
Zombie compartments
leak.
..., 0x7f10f1250000) compartment(atoms) js-compartment(about:home) js-compartment(about:blank) compartment([system principal], resource://gre/modules/addons/xpiprovider.jsm) when looking at user compartments there are a couple of things to be aware of.
...o, there's a good chance you're seeing a zombie compartment.
...And 2 more matches
Mozilla
options are used to specify various startup options for mozilla applications.this page describes the commonly used options and how to use them.
...or its public channels, the irc server was shut down.
... ipdl, short for "ipc (inter-process communication) protocol definition language", is a mozilla-specific language allowing c++ code to pass messages between processes or threads in an organized and secure way.
...And 2 more matches
HTMLInputElement - Web APIs
this object.
.../ sets the directionality of the element.
...s a string containing a single character that switches input focus to the control when pressed.
...And 2 more matches
Basic concepts - Web APIs
its database.
...ent.
...ta value by which stored values are organized and retrieved in the object store.
...And 2 more matches
Using IndexedDB - Web APIs
you can force a transaction to flush to disk before delivering the complete event by creating a transaction using the experimental (non-standard) readwriteflush mode (see idbdatabase.transaction.
...eadwriteflush mode (see idbdatabase.transaction.
...another subtlety here is that you don't actually save the request object to a variable.
...And 2 more matches
Pointer events - Web APIs
l the non primary handler if (!ev.isprimary) process_non_primary(ev); } function init() { var el=document.getelementbyid("target"); // register pointerdown handler el.onpointerdown = down_handler; } </script> <body onload="init();"> <div id="target"> touch me ...
...t() { var el=document.getelementbyid("target"); // register pointerdown handler el.onpointerdown = down_handler; } </script> <body onload="init();"> <div id="target"> touch me ...
...gister pointerdown handler el.onpointerdown = down_handler; } </script> <body onload="init();"> <div id="target"> touch me ...
...And 2 more matches
Using Web Workers - Web APIs
t global scope (instead of self) within a worker will return an error.
... importscripts() method are also kept, since these are always evaluated before the rest of the code.
... spawning the worker, the onmessage handler is configured to display the results by setting the contents of the div element, and the onerror handler is set to dump the error message.
...And 2 more matches
ARIA annotations - Accessibility
le="deletion" above).
...ion to some content on the page, or to a previous comment.
...aningful semantics contained within.
...And 2 more matches
background-position - CSS: Cascading Style Sheets
ub.com/mdn/interactive-examples and send us a pull request.
...o-repeat; width: 300px; height: 80px; margin-bottom: 12px; } /* these examples use the `background` shorthand property */ .exampleone { background: url("https://mdn.mozillademos.org/files/11987/startransparent.gif") #ffee99 2.5cm bottom no-repeat; } .exampletwo { background: url("https://mdn.mozillademos.org/files/11987/startransparent.gif") #ffee99 left 4em bottom 1em no-repeat; } /*
multiple background images: each image is matched with the corresponding position, from first specified to last.
... url("https://mdn.mozillademos.org/files/7693/catfront.png"); background-position: 0px 0px, right 3em bottom 2em; } result specifications specification status comment css backgrounds and borders module level 3the definition of 'background-position' in that specification.
...And 2 more matches
<dl>: The Description List element - HTML: Hypertext Markup Language
one, presentation dom interface htmldlistelement attributes this element only includes the global attributes.
...s of volunteers.
...fox</dt> <dd> a free, open source, cross-platform, graphical web browser developed by the mozilla corporation and hundreds of volunteers.
...And 2 more matches
HTTP Index - HTTP
troubleshooting the http method being used by the cors request is not included in the list of methods specified by the response's access-control-allow-methods header.
...ncluded in the list of methods specified by the response's access-control-allow-methods header.
... for example to clear the content of a form, reset a canvas state, or to refresh the ui.
...And 2 more matches
HTTP Messages - HTTP
http messages are how data is exchanged between a server and a client.
...s have one: requests fetching resources, like get, head, delete, or options, usually don't need one.
...need for corresponding payload (like 201 created or 204 no content) usually don't.
...And 2 more matches
An overview of HTTP - HTTP
be transparent, forwarding on the requests they receive without altering them in any way, or non-transparent, in which case they will change the request in some way before passing it along to the server.
....
...on for each http request/response pair.
...And 2 more matches
x - SVG: Scalable Vector Graphics
perty meaning this attribute can also be used as a css property for <svg>.
...ed the text base line --> <line x1="0" y1="40%" x2="100%" y2="40%" /> <line x1="0" y1="90%" x2="100%" y2="90%" /> <!-- vertical line to materialized the x positioning --> <line x1="25%" y1="0" x2="25%" y2="100%" /> <line x1="50%" y1="0" x2="50%" y2="100%" /> <line x1="75%" y1="0" x2="75%" y2="100%" /> <!-- x with a single value --> <text y="40%" x="50%">svg</text> <!-- x with
multiple values --> <text y="90%" x="25%, 50%, 75%">svg</text> </svg> text { font: 40px sans-serif; } line { fill: none; stroke: red; stroke-width: .5px; stroke-dasharray: 2px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
... 2px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
...And 2 more matches
y - SVG: Scalable Vector Graphics
perty meaning this attribute can also be used as a css property for <svg>.
...zed the text base line --> <line x1="0" y1="40%" x2="100%" y2="40%" /> <line x1="0" y1="60%" x2="100%" y2="60%" /> <line x1="0" y1="80%" x2="100%" y2="80%" /> <!-- vertical line to materialized the x positioning --> <line x1="5%" y1="0" x2="5%" y2="100%" /> <line x1="55%" y1="0" x2="55%" y2="100%" /> <!-- y with a single value --> <text y="40%" x="5%">svg</text> <!-- y with
multiple values --> <text y="40%,60%,80%" x="55%">svg</text> </svg> text { font: 40px sans-serif; } line { fill: none; stroke: red; stroke-width: .5px; stroke-dasharray: 2px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
... 2px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
...And 2 more matches
Using the WebAssembly JavaScript API - WebAssembly
e entire linear memory, which is necessary to faithfully represent c/c++ concepts like pointers.
... range contained by a webassembly memory object.
...fer (memory.prototype.buffer), not on the memory itself.
...And 2 more matches
Structure of an installable bundle - Archive of obsolete content
eans you can no longer have platform-specific preference files in your bundle.
...les in your bundle.
...es, the ones loaded later overwrite the earlier ones.
...l references for toolkit api structure of an installable bundle: describes the common structure of installable bundles, including extensions, themes, and xulrunner applications extension packaging: specific information about how to package extensions theme packaging: specific information about how to package themes
multiple-item extension packaging: specific information about
multiple-item extension xpis xul application packaging: specific information about how to package xulrunner applications chrome registration printing in xul apps ...
Simple Query Syntax - Archive of obsolete content
e the full syntax.
...n only needs to set or remove the attribute on the rule as necessary.
...e namespace aware functions (with the suffix ns) need to be used to set or remove attributes with namespaces.
...a by using
multiple attributes.
Object.prototype.__noSuchMethod__ - Archive of obsolete content
ly set to a non-function, the javascript engine will revert to throwing typeerrors.
...rrors.
...{ __nosuchmethod__: function(id, args) { console.log(id, '(' + args.join(', ') + ')'); } }; o.foo(1, 2, 3); o.bar(4, 5); o.baz(); // output // foo (1, 2, 3) // bar (4, 5) // baz () using __nosuchmethod__ to simulate
multiple inheritance an example of code that implements a primitive form of
multiple inheritance is shown below.
...n nomethod(name, args) { var parents = this.__parents_; // go through all parents for (var i = 0; i < parents.length; i++) { // if we find a function on the parent, we call it if (typeof parents[i][name] == 'function') { return parents[i][name].apply(this, args); } } // if we get here, the method hasn't been found throw new typeerror; } // used to add a parent for
multiple inheritance function addparent(obj, parent) { // if the object isn't initialized, initialize it if (!obj.__parents_) { obj.__parents_ = []; obj.__nosuchmethod__ = nomethod; } // add the parent obj.__parents_.push(parent); } an example of using this idea is shown below.
Backgrounds and borders - Learn web development
gradients is to use one of the many css gradient generators available on the web, such as this one.
...tors available on the web, such as this one.
....
...l, so we've made a demo to demonstrate the differences between the three values — have a look at background-attachment.html (also see the source code here).
Organizing your CSS - Learn web development
2 { background-color: black; color: white; } css doesn't mind which one you use.
... a <p>, you would have to add another selector to these rules or create a whole new ruleset.
...c makes sense, however this will generally be an exception rather than usual practice.
...ets linked later coming after rules in stylesheets linked earlier.
How CSS is structured - Learn web development
ures in detail.
...1>hello world!</h1> <p>this is my first css example</p> </body> </html> in some circumstances, internal stylesheets can be useful.
...ne page, an internal stylesheet becomes a less efficient way of working.
... experiment</title> </head> <body> <h1 style="color: blue;background-color: yellow;border: 1px solid black;">hello world!</h1> <p style="color:red;">this is my first css example</p> </body> </html> avoid using css in this way when possible.
Video and audio content - Learn web development
page doesn't support the <video> element, allowing us to provide a fallback for older browsers.
... mp3 until 2017, and h.264 is encumbered by patents through at least 2027.
...itive and negative features affecting your decisions about which to use.
... the media content.
Making decisions in your code — conditionals - Learn web development
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 recommended — 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.
...h, or the park, and get an ice cream.'; } else if (temperature >= 86) { para.textcontent = 'it is ' + temperature + ' degrees outside — really hot!
...de of each or operator: if (x === 5 || x === 7 || x === 10 ||x === 20) { // run my code } switch statements if...else statements do the job of enabling conditional code well, but they are not without their downsides.
...red in the choice variable.
Drawing graphics - Learn web development
creating our own canvas that we draw future experiments on to.
...th and the canvas' width property equal to window.innerwidth (which gives us the viewport width).
... third line we set both a new constant height and the canvas' height property equal to window.innerheight (which gives us the viewport height).
...s animation).
Handling text — strings in JavaScript - Learn web development
ext it does something different.
...ry an example in our console.
...pression results inside them, traditional strings can be fiddly to write: let score = 9; let highestscore = 10; let output = 'i like the song "' + song + '".
...ceholders here are pretty simple, only including a simple value in the string.
Storing the information you need — Variables - Learn web development
ll your variable: let myname; let myage; here we're creating two variables called myname and myage.
...ge).
... may cause errors or be hard to understand for an international audience.
...for example, a simple case would be: let iamalive = true; whereas in reality it would be used more like this: let test = 6 < 3; this is using the "less than" operator (<) to test whether 6 is less than 3.
Introduction to cross browser testing - Learn web development
he development of the site.
...mates to help out if you are working in a team).
...perating system, and device combinations on physical hardware, you can also make use of emulators (emulate a device using software on your desktop computer) and virtual machines (software that allows you to emulate
multiple operating system/software combinations on your desktop computer).
...of emulators (emulate a device using software on your desktop computer) and virtual machines (software that allows you to emulate
multiple operating system/software combinations on your desktop computer).
Theme concepts
the heading area background color for your theme.
...ating a very wide image, a better approach is to use a narrower image with a transparent left edge so that it fades to the background color.
...that it fades to the background color.
...l_backgrounds": [ "weta_for_tiling.png"] }, and the images tiling with: "properties": { "additional_backgrounds_alignment": [ "top" ], "additional_backgrounds_tiling": [ "repeat" ] }, full details of how to setup this theme can be found in the themes example weta_tiled.
Examples
return os.file.exists(path).then(exists => { console.log(exists ?
...to/folder"; let promise = readtextfiles([ os.path.join(folder, "read.me"), os.path.join(folder, "home.html") ]); promise.then( function onsuccess(filescontent) { // filescontent is an array of strings; each string is the content of one file.
..."fulfilled with this value: " + avalue); }, function onreject(areason) { console.log("rejected with this reason: " + areason); }); // unexpected errors should always be reported at the end of a promise chain.
...on); }); // unexpected errors should always be reported at the end of a promise chain.
Investigating leaks using DMD heap scan mode
ild.
...hutdown faster.
...3662 inner https://www.example.com/ * cc-edges.15873.log: the first part is the file name where it was found.
...st is being held alive by the very same script element that is causing the window leak!
Memory reporting
wing kinds.
...zeofincludingthis when it is virtual.
... of an object, it might be called sizeoffoo.
...ters for that memory.
NSS Certificate Download Specification
mats.
...his is a single pkcs#7 signeddata object.
... simpler than the pkcs#7 signeddata object format.
...e begin and end lines must say certificate, and not any other word (such as key).
NSS_3.12_release_notes.html
22866: vfychain -pp command crashes in nss_shutdown bug 345779: useless assignment statements in ec_gf2m_pt_mul_mont bug 349011: please stop exporting these crmf_ symbols bug 397178: crash when entering chrome://pippki/content/resetpassword.xul in url bar bug 403822: pkix_pl_ocsprequest_create can leave some members uninitialized bug 403910: cert_findusercertbyusage() returns wrong certificate if
multiple certs with same subject available bug 404919: memory leak in sftkdb_readsecmoddb() (sftkmod.c) bug 406120: allow application to specify ocsp timeout bug 361025: support for camellia cipher suites to tls rfc4132 bug 376417: pk11_generatekeypair needs to get the key usage from the caller.
...s to certutil bug 339737: libpkix ocsp checking calls cert_verifycert bug 358785: merge nss_libpkix_branch back to trunk bug 365966: infinite recursive call in vfy_verifydigestdirect bug 382078: pkix default http client returns error when try to get an ocsp response.
...rd bug 405966: unknown signature oid 1.3.14.3.2.29 causes sec_error_bad_signature, 3.11 ignores it bug 413010: cert_comparerdn may return a false match bug 417664: false positive crl revocation test on ppc/ppc64 nss_enable_pkix_verify=1 bug 404526: glibc detected free(): invalid pointer bug 300929: certificate policy extensions not supported bug 129303: nss needs to expose interfaces to deal with
multiple token sources of certs.
...gnores it bug 413010: cert_comparerdn may return a false match bug 417664: false positive crl revocation test on ppc/ppc64 nss_enable_pkix_verify=1 bug 404526: glibc detected free(): invalid pointer bug 300929: certificate policy extensions not supported bug 129303: nss needs to expose interfaces to deal with
multiple token sources of certs.
NSS functions
questattributes mxr 3.10 and later cert_startcrlentryextensions mxr 3.10 and later cert_startcrlextensions mxr 3.10 and later cert_uncachecrl mxr 3.10 and later cert_verifycertname mxr 3.2 and later cert_verifycacertforusage mxr 3.6 and later cert_verifycert mxr 3.2 and later.
...ame mxr 3.2 and later cert_verifycacertforusage mxr 3.6 and later cert_verifycert mxr 3.2 and later.
... mxr 3.2 and later pk11_generaterandomonslot mxr 3.11 and later pk11_getalltokens mxr 3.2 and later pk11_getallslotsforcert mxr 3.12 and later pk11_getbestkeylength mxr 3.2 and later pk11_getbestslot mxr 3.2 and later pk11_getbestslot
multiple mxr 3.2 and later pk11_getbestwrapmechanism mxr 3.2 and later pk11_getblocksize mxr 3.2 and later pk11_getcertfromprivatekey mxr 3.9.3 and later pk11_getcurrentwrapindex mxr 3.2 and later pk11_getdefaultarray mxr 3.8 and later pk11...
...2 and later nss_cmsdecoder_cancel mxr 3.2 and later nss_cmsdecoder_finish mxr 3.2 and later nss_cmsdecoder_start mxr 3.2 and later nss_cmsdecoder_update mxr 3.2 and later nss_cmsdigestcontext_cancel mxr 3.2 and later nss_cmsdigestcontext_finish
multiple mxr 3.2 and later nss_cmsdigestcontext_finishsingle mxr 3.2 and later nss_cmsdigestcontext_start
multiple mxr 3.2 and later nss_cmsdigestcontext_startsingle mxr 3.2 and later nss_cmsdigestcontext_update mxr 3.2 and later nss_cmsdigesteddata_create mxr ...
NSS tools : modutil
n also create certificate, key, and module security database files.
...ommand.) modutil -rawlist -dbdir sql:/home/my/sharednssdb name="nss internal pkcs #11 module" parameters="configdir=.
...put it in a file that is passed to signtool.
...platform.
NSS tools : modutil
rtificate, key, and module security database files.
... modutil -rawlist -dbdir sql:/home/my/sharednssdb name="nss internal pkcs #11 module" parameters="configdir=.
... passed to signtool.
... is omitted, a default of 777 is assumed.
NSS tools : signtool
* check whether the files have been tampered with since being signed if you have a signing certificate, you can use netscape signing tool to digitally sign files and package them as a jar file.
...herwise.
... -d option to specify where the database files are located.
...ero) is the default and gives full information.
ANGLE_instanced_arrays - Web APIs
the angle_instanced_arrays extension is part of the webgl api and allows to draw the same object, or groups of similar objects
multiple times, if they share the same vertex data, primitive count and type.
...oses 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 rendering when used in the gl.getvertexattrib() as the pname parameter.
... when used in the gl.getvertexattrib() as the pname parameter.
... instances of the range of elements are executed, and the instance advances for each iteration.
Element.getClientRects() - Web APIs
example 1: this html creates three paragraphs with a <span> inside, each embedded in a <div> block.
...k.
...pan inside</h3> <p>both the span and the paragraph have a border set.
... while the span has
multiple border boxes.</p> <div> <strong>original</strong> <p> <span>paragraph that spans
multiple lines</span> </p> </div> <div> <strong>p's rect</strong> <p class="withclientrectsoverlay"> <span>paragraph that spans
multiple lines</span> </p> </div> <div> <strong>span's rect</strong> <p> <span class="withclientrectsoverlay">paragraph that spans
multiple lines</span> </p> </div> example 2: this html creates three ordered lists.
EventTarget.addEventListener() - Web APIs
rks on any dom element, not just html elements.
...lements.
...nction is created with each iteration of the loop.
... is kept, but since it is redefined on each iteration, it is not static.
HTMLSelectElement.type - Web APIs
the htmlselectelement.type read-only property returns the form control's type.
... the htmlselectelement.type read-only property returns the form control's type.
... the htmlselectelement.type read-only property returns the form control's type.
... the htmlselectelement.type read-only property returns the form control's type.
Using microtasks in JavaScript with queueMicrotask() - Web APIs
event loop runs only the tasks present on the queue when the iteration began, one after another, it handles the microtask queue very differently.
... this.cache[url] = data; this.data = data; this.dispatchevent(new event("load")); }); } }; this balances the clauses by having both situations handle the setting of data and firing of the load event within a microtask (using queuemicrotask() in the if clause and using the promises used by fetch() in the else clause).
...} }; this balances the clauses by having both situations handle the setting of data and firing of the load event within a microtask (using queuemicrotask() in the if clause and using the promises used by fetch() in the else clause).
...the load event within a microtask (using queuemicrotask() in the if clause and using the promises used by fetch() in the else clause).
KeyboardEvent - Web APIs
the numeric keypad (unless it's the numlock key), and for keys that are duplicated on the left and right sides of the keyboard, the key is, for whatever reason, not to be associated with that location.
..., and the space bar.
...the keyboardevent() constructor.
... a printable representation, this is an empty string.
Transcoding assets for Media Source Extensions - Web APIs
ely.
...ng on the codec, you might need to fragment the file to comply with the iso bmff spec.
...y fragmented, you can again use ffmpeg: $ ffmpeg -i non_fragmented.mp4 -movflags frag_keyframe+empty_moov fragmented.mp4 in both cases, chrome may require an extra movie flag to be set: -movflags frag_keyframe+empty_moov+default_base_moof having a properly fragmented mp4 file is all you need to get started.
...ve to create encodings at
multiple resolutions.
Media Source API - Web APIs
f flash, with technologies like flash media server serving video streams using the rtmp protocol.
...ith a simple static file server, which is also great for cdns.
... open source tools for transcoding content and preparing it for use with dash, dash file servers, and dash client libraries written in javascript.
...out the quality of video being played by a <video> element, such as number of dropped or corrupted frames.
RTCConfiguration.certificates - Web APIs
use a certificate to secure the connection.
...by an rtcpeerconnection instead of having the rtcpeerconnection generate them automatically, you do so by calling the static rtcpeerconnection.generatecertificate() function.
...by calling the static rtcpeerconnection.generatecertificate() function.
...eneratecertificate() function.
RTCIceServers.urls - Web APIs
o be used for ice negotiations.
...nnection which will use a turn server at turnserver.example.org to negotiate connections.
...n server will use the username "webrtc" and the creative password "turnpassword".
...e's a fallback address available for the server.
Selection - Web APIs
g currently being represented by the selection object, i.e.
....
..., accessed as follows: var selobj = window.getselection(); var range = selobj.getrangeat(0); selobj is a selection object range is a range object as the selection api specification notes, the selection api was initially created by netscape and allowed
multiple ranges (for instance, to allow the user to select a column from a <table>).
...he focus is the end of the selection that moves.
ValidityState.typeMismatch - Web APIs
put>, after having been edited by the user, does not conform to the constraints set by the element's type attribute.
...e, the typemismatch property will be true.
...le attribute is present.
...s present, there is a typemismatch.
Web Audio API - Web APIs
elementaudiosourcenode the mediaelementaudiosourcenode interface represents an audio source consisting of an html5 <audio> or <video> element.
... the delaynode interface represents a delay-line; an audionode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
...ents a delay-line; an audionode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
... processor using javascript, establishing it as an audio worklet processor, and then using that processor within a web audio application is the topic of this article.basic concepts behind web audio apithis article explains some of the audio theory behind how the features of the web audio api work, to help you make informed decisions while designing how audio is routed through your app.controlling
multiple parameters with constantsourcenodethis article demonstrates how to use a constantsourcenode to link
multiple parameters together so they share the same value, which can be changed by simply setting the value of the constantsourcenode.offset parameter.example and tutorial: simple synth keyboardthis article presents the code and working demo of a video keyboard you can play using the mouse.
Web Locks API - Web APIs
the web locks api allows scripts running in one tab or worker to asynchronously acquire a lock, hold it while work is performed, then release it.
...rmed, then release it.
...k has been acquired.
...; }); // request the lock: navigator.locks.request('my_resource', lock => { // lock is acquired.
ARIA: listbox role - Accessibility
x role is used to identify an element that creates a list from which a user may select one or more static items, similar to the html <select> element.
...(optional): moves focus to last option.
...is strongly recommended for lists with more than five options.
...ded for all listboxes, especially those with more than seven options: type a character: focus moves to the next item with a name that starts with the typed character.
Operable - Accessibility
layout.
...ral for a useful explanation of this).
...igation menu, styling links as buttons.
...are in the site, for example a breadcrumb trail, sitemap or text such as "form page 2 of 10".
@keyframes - CSS: Cascading Style Sheets
sts if a keyframe rule doesn't specify the start or end states of the animation (that is, 0%/from and 100%/to), browsers will use the element's existing styles for the start/end states.
...d.
...ed if possible — properties that can't be interpolated are dropped from the animation.
...be interpolated are dropped from the animation.
Grid template areas - CSS: Cascading Style Sheets
o); grid-template-areas: "hd hd hd hd hd hd hd hd hd" "sd sd sd main main main main main main" ".
...nt</div> <div class="footer">footer</div> </div> in order to make the layout neater i can use
multiple .
... in order to make the layout neater i can use
multiple .
...there is no white space between the full stops it will be counted as one cell.
animation-iteration-count - CSS: Cascading Style Sheets
the animation-iteration-count css property sets the number of times an animation sequence should be played before stopping.
...ike to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
...tion-iteration-count property is specified as one or more comma-separated values.
...efault.
background-image - CSS: Cascading Style Sheets
uld a none value.
...e images are opaque and the color won't be displayed in normal circumstances, web developers should always specify a background-color.
...fy
multiple background images, supply
multiple values, separated by a comma: background-image: linear-gradient(to bottom, rgba(255,255,0,0.5), rgba(0,0,255,0.5)), url('https://mdn.mozillademos.org/files/7693/catfront.png'); values none is a keyword denoting the absence of images.
...nsparent.gif"), url("https://mdn.mozillademos.org/files/7693/catfront.png"); background-color: transparent; } result specifications specification status comment css backgrounds and borders module level 3the definition of 'background-image' in that specification.
box-shadow - CSS: Cascading Style Sheets
the box-shadow css property adds shadow effects around an element's frame.
...github repository.
...contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
...hadow: unset; specify a single box-shadow using: two, three, or four <length> values.
text-decoration-line - CSS: Cascading Style Sheets
the text-decoration-line css property sets the kind of decoration that is used on text in an element, such as an underline or overline.
...s://github.com/mdn/interactive-examples and send us a pull request.
... text-decoration shorthand property instead.
... text-decoration-style: wavy; text-decoration-color: red; } .both { text-decoration-line: underline overline; } specifications specification status comment css text decoration module level 3the definition of 'text-decoration-line' in that specification.
User input and controls - Developer guides
uchcancel", handlecancel, false);
element.addeventlistener("touchend", handleend, false);
element.addeventlistener("touchmove", handlemove, false); where element is the dom element you want to register the touch events on.
... you can find more information in the mdn drag & drop documentation.
... documentation.
...inter lock is then used to remove the mouse pointer and allow you to move the ball directly using the mouse.
itemprop - HTML: Hypertext Markup Language
div> <div id="c"> <p>band: <span itemprop="name">jazz band</span></p> <p>size: <span itemprop="size">12</span> players</p> </div> this gives the same result as the previous example.
...d different values.
...haracters (u+003a colon) and is used as a proprietary item property name (again, one not defined in a public specification).
...e value is the element's datetime value otherwise the value is the element's textcontent.
Set-Cookie - HTTP
the set-cookie http response header is used to send a cookie from the server to the user agent, so the user agent can send it back to the server later.
... the set-cookie http response header is used to send a cookie from the server to the user agent, so the user agent can send it back to the server later.
...> set-cookie: <cookie-name>=<cookie-value>; domain=<domain-value> set-cookie: <cookie-name>=<cookie-value>; path=<path-value> set-cookie: <cookie-name>=<cookie-value>; secure set-cookie: <cookie-name>=<cookie-value>; httponly set-cookie: <cookie-name>=<cookie-value>; samesite=strict set-cookie: <cookie-name>=<cookie-value>; samesite=lax set-cookie: <cookie-name>=<cookie-value>; samesite=none //
multiple attributes are also possible, for example: set-cookie: <cookie-name>=<cookie-value>; domain=<domain-value>; secure; httponly attributes <cookie-name>=<cookie-value> a cookie begins with a name-value pair: a <cookie-name> can be any us-ascii characters, except control characters, spaces, or tabs.
...cookie expires.
HTTP response status codes - HTTP
this request, but the headers may be useful.
...ul.
... partial content this response code is used when the range header is sent from the client to request only part of a resource.
... (webdav) used inside a <dav:propstat> response element to avoid repeatedly enumerating the internal members of
multiple bindings to the same collection.
Details of the object model - JavaScript
does not assign a value to the id and does not update the counter.
...ounter.
...lternatively, you can create a copy of employee's prototype object to assign to workerbee: workerbee.prototype = object.create(employee.prototype); // instead of workerbee.prototype = new employee no
multiple inheritance some object-oriented languages allow
multiple inheritance.
...nheritance.
RegExp.prototype.exec() - JavaScript
the exec() method executes a search for a match in a specified string.
...egexp objects are stateful when they have the global or sticky flags set (e.g.
...fox jumps over the lazy dog" re lastindex the index at which to start the next match.
...to ignore case.
String - JavaScript
e point between u+0000 and u+10ffff \xxx (where xx is 2 hex digits; range of 0x00–0xff) iso-8859-1 character / unicode code point between u+0000 and u+00ff long literal strings sometimes, your code will include strings which are very long.
...nd u+00ff long literal strings sometimes, your code will include strings which are very long.
...o 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.
...e 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.
Comma operator (,) - JavaScript
the comma operator (,) evaluates each of its operands (from left to right) and returns the value of the last operand.
... the comma operator (,) evaluates each of its operands (from left to right) and returns the value of the last operand.
...repository.
...ve-examples and send us a pull request.
JavaScript typed arrays - JavaScript
's create a view that treats the data in the buffer as an array of 32-bit signed integers: let int32view = new int32array(buffer); now we can access the fields in the array just like a normal array: for (let i = 0; i < int32view.length; i++) { int32view[i] = i * 2; } this fills out the 4 entries in the array (4 entries at 4 bytes each makes 16 total bytes) with the values 0, 2, 4, and 6.
...w int32array(buffer); now we can access the fields in the array just like a normal array: for (let i = 0; i < int32view.length; i++) { int32view[i] = i * 2; } this fills out the 4 entries in the array (4 entries at 4 bytes each makes 16 total bytes) with the values 0, 2, 4, and 6.
...ugh.
...s is "entry 0 in the 32-bit array is now 32".
<mtable> - MathML
cko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) the interpretation of negative values has been corrected (bug 601436).
...to treat whitespace correctly.
...ed href used to set a hyperlink to a specified uri.
...lemented minlabelspacing a length value specifing the minimum space between a label and the adjacent cell in the row.
Codecs used by WebRTC - Web media technologies
w-delay applications such as mobile video and videoconferencing, as well as for platforms with lower performing video processing capabilities.
...s, though not required.
...d its capabilities, and how other apis can support opus, in the corresponding section of our guide to audio codecs used on the web.
...to what a landline telephone sounds like.
dx - SVG: Scalable Vector Graphics
rey">svg</text> <!-- the same text with a shift along the x-axis --> <text dx="50%" x="10%" y="50%">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } altglyph warning: as of svg2 <altglyph> is deprecated and shouldn't be used.
... animatable yes glyphref warning: as of svg2 <glyphref> is deprecated and shouldn't be used.
...20%" x="10%" y="25%">svg</text> <text dx="0 10%" x="10%" y="50%">svg</text> <text dx="0 10% 20%" x="10%" y="75%">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
...tive to the preceding glyph.
dy - SVG: Scalable Vector Graphics
rey">svg</text> <!-- the same text with a shift along the y-axis --> <text dy="50%" x="10%" y="30%">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } altglyph warning: as of svg2 <altglyph> is deprecated and shouldn't be used.
... animatable yes glyphref warning: as of svg2 <glyphref> is deprecated and shouldn't be used.
... <text dy="20" x="10" y="30">svg</text> <text dy="0 10" x="50" y="30">svg</text> <text dy="0 10 20" x="90" y="30">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
...tive to the preceding glyph.
systemLanguage - SVG: Scalable Vector Graphics
efix matching rule does not imply that if a user understands a language with a certain tag, that the user will also understand all languages with the tag as prefix.
...guage with a certain tag, that the user will also understand all languages with the tag as prefix.
...the attribute evaluates to "false".
...or content that is intended for
multiple audiences.
SVG documentation index - SVG: Scalable Vector Graphics
mode for the animation.
... current filter primitive subregion.
...s focusable and to define the relative order of the element for the purposes of sequential focus navigation.
... svg the svg script element allows to add scripts to an svg document.
Adding Toolbars and Toolbar Buttons - Archive of obsolete content
« previousnext » adding a new toolbar adding new toolbars to firefox is easy, but adding them the wrong way is very easy as well.
...ns for mac os x lion and above, and others for older systems.
...h system, with the unix theme as the default (as most other systems are unix-based).
XPCOM Objects - Archive of obsolete content
available interfaces.
...rn the incremented count.
..., such as a unique uuid (you have to generate it too and it must be different from the idl uuid), a descriptive name (this isn't used anywhere that we know of), and the contract id, which is the string you use to get a reference to the component.
CSS3 - Archive of obsolete content
on stage.
...n-timing-function properties, as well as the @keyframes at-rule.
...ss page floats working draft css grid layout unknown css line grid module level 1 working draft css positioned layout module level 3 working draft css regions module level 1 working draft defines a new mechanism allowing content to flow across, eventually non-contiguous,
multiple areas called regions.
Index of archived content - Archive of obsolete content
creating a user interface firefox hub walkthrough initialization and cleanup prerequisites walkthrough webextensions for firefox for android listening to events in firefox extensions migrating from internal linkage to frozen linkage migrating raw components to add-ons
multiple item extension packaging offering a context menu for form controls overlay extensions firefox addons developer guide appendix: what you should know about open-source software licenses chapter 1: introduction to extensions chapter 2: technologies used in developing extensio...
...ock and line layout cheat sheet content states and the style system disabling interruptible reflow document loading - from load start to finding a handler documentation for bidi mozilla downloading nightly or trunk builds jss build instructions for osx 10.6 layout faq layout system overview
multiple firefox profiles repackaging firefox style system overview using microformats firefox sync code snippets javascript client api syncing custom preferences force rtl gre gre registration ...
... creating a skin for firefox uuid contents.rdf install.rdf making sure your theme works with rtl locales theme changes in firefox 2 theme changes in firefox 3 theme changes in firefox 3.5 theme changes in firefox 4 updating an extension to support
multiple mozilla applications using firebug and jquery (screencast) using io timeout and interrupt on nt using ssh to connect to cvs using web standards in your web pages developing cross-browser and cross-platform pages references summary of changes using the w3c dom using workers in ext...
Creating regular expressions for a microsummary generator - Archive of obsolete content
o 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.
... that matches all four example urls.
...i\.dll\?viewitem&.*item= the period followed by an asterisk matches any combination of characters, including no characters at all, so it works even if "viewitem&" and "item=" are right next to each other (as in our example url) as well as when there are some characters between them.
Drag and Drop JavaScript Wrapper - Archive of obsolete content
vour("text/unicode",txt); } } this might be useful when implementing drag and drop for cells in a tree.
...transferdataset(); var tmp = new transferdata(); tmp.adddataforflavour("text/unicode",txt1); transferdata.data.push(tmp); new transferdata(); tmp.adddataforflavour("text/unicode",txt2); transferdata.data.push(tmp); } } you will need to add an observer to each element that can either start a drag action or can accept dropped objects.
... transfer object has two properties, data which holds the data and flavour which holds the flavour of the data.
Creating a Help Content Pack - Archive of obsolete content
ontent pack you have created to include the article in a table of contents: <rdf:li> <rdf:description nc:panelid="toc" nc:datasources="chrome://help/locale/help-toc.rdf chrome://foo/locale/help/glossary.rdf"/> </rdf:li> each of the different data source types (toc, index, glossary, and search) may be used
multiple times (and in the case of platform-specific information, must be used
multiple times).
...ndex file is that there is no automatically generated set of top-level letters (e.g., a for accessibility and automation or b for book and border).
...and automation or b for book and border).
Anonymous Content - Archive of obsolete content
introduction a binding can specify an anonymous content template using the content element.
...e bound element is already focused.
...es this cascade, since an author-level dom binding could inherit from a user-level binding.
seltype - Archive of obsolete content
« xul reference home seltype type: one of the values below used to indicate whether
multiple selection is allowed.
... « xul reference home seltype type: one of the values below used to indicate whether
multiple selection is allowed.
... « xul reference home seltype type: one of the values below used to indicate whether
multiple selection is allowed.
Attribute Substitution - Archive of obsolete content
« previousnext » so far, attribute replacement in an action body has been used to replace an entire attribute with the value of a variable.
...rt of attribute's value, or use
multiple variables in one attribute.
...so be used to separate a variable with normal text: <label value="?name" class="?gender^german"/> these last two examples have been setting the class attribute on a label.
Introduction - Archive of obsolete content
details of this later, the simple result here is that a listitem will be generated for each child node in the xml data, setting the label to the name attribute for each xml node.
...sources attribute specifies the uri of a database file.
...source as if they were all in one datasource to begin with.
Anonymous Content - Archive of obsolete content
rent places.
... <xul:button label="zoom out"/> </xul:box> </content> </binding> from the dom's perspective, the child elements are still in their original location.
...xul:box> </content> </binding> from the dom's perspective, the child elements are still in their original location.
Commands - Archive of obsolete content
the controllers property to add your own controllers.
...en override the default handling of a command with careful placement of the controller.
...lements the four methods described above.
Creating an Installer - Archive of obsolete content
g an installer and installing components.
...nue or cancel.
... " + result); } var xpi = new object(); xpi["calendar"] = "calendar.xpi"; installtrigger.install(xpi,donefn); first, we define a callback function donefn() which will be called when the install is complete.
Manipulating Lists - Archive of obsolete content
umber(val); if (val != null) document.getelementbyid('level').selectedindex = val - 1; } </script> <hbox align="center"> <label value="enter a number from 1 to 3:"/> <textbox id="number"/> <button label="select" oncommand="doselect();"/> </hbox> <radiogroup id="level"> <radio label="excellent"/> <radio label="good"/> <radio label="poor"/> </radiogroup> listboxes also support
multiple selection and the functions of the nsidomxulmultiselectcontrolelement interface.
...m 1 to 3:"/> <textbox id="number"/> <button label="select" oncommand="doselect();"/> </hbox> <radiogroup id="level"> <radio label="excellent"/> <radio label="good"/> <radio label="poor"/> </radiogroup> listboxes also support
multiple selection and the functions of the nsidomxulmultiselectcontrolelement interface.
... of deleting the selected items properly: example 4 : source view <script> function deleteselection(){ var list = document.getelementbyid('thelist'); var count = list.selectedcount; while (count--){ var item = list.selecteditems[0]; list.removeitemat(list.getindexofitem(item)); } } </script> <button label="delete" oncommand="deleteselection();"/> <listbox id="thelist" seltype="
multiple"> <listitem label="cheddar"/> <listitem label="cheshire"/> <listitem label="edam"/> <listitem label="gouda"/> <listitem label="havartie"/> </listbox> inside the while loop we first get the selecteditem at index 0.
XUL controls - Archive of obsolete content
ion goes here.
...els <textbox> a textbox which allows a single line of text to be entered.
... <toolbarbutton type="menu-button" label="open"> <menupopup> <menuitem label="open changed files"/> <menuitem label="open all"/> </menupopup> </toolbarbutton> more information about this type of menu toolbarbutton element.
prefpane - Archive of obsolete content
de(), removeattributens(), removechild(), removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata events paneload this event is fired on the pane element when the pane is fully loaded (e.g.
..., removeeventlistener(), replacechild(), setattribute(), setattributenode(), setattributenodens(), setattributens(), setuserdata events paneload this event is fired on the pane element when the pane is fully loaded (e.g.
...e for preference dialogs to work correctly: <prefwindow> <prefpane id="panegeneral" label="general"> ...
where - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] indicate a condition that must match for a template result to be used.
...red and no content is generated.
...s.
2006-10-27 - Archive of obsolete content
f the nn4.6 table border color quirk discussion on removing the nn 4.6 table boarder color quirk, which currently causes a specific markup to produce a green boarder instead of a gray one.
...4.6 table boarder color quirk, which currently causes a specific markup to produce a green boarder instead of a gray one.
...lls discussion on why current interfaces allow for
multiple presshells and how the relationships work for the following objects: docshell, presshell, prescontext, document, domwindow, widget, docshell and contentviewer.
Table Reflow Internals - Archive of obsolete content
r frame ↙ ↘ nstable frame nstablecaption frame ↙ ↘ ↓ nstablecol groupframe nstablerow groupframe nsblockframe ↓ ↓ nstablecol frame nstablerow frame ↓ nstablecell frame ↓ nsblock frame table reflow outer table reflows table and caption (if present) table reflows row groups in
multiple passes pass 1 - unconstrained width, height and requests max elem width.
...s reflowed, it takes c and its siblings as children and reflows them.
... the reflowee on its overflow list and return an incomplete status.
Describing microformats in JavaScript - Archive of obsolete content
this may be left out if all properties are optional.
...office-box" : { }, "street-address" : { plural: true }, "extended-address" : { }, "locality" : { }, "region" : { }, "postal-code" : { }, "country-name" : { } } }; the properties are quite simple here.
... "country-name" : { } } }; the properties are quite simple here.
Index - Game development
urce code of the demo along with all the other resources on the gamepad api content kit.
...anvas, games, javascript, static, webgl, tilemap, tiles tilemaps are a very popular technique in 2d game development, consisting of building the game world or level map out of small, regular-shaped images called tiles.
....js deprecated, javascript, asm.js asm.js is a specification defining a subset of javascript that is highly optimizable.
QUIC - MDN Web Docs Glossary: Definitions of Web-related terms
quick udp internet connection, or quic, is an experimental
multiplexed transport protocol implemented on udp.
...as a way to experiment with ways to improve tcp and web application delivery.
...nges, test them and implement modifications is an extremely slow process.
WAI-ARIA basics - Learn web development
etc., which are commonly found in uis.
...e" specifies that a form input needs to be filled in to be valid, whereas aria-labelledby="label" allows you to put an id on an element, then reference it as being the label for anything else on the page, including
multiple elements, which is not possible using <label for="input">.
...rm labelling techniques, beyond the classic <label> element.
Styling tables - Learn web development
lor of all the text inside the header and footer to white (and given it a text-shadow) so it is readable.
...e.
...texture, as well as giving those elements a bright purple border.
Floats - Learn web development
previous overview: css layout next originally for floating images inside blocks of text, the float property became one of the most commonly used tools for creating
multiple column layouts on webpages.
...ing an image floating inside a column of text, with the text wrapping around the left or right of it.
... your skills: floats.
Introduction to CSS layout - Learn web development
allow us to take elements contained in a web page and control where they are positioned relative to their default position in normal layout flow, the other elements around them, their parent container, or the main viewport/window.
...e</div> <div class="box6">six</div> </div> once you have a grid, you can explicitly place your items on it, rather than relying on the auto-placement behavior seen above.
... body { max-width: 800px; margin: 0 auto; } .container { column-width: 200px; } summary this article has provided a brief summary of all the layout technologies you should know about.
CSS layout - Learn web development
for the web.
...lexbox and grid it has now returned to its original purpose, as this article explains.
...eturned to its original purpose, as this article explains.
Getting started with CSS - Learn web development
nt above.
...ht be using a screenreader, which reads out the content of the document, or they may need to use much larger text, or be navigating the site using the keyboard only.
... don't make it less accessible.
Advanced form styling - Learn web development
d-color when set on the <option> elements, chrome won't.
... of the autocomplete list that appears for the datalist.
...a custom style (a thin red track, in this case): input[type="range"] { appearance: none; -webkit-appearance: none; background: red; height: 2px; padding: 0; outline: 1px solid transparent; } however, it is very difficult to customize the style of the range control's drag handle — to get full control over range styling you'll need to use a whole bunch of complex css code, including
multiple non-standard, browser-specific pseudo-elements.
Basic native form controls - Learn web development
is also detailed in the sending form data article).
...file picker widget, you use the <input> element with its type attribute set to file.
... types of files that are accepted can be constrained using the accept attribute.
The HTML5 input types - Learn web development
gets.
...to type a valid email address into the field.
...ts show a non-empty search field in firefox 71, safari 13, and chrome 79 on macos, and edge 18 and chrome 79 on windows 10.
HTML text fundamentals - Learn web development
followed by <h2> elements to represent sub-subheadings—that doesn't make sense and will lead to weird results.
...asions, it is advisable to spread the content over
multiple pages if possible.
...text the <h1> element is also a semantic element, which gives the text it wraps around the role (or meaning) of "a top level heading on your page." <h1>this is a top level heading</h1> by default, the browser will give it a large font size to make it look like a heading (although you could style it to look like anything you wanted using css).
HTML table basics - Learn web development
overview: tables next this article gets you started with html tables, covering the very basics such as rows and cells, headings, making cells span
multiple columns and rows, and how to group together all the cells in a column for styling purposes.
...ble, to help them stand out.
...added benefit — along with the scope attribute (which we'll learn about in the next article), they allow you to make tables more accessible by associating each header with all the data in the same row or column.
Functions — reusable blocks of code - Learn web development
previous overview: building blocks next another essential concept in coding is functions, which allow you to store a piece of code that does a single task inside a defined block, and then call that code whenever you need it using a single short command — rather than having to type out the same code
multiple times.
...re a few times throughout the course, and you'll learn more about and see it in use in the next article.
...any parameters.
Framework main features - Learn web development
nt() function, which we can invoke to update the value of count.
...h to defining the styles of a component is slightly different, all of them give you
multiple ways to do so.
...uthorcredit react component might be utilized inside an article component.
Rendering a list of Vue components - Learn web development
previous overview: client-side javascript frameworks next at this point we've got a fully working component; we're now ready to add
multiple todoitem components to our app.
...combination of javascript objects that manage the app's data and an html-based template syntax that maps to the underlying dom structure.
...rlying dom structure.
Strategies for carrying out testing - Learn web development
browser, the site will be able to downgrade to something less exciting that still provides an acceptable user experience — the core information is still accessible, for example, even if it doesn't look quite as nice.
..., but it is annoying.
...e a window on your host computer.
The Firefox codebase: CSS Guidelines
ys add a space before !important.
...!important along with a comment why it is needed.
...age, using :root is the most performant way of doing so.
Eclipse CDT
the tab of the file that you want to edit, then from the menu bar select "window > new editor".
... object directory outside their source directory to explicitly add {objdir}/dist/include to the project's "cdt user setting entries".
...se virtually all mozilla source files include header files (directly or indirectly) that have been copied to or generated in the object directory.
Interface Compatibility
lerplate.
...l @status markings have been removed, and extensions that use binary components will need to recompile for each major version they wish to support.
...emoved, and extensions that use binary components will need to recompile for each major version they wish to support.
Process scripts
process scripts are new in firefox 38.
... process scripts are new in firefox 38.
...ust do this in the content process.
Sqlite.jsm
nction takes an object defining connection options: path (required) the database file to open.
...transaction() { await conn.execute("insert into mytable values (?, ?)", ["foo", "bar"]); let data = await conn.execute("select * from mytable"); if (data.length < 5) { throw new error("we don't have the expected 5 rows to perform the next operation!"); } // ...
...one row is returned.
Using JavaScript code modules
resource url.
...t is seen here on github - gists - _template-bootstrapjsm.xpi extending resource: urls prior to gecko 2.0, the most common way to load code modules was using resource: urls.
...syntax of a resource url is as follows: resource://<alias>/<relative-path>/<file.js|jsm> the <alias> is an alias to a location, usually a physical location relative to the application or xul runtime.
Localization content best practices
developer.mozilla.org/en/docs/localization_and_plurals # #1 is the number of cookies to delete # example: delete-cookies = delete #1 cookie;delete #1 cookies important: always include the localization note with this format if you use a plural form in firefox.
...e # example: delete-cookies = delete #1 cookie;delete #1 cookies important: always include the localization note with this format if you use a plural form in firefox.
...ce: never use plural form as a replacement for single/
multiple conditional.
Creating localizable web applications
word order and sentence structure.
...['display_username']); note the single quotes around '%1$s by %2$s'.
...url('/'));?> don't break long text content into
multiple strings don't break long text messages into smaller pieces if the text is a coherent whole.
Gecko Profiler FAQ
rom 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.
...evious profiling we know that malloc overhead contributes a measurable percentage of overhead to the overall time and then study the change to that workload after replacing the allocator.
...dd-on is helpful.
NSS API Guidelines
ept of an error stack.
... of the service functions it calls, and whether they are thread safe.
...should have a consistent signature: secstatus pk11_digestop(pk11context *context, unsigned char *inbuf, secbufferleninlen) functions like these which have different properties, for example, additional parameters, callbacks, etc., should insert their additional parameters between the context (first parameter) and the input buffer.
PKCS11 Implement
til it receives the certificate.
...aphic modules frame, click add.
...n the create a new security module dialog box, add the security module name for your module and the full pathname for the security module file.
The JavaScript Runtime
efineclass().
...od defines a set of javascript objects using a java class.
..., try other methods of scriptableobject and functionobject, such as defineproperty and definefunctionproperties.
Shell global objects
d their behavior are experimental: don't depend upon them unless you're willing to update your code if these experimental apis change underneath you.
... promise created by makefakepromise().
...rameverifierpre) verify pre write barriers between paints 6: (stackrooting) verify stack rooting 7: (generationalgc) collect the nursery every n nursery allocations 8: (incrementalrootsthenfinish) incremental gc in two slices: 1) mark roots 2) finish collection 9: (incrementalmarkallthenfinish) incremental gc in two slices: 1) mark all 2) new marking and finish 10: (incremental
multipleslices) incremental gc in
multiple slices 11: (incrementalmarkingvalidator) verify incremental marking 12: (elementsbarrier) always use the individual element post-write barrier, regardless of elements size 13: (checkhashtablesonminorgc) check internal hashtables on minor gc 14: (compact) perform a shrinking collection every n allocations 15: (checkheapaftergc) walk the heap ...
Mozilla internal string guide
eaders and for size-optimized storage in text node and spidermonkey strings.
...sually requires converting it to an 8-bit string, because that's what printf expects.
...f the future string length caused by a sequence of appends (excluding appends that convert between utf-16 and utf-8 in either direction) in order to avoid
multiple allocations during the sequence of appends.
XPCOM guide
uild an xpcom component in javascriptif you are looking for add-on sdk solution for xpcom javascript components then check out platform/xpcom module first.inheriting from implementation classesgiven that idl interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into
multiple inheritance.
...are looking for add-on sdk solution for xpcom javascript components then check out platform/xpcom module first.inheriting from implementation classesgiven that idl interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into
multiple inheritance.
...s to the progress of the application's startup process, so they can start new services at appropriate times, for example.xpcom array guidemozilla has many array classes because each array is optimized for a particular usage pattern.
IAccessibleTable
in the table if such a description exists.
...ent(), but in the case where the table cells are not direct children of the table this is the cell index specified by the "table-cell-index" object attribute obtained from parsing the attributes string returned by calling iaccessible2.attributes() on the cell object.
...ed row in the table if such a description exists.
IAccessibleTableCell
ut] long nrowsspanned ); [propget] hresult rowheadercells([out, size_is(, nrowheadercells,)] iunknown cellaccessibles, [out] long nrowheadercells ); [propget] hresult rowindex([out] long rowindex ); [propget] hresult table([out] iunknown table ); methods columnextent() returns the number of columns occupied by this cell accessible.
...f the returned array.
... accessibles returned; the size of the returned array.
nsIDOMWindowUtils
rsetisforced boolean whether the charset of the window's current document has been forced by the user.
...clauselength, in unsigned long athirdclauseattr, in long acaretstart, in long acaretlength ); parameters acompositionstring afirstclauselength afirstclauseattr asecondclauselength asecondclauseattr athirdclauselength athirdclauseattr acaretstart acaretlength sendtouchevent() synthesizes a touch event and sends it to the window.
...seattr, in long acaretstart, in long acaretlength ); parameters acompositionstring afirstclauselength afirstclauseattr asecondclauselength asecondclauseattr athirdclauselength athirdclauseattr acaretstart acaretlength sendtouchevent() synthesizes a touch event and sends it to the window.
nsIIOService
that will get access to the result of this request.
...that will get access to the result of this request.
...that will get access to the result of this request.
nsIScriptableIO
the file is automatically deleted when the stream is closed.
... closeoneof: the file is automatically closed when the end of the file is reached.
...nput mode.
nsITextInputProcessor
ng); parameters astring new pending composition string.
...pslock", code: "" }); tip.keydown(capslockkey); // this activates capslock state.
... tip.keyup(capslockkey); // this doesn't inactivate capslock state.
Using the clipboard
ard object which refers to the system clipboard.
...ring into the transferable.
...aced into the transferable.
Address Book examples
th particular properties within that collection using getcardfromproperty.
...unction returns the first match that it finds in the collection, or null.
...tiple contacts?
WebIDL bindings
need to make sure your header includes all the headers needed for your func annotations.
...od and indicates that another property with the specified name will also appear on the interface prototype object and will have the same function object value as the property for the method.
...you actually had two separate attribute declarations on your interface.
Working with windows in chrome code
this article describes working with
multiple windows in mozilla chrome code (xul applications and extensions).
...) provides information about existing windows.
...e arguments are passed by value, that is to say that any changes made to the values in the new window will not affect the calling code.
ANGLE_instanced_arrays.drawElementsInstancedANGLE() - Web APIs
the angle_instanced_arrays.drawelementsinstancedangle() method of the webgl api renders primitives from array data like the gl.drawelements() method.
...hree vertices.
...ension: gl.unsigned_int offset a glintptr specifying an offset in the element array buffer.
AudioNode.connect() - Web APIs
s destination the audionode or audioparam to which to connect.
...node, which in turn connects back to the first audionode, creating a cycle.
...ct(gain); // connect the gain to the destination so we hear sound gain.connect(audioctx.destination); // start the oscillator that will produce audio oscillator.start(); // start the oscillator that will modify the gain value lfo.start(); audioparam notes it is possible to connect an audionode output to more than one audioparam, and more than one audionode output to a single audioparam, with
multiple calls to connect().
Cache - Web APIs
the cache interface provides a storage mechanism for request / response object pairs that are cached, for example as part of the serviceworker life cycle.
...ource.
...w logging statements for the various actions the service-worker.js script is performing.
Optimizing canvas - Web APIs
ctx.drawimage(myimage, 0.3, 0.5); this forces the browser to do extra calculations to create the anti-aliasing effect.
...scale images in drawimage cache various sizes of your images on an offscreen canvas when loading as opposed to constantly scaling them in drawimage().
...nsparency if your application uses canvas and doesn’t need a transparent backdrop, set the alpha option to false when creating a drawing context with htmlcanvaselement.getcontext().
ConstantSourceNode - Web APIs
node interface—part of the web audio api—represents an audio source (based upon audioscheduledsourcenode) whose output is single unchanging value.
...enever the constantsourcenode data has stopped playing.
...ce by calling its start() method.
Using the Gamepad API - Web APIs
f a page has previously received data for that gamepad (e.g.
...so demonstrates how the gamepad property can be held after the event has completed — a technique we will use for device state querying later.
...igit hexadecimal strings containing the usb vendor and product id of the controller, and the name of the controller as provided by the driver.
Drag Operations - Web APIs
data using the type text/plain.
...ple textual representation.
...event's screenx and screeny properties will be set to the screen coordinates where the drop occurred.
HTML Drag and Drop API - Web APIs
nd datatransfer are broadly supported on desktop browsers.
...ansferitemlist interfaces have limited browser support.
...ping files (firefox only): http://jsfiddle.net/9c2ef/ dragging and dropping files (all browsers): https://jsbin.com/hiqasek/ a parking project using the drag and drop api: https://park.glitch.me/ (you can edit here) specifications specification status comment html living standard living standard see also drag operations dragging and dropping
multiple items recommended drag types html5 living standard: drag and drop drag and drop interoperability data from caniuse ...
IDBCursor - Web APIs
note: not to be confused with idbcursorwithvalue which is just an idbcursor interface with an additional value property.
...ants are no longer available — they were removed in gecko 25.
...exist with the same key, only the first one iterated is retrieved.
install - Web APIs
special javascript object constructor is used to create an object that can be passed to the install() method.
...he xpi, respectively.
...ut you can use this approach to create
multiple installations to pass to a single install.
LockManager.request() - Web APIs
property of the options parameter may be either "exclusive" or "shared".
...ock with the same name can be held.
...ked, no other running code on this orign can hold `my_resource` until the callback returns.
MediaSession.setActionHandler() - Web APIs
o input parameters, and should not return a value.
...etactionhandler('seekforward', evt => { // user clicked "seek forward" media notification icon.
....currenttime = math.min(audio.currenttime + skiptime, audio.duration); }); navigator.mediasession.setactionhandler('seekbackward', evt => { // user clicked "seek backward" media notification icon.
Media Session action types - Web APIs
the amount of time to seek backward.
...etactionhandler('seekforward', evt => { // user clicked "seek forward" media notification icon.
....currenttime = math.min(audio.currenttime + skiptime, audio.duration); }); navigator.mediasession.setactionhandler('seekbackward', evt => { // user clicked "seek backward" media notification icon.
MediaSessionActionDetails - Web APIs
the amount of time to seek backward.
...etactionhandler('seekforward', evt => { // user clicked "seek forward" media notification icon.
....currenttime = math.min(audio.currenttime + skiptime, audio.duration); }); navigator.mediasession.setactionhandler('seekbackward', evt => { // user clicked "seek backward" media notification icon.
Multi-touch interaction - Web APIs
nting input devices such as pen/stylus and touch screens as well as mouse.
...and touch screens as well as mouse.
...(ev) { // the pointerdown event signals the start of a touch interaction.
RTCInboundRtpStreamStats - Web APIs
streams.
...lid only for video streams.
...(sli) frame to the sender to tell it that one or more consecutive (in terms of scan order) video macroblocks have been lost or corrupted.
Selection.rangeCount - Web APIs
property returns the number of ranges in the selection.
...he user has clicked a freshly loaded page, the rangecount is 0.
...e the following example will show the rangecount every second.
WebGL2RenderingContext.drawElementsInstanced() - Web APIs
the webgl2renderingcontext.drawelementsinstanced() method of the webgl 2 api renders primitives from array data like the gl.drawelements() method.
...hree vertices.
...sion: gl.unsigned_int offset a glintptr specifying an offset in the element array buffer.
WebGL2RenderingContext - Web APIs
webgl2renderingcontext.vertexattribi4[u]i[v]() methods specifying integer values for generic vertex attributes.
...of vertex attributes in a vertex attributes array.
...x attributes advance when rendering
multiple instances of primitives with gl.drawarraysinstanced() and gl.drawelementsinstanced().
ARIA: Comment role - Accessibility
ta-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 text being commented, we need to wrap the commented text with an element containing the aria-details attribute, the value of which should be the id of the comment.
...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 text being commented, we need to wrap the commented text with an element containing the aria-details attribute, the value of which should be the id of the comment.
...is 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 text being commented, we need to wrap the commented text with an element containing the aria-details attribute, the value of which should be the id of the comment.
Perceivable - Accessibility
or the benefit of hearing-impaired viewers who cannot hear the content.
...structions for operating controls or understanding content do not rely on a single sense.
...ia how to conform to the criteria practical resource 1.4.1 use of color (a) color should not be solely relied upon to convey information.
CSS Multi-column Layout - CSS: Cascading Style Sheets
w content should flow from column to column, gap sizes between columns, and column dividing lines (known as column rules) along with their appearance.
...rranged into 3 columns of equal size.
...control how content breaks between columns.
animation-delay - CSS: Cascading Style Sheets
xample is stored in a github repository.
...mmediately, but partway through its cycle.
...for the animation delay, but the starting value is implicit, the starting value is taken from the moment the animation is applied to the element.
animation-direction - CSS: Cascading Style Sheets
ibute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
...function becomes ease-out.
...ion reverses direction each cycle, with the first iteration being played backwards.
animation-fill-mode - CSS: Cascading Style Sheets
like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
...nt keyframe depends 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 extending the animation properties in both directions.
... both the animation will follow the rules for both forwards and backwards, thus extending the animation properties in both directions.
animation-play-state - CSS: Cascading Style Sheets
bute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
... /* single animation */ animation-play-state: running; animation-play-state: paused; /*
multiple animations */ animation-play-state: paused, running, running; /* global values */ animation-play-state: inherit; animation-play-state: initial; animation-play-state: unset; values running the animation is currently playing.
...y-state: initial; animation-play-state: unset; values running the animation is currently playing.
animation-timing-function - CSS: Cascading Style Sheets
unction: 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-timing-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.
... is no jump on either end.
...tion.
background-attachment - CSS: Cascading Style Sheets
example html <p> there were doors all round the hall, but they were all locked; and when alice had been all the way down one side and up the other, trying every door, she walked sadly down the middle, wondering how she was ever to get out again.
... hall, but they were all locked; and when alice had been all the way down one side and up the other, trying every door, she walked sadly down the middle, wondering how she was ever to get out again.
...os.org/files/12059/startransparent.gif"); background-attachment: fixed, scroll; background-repeat: no-repeat, repeat-y; } result specifications specification status comment css backgrounds and borders module level 3the definition of 'background-attachment' in that specification.
background-repeat - CSS: Cascading Style Sheets
nd | no-repeat ]{1,2} examples setting background-repeat html <ol> <li>no-repeat <div class="one"></div> </li> <li>repeat <div class="two"></div> </li> <li>repeat-x <div class="three"></div> </li> <li>repeat-y <div class="four"></div> </li> <li>space <div class="five"></div> </li> <li>round <div class="six"></div> </li> <li>repeat-x, repeat-y (
multiple images) <div class="seven"></div> </li> </ol> css /* shared for all divs in example */ ol, li { margin: 0; padding: 0; } li { margin-bottom: 12px; } div { background-image: url(https://mdn.mozillademos.org/files/12005/starsolid.gif); width: 160px; height: 70px; } /* background repeats */ .one { background-repeat: no-repeat; } .two { background-repeat: repeat; } .thr...
...px; } div { background-image: url(https://mdn.mozillademos.org/files/12005/starsolid.gif); width: 160px; height: 70px; } /* background repeats */ .one { background-repeat: no-repeat; } .two { background-repeat: repeat; } .three { background-repeat: repeat-x; } .four { background-repeat: repeat-y; } .five { background-repeat: space; } .six { background-repeat: round; } /*
multiple images */ .seven { background-image: url(https://mdn.mozillademos.org/files/12005/starsolid.gif), url(https://developer.cdn.mozilla.net/media/redesign/img/favicon32.png); background-repeat: repeat-x, repeat-y; height: 144px; } result in this example, each list item is matched with a different value of background-repeat.
...kground-repeat: repeat-x, repeat-y; height: 144px; } result in this example, each list item is matched with a different value of background-repeat.
background-size - CSS: Cascading Style Sheets
: cover; background-size: contain; /* one-value syntax */ /* the width of the image (height becomes 'auto') */ background-size: 50%; background-size: 3.2em; background-size: 12px; background-size: auto; /* two-value syntax */ /* first value: width of the image, second value: height */ background-size: 50% auto; background-size: 3em 25%; background-size: auto 6px; background-size: auto auto; /*
multiple backgrounds */ background-size: auto, auto; /* not to be confused with `auto auto` */ background-size: 50%, 25%, 25%; background-size: 6px, auto, contain; /* global values */ background-size: inherit; background-size: initial; background-size: unset; the background-size property is specified in one of the following ways: using the keyword values contain or cover.
...round-size: unset; the background-size property is specified in one of the following ways: using the keyword values contain or cover.
...ed using the image's corresponding intrinsic dimension, if there is one.
HTML5 - Developer guides
nt side.
...of significant amounts of structured data in the browser and for high performance searches on this data using indexes.
...css has been extended to be able to style elements in a much more complex way.
Mobile Web Development - Developer guides
's user agent string to try to distinguish between desktops, tablets, and phones, to serve different content to each type of device.
...h between desktops, tablets, and phones, to serve different content to each type of device.
...to serve different content to each type of device.
<tbody>: The Table Body element - HTML: Hypertext Markup Language
ll cells are left-aligned using text-align thead > tr > th { background-color: #cce; font-size: 18px; border-bottom: 2px solid #999; } finally, header cells contained within the <thead> block are given additional styling.
...text-align thead > tr > th { background-color: #cce; font-size: 18px; border-bottom: 2px solid #999; } finally, header cells contained within the <thead> block are given additional styling.
...-color: #cce; font-size: 18px; border-bottom: 2px solid #999; } finally, header cells contained within the <thead> block are given additional styling.
<video>: The Video Embed element - HTML: Hypertext Markup Language
data is unexpectedly not forthcoming.
...h="620"> sorry, your browser doesn't support embedded videos, but don't worry, you can <a href="https://archive.org/details/bigbuckbunny_124">download it</a> and watch it with your favorite video player!
...l the video starts playing, the image provided in the poster attribute is displayed in its place.
Content-Disposition - HTTP
dialog, prefilled with the value of the filename parameters if present).
...ing syntax after the '=' sign.
...are separated by a semi-colon (';').
Tk - HTTP
the tk response header indicates the tracking status that applied to the corresponding request.
...namic) tk: g (gateway or
multiple parties) tk: n (not tracking) tk: t (tracking) tk: c (tracking with consent) tk: p (potential consent) tk: d (disregarding dnt) tk: u (updated) directives !
...cking) tk: c (tracking with consent) tk: p (potential consent) tk: d (disregarding dnt) tk: u (updated) directives !
Expressions and operators - JavaScript
rs member operators provide access to a property or method of an object (object.property and object["property"]).
...operty or method of an object (object.property and object["property"]).
... ^= bitwise xor assignment.
if...else - JavaScript
to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
... truthy.
... if clause.
import - JavaScript
, you would call it like this: mymodule.doalltheamazingthings(); import a single export from a module given an object or value named myexport which has been exported from the module my-module either implicitly (because the entire module is exported) or explicitly (using the export statement), this inserts myexport into the current scope.
...odule.js'; import
multiple exports from module this inserts both foo and bar into the current scope.
...m module this inserts both foo and bar into the current scope.
switch - JavaScript
vided, this clause is executed if the value of expression doesn't match any of the case clauses.
...f it can't find a match: var foo = 5; switch (foo) { case 2: console.log(2); break; // it encounters this break so will not continue into 'default:' default: console.log('default') // fall-through case 1: console.log('1'); } it also works when you put default before all other cases.
...single operation sequential case statement, where four different values perform exactly the same.
Performance fundamentals - Web Performance
that only processes 1,000 database transactions per second, over a choppy, unresponsive app that processes 100,000,000 per second.
...essential performance metrics.
...receive the system theme, and the system provides "built-in" support for some use cases developers may not think of initially, like different-resolution displays or right-to-left languages.
The building blocks of responsive design - Progressive web apps (PWAs)
interface depending on the browser or device accessing the site to provide an optimized experience.
...adding clearing to guard against any float funny business).
...rather complicated, but really it's not — we are providing a number of media query options, as at this time different browsers support different resolution media query types and even units.
<xsl:number> - XSLT: Extensible Stylesheet Language Transformations
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes the <xsl:number> element counts things sequentially.
...g-code letter-value="alphabetic" | "traditional" grouping-separator=character grouping-size=number /> required attributes none.
...umbers sibling nodes sequentially, as in the items in a list.
PI Parameters - XSLT: Extensible Stylesheet Language Transformations
attribute must not fail due to the presence of an unrecognized attribute as long as that attribute follows the syntax in xml-stylesheet.
...e pis must appear in the prolog of the document, i.e.
...ce the xslt-param-namespace uses two attributes: prefix the prefix that is mapped.
WebAssembly
el assembly-like language with a compact binary format that runs with near-native performance and provides languages such as c/c++, c# and rust with a compilation target so that they can run on the web.
...embly module written in the text format into a .wasm binary.
...bal object represents a global variable instance, accessible from both javascript and importable/exportable across one or more webassembly.module instances.
Content Scripts - Archive of obsolete content
rg", contentscriptfile: "./content-script.js" }); unless your content script is extremely simple and consists only of a static string, don't use contentscript: if you do, you may have problems getting your add-on approved on amo.
...sole.log(firstpara); }); pageworker.port.emit("get-first-para"); // content-script.js self.port.on("get-first-para", getfirstpara); function getfirstpara() { var paras = document.getelementsbytagname("p"); if (paras.length > 0) { var firstpara = paras[0].textcontent; self.port.emit("first-para", firstpara); } } from page-mod a single page-mod object might attach its scripts to
multiple pages, each with its own context in which the content scripts are executing, so it needs a separate channel (worker) for each page.
core/heritage - Archive of obsolete content
lize(color) { this.color = color; } }); var pink = color('ffc0cb'); // rgb pink.red() // => 255 pink.green() // => 192 pink.blue() // => 203 // cmyk pink.magenta() // => 0.2471 pink.yellow() // => 0.2039 pink.cyan() // => 0.0000 pink instanceof color // => true be aware though that it's not
multiple inheritance and ancestors prototypes of the classes passed under implements option are ignored.
...property descriptor map.
core/namespace - Archive of obsolete content
provides an api for creating namespaces for objects, which effectively may be used for creating fields that are not part of objects public api.
...ith
multiple objects: let { ns } = require('sdk/core/namespace'); let dom = ns(); function view(element) { let view = object.create(view.prototype); dom(view).element = element; // ....
core/promise - Archive of obsolete content
agate to bar (bar will be fulfilled with that value): var bar = foo().then(null, function failure(error) { // handle error...
...nk of with promises, but once you start using promises extensively you may discover some missing pieces and this section of documentation may help you to discover them.
ui/button/action - Archive of obsolete content
ton } = require("sdk/ui/button/toggle"); var button = togglebutton({ id: "my-button1", label: "my button1", icon: "./icon-16.png", onchange: changed, badge: 0, badgecolor: "#00aaaa" }); function changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying
multiple icons you can specify just one icon, or
multiple icons in different sizes.
...: "my button1", icon: "./icon-16.png", onchange: changed, badge: 0, badgecolor: "#00aaaa" }); function changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying
multiple icons you can specify just one icon, or
multiple icons in different sizes.
ui/button/toggle - Archive of obsolete content
ton } = require("sdk/ui/button/toggle"); var button = togglebutton({ id: "my-button1", label: "my button1", icon: "./icon-16.png", onchange: changed, badge: 0, badgecolor: "#00aaaa" }); function changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying
multiple icons you can specify just one icon, or
multiple icons in different sizes.
...: "my button1", icon: "./icon-16.png", onchange: changed, badge: 0, badgecolor: "#00aaaa" }); function changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying
multiple icons you can specify just one icon, or
multiple icons in different sizes.
jpm - Archive of obsolete content
binary may be specified as a full path or as a path relative to the current directory.
...pecified as a full path or as a path relative to the current directory.
StringView - Archive of obsolete content
to raw data using websockets, and so forth, it has become clear that there are times when it would be helpful for javascript code to be able to quickly and easily manipulate raw binary data.
...stuff.
Creating custom Firefox extensions with the Mozilla build system - Archive of obsolete content
@ include $(depth)/config/autoconf.mk module = myextension xpidl_module = myextension xpi_name = myextension exports = \ myheader.h \ $(null) xpidlsrcs = \ myifirstcomponent.idl \ myisecondcomponent.idl \ $(null) include $(topsrcdir)/config/rules.mk xpidl_module is the name of the generated xpt file that contains type information about your idl interfaces.
... multifarious/ subproject in the above example, it would be placed as a subdirectory underneath that subproject (at the same level as public/ and src/).
Extension Versioning, Update and Compatibility - Archive of obsolete content
avior depends on the version of the client application, of course.
...om this example for brevity in order to show the basic structure): <?xml version="1.0" encoding="utf-8"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <!-- this description resource includes all the update and compatibility information for a single add-on with the id foobar@developer.mozilla.org.
Appendix D: Loading Scripts - Archive of obsolete content
session no matter how many times they are imported, this is one of the most performant methods of script loading.
...lasses, but are otherwise limited to simple computation based on data passed via messages and xmlhttprequests.
Appendix E: DOM Building and Insertion (HTML & XUL) - Archive of obsolete content
' appear anywhere in your add-on.
...the following two code fragments are roughly equivalent: function clickify(elem, address) { elem.addeventlistener("click", function (event) { openwindow(address) }, false); } function clickify(elem, address) { elem.onclick = function (event) { openwindow(address) }; }
multiple attributes sometimes there is a need for event listeners to appear as attributes in the dom.
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
as a general approach, the main steps to the iframe-based implementation can be represented as follows: create a hidden iframe in the page; when a new content is required, ask for the content to the iframe; the iframe will load the content and callback a function in the main page; update the main page.
...steps to the iframe-based implementation can be represented as follows: create a hidden iframe in the page; when a new content is required, ask for the content to the iframe; the iframe will load the content and callback a function in the main page; update the main page.
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
g ldap server.
...ldap server to get ldap attributes (mail & cn) getldapattributes() 5) set user preferences */ // 1) env variables if(getenv("user") != "") { // *nix settings var env_user = getenv("user"); var env_home = getenv("home"); } else { // windows settings var env_user = getenv("username"); var env_home = getenv("homepath"); } var env_mozdebug= getenv("mozilla_debug"); // 2) setup
multiple ldap servers for fail-over var ldap_values; var ldap_servers = new array('ldap2.int-evry.fr', 'ldap1.int-evry.fr', 'openldap.int-evry.fr' ); // shuffle function to randomize the server array /** * setup the shuffle method for an array, from "mickweb script * factory" at: * http://www.mickweb.com/javascript/arrays/puresh...
JavaScript Client API - Archive of obsolete content
nce to sync's internal apis is the source code.
..."); cu.import("resource://services-sync/util.js"); the record object the record object is a wrapper around a single instance of whatever data it is that you are syncing -- a single bookmark, history url, password or form data entry.
Monitoring downloads - Archive of obsolete content
logtransfercompleted: function(adownload) { var endtime = new date(); // current time is the end time // issue the replace sqlite command to update the record.
...execute(); statement.reset(); dbconn.close(); }, this simply opens the database and builds and executes a update sqlite command that finds the download item whose source uri and start time match the download that has completed and updates its information.
Mozilla Application Framework in Detail - Archive of obsolete content
fficient development, including full support of web standards, a cross-platform/cross-device user interface language, an extensible architecture and embedding technologies.
..., "skin/modern/xmlterm/"); registerchrome(locale | delayed_chrome, getfolder("chrome","xmlterm.jar"), "locale/xmlterm/"); if (getlasterror() == success) performinstall(); else { alert("error detected: "+getlasterror()); cancelinstall(); } other features a resource description framework (rdf) parser with support for creating rdf graphs programmatically or by parsing files, compositing
multiple sources into a single rdf graph, querying and manipulating graphs, and populating xul widgets (trees, menus, etc.) with graph data; an xslt/xpath processor; scalable vector graphics (svg) rendering with support for a usable subset of the standard including all basic shapes, beziers, stroking and filling with opacity, and much of the dom; mathml rendering; an ecma-262 edition 3-compliant javas...
Mozilla Application Framework - Archive of obsolete content
rendering/editing engine with world-leading support for standards that you can drop into your application with a single line of xul.
...ase that shows you every file in the repository as well as a line-by-line breakdown of who changed which line when in each file bonsai a web interface to the checkin log that you can query for checkins between certain dates, of certain files, or by certain developers.
String Quick Reference - Archive of obsolete content
the caller to choose the storage mechanism, allowing for possible sharing or more efficient handling of string fragments.
...widestring; widestring.assignwithconversion("some string"); callwidefunction(widestring); // use widestring again, but need a const prunichar* callwidewithflatstring(widestring.get()) nsautostring widestring2; widestring2.assignwithconversion("another string"); callwidefunction(widestring2); new way: use ns_literal_string or ns_named_literal_string // pre-declare the variable if you'll use it
multiple times ns_named_literal_string(widestring, "some string"); callwidefunction(widestring); // use widestring again, but need a const prunichar* callwidewithflatstring(widestring.get()); // inline the string with ns_literal_string callwidefunction(ns_literal_string("another string")); converting literal strings to string objects what: converting from const prunichar*/const char* to the appropr...
When To Use ifdefs - Archive of obsolete content
the mozilla codebase is used for many different projects and products, including firefox, thunderbird, xulrunner, and many others.
... in the mozilla tree: platform/widget ifdefs, feature ifdefs, and application-specific ifdefs: platform/widget ifdefs the mozilla code will frequently need to differentiate between code for different platforms or widget sets.
Template Logging - Archive of obsolete content
lt is logged in a form much like the following: in template with id root using ref http://www.some-fictitious-zoo.com/birds new active result for query 2 matching rule 1: http://www.some-fictitious-zoo.com/birds/emperorpenguin in the example above, a new result has been added.
...for example, were expecting rule 2 to match, examine the rules and ensure that the logic is correct.
Content Panels - Archive of obsolete content
intains a page history for use with back and forward buttons.
...owser src="http://www.mozilla.org" type="content" flex="1" /> important: you must set the type attribute correctly if you are going to be displaying remote web sites inside the browser element.
Grids - Archive of obsolete content
st column of the grid and the second element is each row is placed in the second column.
...rst row (the cherry button) will be flexible by a factor of 5 horizontally and flexible by a factor of 10 vertically.
Manifest Files - Archive of obsolete content
need to do to install a new package is add a new manifest file either into the application chrome directory or the user specific chrome directory.
... is 'tests', which means that the first field in the chrome url is 'tests' as in chrome://tests/content/sample.xul.
tabbrowser - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] this element is used for holding a set of read-only views of web documents.
... go forward to the next group of tabs.
textbox - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] an input field where the user can enter text.
...alue that the scale or number box may be set to.
2006-10-20 - Archive of obsolete content
17 interoperability testing on tuesday, for calendar applications test on how sunbird works with published calendars that were generated.
...ons test on how sunbird works with published calendars that were generated.
Security Controls - Archive of obsolete content
to circumvent security controls; for example, if passwords must be long and complex, users may write them down.
...ly secure solution while offering the functionality and usability that users require.
XForms Select Element - Archive of obsolete content
e select control is bound to.
...ons the xforms select element can be represented by the following widgets for the specified appearance attribute values: list - default representation (xhtml/xul) check group- used when appearance = 'full' (xhtml/xul) list displaying a listbox is the default representation (xhtml/xul).
Archive of obsolete content
vin, sublime text editor or any other.
...ing instructions are for obtaining and building the tamarin tracing source code.
Efficient animation for web games - Game development
rt of the animation, and so that all the animations we start before the frame is processed are synchronised.
... of the callback like so: animator.requestanimationframe = function(callback) { requestanimationframe(function(t) { callback(t); redraw(); }); }; the game’s redraw function does all drawing, and the animation callbacks just update state.
Extra lives - Game development
roperly with the screen, and the latter is centered, both using anchor.set().
...o change the font size or color we will have to do it in
multiple places.
SIMD - MDN Web Docs Glossary: Definitions of Web-related terms
simd (pronounced "sim-dee") is short for single instruction/
multiple data which is one classification of computer architectures.
... simd (pronounced "sim-dee") is short for single instruction/
multiple data which is one classification of computer architectures.
HTML: A good basis for accessibility - Learn web development
s ...
...bs from a link only when necessary | w3c techniques for wcag 2.0 g201: giving users advanced warning when opening a new window | w3c techniques for wcag 2.0 skip links a skip link, also known as skipnav, is an a element placed as close as possible to the opening <body> element that links to the beginning of the page's main content.
HTML: A good basis for accessibility - Learn web development
s ...
...bs from a link only when necessary | w3c techniques for wcag 2.0 g201: giving users advanced warning when opening a new window | w3c techniques for wcag 2.0 skip links a skip link, also known as skipnav, is an a element placed as close as possible to the opening <body> element that links to the beginning of the page's main content.
Grids - Learn web development
px; background-color: rgb(207,232,220); border: 2px solid rgb(79,185,227); } <div class="container"> <div>one</div> <div>two</div> <div>three</div> <div>four</div> <div>five</div> <div>six</div> <div>seven</div> </div> note: the *gap properties used to be prefixed by grid-, but this has been changed in the spec, as the intention is to make them usable in
multiple layout methods.
...he main features of css grid layout.
Supporting older browsers - Learn web development
et but then becomes a flex or grid item, the inline-block behaviour is ignored.
...essive enhancement using css grid: supporting browsers without grid a tutorial which uses the ie10 and 11 version of grid should i try to use the ie10 implementation of grid layout?
Advanced text formatting - Learn web development
ent.</dd> <dt>aside</dt> <dd>in drama, where a character shares a comment only with the audience for humorous or dramatic effect.
...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 depends on whether you are marking up a block or inline quotation.
Looping code - Learn web development
previous overview: building blocks next programming languages are very useful for rapidly completing repetitive tasks, from
multiple basic calculations to just about any other situation where you've got a lot of similar items of work to complete.
...teelement('p'); — creates a new paragraph.
What is JavaScript? - Learn web development
in other parts of the learning area.
...} const buttons = document.queryselectorall('button'); for(let i = 0; i < buttons.length ; i++) { buttons[i].addeventlistener('click', createparagraph); } save and refresh your browser, and you should see the same thing!
Server-side web frameworks - Learn web development
profile sites, including: basecamp, github, shopify, airbnb, twitch, soundcloud, hulu, zendesk, square, highrise.
... the only framework based on java it is easy to use to create stand-alone, production-grade spring-based applications that you can "just run".
Creating our first Vue component - Learn web development
mponent's done prop to the checked attribute on the <input> element, so that it can serve as a record of whether the checkbox is checked or not.
...at this point we have a nicely-working todoitem component that can be passed a label to display, will store its checked state, and will be rendered with a unique id each time it is called.
Accessibility API cross-reference
ame, directory_pane, frame, layered_pane, option_pane, root_pane, scroll_pane, viewport a window in an mdi applicaton internal_frame internal_frame, n/a invisible layer z-indexed to the front, for temporary content.
... n/a iconified iconified can be expressed with aria-expanded marqueed n/a n/a 3rd state in a tri-state checkbox mixed n/a n/a aria-checked=mixed n/a must do something with control before leaving it n/a modal modal aria-modal=true edit control that can take
multiple lines n/a multi_line multi_line aria-multiline=true can select more than one of the children multiselectable multiselectable multi_selectable aria-multiselectable=true currently off-screen offscreengrouping n/a n/a n/a indicates that every pixel is painted within the object's rectangular...
Continuous Integration
when you push a commit to mozilla-central or a related repository, it initiates a large chain of builds and tests across
multiple types of infrastructure.
...g lower-case letters, e.g., t(c d g1 o s tp).
Gecko Logging
k is provided for use in core gecko code.
... information on logging can be found on the nspr logging page.
mach
test: $ ./mach mochitest browser/base/content/test/general/browser_pinnedtabs.js you run mach from the source directory, so you should be able to use your shell's tab completion to tab-complete paths to tests.
... does mach have its own configuration file?
Developer guide
ozilla developers a directory of articles which are particularly helpful for new mozilla developers.
...pers.
IME handling guide
"turned on".
... converted clause by ime selection_ime_convertedtext eimeconvertedclause econvertedclause selected clause by the user or ime and also converted by ime selection_ime_selectedconvertedtext eimeselectedclause eselectedclause note that typically, "selected clause of raw text typed by the user" isn't used because when composition string is already separated to
multiple clauses, that means that the composition string has already been converted by ime at least once.
PBackground
pbackground is a mechanism available since gecko 30 (see bug 956218) that builds on top of ipdl to provide a solution to common problems that arise when handling
multiple threads in the chrome process, for example communication between workers and
multiple child processes and other parent-process worker threads.
...round thread is designed to be responsive (nobody is allowed to do long running computation or file i/o on it) to guarantee better latency than going through the main threads (which can run arbitrary js, gc, etc.) can provide.
IPDL Tutorial
al void recvbar() = 0; virtual void recvbaz() = 0; public: void sendfoo() { /* boilerplate */ } void sendbaz() { /* boilerplate */ } }; // pdirectionchild.h class pdirectionchild { protected: virtual void recvfoo() = 0; virtual void recvbaz() = 0; public: void sendbar() { /* boilerplate */ } void sendbaz() { /* boilerplate */ } }; you can use the child, parent, and both labels
multiple times in a protocol specification.
...ocol{parent,child}::messagenamepromise, which is a mozpromise.
Promise
ction reason.
...ill callback throws an exception, the onreject callback is not invoked and the exception won't be caught, nor shown in the console (you will see a promise chain failed error).
Power profiling overview
the intel power governor documentation) shows how machines using recent intel processors are constructed.
...mple, the gecko profiler takes samples at 1000hz using a timer.
Nonblocking IO In NSPR
introduction previously, all i/o in the netscape portable runtime (nspr) was blocking (or synchronous).
...iple threads as a programming model.
Introduction to NSPR
rrupting threads for reference information on the nspr api used for thread scheduling, see threads.
...ition); ...
Certificate functions
questattributes mxr 3.10 and later cert_startcrlentryextensions mxr 3.10 and later cert_startcrlextensions mxr 3.10 and later cert_uncachecrl mxr 3.10 and later cert_verifycertname mxr 3.2 and later cert_verifycacertforusage mxr 3.6 and later cert_verifycert mxr 3.2 and later.
...ame mxr 3.2 and later cert_verifycacertforusage mxr 3.6 and later cert_verifycert mxr 3.2 and later.
JSS FAQ
port?
...f ssl_authcertificatehook and ssl_badcerthook.
NSS_3.12.1_release_notes.html
rds conformance strictness for cert_nametoasciiinvertible (see certt.h) cert_n2a_readable (maximum human readability) cert_n2a_strict (strict rfc compliance) cert_n2a_invertible (maximum invertibility) bugs fixed the following bugs have been fixed in nss 3.12.1.
...808: certutil -b deadlock when importing two or more roots bug 434860: coverity 1150 - dead code in ocsp_createcertid bug 436428: remove unneeded assert from sec_pkcs7encryptlength bug 436430: make nss public headers compilable with no_nspr_10_support defined bug 436577: uninitialized variable in sec_pkcs5createalgorithmid bug 438685: libpkix doesn't try all the issuers in a bridge with
multiple certs bug 438876: signtool is still using static libraries.
NSS 3.12.4 release notes
sec_error_bad_info_access_method sec_error_crl_import_failed new oids (see secoidt.h) sec_oid_x509_any_policy the nssckbi pkcs #11 module's version changed to 1.75.
...33791: win16 support should be deleted from nss bug 449332: secu_parsecommandline does not validate its inputs bug 453735: when using cert9 (sqlite3) db, set or change master password fails bug 463544: warning: passing enum* for an int* argument in pkix_validate.c bug 469588: coverity errors reported for softoken bug 470055: pkix_httpcertstore_findsocketconnection reuses closed socket bug 470070:
multiple object leaks reported by tinderbox bug 470479: io timeout during cert fetching makes libpkix abort validation.
NSS 3.35 release notes
nments that need to adopt to the new default.
...nss supports two different database file formats: dbm: the legacy file format, based on berkeley db, using filenames cert8.db, key3.db and secmod.db.
NSS Sample Code Sample1
apping keys using your own rsa key pair the main part of the program shows a typical sequence of events for two servers that are trying to extablish a shared key pair.
...re trying to extablish a shared key pair.
PKCS11 FAQ
on windows, libsoftokn3.so on most unix platforms).
...and ckm_rc4_xxx.
NSS Tools certutil
upply the password to include in a certificate or to access a certificate database.
...he certificate constraint extension.
Necko Architecture
s acquired.
...sfer on a channel, you are handed back a stream that you can read or write from or to.
Index
returns the next context in the cycle.
....
JIT Optimization Strategies
if only integers are ever stored in the x and y properties, then the instances of point will be represented in an "unboxed" mode - with the property values stored as raw 4-byte values within the object.
...nces of that same kind of operation.
JS_GetGCParameter
mber of times gc has been invoked.
... jsgc_mode_global (0) the gc runs all objects are visited in a singleslice.
JSAPI reference
ipt obsolete since jsapi 36 js_evaluateucscript obsolete since jsapi 36 js_evaluatescriptforprincipals obsolete since jsapi 30 js_evaluateucscriptforprincipals obsolete since jsapi 30 js_evaluatescriptforprincipalsversion obsolete since jsapi 30 js_evaluateucscriptforprincipalsversion obsolete since jsapi 30 you can instead compile javascript code into a jsscript which you can then execute
multiple times.
...ded in spidermonkey 13 js_setcontextsecuritycallbacks obsolete since jsapi 13 js_getruntimesecuritycallbacks obsolete since jsapi 13 js_setruntimesecuritycallbacks obsolete since jsapi 13 threading the following functions support the spidermonkey threading model.
Web Replay
ir actors, while the middleman and child processes communicate with their own channel and messages, which is tuned to the demands of the recording/replaying process.
...t's replay project, and microsoft's time-travel debugger.
Redis Tips
redis> set foo 42 ok redis> incr foo (integer) 43 redis> incrby foo 17 (integer) 60 notice that these results come back as numbers, not strings.
...ent: redis1> psubscribe log.* 1) "psubscribe" 2) "log.*" 3) (integer) 1 publish with another client: redis2> publish log.bacon yes publish log.bacon yes (integer) 1 see message received in first client: redis1> 1) "pmessage" 2) "log.*" 3) "log.bacon" 4) "yes" pubsub is useful for things like: chat programs message passing among application components log routing from applications in
multiple languages it's good stuff.
Gecko Roles
it panes within a window.
...nts an accessible terminal.
Gecko states
events: concomitant state: state_focused state_selectable the object can be selected.
...nd of autocompletion ext_state_defunct object no longer exists ext_state_selectable_text for text which is selectable, object must implement nsiaccessibletext ext_state_editable implements nsiaccessibleeditabletext ext_state_active this window is currently the active window ext_state_modal must do something with control before leaving it ext_state_multi_line edit control that can take
multiple lines ext_state_horizontal uses horizontal layout ext_state_opaque indicates this object paints every pixel within its rectangular region ext_state_single_line this text object can only contain 1 line of text ext_state_transient ext_state_vertical especially used for sliders and scrollbars ext_state_stale object not dead, but not up-to-date either ext_state_enabled a widget that i...
XPCOM array guide
introduction array types mozilla has many array classes because each array is optimized for a particular usage pattern.
...ay<t>&).
An Overview of XPCOM
guage neutral development environment - is to use an interface definition language (idl).
...itance.
Using XPCOM Utilities to Make Things Easier
ontain the following information: a human readable class name the class id (cid) the contract id (an optional but recommended argument) a constructor for the given object static const nsmodulecomponentinfo components[] = { { "pretty class name", cid, contract_id, constructor }, // ...
..., and are often used to deal with unicode strings.
Inheriting from implementation classes
given that idl interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into
multiple inheritance.
... given that idl interfaces map to abstract classes in c++, a common problem when dealing with idl is when you have an idl inheritance hierarchy, and a corresponding c++ implementation hierarchy, you run into
multiple inheritance.
Interfacing with the XPCOM cycle collector
hat your class nsfoo participates in the cycle collection in nsfoo.cpp: ns_impl_cycle_collection_class(nsfoo) change the line ns_decl_isupports to ns_decl_cycle_collecting_isupports in the definition of nsfoo.
...ing_release(nsfoo) in nsfoo.cpp.
XPCShell Reference
the command line the command-line syntax for xpcshell is: xpcshell [-s] [-w] [-w] [-v version] [-f scriptfile] [scriptfile] [scriptarg...] -c this option turns on the "compile-only" mode.
... the command line the command-line syntax for xpcshell is: xpcshell [-s] [-w] [-w] [-v version] [-f scriptfile] [scriptfile] [scriptarg...] -c this option turns on the "compile-only" mode.
imgIEncoder
xample 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.
...mat, in astring outputoptions ); parameters width width in pixels.
nsIAccessibleRole
ar 22 represents a toolbar, which is a grouping of controls (push buttons or toggle buttons) that provides easy access to frequently used features.
...1 represents an accessible terminal.
nsIAccessibleTable
tion() return the description text of the specified column in the table.
...ll index.
nsIDOMEvent
aultprevented attribute instead.
...ved in future releases, see bug 691151.
nsIHttpChannel
d (before onstartrequest()).
...lue if changing the value of this response header is not allowed.
nsIMemoryMultiReporter
xpcom/base/nsimemoryreporter.idlscriptable reports
multiple memory measurements using a callback function that gets called once for each measurement.
... xpcom/base/nsimemoryreporter.idlscriptable reports
multiple memory measurements using a callback function that gets called once for each measurement.
nsINavHistoryResultTreeViewer
it to a tree, then forget about it, it will leak.
... nodefortreeindex(in unsigned long aindex); unsigned long treeindexfornode(in nsinavhistoryresultnode anode); attributes attribute type description collapseduplicates boolean controls whether duplicate adjacent elements are collapsed into a single item in the tree.
nsIObserver
notifications are often, though not always, broadcast via the nsiobserverservice.
... or action is being observed.
nsIXULTemplateBuilder
s>...</bindings> <action>...</action> </rule> </queryset> </template> </rootnode> the datasources attribute on the root node is used to identify the source of data to be used.
...e query processor's translateref() method using the value of the root node's ref attribute.
Performance
n be kept in memory at once.
...l text indexes) are not compatible with shared cache - then you need to use services.storage.openunshareddatabase(file), which doesn't share the cache.
Demo Addon
a real email.
...ils.push(id.email); } data.push(info); } first, we use fixiterator() here to get all accounts in your profile.
Streams - Plugins
tread(npstream *stream, npbyterange *rangelist); the stream parameter is the stream from which to read bytes; the rangelist parameter specifies the range of bytes in the form of a linked list of npbyterange objects, which the plug-in must allocate.
...; the rangelist parameter specifies the range of bytes in the form of a linked list of npbyterange objects, which the plug-in must allocate.
URLs - Plugins
url.
... only later handles the request and calls npp_urlnotify.
Debugger.Frame - Firefox Developer Tools
es a small amount of progress, passing no arguments and providing this debugger.frame instance as the thisvalue.
... passed in this case reflects the resumption value that caused the frame to complete.
AudioNode - Web APIs
ze="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">audionode</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} note: an audionode can be target of events, therefore it implements the eventtarget interface.
... all;} note: an audionode can be target of events, therefore it implements the eventtarget interface.
Channel Messaging API - Web APIs
se this api in using channel messaging.
...eports; an experimental solution to allow broadcasting of a message to
multiple ports simultaneously.
console - Web APIs
e console, or you can pass in a string containing zero or more substitution strings followed by a list of objects to replace them.
... containing zero or more substitution strings followed by a list of objects to replace them.
Document.getElementsByClassName() - Web APIs
ll getelementsbyclassname() on any element; it will return only elements which are descendants of the specified root element with the given class name(s).
...etelementbyid("parent-id"); var test = parentdom.getelementsbyclassname("test"); // a list of matching elements, *not* the element itself console.log(test); //htmlcollection[1] var testtarget = parentdom.getelementsbyclassname("test")[0]; // the first element, as we wanted console.log(testtarget); //<p class="test">hello world 2</p> </script> </body> </html>
multiple classes example document.getelementsbyclassname works very similarly to document.queryselector and document.queryselectorall.
DynamicsCompressorNode() - Web APIs
the dynamicscompressornode() constructor creates a new dynamicscompressornode object which provides a compression effect, which lowers the volume of the loudest parts of the signal, in order to help prevent clipping and distortion.
... the dynamicscompressornode() constructor creates a new dynamicscompressornode object which provides a compression effect, which lowers the volume of the loudest parts of the signal, in order to help prevent clipping and distortion.
ExtendableEvent - Web APIs
the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle.
... treating the serviceworkerregistration.installing worker as installed until the passed promise resolves successfully.
Using Fetch - Web APIs
ta(); const filefield = document.queryselector('input[type="file"]'); formdata.append('username', 'abc123'); formdata.append('avatar', filefield.files[0]); fetch('https://example.com/profile/avatar', { method: 'put', body: formdata }) .then(response => response.json()) .then(result => { console.log('success:', result); }) .catch(error => { console.error('error:', error); }); uploading
multiple files files can be uploaded using an html <input type="file"
multiple /> input element, formdata() and fetch().
...'put', body: formdata }) .then(response => response.json()) .then(result => { console.log('success:', result); }) .catch(error => { console.error('error:', error); }); uploading
multiple files files can be uploaded using an html <input type="file"
multiple /> input element, formdata() and fetch().
HTMLSelectElement.selectedOptions - Web APIs
, the collection is empty and returns a length of 0.
...<br> <select id="foods" name="foods" size="7"
multiple> <option value="1">burrito</option> <option value="2">cheeseburger</option> <option value="3">double bacon burger supreme</option> <option value="4">pepperoni pizza</option> <option value="5">taco</option> </select> <br> <button name="order" id="order"> order now </button> <p id="output"> </p> the <select> element is set to allow
multiple items to be selected, and it is 7 rows tall.
Headers.append() - Web APIs
the append() method of the headers interface appends a new value onto an existing header inside a headers object, or adds the header if it does not already exist.
...ple creating an empty headers object is simple: var myheaders = new headers(); // currently empty you could add a header to this using append(): myheaders.append('content-type', 'image/jpeg'); myheaders.get('content-type'); // returns 'image/jpeg' if the specified header already exists, append() will change its value to the specified value.
Headers.set() - Web APIs
the set() method of the headers interface sets a new value for an existing header inside a headers object, or adds the header if it does not already exist.
... headers(); // currently empty you could add a header to this using headers.append, then set a new value for this header using set(): myheaders.append('content-type', 'image/jpeg'); myheaders.set('content-type', 'text/html'); if the specified header does not already exist, set() will create it and set its value to the specified value.
MediaTrackSettings.deviceId - Web APIs
ypically this is unnecessary since browsers will simply ignore any constraints they're unfamiliar with.
... with a webrtc rtcpeerconnection will never include this property.
OVR_multiview2 - Web APIs
the ovr_multiview2 extension is part of the webgl api and adds support for rendering into
multiple views simultaneously.
...uffer_incomplete_view_targets_ovr if baseviewindex is not the same for all framebuffer attachment points where the value of framebuffer_attachment_object_type is not none, the framebuffer is considered incomplete.
ParentNode.replaceChildren() - Web APIs
nodes between parents replacechildren() enables you to easily transfer nodes between parents, without having to resort to verbose looping code.
...>carrot sticks and houmous</option> <option>margherita pizza</option> <option>pepperoni pizza</option> <option>vegan veggie pizza</option> </select> </div> <div class="buttons"> <button id="to-yes">transfer to "yes" --></button> <button id="to-no"><-- transfer to "no"</button> </div> <div> <label for="yes">yes please!</label> <select id="yes"
multiple size="10"> </select> </div> </main> it would make sense to use some simple css to lay out the two select lists in a line alongside one another, with the control buttons in between them: main { display: flex; } div { margin-right: 20px; } label, button { display: block; } .buttons { display: flex; flex-flow: column; justify-content: center; } select { width: 200px; } wh...
PointerEvent.isPrimary - Web APIs
enting pen input is considered the primary pen input if its pointerdown event was dispatched when no other active pointers representing pen input existed.
... primary touch input if its pointerdown event was dispatched when no other active pointers representing touch input existed.
RTCIceCandidate.component - Web APIs
the read-only component property on the rtcicecandidate interface is a string which indicates whether the candidate is an rtp or an rtcp candidate.
... the read-only component property on the rtcicecandidate interface is a string which indicates whether the candidate is an rtp or an rtcp candidate.
RTCIceCandidate.foundation - Web APIs
the rtcicecandidate interface's read-only foundation property is a string which uniquely identifies the candidate across
multiple transports.
... the rtcicecandidate interface's read-only foundation property is a string which uniquely identifies the candidate across
multiple transports.
RTCRtpCapabilities - Web APIs
egistry of these types.
...iple entries for red if different forms are supported; each will have a unique media type in that case.
SVGTransformList - Web APIs
s new svgtransform object as the first and only item in the list.
...esponds to a read only attribute or when the object itself is read only.
Using server-sent events - Web APIs
eventlist.appendchild(newelement); }); this code is similar, except that it will be called automatically whenever the server sends a message with the event field set to "ping"; it then parses the json in the data field and outputs that information.
... event a string identifying the type of event described.
Using Service Workers - Web APIs
lly, but we wanted to make sure the images were loaded before we tried to display them?
...ldn’t resolve at the same time as the iterations are being done (that is a synchronous process.) we actually resolve the promise with an array, as we want to make the loaded image blob available to the resolving function later on in the code, but also the image name, credits and alt text (see app.js lines 31-34).
Service Worker API - Web APIs
cessfully resolved.
...h provides access to registration, removal, upgrade, and communication with the serviceworker objects for the associated document.
URLSearchParams.append() - Web APIs
the append() method of the urlsearchparams interface appends a specified key/value pair as a new search parameter.
... the append() method of the urlsearchparams interface appends a specified key/value pair as a new search parameter.
WEBGL_draw_buffers - Web APIs
ax_draw_buffers_webgl a glint indicating the maximum number of draw buffers.
...ent3_webgl, gl.texture_2d, tx[3], 0); mapping the color attachments to draw buffer slots that the fragment shader will write to using gl_fragdata: ext.drawbufferswebgl([ ext.color_attachment0_webgl, // gl_fragdata[0] ext.color_attachment1_webgl, // gl_fragdata[1] ext.color_attachment2_webgl, // gl_fragdata[2] ext.color_attachment3_webgl // gl_fragdata[3] ]); shader code that writes to
multiple textures: <script type="x-shader/x-fragment"> #extension gl_ext_draw_buffers : require precision highp float; void main(void) { gl_fragdata[0] = vec4(0.25); gl_fragdata[1] = vec4(0.5); gl_fragdata[2] = vec4(0.75); gl_fragdata[3] = vec4(1.0); } </script> specifications specification status comment webgl_draw_buffersthe definition of 'webgl_draw_buffers' in that...
Compressed texture formats - Web APIs
ot usable with compressedtexsubimage2d/copytexsubimage2d.
...re_etc yes no webgl_compressed_texture_etc1* not usable with compressedtexsubimage2d/copytexsubimage2d.
WebGL best practices - Web APIs
s common to use "degenerate triangles" if you need to draw discontinuous objects as a single drawarrays(triangle_strip) call.
...ingle drawarrays(triangle_strip) call.
Using WebRTC data channels - Web APIs
t there are still situations in which data transfer on an rtcdatachannel can fail due to differences in how they call the library and react to errors it returns.
...nning firefox are communicating on a data channel, the message size limit is much larger than when firefox and chrome are communicating because firefox implements a now deprecated technique for sending large messages in
multiple sctp messages, which chrome does not.
WebRTC API - Web APIs
ng the webrtc implementations across the environments supporting it.
...cations defining the api needed to use webrtc, there are several protocols, listed under resources.
Web Video Text Tracks Format (WebVTT) - Web APIs
<video>.
...nealign; attribute (double or autokeyword) position; attribute positionalignsetting positionalign; attribute double size; attribute alignsetting align; attribute domstring text; documentfragment getcueashtml(); }; vtt region interface this is the second interface in webvtt api.
Inputs and input sources - Web APIs
e events on the device, a new xrinputsource object might be created to represent the simulated input source for the duration of handling the action.
...f specificity from most-specific to least.
Targeting and hit detection - Web APIs
fied, invisible objects atop the objects in your scene.
...ym "lidar" has
multiple definitions depending on specifics of how it's implemented, but the end result is the same.
Web Workers API - Web APIs
— this file contains the code that will run in the worker thread; workers run in another global context that is different from the current window.
...kers may in turn spawn new workers, as long as those workers are hosted within the same origin as the parent page.
Window - Web APIs
le from chrome (privileged) code, and not available to the web anymore.
...nymore.
XDomainRequest - Web APIs
{ //progress }; xdr.ontimeout = function () { //timeout }; xdr.onerror = function () { //error occurred }; xdr.onload = function() { //success(xdr.responsetext); } settimeout(function () { xdr.send(); }, 0); } note: the xdr.send() call is wrapped in a timeout (see window.settimeout() to prevent an issue with the interface where some requests are lost if
multiple xdomainrequests are being sent at the same time.
... xdr.send() call is wrapped in a timeout (see window.settimeout() to prevent an issue with the interface where some requests are lost if
multiple xdomainrequests are being sent at the same time.
Using XMLHttpRequest - Web APIs
"sex_female" type="radio" name="sex" value="female" /> <label for="sex_female">female</label><br /> password: <input type="password" name="secret" /><br /> what do you prefer: <select name="image_type"> <option>books</option> <option>cinema</option> <option>tv</option> </select> </p> <p> post your photos: <input type="file"
multiple name="photos[]"> </p> <p> <input id="vehicle_bike" type="checkbox" name="vehicle[]" value="bike" /> <label for="vehicle_bike">i have a bike</label><br /> <input id="vehicle_car" type="checkbox" name="vehicle[]" value="car" /> <label for="vehicle_car">i have a car</label> </p> <p> describe yourself:<br /> <textarea name="description" cols="50" ro...
..."sex_female" type="radio" name="sex" value="female" /> <label for="sex_female">female</label><br /> password: <input type="password" name="secret" /><br /> what do you prefer: <select name="image_type"> <option>books</option> <option>cinema</option> <option>tv</option> </select> </p> <p> post your photos: <input type="file"
multiple name="photos[]"> </p> <p> <input id="vehicle_bike" type="checkbox" name="vehicle[]" value="bike" /> <label for="vehicle_bike">i have a bike</label><br /> <input id="vehicle_car" type="checkbox" name="vehicle[]" value="car" /> <label for="vehicle_car">i have a car</label> </p> <p> describe yourself:<br /> <textarea name="description" cols="50" ro...
Using the aria-labelledby attribute - Accessibility
description the aria-labelledby attribute establishes relationships between objects and their label(s), and its value should be one or more element ids, which refer to elements that have the text needed for labeling.
...tml form element; it is not limited to elements that have an aria role assigned.
ARIA Test Cases - Accessibility
or: (mz) screen reader should announce the label and role of the listbox when it gains focus.
...pplication with inner document -- the only landmark here is the document, since role="application" as at the root expected at behavior: screen readers should not include the root accessible object in a page in the list of landmarks screen readers should provide keys to allow users to traverse a list of landmarks or next/prev landmark keys screen readers should support nested landmarks, and
multiple landmarks of the same time screen readers should announce the number of landmarks at page load, if they exist on the page screen readers should announce landmarks as users navigate into them (test in all screen reader modes) 8 (jg) are their any landmark role equivalents with html headers like role=main~h1??
ARIA: grid role - Accessibility
ed to be owned by elements with a row role.
...ria roles, states, and properties roles treegrid (subclass) if a grid has columns that can expanded or collapsed, a treegrid can be used.
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
't implement, watching system generated versions of this event causes assistive technology crashes] event_object_show [can be important, depending on project] event_object_hide [can be important, depending on project] event_object_reorder [important for mutating docs] event_object_focus [important] event_object_selection [important] event_object_selectionadd [important for
multiple selection] event_object_selectionremove [important for
multiple selection] event_object_selectionwithin [important for
multiple selection] event_object_statechange [important for checkboxes and radio buttons] event_object_locationchange event_object_namechange event_object_descriptionchange event_object_valuechange [important for sliders and progress meters] event_...
...er support for native tree views.
Web Accessibility: Understanding Colors and Luminance - Accessibility
ypersensitive cones, the authors note that "by population, about 64% of the cones are red-sensitive, about 32% green sensitive, and about 2% are blue sensitive." surprisingly, although cones that are blue-sensitive typically make up the fewest number of cones, they are also the most "sensitive" to color.
...ensitive epilepsy analysis tool, noted seizure rates were much higher than expected.
-webkit-mask-repeat-x - CSS: Cascading Style Sheets
the -webkit-mask-repeat-x property specifies whether and how a mask image is repeated (tiled) horizontally.
... initial valuerepeatapplies toall elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax repeat | no-repeat | space | round examples using a repeating or non-repeating mask image .exampleone { -webkit-mask-image: url('mask.png'); -webkit-mask-repeat-x: repeat; } .exampletwo { -webkit-mask-image: url('mask.png'); -webkit-mask-repeat-x: no-repeat; } using
multiple mask images you can specify a different <repeat-style> for each mask image, separated by commas: .examplethree { -webkit-mask-image: url('mask1.png'), url('mask2.png'); -webkit-mask-repeat-x: repeat, space; } each image is matched with the corresponding repeat style, from first specified to last.
-webkit-mask-repeat-y - CSS: Cascading Style Sheets
the -webkit-mask-repeat-y property sets whether and how a mask image is repeated (tiled) vertically.
...inheritednocomputed valuefor <length> the absolute value, otherwise a percentageanimation typediscrete formal syntax repeat | no-repeat | space | round examples using a repeating or non-repeating mask image .exampleone { -webkit-mask-image: url('mask.png'); -webkit-mask-repeat-y: repeat; } .exampletwo { -webkit-mask-image: url('mask.png'); -webkit-mask-repeat-y: no-repeat; } using
multiple mask images you can specify a different <repeat-style> for each mask image, separated by commas: .examplethree { -webkit-mask-image: url('mask1.png'), url('mask2.png'); -webkit-mask-repeat-y: repeat, space; } each image is matched with the corresponding repeat style, from first specified to last.
@namespace - CSS: Cascading Style Sheets
url(xml-namespace-url); @namespace "xml-namespace-url"; /* prefixed namespace */ @namespace prefix url(xml-namespace-url); @namespace prefix "xml-namespace-url"; description the defined namespaces can be used to restrict the universal, type, and attribute selectors to only select elements within that namespace.
... @namespace prefix url(xml-namespace-url); @namespace prefix "xml-namespace-url"; description the defined namespaces can be used to restrict the universal, type, and attribute selectors to only select elements within that namespace.
@supports - CSS: Cascading Style Sheets
tors, like and and or, the parentheses are required.
...nd ((display: list-item) and (display:run-in)) {} the or operator the or operator creates a new expression from the disjunction of two shorter expressions.
Using CSS animations - CSS: Cascading Style Sheets
imation shorthand is useful for saving space.
...n using through this article: p { animation-duration: 3s; animation-name: slidein; animation-iteration-count: infinite; animation-direction: alternate; } could be replaced by p { animation: 3s infinite alternate slidein; } note: you can find more details out at the animation reference page: setting
multiple animation property values the css animation longhand values can accept
multiple values, separated by commas — this feature can be used when you want to apply
multiple animations in a single rule, and set separate durations, iteration counts, etc.
Basic Concepts of Multicol - CSS: Cascading Style Sheets
multiple-column layout, usually referred to as multicol, is a specification for laying out content into a set of column boxes much like columns in a newspaper.
...ss would give the same result as example 1, column-count set to 3.
Using multi-column layouts - CSS: Cascading Style Sheets
the css multi-column layout module extends the block layout mode to allow the easy definition of
multiple columns of text.
... sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum </div> css #column_gap { column-count: 5; column-gap: 2em; } result graceful degradation the column properties will just be ignored by non-columns-supporting browsers.
CSS Fragmentation - CSS: Cascading Style Sheets
css fragmentation is a module of css that defines how content is displayed when it is broken (fragmented) across
multiple pages, regions, or columns.
... css fragmentation is a module of css that defines how content is displayed when it is broken (fragmented) across
multiple pages, regions, or columns.
Box alignment in CSS Grid Layout - CSS: Cascading Style Sheets
<div class="item2">item 2</div> <div class="item3">item 3</div> <div class="item4">item 4</div> </div> as with align-self and align-items, you can apply justify-items to the grid container, to set the justify-self value for all items.
... side of the grid.
Using CSS transitions - CSS: Cascading Style Sheets
n-property specifies the name or names of the css properties to which transitions should be applied.
...ty> <duration> <timing-function> <delay>; } examples simple example this example performs a four-second font size transition with a two-second delay between the time the user mouses over the element and the beginning of the animation effect: #delay { font-size: 14px; transition-property: font-size; transition-duration: 4s; transition-delay: 2s; } #delay:hover { font-size: 36px; }
multiple animated properties example html content <body> <p>the box below combines transitions for: width, height, background-color, transform.
Introducing the CSS Cascade - CSS: Cascading Style Sheets
l of the cascade, a specific origin (the user-agent stylesheet, the author stylesheet, or the user stylesheet), or even to clear the values of the properties entirely.
...animations, using @keyframes at-rules, define animations between states.
Specificity - CSS: Cascading Style Sheets
s by which browsers decide which css property values are the most relevant to an element and, therefore, will be applied.
...e composed of different sorts of css selectors.
CSS Tutorials - CSS: Cascading Style Sheets
we should look at using "difficulty level" tags on the tutorial/guide pages so that difficulty-based lists can be automatically built.
...nts allowed in css: linear or radial, repeating or not.
background-position-x - CSS: Cascading Style Sheets
element after it.
... nosamsung internet android no support nolegend 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
ement after it.
... nosamsung internet android no support nolegend full support full support no support no support see also background-position background-position-x background-position-inline background-position-block using
multiple backgrounds ...
<color> - CSS: Cascading Style Sheets
hsl colors the hsl color model defines a given color according to its hue, saturation, and lightness components.
...d links visitedtext text of visited links deprecated system color keywords the following keywords were defined in earlier versions of the css color module.
column-count - CSS: Cascading Style Sheets
12 full support 12prefixed prefixed implemented with the vendor prefix: -webkit-firefox full support 52 full support 52 no support 1.5 — 74prefixed notes prefixed implemented with the vendor prefix: -moz-notes prior to version 37,
multiple columns didn't work with display: table-caption elements.ie full support 10opera full support 11.1 full support 11.1 full support 15prefixed prefixed implemented with the vendor prefix: -webkit-safari fu...
... full support 18prefixed prefixed implemented with the vendor prefix: -webkit-firefox android full support 52 full support 52 full support 4prefixed notes prefixed implemented with the vendor prefix: -moz-notes prior to version 37,
multiple columns didn't work with display: table-caption elements.opera android full support 11.1 full support 11.1 full support 14prefixed prefixed implemented with the vendor prefix: -webkit-safari ios full support 9 ...
flex-wrap - CSS: Cascading Style Sheets
the flex-wrap css property sets whether flex items are forced onto one line or can wrap onto
multiple lines.
... the flex-wrap property is specified as a single keyword chosen from the list of values below.
<image> - CSS: Cascading Style Sheets
mage fragment or solid patch of color, defined by the image() function a blending of two or more images defined by the cross-fade() function.
...ned by the image() function a blending of two or more images defined by the cross-fade() function.
mask-origin - CSS: Cascading Style Sheets
the mask-origin css property sets the origin of a mask.
...it-mask-origin: content; -webkit-mask-origin: padding; -webkit-mask-origin: border; /* global values */ mask-origin: inherit; mask-origin: initial; mask-origin: unset; for elements rendered as a single box, this property specifies the mask positioning area.
mask-repeat - CSS: Cascading Style Sheets
d along the horizontal axis, the vertical axis, both axes, or not repeated at all.
...n value="repeat" selected>repeat</option> <option value="space">space</option> <option value="round">round</option> <option value="no-repeat">no-repeat</option> </select> javascript content var repetition = document.getelementbyid("repetition"); repetition.addeventlistener("change", function (evt) { document.getelementbyid("masked").style.maskrepeat = evt.target.value; }); result
multiple mask image support you can specify a different <repeat-style> for each mask image, separated by commas: .examplethree { mask-image: url('mask1.png'), url('mask2.png'); mask-repeat: repeat-x, repeat-y; } each image is matched with the corresponding repeat style, from first specified to last.
text-decoration-style - CSS: Cascading Style Sheets
ps://github.com/mdn/interactive-examples and send us a pull request.
...vy; text-decoration-color: red; } html <p class="wavy">this text has a wavy red line beneath it.</p> results specifications specification status comment css text decoration module level 3the definition of 'text-decoration-style' in that specification.
transform - CSS: Cascading Style Sheets
ansform: rotatez(10deg); transform: translate(12px, 50%); transform: translate3d(12px, 50%, 3em); transform: translatex(2em); transform: translatey(3in); transform: translatez(2px); transform: scale(2, 0.5); transform: scale3d(2.5, 1.2, 0.3); transform: scalex(2); transform: scaley(0.5); transform: scalez(0.3); transform: skew(30deg, 20deg); transform: skewx(30deg); transform: skewy(1.07rad); /*
multiple function values */ transform: translatex(10px) rotate(10deg) translatey(5px); transform: perspective(500px) translate(10px, 0, 20px) rotatey(3deg); /* global values */ transform: inherit; transform: initial; transform: unset; the transform property may be specified as either the keyword value none or as one or more <transform-function> values.
...1.07rad); /*
multiple function values */ transform: translatex(10px) rotate(10deg) translatey(5px); transform: perspective(500px) translate(10px, 0, 20px) rotatey(3deg); /* global values */ transform: inherit; transform: initial; transform: unset; the transform property may be specified as either the keyword value none or as one or more <transform-function> values.
transition-timing-function - CSS: Cascading Style Sheets
itory.
...ps(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-propert...
CSS: Cascading Style Sheets
inner level to proficiency, covering all the fundamentals.
...includes all the essential information you need to work towards your goal.
Constraint validation - Developer guides
ption associated violation <input type="url"> the value must be an absolute url, as defined in the url living standard.
...etime-local, month, week, time, number, checkbox, radio, file; also on the <select> and <textarea> elements none as it is a boolean attribute: its presence means true, its absence means false there must be a value (if set).
Localizations and character encodings - Developer guides
tent cross-locale from the old locales whose fallback encoding is windows-1252.
...e easily selectable from the character encoding menu the preference intl.charsetmenu.browser.static in intl.properties makes some character encodings more easily available in the character encoding menu in the browser.
<input type="range"> - HTML: Hypertext Markup Language
is no pattern validation available; however, the following forms of automatic validation are performed: if the value is set to something which can't be converted into a valid floating-point number, validation fails because the input is suffering from a bad input.
... elements, the orient attribute defines the orientation of the range slider.
Access-Control-Allow-Headers - HTTP
the authorization header can't be wildcarded and always needs to be listed explicitly.
...es a custom header here's an example of what an access-control-allow-headers header might look like.
Content-Language - HTTP
d for german language speakers (however, it doesn't indicate the document is written in german.
...tual documents.
Content-Security-Policy - HTTP
a content security policy for the worker, set a content-security-policy response header for the request which requested the worker script itself.
...ity-policy response header for the request which requested the worker script itself.
Link - HTTP
am2="value2" <uri-reference> the uri reference, must be enclosed between < and >.
... the uri reference, must be enclosed between < and >.
TE - HTTP
ote that chunked is always acceptable for http/1.1 recipients and you don't have to specify "chunked" using the te header.
... compress a format using the lempel-ziv-welch (lzw) algorithm is accepted as a transfer coding name.
Link prefetching FAQ - HTTP
ext or prefetch.
...nk rel="prefetch" href="/images/big.jpeg"> the same prefetching hint using an http link: header: link: </images/big.jpeg>; rel=prefetch the format for the link: header is described in rfc 5988 section 5.
Functions - JavaScript
an in-scope variable that refers to the function for example, consider the following function definition: var foo = function bar() { // statements go here } within the function body, the following are all equivalent: bar() arguments.callee() foo() a function that calls itself is called a recursive function.
... the references directly and cannot inspect them.
Introduction - JavaScript
at is javascript?
...icity, it can be imagined that every time something is entered into the console, it is actually surrounded by console.log around eval, like so: function greetme(yourname) { alert("hello " + yourname) } console.log(eval('3 + 5')) multi-line input in the web console the single-line input mode of the web console is great for quick testing of javascript expressions, but although you can execute
multiple lines, it's not very convenient for that.
JavaScript modules - JavaScript
rver.
...port { square }; over in main.js, we import it like this: import { square } from './modules/square.js'; and then use the class to draw our square: let square1 = new square(mycanvas.ctx, mycanvas.listid, 50, 50, 100, 'blue'); square1.draw(); square1.reportarea(); square1.reportperimeter(); aggregating modules there will be times where you'll want to aggregate modules together.
Character classes - JavaScript
has one of the following meanings: matches any single character except line terminators: \n, \r, \u2028 or \u2029.
...e latin alphabet) starting with a var aliceexcerpt = "i’m sure i’m not ada,’ she said, ‘for her hair goes in such long ringlets, and mine doesn’t go in ringlets at all."; var regexpwordstartingwitha = /\b[aa]\w+/g; // \b indicates a boundary (i.e.
Promise.all() - JavaScript
en resolved/rejected asynchronously (as soon as the stack is empty) when all the promises in the given iterable have resolved, or if any of the promises reject.
...ck is empty) when all the promises in the given iterable have resolved, or if any of the promises reject.
RegExp - JavaScript
contains the flags of the regexp object.
...the platform (unix, windows, etc.).
String.prototype.normalize() - JavaScript
= string1.normalize('nfd'); string2 = string2.normalize('nfd'); console.log(string1 === string2); // true console.log(string1.length); // 2 console.log(string2.length); // 2 composed and decomposed forms note that the length of the normalized form under "nfd" is 2.
...le.log(string2.length); // 2 composed and decomposed forms note that the length of the normalized form under "nfd" is 2.
WebAssembly - JavaScript
y.compileerror()/webassembly.linkerror()/webassembly.runtimeerror() constructors.
...es an error during module instantiation (besides traps from the start function).
Lexical grammar - JavaScript
on the same line into a comment.
... a one line javascript comment console.log('hello world!'); } comment(); the second way is the /* */ style, which is much more flexible.
Operator precedence - JavaScript
uating the left side evaluating the right side 3 function echo(name, num) { console.log("evaluating the " + name + " side"); return num; } // notice the exponentiation operator (**) console.log(echo("left", 2) ** echo("right", 3)); evaluating the left side evaluating the right side 8 the difference in associativity comes into play when there are
multiple operators of the same precedence.
...ight", 3)); evaluating the left side evaluating the right side 8 the difference in associativity comes into play when there are
multiple operators of the same precedence.
Spread syntax (...) - JavaScript
for function calls: myfunction(...iterableobj); for array literals or strings: [...iterableobj, '4', 'five', 6]; for object literals (new in ecmascript 2018): let objclone = { ...obj }; rest syntax (parameters) rest syntax looks exactly like spread syntax.
...apply() in cases where you want to use the elements of an array as arguments to a function.
instanceof - JavaScript
new d() o3 instanceof d // true o3 instanceof c // true since c.prototype is now in o3's prototype chain note that the value of an instanceof test can change based on changes to the prototype property of constructors.
...ve different execution environments.
Web audio codec guide - Web media technologies
oid 20 linux (depends on gstreamer) 26 macos 35 opus the opus audio format was created by the xiph.org foundation as a fully open audio format; it has been standardized by ietf as rfc 6716.
...o at least 100 ms for the others).
Lazy loading - Web Performance
to shorten the critical rendering path length by lazy loading resources that are not critical for the first render to happen.
...ng path length by lazy loading resources that are not critical for the first render to happen.
glyph-orientation-vertical - SVG: Scalable Vector Graphics
the glyph-orientation-vertical attribute affects the amount that hte current text position advances as each glyph is rendered.
...ph-orientation-vertical attribute affects the amount that hte current text position advances as each glyph is rendered.
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.
...aced by the linked content, if it exists and can be securely accessed from this document.
u1 - SVG: Scalable Vector Graphics
the u1 attribute specifies list of unicode characters (refer to the description of the unicode attribute of the <glyph> element for a description of how to express individual unicode characters) and/or ranges of unicode characters, which identify a set of possible first glyphs in a kerning pair.
... u1 attribute specifies list of unicode characters (refer to the description of the unicode attribute of the <glyph> element for a description of how to express individual unicode characters) and/or ranges of unicode characters, which identify a set of possible first glyphs in a kerning pair.
u2 - SVG: Scalable Vector Graphics
the u2 attribute specifies list of unicode characters (refer to the description of the unicode attribute of the <glyph> element for a description of how to express individual unicode characters) and/or ranges of unicode characters, which identify a set of possible second glyphs in a kerning pair.
...u2 attribute specifies list of unicode characters (refer to the description of the unicode attribute of the <glyph> element for a description of how to express individual unicode characters) and/or ranges of unicode characters, which identify a set of possible second glyphs in a kerning pair.
Subdomain takeovers - Web security
hosting provider, an attacker can now create their own virtual host with that provider, claim your subdomain, and host their own content under that subdomain.
...meone claiming a virtual host actually has a legitimate claim to the domain name.
Subresource Integrity - Web security
esource served from an origin other than the document in which it’s embedded, browsers additionally check the resource using cross-origin resource sharing (cors), to ensure the origin serving the resource allows it to be shared with the requesting origin.
...ng the browser to fetch, in the value of the integrity attribute of any <script> or <link> element.
Web Components
encapsulated away from the rest of your code — and utilize them in your web apps.
... separately from the main document dom — and controlling associated functionality.
document - XPath
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes the document finds a node-set in an external document, or
multiple external documents, and returns the resulting node-set.
...n the external document, that fragment will be treated as the root in the node-set argument's expression.
Communicating using "port" - Archive of obsolete content
"self.port.on('alert', function(text) {" + " console.log(text);" + "});" }); panel.show(); panel.port.emit("alert", "panel is showing"); the panel and page-worker objects only host a single page at a time, so each distinct page object only needs a single channel of communication to its content scripts.
Porting the Library Detector - Archive of obsolete content
worker.tab.libraries = []; } librarylist.foreach(function(library) { if (worker.tab.libraries.indexof(library) == -1) { worker.tab.libraries.push(library); } }); if (worker.tab == tabs.activetab) { updatewidgetview(worker.tab); } }); } }); the content script is executed once for every window.onload event, so it will run
multiple times when a single page containing
multiple iframes is loaded.
Modifying Web Pages Based on URL - Archive of obsolete content
mod({ include: "*.org", contentscriptfile: self.data.url("my-script.js") }); or from firefox 34 onwards: // import the page-mod api var pagemod = require("sdk/page-mod"); // 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: "./my-script.js" }); loading
multiple content scripts you can load more than one script, and the scripts can interact directly with each other.
Progress Listeners - Archive of obsolete content
, false); window.addeventlistener("unload", function() { myextension.uninit() }, false); note: if you use the same listener for more than one tab/window, use awebprogress.domwindow in the callback methods to obtain the tab/window which triggers the state change or event.
Windows - Archive of obsolete content
down", mousedown, false); window.addeventlistener("mouseup", mouseup, false); window.addeventlistener("mousemove", mousemove, false); xul titlebar element xul applications can take advantage of the titlebar element to achieve a similar result without extra javascript code.
Extension Theming Guidelines - Archive of obsolete content
s style, in particular logos and icons can be kept in the chrome content package such that they are not replaceable by custom themes stylesheets guidelines include stylesheets for every new window that your extension adds and for every window that your extension overlays content into be sure to add a stylesheet from your chrome skin package.
Hiding browser chrome - Archive of obsolete content
unc = xulbrowserwindow.hidechromeforlocation; xulbrowserwindow.hidechromeforlocation = function(alocation) { return (/* your test goes here */) || prevfunc.apply(xulbrowserwindow, [alocation]); } this works by saving a reference to the current implementation of the hidechromeforlocation() method, then replacing it with a new method that calls through to the previous implementation.
Chapter 1: Introduction to Extensions - Archive of obsolete content
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 fend for themselves1; however, now there's a considerable store of knowledge.
No Proxy For configuration - Archive of obsolete content
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.
Prerequisites - Archive of obsolete content
in order to complete this tutorial you need to have and know how to use the following programs on your computer: an installation of mozilla; zip and unzip utilities; a text editor.
Specifying the appearance - Archive of obsolete content
} statusbarpanel#tinderbox-status[status="success"] { list-style-image: url("chrome://navigator/content/tb-success.png"); } statusbarpanel#tinderbox-status[status="testfailed"] { list-style-image: url("chrome://navigator/content/tb-testfailed.png"); } statusbarpanel#tinderbox-status[status="busted"] { list-style-image: url("chrome://navigator/content/tb-busted.png"); } mozilla can have
multiple sets of stylesheets that govern its appearance, and we don't want to have to add these rules to each set (and have our extension break when a new set gets installed), so we'll put this stylesheet in a file called tinderstatus.css in the same directory as navigator.xul and reference it at the top of that file right under the global stylesheet reference: <?xml-stylesheet href="chrome://navigator/sk...
jspage - Archive of obsolete content
(o,m))){if(!p){return document.id(o,r); }q.push(o);}o=o[l];}return(p)?new elements(q,{ddup:false,cash:!r}):null;};var e={html:"innerhtml","class":"classname","for":"htmlfor",defaultvalue:"defaultvalue",text:(browser.engine.trident||(browser.engine.webkit&&browser.engine.version<420))?"innertext":"textcontent"}; var b=["compact","nowrap","ismap","declare","noshade","checked","disabled","readonly","
multiple","selected","noresize","defer"];var k=["value","type","defaultvalue","accesskey","cellpadding","cellspacing","colspan","frameborder","maxlength","readonly","rowspan","tabindex","usemap"]; b=b.associate(b);hash.extend(e,b);hash.extend(e,k.associate(k.map(string.tolowercase)));var a={before:function(m,l){if(l.parentnode){l.parentnode.insertbefore(m,l); }},after:function(m,l){if(!l.parentnode){retur...
Configuration - Archive of obsolete content
turns the hotkey history navigation (alt+left, alt+right and alt+home) on or off for this web app: yes or no splashscreen filename of an html page to be displayed while the app is loading.
modifiers - Archive of obsolete content
« xul reference home modifiers type: space-separated list of the values below a list of modifier keys that should be pressed to invoke the keyboard shortcut.
searchSessions - Archive of obsolete content
« xul reference home searchsessions obsolete since gecko 26 type: space-separated list of session names set to a keyword indicating what type of data to look up for autocomplete.
template - Archive of obsolete content
« xul reference home template type: id for template generated elements, this attribute may optionally be placed on the root node (the element with the datasources attribute) to refer to a template that exists elsewhere in the xul code.
Attribute (XUL) - Archive of obsolete content
e inactivetitlebarcolor increment index inputtooltiptext insertafter insertbefore instantapply inverted iscontainer isempty key keycode keytext label lastpage lastselected last-tab left linkedpanel max maxheight maxlength maxpos maxrows maxwidth member menu menuactive min minheight minresultsforpopup minwidth mode modifiers mousethrough movetoclick multiline
multiple name negate newlines next noautofocus noautohide noinitialfocus nomatch norestorefocus object observes onbeforeaccept onbookmarkgroup onchange onclick onclosetab oncommand oncommandupdate ondialogaccept ondialogcancel ondialogclosure ondialogextra1 ondialogextra2 ondialoghelp onerror onerrorcommand onextra1 onextra2 oninput onload onnewtab onpageadvanced onpagehi...
ContextMenus - Archive of obsolete content
et> <menupopup id="ins-del-menu"> <menuitem label="insert"/> <menuitem label="delete"/> </menupopup> </popupset> </window> <grid context="ins-del-menu"> <columns> <column/> <column flex="1"/> </columns> <rows id="rows"> <row align="center"> <label value="name:"/> <textbox/> </row> </rows> </grid> the same context menu can be attached to
multiple elements.
Special Condition Tests - Archive of obsolete content
"/> </groupbox> </action> </rule> <rule> <binding subject="?item" predicate="http://www.xulplanet.com/rdf/address" object="?address"/> <action> <label uri="?item" value="?address"/> </action> </rule> </template> </vbox> containment tests for rdf sources, the simple rule syntax supports two special conditional tests that are commonly used with
multiple rules.
Template Guide - Archive of obsolete content
es introduction rule compilation rdf template syntax result generation rdf query syntax actions recursive generation simple example bindings additional navigation filtering static content simple query syntax containment properties xml template syntax xml templates xml assignments sql template syntax sqlite templates common template syntax attribute substitution
multiple rules using recursive templates building menus with templates special condition tests
multiple queries using
multiple queries to generate more results building trees with templates building trees building hierarchical trees template modifications template builder interface template and tree listeners rdf modifications additional topics sorting results additional template a...
The Joy of XUL - Archive of obsolete content
s will benefit from being migrated to xul because of the enhanced ui capabilities, consistent implementation of the specification across supported platforms, and access to native resources such as shared libraries and the local file system.
Creating a Skin - Archive of obsolete content
-region: rect(80px 16px 96px 0); -moz-box-orient: vertical; } mozilla provides a custom style property -moz-image-region which can be used to make an element use part of an image.
List Controls - Archive of obsolete content
chocolate chip" value="chocchip" /> <listitem label="raspberry ripple" value="raspripple" /> <listitem label="squash swirl" value="squash" /> </listbox> the example has been changed to display only 3 rows at a time.
Updating Commands - Archive of obsolete content
a simple command updater looks like this: <commandset id="updatepasteitem" commandupdater="true" events="focus" oncommandupdate="goupdatecommand('cmd_paste');"/> a command updater is indicated by using the commandupdater attribute, which should be set to true.
XUL Questions and Answers - Archive of obsolete content
ow* window = //coming from <iframe> c2d->drawwindow( window, ..., "rgba(0,0,0,0)"); --------------------------------------------------------- this makes canvas background transparent if background is transparent but when "window" is coming from top level content window, background is not transparent.
broadcaster - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] a broadcaster is used when you want
multiple elements to share one or more attribute values, or when you want elements to respond to a state change.
command - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] a command element can be used to invoke an operation that can come from
multiple sources.
CommandLine - Archive of obsolete content
handling command line arguments with xulrunner for
multiple instances application it's fairly easy to retrieve application specific command line arguments in xulrunner when it's not a single instance application.
calIFileType - Archive of obsolete content
8333-e995-4f45-bdf7-bfcabbd9793e)] interface califiletype : nsisupports { readonly attribute astring defaultextension; readonly attribute astring extensionfilter; readonly attribute astring description; }; attributes defaultextension the default extension that should be associated with files of this type.
-ms-filter - Archive of obsolete content
background-image: linear-gradient() dropshadow text-shadow or box-shadow matrix transform, transform-origin in windows internet explorer 8, the -ms-filter attribute is an extension to css, and can be used as a synonym for filter in ie8 standards mode.
E4X for templating - Archive of obsolete content
else { for (k in arr) { if (it < min) { ++it; continue; } if (it > max) { break; } ret+=h(k, arr[k], it, lev); ++it; } } return ret; } the following real case example iterates over an array of the lines in an e4x child element to produce an xmllist of
multiple vbox's representing each line: <vbox> {foreach(e(someel.somechild[0]).split('\n'), function (line) <description>{line}</description> )} </vbox> the following example shows iteration over an e4x object itself: {foreach(elems, function (k, elem, iter) <> <row>{k}: {elem}</row> <row><image src="chrome://myext/skin/images/fillerrow.jpg" /></row> </>)} or if the e4x child element had...
Square tilemaps implementation: Static maps - Game development
inates and dimensions of the tile inside the atlas, and the target coordinates and size (a different tile size in here would scale the tile.) so, for instance, to draw the tree tile, which is the third in the atlas, at the screen coordinates (128, 320), we would call drawimage() with these values: context.drawimage(atlasimage, 192, 0, 64, 64, 128, 320, 64, 64); in order to support atlases with
multiple rows and columns, you would need to know how many rows and columns there are to be able to compute the source x and y.
Tutorials - Game development
this page contains
multiple tutorial series that highlight different workflows for effectively creating different types of web games.
Normal Flow - Learn web development
} span { background: white; border: 1px solid black; } summary now that you understand normal flow, and how the browser lays things out by default, move on to understand how to change this default display to create the layout needed by your design.
CSS first steps - Learn web development
css (cascading style sheets) is used to style and lay out web pages — for example, to alter the font, color, size, and spacing of your content, split it into
multiple columns, or add animations and other decorative features.
Styling web forms - Learn web development
th : 80%; background : none; } when one of these fields gains focus, we highlight them with a light grey, transparent, background (it is always important to have focus style, for usability and keyboard accessibility): input:focus, textarea:focus { background : rgba(0,0,0,.1); border-radius: 5px; } now that our text fields are complete, we need to adjust the display of the single and
multiple line text fields to match, since they won't typically look the same using the defaults.
HTML Tables - Learn web development
rking on a computer/tablet/other device where you don't have the ability to create your own files, you could try out (most of) the code examples in an online coding program such as jsbin or glitch.
Silly story generator - Learn web development
of the <html> element red — so the entire browser window should go red if the javascript is applied properly: document.queryselector('html').style.backgroundcolor = 'red'; math.round() is a built-in javascript method that simply rounds the result of a calculation to the nearest whole number.
Working with JSON - Learn web development
xtcontent = superpowers[j]; mylist.appendchild(listitem); } myarticle.appendchild(myh2); myarticle.appendchild(mypara1); myarticle.appendchild(mypara2); myarticle.appendchild(mypara3); myarticle.appendchild(mylist); section.appendchild(myarticle); } } to start with, we store the members property of the javascript object in a new variable.
Aprender y obtener ayuda - Learn web development
oblem solving there is no one effective way to solve all problems (and learn all things) associated with web design and development, but there are some general bits of advice that will serve you well in most cases.
Mozilla accessibility architecture
ercallback() nsiscrollpositonlistener and nsitimer callbacks event_scrollingend (quick timer is used to determine when scrolling pauses or stops, to avoid extra events being fired) nsdocaccessible::onstatechange(), :nsdocaccessible:onlocationchange() nsiwebprogresslistener callback event_state_change (msaa) event_reorder (atk) dom mutation events -
multiple uses dom mutation events are a great thing.
Information for External Developers Dealing with Accessibility
ctical guide a document for developers who need to support microsoft active accessibility (msaa) in a desktop application, in order to make it accessible with 3rd party assistive technologies, containing practical tips and the details of mozilla's implementation.
Windows SDK versions
mozilla, from time to time, might support building against
multiple versions of the windows sdk as a compatibility/transitional measure.
SVG Guidelines
s> element is hidden by default) type="text/css" on <style> elements stroke: none or stroke-width: 0 svg grouping style grouping group similarly styled shapes under one <g> tag; this avoids having to set the same class/styles on many shapes.
Experimental features in Firefox
no developer edition 64 no beta 64 no release 64 no preference name media.setsinkid.enabled htmlmediaelement properties: audiotracks and videotracks enabling this feature adds the htmlmediaelement.audiotracks and htmlmediaelement.videotracks properties to all html media elements.
Index
the most useful is the url about:config, which displays preferences and settings that can be inspected and changed.
Frame script loading and lifetime
line: // chrome script var mm = gbrowser.selectedbrowser.messagemanager; mm.loadframescript('data:,dump("foo\\n")', true); loadframescript() takes two mandatory parameters: a url that points to the frame script you want to load a boolean flag, allowdelayedload note: if the message manager is a global frame message manager or a window message manager, loadframescript() may load the script
multiple times, once in each applicable frame.
Message manager overview
ger implements nsimessagelistenermanager nsimessagesender loading scripts per child process since the process message managers do not support script loading the only way to implement per-child process code is to use a frame script which imports a custom javascript module (jsm).
Embedding Tips
vious; catman->addcategoryentry(javascript_global_property_category, "my_prop_name", "my_prop_contract_id", pr_true, pr_true, getter_copies(previous)); this will cause a component with the contract id my_prop_contract_id to be lazily created when the my_prop_name is resolved in any javascript window scope.
Hacking with Bonsai
hacking mozilla with bonsai bonsai was originally created to solve the problem of tree instability.
Implementing QueryInterface
peinfo<nsix>::getiid()) ) foundinterface = ns_static_cast(nsix*, this); else if ( aiid.equals(nscomtypeinfo<nsiy>::getiid()) ) foundinterface = ns_static_cast(nsiy*, this); // ...as many cases as needed...
Internationalized Domain Names (IDN) Support in Mozilla Browsers
la browsers handle non-ascii domain names unicode and nameprep when mozilla receives idn input from the user via the location bar or a request to process non-ascii host name links, it first turns them into unicode, then normalizes the input string to make it conform to general uri requirement.
Introduction to Layout in Mozilla
endreflowcommand, processreflowcommands incremental reflow recursively descend 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
multiple reflow commands are batched nsreflowpath maintains a tree of target frames amortize state recovery and damage propagation cost painting as reflow proceeds through the frame hierarchy, areas are invalidated via nsiviewmanager::updateview unless immediate, invalid areas are coalesced and processed asynchronously via os expose event native expose event dispatched to wid...
XPCOMUtils.jsm
cript components loaded by the javascript component loader.
Localizing extension descriptions
tension_id matches your application id from install.rdf and path_to_localization_file is the chrome path to the localization file you added to earlier): pref("extensions.extension_id.description", "path_to_localization_file"); localizable strings the following add-on metadata can be localized using this process: name description creator homepageurl localizable lists in cases where
multiple values can exist, a numeric index is appended to the end of the preference name: extensions.extension_id.contributor.1=first_localized_contributor_name extensions.extension_id.contributor.2=second_localized_contributor_name extensions.extension_id.contributor.3=thrid_localized_contributor_name pref("extensions.extension_id.contributor.1", "path_to_localization_file"); pref("extensions.extension...
Are We Slim Yet
the are we slim yet project (commonly known as awsy) for several years tracked memory usage across builds on the (now defunct) website areweslimyet.com.
BloatView
for many of the test suites mozilla has running under continuous integration.
about:memory
for add-ons that use separate windows, such as chatzilla, the memory usage of those windows will show up in this sub-tree.
Performance
is the easiest-to-use tool for measuring memory usage in mozilla code, and is the best place to start.
About NSPR
y shims that call immediately into the host operating system's offerings.
Monitors
in addition to the mutex type prlock, nspr provides a special type, prmonitor, for use in java programming.
PR_Writev
writes data to a socket from
multiple buffers.
NSS CERTVerify Log
newarena(512); log = port_arenaznew(arena,log); log->arena = arena; you can then pass this log into your favorite cert verify function.
Cryptography functions
mxr 3.2 and later pk11_generaterandomonslot mxr 3.11 and later pk11_getalltokens mxr 3.2 and later pk11_getallslotsforcert mxr 3.12 and later pk11_getbestkeylength mxr 3.2 and later pk11_getbestslot mxr 3.2 and later pk11_getbestslot
multiple mxr 3.2 and later pk11_getbestwrapmechanism mxr 3.2 and later pk11_getblocksize mxr 3.2 and later pk11_getcertfromprivatekey mxr 3.9.3 and later pk11_getcurrentwrapindex mxr 3.2 and later pk11_getdefaultarray mxr 3.8 and later pk11...
HTTP delegation
erver session object is logically associated with host and port destination information, in our example this is "host ocsp.provider.com port 80".
HTTP delegation
erver session object is logically associated with host and port destination information, in our example this is "host ocsp.provider.com port 80".
NSS_3.11.10_release_notes.html
il -l -h token doesn't report token authentication failure bug 417637: tstclnt crashes if -p option is not specified bug 421634: don't send an sni client hello extension bearing an ipv6 address bug 422918: add verisign class 3 public primary ca - g5 to nss bug 424152: add thawte primary root ca to nss bug 424169: add geotrust primary certification authority root to nss bug 425469: add
multiple new roots: geotrust bug 426568: add comodo certification authority certificate to nss bug 431381: add network solutions certificate authority root to nss bug 431621: add diginotar root ca root to nss bug 431772: add network solutions and diginotar root certs to nss bug 442912: fix nssckbi version number on 3.11 branch bug 443045: fix pk11_generatekeypair for ecc keys on the 3.11 branc...
NSS_3.12.2_release_notes.html
o sec_pkcs12addcertandkey bug 390527: get rid of pkixerrormsg variable in pkix_error bug 391560: libpkix does not consistently return pkix_validatenode tree that truly represent failure reasons bug 408260: certutil usage doesn't give enough information about trust arguments bug 412311: replace pr_interval_no_wait with pr_interval_no_timeout in client initialization calls bug 423839: add
multiple pkcs#11 token password command line option to nss tools.
NSS 3.12.6 release notes
he input buffer for sgn_update should be declared const bug 519550: allow the specification of an alternate library for sqlite bug 524167: crash in [[@ find_objects_by_template - nsstoken_findcertificatebyissuerandserialnumber] bug 526910: maxresponselength (initialized to pkix_default_max_response_length) is too small for downloading some crls.
NSS 3.14.2 release notes
ing nss test suites on android devices.this is currently limited to running tests from a linux host machine using an ssh connection.
NSS 3.17 release notes
a.org/pub/mozilla.org/security/nss/releases/nss_3_17_rtm/src/ new in nss 3.17 new functionality when using ecdhe, the tls server code may be configured to generate a fresh ephemeral ecdh key for each handshake, by setting the ssl_reuse_server_ecdhe_key socket option to pr_false.
NSS 3.30 release notes
for a boolean pkcs#11 attribute, that should be set to true, if a ca is present because of it's acceptance according to the mozilla ca policy notable changes in nss 3.30 the tls server code has been enhanced to support session tickets when no rsa certificate (e.g.
NSS 3.53 release notes
bug 1621159 - set cka_nss_server_distrust_after for consorci aoc, grca, and sk id root certs bug 1629414 - ppc64: correct compilation error between vmx vs.
NSS Sample Code Utilities_1
\n"); continue; } return (char*) port_strdup(phrase); } } /* * filepasswd extracts the password from a text file * * storing passwords is often used with server environments * where prompting the user for a password or requiring it * to be entered in the command line is not a feasible option.
nss tech note1
rena, void* dest, const sec_asn1template* templateentry, secitem* src); here is a description of the arguments : secitem* src† is a structure containing a pointer to the binary data to be decoded, as well as its size.
Overview of NSS
e detailed information about nss, see wiki.mozilla.org and nss faq.
Installation guide
libs += -wl,-rpath,'$$origin/../lib' 58 endif 59 endif for example, if you install certutil in /foo/bar/nss/bin and the .so's in /foo/bar/nss/lib, then you only need to add /foo/bar/nss/bin to your path; you don't need to set ld_library_path.
pkfnc.html
data for the password callback function.
S/MIME functions
2 and later nss_cmsdecoder_cancel mxr 3.2 and later nss_cmsdecoder_finish mxr 3.2 and later nss_cmsdecoder_start mxr 3.2 and later nss_cmsdecoder_update mxr 3.2 and later nss_cmsdigestcontext_cancel mxr 3.2 and later nss_cmsdigestcontext_finish
multiple mxr 3.2 and later nss_cmsdigestcontext_finishsingle mxr 3.2 and later nss_cmsdigestcontext_start
multiple mxr 3.2 and later nss_cmsdigestcontext_startsingle mxr 3.2 and later nss_cmsdigestcontext_update mxr 3.2 and later nss_cmsdigesteddata_create mxr ...
NSS tools : signver
signver -a -s signature_file -o output_file nss database types nss originally used berkeleydb databases to store security information.
Rhino Debugger
using the rhino javascript debugger the mozilla rhino javascript engine includes a source-level debugger for debugging javascript scripts.
Rhino Examples
specified as files on the command line or by typing interactively while the shell is running.
Scripting Java
fining the methods implementing an interface until they are called.
Hacking Tips
o be used with iongraph (made by sean stangl) and another one (/tmp/ion.cfg) made to be used with c1visualizer.
Bytecode Descriptions
is because a try block can terminate in several different ways: control can flow off the end, return, throw an exception, break with or without a label, or continue.
Tracing JIT
anojit/assembler.* the nanojit/assembler.cpp and nanojit/assembler.h files define the class assembler, which transforms lins values into nins values.
JS::Add*Root
on-null, is stored in the jsruntime's root table entry along with rp.
JS_Add*Root
is stored in the jsruntime's root table entry along with rp.
JS_ConvertArguments
f conversion creates a new gc thing, the corresponding jsval is written back to argv, which is rooted.) description js_convertarguments provides a convenient way to translate a series of js values into their corresponding js types with a single function call.
JS_Init
ning true only if initialization succeeded.
JS_NewRuntime
untime * js_newruntime(uint32_t maxbytes, jsusehelperthreads usehelperthreads, jsruntime *parentruntime = nullptr); // deprecated since jsapi 32 name type description maxbytes uint32 maximum number of allocated bytes after which garbage collection is run.
JS_SetGCCallback
end callback does something that triggers gc, a jsgc_begin callback might happen.
Parser API
argument: expression | null; } a return statement.
compare-locales
k-out of mozilla within comm-central repository that the regular comm-central build instructions generate: $ compare-locales ./comm-central/mail/locales/l10n.toml ./l10n/ zh-tw if you don't want to use a copy of mozilla-central in comm-central, you can run them separately: $ compare-locales -dmozilla=$pwd/mozilla-central comm-central/mail/locales/l10n.toml ./l10n/ zh-tw if you're working on
multiple projects in parallel, you can also pass all the toml files to compare-locales at once.
Querying Places
mark queries there is a quick-start for doing simple bookmark queries in retrieving part of the bookmarks tree.
The Publicity Stream API
a means for a web store to receive a list of the current user's socially relevant app activity by being called from an origin which hosts a web store.
Toolkit API
and theme management application update service safe mode printing official references structure of an installable bundle: describes the common structure of installable bundles, including extensions, themes, and xulrunner applications extension packaging: specific information about how to package extensions theme packaging: specific information about how to package themes
multiple-item extension packaging: specific information about
multiple-item extension xpis xul application packaging: specific information about how to package xulrunner applications chrome registration printing in xul apps see also the following developer pages contain examples and discussions of particular topics: xul xul overlays developing extensions xulrunner developing themes ...
XPCOM glue
the xpcom glue is a static library which component developers and embedders can link against.
Components.lastResult
use failure result codes get converted by xpconnect into exceptions that are thrown into the calling javascript method.
mozIAsyncHistory
toolkit/components/places/moziasynchistory.idlscriptable this interface allows you to add
multiple visits to a single url in a batch.
mozIRegistry
as a simple c wrapper for the functions in nsreg.h.
mozIStorageStatement
ement( "select * " + "from table_name " + "where column_name like :userinput escape '/'" ); statement.params.userinput = statement.escapestringforlike(someuserinput, "/"); binding functions these functions are discussed in more detail with sample code in the overview document.
GetRelation
ethod returns accessible relation for this accessible object by index.
GetRelations
« nsiaccessible page summary this method returns
multiple accessible relations for this accessible object.
nsIAccessibleRelation
e the label and description can occur both on their own, and in the name or description fields of an nsiaccessible.
nsIAlertsService
ptional ); parameters imageurl a url identifying the image to display in the notification alert.
nsIAuthPrompt2
ow, or something else depending on the user interface) so that the user is not deluged with prompts.
nsIChannel
this channel is replacing another channel.
nsIContentPrefService
ivariant agroup, in astring aname, in nsivariant avalue); attributes attribute type description dbconnection mozistorageconnection the database connection to the content preferences database.
nsICryptoHMAC
parameters aascii if true then the returned value is a base-64 encoded string.
nsIDOMFontFace
ced gecko 7.0 inherits from: nsisupports last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) this object describes a single font.
nsIDOMHTMLSourceElement
the nsidomhtmlsourceelement interface is the dom interface to the source child of the audio and video media elements in html.
nsIDirectoryServiceProvider2
xpcom/io/nsidirectoryservice.idlscriptable an extension of nsidirectoryserviceprovider which allows
multiple files to be returned for the given key.
nsIGeolocationProvider
erbird 3.1 / fennec 1.0) reports whether or not the device is ready and has a position.
nsIHttpActivityObserver
ctivity data depending on the values of the aactivitytype and aactivitysubtype fields, the aextrasizedata and aextrastringdata parameters take on different meanings.
nsIHttpHeaderVisitor
visitheader() called by the nsihttpchannel implementation when visiting request and response headers.
nsIIdleService
in nsiobserver observer, in unsigned long time ); parameters observer the nsiobserver to be notified.
nsIJetpack
g amessagename, [optional] in jsval v1, optional [optional] in jsval v2, optional ...
nsIMemory
s will be passed as the value of adata when an explicit call to heapminimize() was made.
nsIMessageSender
idl file: mozilla-central/source/dom/base/nsimessagemanager.idl inherits from: nsimessagelistenermanager message senders enable clients to send asynchronous messages to a single "other side".
nsIMicrosummaryObserver
ning: 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 onelementappended(in nsimicrosummary microsummary); void onerror(in nsimicrosummary microsummary); methods oncontentloaded() called when an observed microsummary updates its content.
nsIMsgFolder
stofetch, in unsigned long anumkeys, in boolean alocalonly, in nsiurllistener aurllistener); addkeywordstomessages() used to set/clear tags - we could have a single method to setkeywords which would figure out the diffs, but these methods might be more convenient.
nsINavHistoryResultViewer
toolkit/components/places/public/nsinavhistoryservice.idlscriptable lets nsinavhistoryresult instances notify places views of changes in the results.
nsIPlacesView
the insertionpoint at which new items will be inserted upon drop, paste, or creation.
nsIRequest
ispending() indicates whether the request is pending.
nsIScreenManager
tive widget implementation, and is typically of the same type as ns_native_window.
nsIWebBrowserFindInFrames
embedding/components/find/public/nsiwebbrowserfind.idlscriptable controls how find behaves when
multiple frames or iframes are present.
nsIWindowWatcher
e into the browsing context (window, <iframe> or tab) with the specified name.
nsIZipReader
at2 returns matches to the pattern 'pat' which do not also match the pattern 'pat2'.
XUL Overlays
: 1em; width: 100%;"> <html:input type="checkbox" id="dialog.newwindow"/> <html:label for="dialog.newwindow">&openwin.label;</html:label> <spring flex="100%"/> </box> <box id="okcancelbuttons"/> for more detail, see the ok and cancel button definitions being referenced here in the global component file platformdialogoverlay.xul.
Index
ilds thunderbird debug, thunderbird mapi (messaging application programming interface) is a windows feature that allows applications to send files via a system's default mail application.
Mail client architecture overview
the following basic building blocks account management - the account manager is the root object of the server/folder/message hierarchy.
Mail composition back end
ing messages the primary responsibility of the back end is for the creation and sending of rfc822 messages.
Declaring and Calling Functions
example: no input parameters in this example, we declare the libc clock() function, which returns the elapsed time since system startup, then fetch and output that value.
Working with data
cdata { length: 4 }` console.log(cstr_notnullterminated.tostring()); // outputs to browser console: `"ctypes.char16_t.array(5)(["r", "a", "w", "r"])"` this works fine as well.
js-ctypes
c++ support is possible through vtable pointers see using com from js-ctypes.
Drawing and Event Handling - Plugins
re invoked with an html object element that has been hidden with css rules (see plug-in display modes in the introduction) or with an embed element whose hidden attribute has been set.
Debugger.Source - Firefox Developer Tools
ains both top-level code and function definitions, perhaps with nested functions, then the debugger.script instances for those all refer to the same debugger.source instance.
Examine and edit the box model - Firefox Developer Tools
viewing the box model with the select element button pressed, if you hover over an element in the page, the box model for the element is shown overlaid on the page: it's also shown overlaid if you hover over an element's markup in the html pane: if the element is inline and is split over
multiple line boxes, the highlighter shows each individual line box that together make up the element: the box model view when an element's selected, you can get a detailed look at the box model in the box model view: if you hover over a value, you'll see a tooltip telling you which rule the value comes from: if you hover over part of the box model in the box model view, the corresponding part of the page is highlighted: editing the box model you can also edit the values in the box mod...
Firefox Developer Tools
an open the firefox developer tools from the menu by selecting tools > web developer > toggle tools or use the keyboard shortcut ctrl + shift + i or f12 on windows and linux, or cmd + opt + i on macos.
ANGLE_instanced_arrays.vertexAttribDivisorANGLE() - Web APIs
the angle_instanced_arrays.vertexattribdivisorangle() method of the webgl api modifies the rate at which generic vertex attributes advance when rendering
multiple instances of primitives with ext.drawarraysinstancedangle() and ext.drawelementsinstancedangle().
AbstractRange - Web APIs
e" in the <em> within the paragraph below it, the following code would work: let r = document.createrange(); let startnode = document.queryselector("section h2").childnodes[0]; r.setstart(startnode, 11); let endnode = document.queryselector("#entry1 p em").childnodes[0]; r.setend(endnode, 2); let fragment = r.clonecontents(); here an interesting problem arises—we are capturing content from
multiple nodes located at different levels of the dom hierarchy, and then only part of one of them.
AudioListener - Web APIs
uld be used to control the doppler effect applied to audiobuffersourcenodes connected downstream — these would be pitched up and down according to the relative speed of the pannernode and the audiolistener.
AudioParamMap - Web APIs
the web audio api interface audioparammap represents a set of
multiple audio parameters, each described as a mapping of a domstring identifying the parameter to the audioparam object representing its value.
CSSRuleList - Web APIs
y), and neither can it be assigned to one (as stylesheet.cssrules is read-only), but it must unfortunately be inserted into one, rule by rule, and unless combining lists, after any existing list therein is deleted, rule by rule.
CanvasRenderingContext2D.createImageData() - Web APIs
= canvas.getcontext('2d'); const imagedata = ctx.createimagedata(100, 50); console.log(imagedata); // imagedata { width: 100, height: 50, data: uint8clampedarray[20000] } filling a blank imagedata object this example creates and fills a new imagedata object with purple pixels.
CanvasRenderingContext2D.setLineDash() - Web APIs
setlinedash([5, 15]); ctx.moveto(0, 50); ctx.lineto(300, 50); ctx.stroke(); // solid line ctx.beginpath(); ctx.setlinedash([]); ctx.moveto(0, 100); ctx.lineto(300, 100); ctx.stroke(); result some common patterns this example illustrates a variety of common line dash patterns.
Compositing and clipping - Web APIs
compare clipping paths to the globalcompositeoperation property we've seen above, we see two compositing modes that achieve more or less the same effect in source-in and source-atop.
Binary strings - Web APIs
and so forth) it has become clear that there are times when it would be helpful for javascript code to be able to quickly and easily manipulate raw binary data.
DedicatedWorkerGlobalScope.postMessage() - Web APIs
ult); } in the main script, onmessage would have to be called on a worker object, whereas inside the worker script you just need onmessage because the worker is effectively the global scope (dedicatedworkerglobalscope).
DocumentTimeline - Web APIs
uctor documenttimeline() creates a new documenttimeline object associated with the active document of the current browsing context.
Introduction to the DOM - Web APIs
properties, methods, and events available for manipulating and creating web pages are organized into objects (for example, the document object that represents the document itself, the table object that implements the special htmltableelement dom interface for accessing html tables, and so forth).
DynamicsCompressorNode - Web APIs
the dynamicscompressornode interface provides a compression effect, which lowers the volume of the loudest parts of the signal in order to help prevent clipping and distortion that can occur when
multiple sounds are played and
multiplexed together at once.
Element.animate() - Web APIs
the element interface's animate() method is a shortcut method which creates a new animation, applies it to the element, then plays the animation.
Element.classList - Web APIs
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, depending 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 class "foo" with class "bar" div.classlist.replace("foo", "bar"); versions of firefox before 26 do not implement the use of several arguments in the add/r...
Element.getElementsByClassName() - Web APIs
ass 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 descendant 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 elements in the collection.
Event.cancelable - Web APIs
the cancelable read-only property of the event interface indicates whether the event can be canceled, and therefore prevented as if the event never happened.
Fetch API - Web APIs
se that might require you to generate your responses programmatically (that is, the use of computer program or personal programming instructions).
File.lastModified - Web APIs
read-only property provides the last modified date of the file as the number of milliseconds since the unix epoch (january 1, 1970 at midnight).
FileReader.readAsDataURL() - Web APIs
function previewfile() { const preview = document.queryselector('img'); const file = document.queryselector('input[type=file]').files[0]; const reader = new filereader(); reader.addeventlistener("load", function () { // convert image file to base64 string preview.src = reader.result; }, false); if (file) { reader.readasdataurl(file); } } live result example reading
multiple files html <input id="browse" type="file" onchange="previewfiles()"
multiple> <div id="preview"></div> javascript function previewfiles() { var preview = document.queryselector('#preview'); var files = document.queryselector('input[type=file]').files; function readandpreview(file) { // make sure `file.name` matches our extensions criteria if ( /\.(jpe?g|png|gif)$/i.test(fil...
FormData.get() - Web APIs
the get() method of the formdata interface returns the first value associated with a given key from within a formdata object.
Gamepad.index - Web APIs
the gamepad.index property of the gamepad interface returns an integer that is auto-incremented to be unique for each device currently connected to the system.
HTMLImageElement.src - Web APIs
ingle image, rather than a set of images from which the browser selects the best match for the viewport size and display pixel density, the src attribute is a usvstring specifying the url of the desired image.
HTMLInputElement.stepDown() - Web APIs
the htmlinputelement.stepdown([n]) method decrements the value of a numeric type of <input> element by the value of the step attribute or up to n
multiples of the step attribute if a number is passed as the parameter.
HTMLOutputElement - Web APIs
e are problems, fires an invalid event at the element, and returns false; if there are no problems, it returns true.
HTMLSelectElement.form - Web APIs
x edit aform = aselectelement.form.selectname; example html <form action="http://www.google.com/search" method="get"> <label>google: <input type="search" name="q"></label> <input type="submit" value="search..."> </form> javascript a property available on all form elements, "type" returns the type of the calling form element.
Headers - Web APIs
aders.set() sets a new value for an existing header inside a headers object, or adds the header if it does not already exist.
Ajax navigation example - Web APIs
switching protocols", 102: "processing", 200: "ok", 201: "created", 202: "accepted", 203: "non-authoritative information", 204: "no content", 205: "reset content", 206: "partial content", 207: "multi-status", 208: "already reported", 226: "im used", 300: "
multiple choices", 301: "moved permanently", 302: "found", 303: "see other", 304: "not modified", 305: "use proxy", 306: "reserved", 307: "temporary redirect", 308: "permanent redirect", 400: "bad request", 401: "unauthorized", 402: "payment required", 403: "forbi...
IDBCursorSync - Web APIs
important: the synchronous version of the indexeddb api was originally intended for use only with web workers, and was eventually removed from the spec because its need was questionable.
IDBCursorWithValue - Web APIs
the idbcursorwithvalue interface of the indexeddb api represents a cursor for traversing or iterating over
multiple records in a database.
IDBObjectStore.delete() - Web APIs
the delete() method of the idbobjectstore interface returns an idbrequest object, and, in a separate thread, deletes the specified record or records.
ImageData.data - Web APIs
imagedata = new imagedata(100, 100); console.log(imagedata.data); // uint8clampedarray[40000] console.log(imagedata.data.length); // 40000 filling a blank imagedata object this example creates and fills a new imagedata object with colorful pixels.
InstallEvent - Web APIs
all and delays treating the serviceworkerregistration.installing worker as installed until the passed promise resolves successfully.
InstallTrigger - Web APIs
talltrigger object is install, which downloads and installs one or more software packages archived in the xpi file format.
Timing element visibility with the Intersection Observer API - Web APIs
box) { adbox.dataset.lastviewstarted = performance.now(); }); visibleads = previouslyvisibleads; previouslyvisibleads = null; } } since the event itself doesn't state whether the document has switched from visible to invisible or vice-versa, the document.hidden property is checked to see if the document is not currently visible.
Locks.name - Web APIs
the name read-only property of the lock interface returns the name passed to lockmanager.request selected when the lock was requested.
MediaImage - Web APIs
the media session api's mediaimage dictionary describes the images associated with the media resource mediametadata.
MessagePort.postMessage() - Web APIs
the postmessage() method of the messageport interface sends a message from the port, and optionally, transfers ownership of objects to other browsing contexts.
MutationObserver.observe() - Web APIs
l false.) the value of options.attributes is false (indicating that attribute changes are not to be monitored), but attributeoldvalue is true and/or attributefilter is present.
NavigatorConcurrentHardware - Web APIs
ntent to determine how many logical processors the user has available, in order to let content and web apps optimize their operations to best take advantage of the user's cpu.
NetworkInformation.downlink - Web APIs
the downlink read-only property of the networkinformation interface returns the effective bandwidth estimate in megabits per second, rounded to the nearest
multiple of 25 kilobits per seconds.
NetworkInformation.rtt - Web APIs
the networkinformation.rtt read-only property returns the estimated effective round-trip time of the current connection, rounded to the nearest
multiple of 25 milliseconds.
Node.compareDocumentPosition() - Web APIs
document_position_contained_by 16 document_position_implementation_specific 32 syntax comparemask = node.comparedocumentposition(othernode) parameters othernode the other node with which to compare the first node’s document position.
Node.lookupPrefix() - Web APIs
the node.lookupprefix() method returns a domstring containing the prefix for a given namespace uri, if present, and null if not.
Node - Web APIs
equalnode() returns a boolean which indicates whether or not two nodes are of the same type and all their defining data points match.
ParentNode.querySelectorAll() - Web APIs
, and documentfragment.queryselectorall() syntax elementlist = parentnode.queryselectorall(selectors); parameters selectors a domstring containing one or more selectors to match against.
PaymentRequest.show() - Web APIs
s show() method has been called, any other call to show() will by rejected with an aborterror until the returned promise has been concluded, either by being fulfilled with a paymentresponse indicating the results of the payment request, or by being rejected with an error.
PushMessageData - Web APIs
the pushmessagedata interface of the push api provides methods which let you retrieve the push data sent by a server in various formats.
RTCDataChannel.send() - Web APIs
ection; if it hasn't finished doing so (that is, its readystate is "connecting"), this error occurs without sending or buffering the data.
ResizeObserverEntry.borderBoxSize - Web APIs
the borderboxsize read-only property of the resizeobserverentry interface returns an array containing the new border box size of the observed element when the callback is run.
Response.clone() - Web APIs
the clone() method of the response interface creates a clone of a response object, identical in every way, but stored in a different variable.
SVGAElement.target - Web APIs
the svgaelement.target read-only property of svgaelement returns an svganimatedstring object that specifies the portion of a target window, frame, pane into which a document is to be opened when a link is activated.
SharedWorker.port - Web APIs
the port property of the sharedworker interface returns a messageport object used to communicate and control the shared worker.
SpeechRecognitionResult - Web APIs
the speechrecognitionresult interface of the web speech api represents a single recognition match, which may contain
multiple speechrecognitionalternative objects.
Touch.screenX - Web APIs
example this example illustrates how to access the touch object's touch.screenx and touch.screeny properties.
TransformStream - Web APIs
holder */ class jstextdecoderstream extends transformstream { constructor(encoding = 'utf-8', {...options} = {}) { let t = {...tds, encoding, options} super(t) _jstes_wm.set(this, t) } get encoding() {return _jstds_wm.get(this).decoder.encoding} get fatal() {return _jstds_wm.get(this).decoder.fatal} get ignorebom() {return _jstds_wm.get(this).decoder.ignorebom} } chaining
multiple readablestreams together this is a useful one, where
multiple streams can be conjoined.
WebGL2RenderingContext.vertexAttribDivisor() - Web APIs
the webgl2renderingcontext.vertexattribdivisor() method of the webgl 2 api modifies the rate at which generic vertex attributes advance when rendering
multiple instances of primitives with gl.drawarraysinstanced() and gl.drawelementsinstanced().
WebGLTransformFeedback - Web APIs
the webgltransformfeedback interface is part of the webgl 2 api and enables transform feedback, which is the process of capturing primitives generated by vertex processing.
A basic 2D WebGL animation example - Web APIs
ffer(); gl.bindbuffer(gl.array_buffer, vertexbuffer); gl.bufferdata(gl.array_buffer, vertexarray, gl.static_draw); vertexnumcomponents = 2; vertexcount = vertexarray.length/vertexnumcomponents; currentangle = 0.0; rotationrate = 6; animatescene(); } after getting the webgl context, gl, we need to begin by building the shader program.
Lifetime of a WebRTC session - Web APIs
ow big it was, how fast it was growing, and the limitations of the 32-bit ip addressing system, and realized that something had to be done before we ran out of addresses to use, so they started working on designing a new 64-bit addressing system.
Using DTMF with WebRTC - Web APIs
ail systems entry of credit card or other payment information passcode entry note: while the dtmf is not sent to the remote peer as audio, browsers may choose to play the corresponding tone to the local user as part of their user experience, since users are typically used to hearing their phone play the tones audibly.
WebXR permissions and security - Web APIs
several areas of security to contend with, from establishing feature-policy to ensuring the user intends to use the mixed reality presentation before activating it.
WebXR Device API - Web APIs
nput profiles a guide to interpreting the json data provided by the webxr input profiles registry, which can be used to determine what options and controls are available on the user's available input devices.
Web Speech API - Web APIs
gnitionevent the event object for the result and nomatch events, and contains all the data associated with an interim or final speech recognition result.
Window.sessionStorage - Web APIs
rage; the difference is that while data in localstorage doesn't expire, data in sessionstorage is cleared when the page session ends.
Worker.prototype.postMessage() - Web APIs
rker.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.onchange = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } for a full example, see ourbasic dedicated worker example (run dedicated worker).
XRSystem: requestSession() - Web APIs
the xrsystem interface's requestsession() method returns a promise which resolves to an xrsession object through which you can manage the requested type of webxr session.
XRViewerPose - Web APIs
the webxr device api interface xrviewerpose represents the pose (the position and orientation) of a viewer's point of view on the scene.
Introduction - Web APIs
introduction one noticeable trend in w3c standards has been the effort to separate content from style.
ARIA live regions - Accessibility
liteness_setting is used to set the priority with which screen reader should treat updates to live regions - the possible settings are: off, polite or assertive.
Using the alert role - Accessibility
es to submit the form with less than 3 checkboxes selected: document.getelementbyid("forminstruction").setattribute("role", "alert"); example 4: making an element with an alert role visible if an element already has role="alert" and is initially hidden using css, making it visible will cause the alert to fire as if it was just added to the page.
ARIA: img role - Accessibility
the aria img role can be used to identify
multiple elements inside page content that should be considered as a single image.
Mobile accessibility checklist - Accessibility
t bold.) information conveyed via colour must be also available by other means too (underlined text for links, etc.) visibility content hiding techniques such as zero opacity, z-index order and off-screen placement must not be used exclusively to handle visibility.
src - CSS: Cascading Style Sheets
src: url(path/to/font.woff) format("woff"); /* explicit format */ src: url('path/to/font.woff'); /* quoted url */ src: url(path/to/svgfont.svg#example); /* fragment identifying font */ /* <font-face-name> values */ src: local(font); /* unquoted name */ src: local(some font); /* name containing space */ src: local("font"); /* quoted name */ /*
multiple items */ src: local(font), url(path/to/font.svg) format("svg"), url(path/to/font.woff) format("woff"), url(path/to/font.otf) format("opentype"); values <url> [ format( <string># ) ]?
CSS Backgrounds and Borders - CSS: Cascading Style Sheets
repeat border-image-slice border-image-source border-image-width border-left border-left-color border-left-style border-left-width border-radius border-right border-right-color border-right-style border-right-width border-style border-top border-top-color border-top-left-radius border-top-right-radius border-top-style border-top-width border-width box-shadow tools using
multiple backgrounds explains how to set one or more backgrounds on an element.
backdrop-filter - CSS: Cascading Style Sheets
l(commonfilters.svg#filter); /* <filter-function> values */ backdrop-filter: blur(2px); backdrop-filter: brightness(60%); backdrop-filter: contrast(40%); backdrop-filter: drop-shadow(4px 4px 10px blue); backdrop-filter: grayscale(30%); backdrop-filter: hue-rotate(120deg); backdrop-filter: invert(70%); backdrop-filter: opacity(20%); backdrop-filter: sepia(90%); backdrop-filter: saturate(80%); /*
multiple filters */ backdrop-filter: url(filters.svg#filter) blur(4px) saturate(150%); /* global values */ backdrop-filter: inherit; backdrop-filter: initial; backdrop-filter: unset; syntax values none no filter is applied to the backdrop.
background - CSS: Cascading Style Sheets
background: pink; } .topbanner { background: url("https://mdn.mozillademos.org/files/11983/starsolid.gif") #99f repeat-y fixed; } result specifications specification status comment css backgrounds and borders module level 3the definition of 'background' in that specification.
break-after - CSS: Cascading Style Sheets
mputed valueas specifiedanimation typediscrete formal syntax auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region examples breaking into neat columns in the following example we have a container that contains an <h1> spanning all columns (achieved using column-span: all) and a series of <h2>s and paragraphs laid out in
multiple columns using column-width: 200px.
break-before - CSS: Cascading Style Sheets
mputed valueas specifiedanimation typediscrete formal syntax auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region examples breaking into neat columns in the following example we have a container that contains an <h1> spanning all columns (achieved using column-span: all) and a series of <h2>s and paragraphs laid out in
multiple columns using column-width: 200px.
break-inside - CSS: Cascading Style Sheets
l definition initial valueautoapplies toblock-level elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax auto | avoid | avoid-page | avoid-column | avoid-region examples avoiding breaking inside a figure in the following example we have a container that contains an <h1> spanning all columns (achieved using column-span: all) and a series of paragraphs laid out in
multiple columns using column-width: 200px.
flex-flow - CSS: Cascading Style Sheets
on: rowflex-wrap: nowrapapplies toflex containersinheritednocomputed valueas each of the properties of the shorthand:flex-direction: as specifiedflex-wrap: as specifiedanimation typediscrete formal syntax <'flex-direction'> | <'flex-wrap'> examples setting column-reverse and wrap element { /* main-axis is the block direction with reversed main-start and main-end.
grid-auto-columns - CSS: Cascading Style Sheets
mns: 10%; grid-auto-columns: 33.3%; /* <flex> values */ grid-auto-columns: 0.5fr; grid-auto-columns: 3fr; /* minmax() values */ grid-auto-columns: minmax(100px, auto); grid-auto-columns: minmax(max-content, 2fr); grid-auto-columns: minmax(20%, 80vmax); /* fit-content() values */ grid-auto-columns: fit-content(400px); grid-auto-columns: fit-content(5cm); grid-auto-columns: fit-content(20%); /*
multiple track-size values */ grid-auto-columns: min-content max-content auto; grid-auto-columns: 100px 150px 390px; grid-auto-columns: 10% 33.3%; grid-auto-columns: 0.5fr 3fr 1fr; grid-auto-columns: minmax(100px, auto) minmax(max-content, 2fr) minmax(20%, 80vmax); grid-auto-columns: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px); /* global values */ grid-auto-columns: inherit; grid-auto-columns:...
grid-auto-rows - CSS: Cascading Style Sheets
ntent; grid-auto-rows: auto; /* <length> values */ grid-auto-rows: 100px; grid-auto-rows: 20cm; grid-auto-rows: 50vmax; /* <percentage> values */ grid-auto-rows: 10%; grid-auto-rows: 33.3%; /* <flex> values */ grid-auto-rows: 0.5fr; grid-auto-rows: 3fr; /* minmax() values */ grid-auto-rows: minmax(100px, auto); grid-auto-rows: minmax(max-content, 2fr); grid-auto-rows: minmax(20%, 80vmax); /*
multiple track-size values */ grid-auto-rows: min-content max-content auto; grid-auto-rows: 100px 150px 390px; grid-auto-rows: 10% 33.3%; grid-auto-rows: 0.5fr 3fr 1fr; grid-auto-rows: minmax(100px, auto) minmax(max-content, 2fr) minmax(20%, 80vmax); grid-auto-rows: 100px minmax(100px, auto) 10% 0.5fr fit-content(400px); /* global values */ grid-auto-rows: inherit; grid-auto-rows: initial; grid-auto-rows...
grid-template-areas - CSS: Cascading Style Sheets
> values */ grid-template-areas: "a b"; grid-template-areas: "a b b" "a c d"; /* global values */ grid-template-areas: inherit; grid-template-areas: initial; grid-template-areas: unset; values none the grid container doesn’t define any named grid areas.
mask - CSS: Cascading Style Sheets
in svg graphic used as horizontally repeated mask */ mask: url(masks.svg#star) stroke-box; /* element within svg graphic used as mask extending 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 width of 16px */ url(masks.svg#circle) right / 16px repeat-y; /* element within svg graphic is used as a mask on the right-hand side with a width of 16px */ values <mask-reference> sets the mask image source.
text-decoration-color - CSS: Cascading Style Sheets
: cyan; } s { text-decoration-line: line-through; text-decoration-color: red; text-decoration-style: wavy; } specifications specification status comment css text decoration module level 3the definition of 'text-decoration-color' in that specification.
rotate() - CSS: Cascading Style Sheets
a)0000100001 [cos(a) sin(a) -sin(a) cos(a) 0 0] examples basic example html <div>normal</div> <div class="rotated">rotated</div> css div { width: 80px; height: 80px; background-color: skyblue; } .rotated { transform: rotate(45deg); /* equal to rotatez(45deg) */ background-color: pink; } result combining rotation with another transformation if you want apply
multiple transformations to an element, be careful about the order in which you specify your transformations.
url() - CSS: Cascading Style Sheets
kground: url('https://mdn.mozillademos.org/files/16761/star.gif') bottom right repeat-x blue; border-image: url("/media/diamonds.png") 30 fill / 30px / 30px space; /* as a parameter in another css function */ background-image: cross-fade(20% url(first.png), url(second.png)); mask-image: image(url(mask.png), skyblue, linear-gradient(rgba(0, 0, 0, 1.0), transparent); /* as part of a non-shorthand
multiple value */ content: url(star.svg) url(star.svg) url(star.svg) url(star.svg) url(star.svg); /* at-rules */ @document url("https://www.example.com/") { ...
exsl:node-set() - EXSLT
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes exsl:node-set() returns a node-set from a result tree fragment, which is what you get when you look at the xsl:variable instead of its select attribute to fetch a variable's value.
Cross-browser audio basics - Developer guides
pporting browsers goes here --> <p>your browser does not support html5 audio, but you can still <a href="audiofile.mp3">download the music</a>.</p> </audio> note: you can also use an mp4 file instead of mp3.
DOM onevent handlers - Developer guides
as click) for a given object in different ways: adding an html attribute named on<eventtype>: <button onclick="handleclick()">, or by setting the corresponding property from javascript: document.queryselector("button").onclick = function(event) { … }.
Writing forward-compatible websites - Developer guides
t 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.
Evolution of HTTP - HTTP
ncrease in responsiveness, and solving the problem of duplication of data transmitted, spdy served as the foundations of the http/2 protocol.
CORS errors - HTTP
‘true’ in cors header ‘access-control-allow-credentials’ reason: cors preflight channel did not succeed reason: invalid token ‘xyz’ in cors header ‘access-control-allow-methods’ reason: invalid token ‘xyz’ in cors header ‘access-control-allow-headers’ reason: missing token ‘xyz’ in cors header ‘access-control-allow-headers’ from cors preflight channel reason:
multiple cors header ‘access-control-allow-origin’ not allowed ...
HTTP caching - HTTP
retrieval request: a 200 (ok) response to a get request containing a resource like html documents, images or files.
Content negotiation - HTTP
resource is called is determined by content negotiation and there are several ways of negotiating between the client and the server.
Using HTTP cookies - HTTP
contain images or other components stored on servers in other domains (for example, ad banners), which may set third-party cookies.
Accept-Language - HTTP
a better user experience, this is rarely done and more common way is to ignore the accept-language header in this case.
Access-Control-Allow-Origin - HTTP
ol-allow-origin: null directives * for requests without credentials, the literal value "*" can be specified, as a wildcard; the value tells browsers to allow requesting code from any origin to access the resource.
Alt-Svc - HTTP
n be cached for up to <max-age> seconds, minus the age of the response (from the age header).
Content-Type - HTTP
data; boundary=something directives media-type the mime type of the resource or the data.
Digest - HTTP
the digest response http header provides a digest of the requested resource.
Public-Key-Pins-Report-Only - HTTP
idden header name no syntax public-key-pins-report-only: pin-sha256="<pin-value>"; max-age=<expire-time>; includesubdomains; report-uri="<uri>" directives pin-sha256="<pin-value>" the quoted string is the base64 encoded subject public key information (spki) fingerprint.
Public-Key-Pins - HTTP
header type response header forbidden header name no syntax public-key-pins: pin-sha256="<pin-value>"; max-age=<expire-time>; includesubdomains; report-uri="<uri>" directives pin-sha256="<pin-value>" the quoted string is the base64 encoded subject public key information (spki) fingerprint.
Referrer-Policy - HTTP
ying a fallback policy if you want to specify a fallback policy in any case the desired policy hasn't got wide enough browser support, use a comma-separated list with the desired policy specified last: referrer-policy: no-referrer, strict-origin-when-cross-origin in the above scenario, no-referrer will only be used if strict-origin-when-cross-origin is not supported by the browser.
Set-Cookie2 - HTTP
ookie-value>; discard set-cookie2: <cookie-name>=<cookie-value>; domain=<domain-value> set-cookie2: <cookie-name>=<cookie-value>; max-age=<non-zero-digit> set-cookie2: <cookie-name>=<cookie-value>; path=<path-value> set-cookie2: <cookie-name>=<cookie-value>; port=<port-number> set-cookie2: <cookie-name>=<cookie-value>; secure set-cookie2: <cookie-name>=<cookie-value>; version=<version-number> //
multiple directives are also possible, for example: set-cookie2: <cookie-name>=<cookie-value>; domain=<domain-value>; secure //
multiple cookies are seperated by a comma set-cookie2: <cookie-name>=<cookie-value>, <cookie-name>=<cookie-value>, ...
User-Agent - HTTP
ail firefox/firefoxversion mozilla/5.0 is the general token that says the browser is mozilla-compatible.
Want-Digest - HTTP
er may respond with: a digest calculated using a different digest algorithm, or a 400 bad request error, and include another want-digest header with that response, listing the algorithms that it does support.
Proxy Auto-Configuration (PAC) file - HTTP
proxy host:port the specified proxy should be used socks host:port the specified socks server should be used recent versions of firefox support as well: http host:port the specified proxy should be used https host:port the specified https proxy should be used socks4 host:port socks5 host:port the specified socks server (with the specified sock version) should be used if there are
multiple semicolon-separated settings, the left-most setting will be used, until firefox fails to establish the connection to the proxy.
HTTP range requests - HTTP
tial content status: http/1.1 206 partial content content-range: bytes 0-1023/146515 content-length: 1024 ...
506 Variant Also Negotiates - HTTP
the hypertext transfer protocol (http) 506 variant also negotiates response status code may be given in the context of transparent content negotiation (see rfc 2295).
Classes - JavaScript
this.name = name; } speak() { console.log(`${this.name} makes a noise.`); } } class lion extends cat { speak() { super.speak(); console.log(`${this.name} roars.`); } } let l = new lion('fuzzy'); l.speak(); // fuzzy makes a noise.
Functions - JavaScript
the arrow function expression (=>) an arrow function expression has a shorter syntax and lexically binds its this value (see arrow functions for details): ([param[, param]]) => { statements } param => expression param the name of an argument.
Array() constructor - JavaScript
fruits.length); // 2 console.log(fruits[0]); // "apple" array constructor with a single parameter arrays can be created using a constructor with a single number parameter.
BigInt64Array - JavaScript
right() applies a function against an accumulator and each value of the array (from right-to-left) so as to reduce it to a single value.
BigUint64Array - JavaScript
ght() applies a function against an accumulator and each value of the array (from right-to-left) so as to reduce it to a single value.
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.
Float32Array - JavaScript
.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Float64Array - JavaScript
.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Int16Array - JavaScript
type.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Int32Array - JavaScript
type.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Int8Array - JavaScript
totype.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Intl - JavaScript
the requested locale(s) against the locales they support using an algorithm specified in the options.localematcher property.
Promise.allSettled() - JavaScript
the promise.allsettled() method returns a promise that resolves after all of the given promises have either fulfilled or rejected, with an array of objects that each describes the outcome of each promise.
TypedArray - JavaScript
type.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Uint16Array - JavaScript
pe.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Uint32Array - JavaScript
pe.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Uint8Array - JavaScript
type.reduceright() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
Uint8ClampedArray - JavaScript
ht() apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value.
WebAssembly.Global() constructor - JavaScript
a webassembly.global() constructor creates a new global object representing a global variable instance, accessible from both javascript and importable/exportable across one or more webassembly.module instances.
WebAssembly.Global - JavaScript
a webassembly.global object represents a global variable instance, accessible from both javascript and importable/exportable across one or more webassembly.module instances.
WebAssembly.Module() constructor - JavaScript
a webassembly.module() constructor creates a new module object containing stateless webassembly code that has already been compiled by the browser and can be efficiently shared with workers, and instantiated
multiple times.
WebAssembly.Module - JavaScript
a webassembly.module object contains stateless webassembly code that has already been compiled by the browser — this can be efficiently shared with workers, and instantiated
multiple times.
eval() - JavaScript
statements that assigns z a value of 42 if x is five, and assigns 0 to z otherwise.
Iteration protocols - JavaScript
// true function* idmaker() { let index = 0; while (true) { yield index++; } } let gen = idmaker() console.log(gen.next().value); // '0' console.log(gen.next().value); // '1' console.log(gen.next().value); // '2' // ...
Object initializer - JavaScript
pe) let obj2 = {__proto__: null} assert(object.getprototypeof(obj2) === null) let protoobj = {} let obj3 = {'__proto__': protoobj} assert(object.getprototypeof(obj3) === protoobj) let obj4 = {__proto__: 'not an object or null'} assert(object.getprototypeof(obj4) === object.prototype) assert(!obj4.hasownproperty('__proto__')) only a single prototype mutation is permitted in an object literal.
Optional chaining (?.) - JavaScript
-circuiting evaluation when using optional chaining with expressions, if the left operand is null or undefined, the expression will not be evaluated.
export - JavaScript
the default export export * as name1 from …; // draft ecmascript® 2o21 export { name1, name2, …, namen } from …; export { import1 as name1, import2 as name2, …, namen } from …; export { default } from …; namen identifier to be exported (so that it can be imported via import in another script).
for - JavaScript
if the expression evaluates to false, execution skips to the first expression following the for construct.
iarc_rating_id - Web app manifests
type string mandatory no the iarc_rating_id member is a string that represents the international age rating coalition (iarc) certification code of the web application.
Digital audio concepts - Web media technologies
representing audio in digital form involves a number of steps and processes, with
multiple formats available both for the raw audio and the encoded or compressed audio which is actually used on the web.
OpenSearch description format
el="search" type="application/opensearchdescription+xml" title="searchtitle" href="pluginurl"> replace the bolded items as explained below: searchtitle the name of the search to perform, such as "search mdc" or "yahoo!
href - SVG: Scalable Vector Graphics
animate, animatemotion, animatetransform, set for the <animate>, <animatemotion>, <animatetransform>, and <set>, href defines a url referring to the element which is the target of this animation element and which therefore will be modified over time.
result - SVG: Scalable Vector Graphics
)"/> </svg> usage notes value <filter-primitive-reference> default value none animatable yes <filter-primitive-reference> this value is a <custom-ident> and defines the name for the filter primitive.
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
ct property only none and non-scaling-stroke values are supported (bug 528332 (firefox 15 / thunderbird 15 / seamonkey 2.12), bug 1318208) arcs value for stroke-linejoin not implemented (bug 1239142) auto-start-reverse value for <marker>'s orient attribute implemented (bug 879659) svgpaint removed implementation status unknown fill and stroke taking
multiple paints implementation status unknown z-index not implemented (bug 360148 child(<integer>) paint value implementation status unknown display of zero-length subpaths depends on stroke-linecap attribute implementation status unknown markers on all shapes implementation status unknown <marker> element display defined in ua style sheet imp...