Search completed in 1.38 seconds.
KeyboardEvent.key - Web APIs
the
keyboardevent interface's
key read-only property returns the value of the
key pressed by the user, taking into consideration the state of modifier
keys such as shift as well as the
keyboard locale and layout.
... its value is determined as follows:
key values see a full list of
key values.
... if the pressed
key has a printed representation, the returned value is a non-empty unicode character string containing the printable representation of the
key.
...And 46 more matches
KeyframeEffect.setKeyframes() - Web APIs
the set
keyframes() method of the
keyframeeffect interface replaces the
keyframes that make up the affected
keyframeeffect with a new set of
keyframes.
... syntax existing
keyframeeffect.set
keyframes(
keyframes); parameters
keyframes a
keyframe object or null.
... if set to null, the
keyframes are replaced with a sequence of empty
keyframes.
...And 24 more matches
KeyboardEvent.initKeyEvent() - Web APIs
the
keyboardevent.init
keyevent() method is used to initialize the value of an event created using document.createevent("
keyboardevent").
... events initialized in this way must have been created with the document.createevent("
keyboardevent") method.
... init
keyevent() must be called to set the event before it is dispatched.
...And 13 more matches
KeyboardEvent.keyCode - Web APIs
the deprecated
keyboardevent.
keycode read-only property represents a system and implementation dependent numerical code identifying the unmodified value of the pressed
key.
... this is usually the decimal ascii (rfc 20) or windows 1252 code corresponding to the
key.
... if the
key can't be identified, this value is 0.
...And 8 more matches
KeyframeEffect.getKeyframes() - Web APIs
the get
keyframes() method of a
keyframeeffect returns an array of the computed
keyframes that make up this animation along with their computed offsets.
... syntax var
keyframes =
keyframeeffect.get
keyframes(); parameters none.
... return value returns a sequence of objects with the following format: property value pairs as many property value pairs as are contained in each
keyframe of the animation.
...And 7 more matches
KeyframeEffect.KeyframeEffect() - Web APIs
the
keyframeeffect() constructor of the web animations api returns a new
keyframeeffect object instance, and also allows you to clone an existing
keyframe effect object instance.
... syntax var
keyframes = new
keyframeeffect(element,
keyframeset,
keyframeoptions); var
keyframes = new
keyframeeffect(source
keyframes); parameters the first type of constructor (see above) creates a completely new
keyframeeffect object instance.
...
keyframeset an
keyframe object or null.
...And 5 more matches
KeyboardEvent.metaKey - Web APIs
the
keyboardevent.meta
key read-only property returning a boolean that indicates if the meta
key was pressed (true) or not (false) when the event occurred.
... some operating systems may intercept the
key so it is never detected.
... note: on macintosh
keyboards, this is the ⌘ command
key.
...And 4 more matches
PublicKeyCredentialCreationOptions.pubKeyCredParams - Web APIs
the pub
keycredparams property of the public
keycredentialcreationoptions dictionary is an array whose elements are objects describing the desired features of the credential to be created.
... these objects define the type of public-
key and the algorithm used for cryptographic signature operations.
... syntax pub
keycredparams = public
keycredentialcreationoptions.pub
keycredparams value an array whose elements are objects with the following properties: type a string describing type of public-
key credential to be created.
...And 4 more matches
KeyboardEvent.initKeyboardEvent() - Web APIs
the
keyboardevent.init
keyboardevent() method initializes the attributes of a
keyboard event object.
... syntax kbdevent.init
keyboardevent(typearg, canbubblearg, cancelablearg, viewarg, chararg,
keyarg, locationarg, modifierslistarg, repeat) parameters typearg the type of
keyboard event; this will be one of
keydown,
keypress, or
keyup.
...
keyarg the value of the
key attribute.
...And 2 more matches
MediaKeySession.onkeystatuseschange - Web APIs
the on
keystatuseschange property of the media
keysession is an event handler, fired whenever a
keystatuschange event ocurrs, denoting there has been a change in the
keys or their statuses within a session.
..." fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/media
keysession" target="_top"><rect x="151" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="226" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">media
keysession</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} syntax media
keysession.
...on
keystatuseschange = function(
keystatuschange) { ...
... } specifications specification status comment encrypted media extensionsthe definition of 'on
keystatuseschange' in that specification.
CSSKeywordValue.CSSKeywordValue() - Web APIs
the css
keywordvalue constructor creates a new css
keywordvalue object which represents css
keywords and other identifiers.
... syntax var css
keywordvalue = new css
keywordvalue(val) parameters value sets or returns the value of the new css
keywordvalue.
... #myelement { display: flex; } <div id="myelement">check the developer tools to see the log in the console and to inspect the style attribute on this div.</div> let
keyword = new css
keywordvalue('initial'); let myelement = document.getelementbyid('myelement').attributestylemap; myelement.set('display',
keyword); console.log( myelement.get('display').value); // 'initial' console.dir(
keyword ); specifications specification status comment css typed om level 1the definition of 'css
keywordvalue' in that specification.
KeyboardEvent.altKey - Web APIs
the
keyboardevent.alt
key read-only property is a boolean that indicates if the alt
key (option or ⌥ on os x) was pressed (true) or not (false) when the event occured.
... syntax var alt
keypressed = instanceof
keyboardevent.alt
key return value boolean examples <html> <head> <title>alt
key example</title> <script type="text/javascript"> function showchar(e){ alert( "
key keydown: " + string.fromcharcode(e.charcode) + "\n" + "charcode: " + e.charcode + "\n" + "alt
key keydown: " + e.alt
key + "\n" ); } </script> </head> <body on
keydown="showchar(event);"> <p> press any character
key, with or without holding down the alt
key.<br /> you can also use the shift
key together with the alt
key.
... </p> </body> </html> specifications specification status comment document object model (dom) level 3 events specificationthe definition of '
keyboardevent.alt
key' in that specification.
KeyboardEvent.keyIdentifier - Web APIs
the deprecated
keyboardevent.
keyidentifier read-only property returns a "
key identifier" string that can be used to determine what
key was pressed.
... its non-deprecated replacement is
keyboardevent.
key.
...this property was part of an old draft of the dom level 3 events specification, but it was removed in later drafts in favor of
keyboardevent.
key.
KeyboardLayoutMap.keys - Web APIs
the
keys read-only property of the
keyboardlayoutmap interface returns a new array iterator object that contains the
keys for each index in the array.
... syntax iterator =
keyboardlayoutmap.
keys value an iterator.
... specifications specification status comment
keyboard mapthe definition of '
keys' in that specification.
MediaKeyStatusMap.keys() - Web APIs
the
keys property of the media
keystatusmap interface returns a new iterator object, containing
keys for each element in the status map, in insertion order.
... syntax var iterator = media
keystatusmap.
keys() parameters none.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internet
keys experimentalchrome full support 42edge full support 16firefox ?
KeyboardEvent.ctrlKey - Web APIs
the
keyboardevent.ctrl
key read-only property returns a boolean that indicates if the control
key was pressed (true) or not (false) when the event occured.
... syntax var ctrl
keypressed = instanceof
keyboardevent.ctrl
key return value a boolean example <html> <head> <title>ctrl
key example</title> <script type="text/javascript"> function showchar(e){ alert( "
key pressed: " + e.
key + "\n" + "ctrl
key pressed: " + e.ctrl
key + "\n" ); } </script> </head> <body on
keypress="showchar(event);"> <p>press any character
key, with or without holding down the ctrl
key.<br /> you can also use the shift
key together with the ctrl
key.</p> </body> </html> specifications specification status comment document object model (dom) level 3 events specificationthe definition of '
keyboardevent.ctrl
key' in that specification.
KeyboardEvent.shiftKey - Web APIs
the
keyboardevent.shift
key read-only property is a boolean that indicates if the shift
key was pressed (true) or not (false) when the event occurred.
... syntax var shift
keypressed = instanceof
keyboardevent.shift
key return value a boolean example <html> <head> <title>shift
key example</title> <script type="text/javascript"> function showchar(e){ alert( "
key pressed: " + string.fromcharcode(e.charcode) + "\n" + "charcode: " + e.charcode + "\n" + "shift
key pressed: " + e.shift
key + "\n" + "alt
key pressed: " + e.alt
key + "\n" ); } </script> </head> <body on
keypress="showchar(event);"> <p>press any character
key, with or without holding down the shift
key.<br /> you can also use the shift
key together with the alt
key.</p> </body> </html> specifications specification status comment document object model (dom) level 3 events specificationthe definition of '
keyboardevent.shift
key' in that ...
Key Values - Web APIs
the tables below list the standard
key values in various categories of
key, with an explanation of what the
key is typically used for.
... corresponding virtual
keycodes for common platforms are included where available.
... learn how to use these
key values in javascript using
keyboardevent.
key special values | modifier
keys | whitespace
keys | navigation
keys | editing
keys | ui
keys | device
keys | ime and composition
keys | function
keys | phone
keys | multimedia
keys | audio control
keys | tv control
keys | media controller
keys | speech recognition
keys | document
keys | application selector
keys | browser control
keys | numeric
keypad
keys special values values of
key which have special meanings other than identifying a specific
key or character.
...And 380 more matches
KeyboardEvent - Web APIs
keyboardevent objects describe a user interaction with the
keyboard; each event describes a single interaction between the user and a
key (or combination of a
key with modifier
keys) on the
keyboard.
... the event type (
keydown,
keypress, or
keyup) identifies what kind of
keyboard activity occurred.
... note:
keyboardevent events just indicate what interaction the user had with a
key on the
keyboard at a low level, providing no contextual meaning to that interaction.
...And 77 more matches
Keyboard Shortcuts - Archive of obsolete content
« previousnext » you could use
keyboard event handlers to respond to the
keyboard.
... however, it would be tedious to do that for every button and menu item (though it could be necessary when one's
key commands are only triggered when the user is focused on a particular element).
... creating a
keyboard shortcut xul provides methods in which you can define
keyboard shortcuts.
...And 73 more matches
SubtleCrypto.unwrapKey() - Web APIs
the unwrap
key() method of the subtlecrypto interface "unwraps" a
key.
... this means that it takes as its input a
key that has been exported and then encrypted (also called "wrapped").
... it decrypts the
key and then imports it, returning a crypto
key object that can be used in the web crypto api.
...And 73 more matches
Enc Dec MAC Output Public Key as CSR
generates encryption/mac
keys and outputs public
key as certificate signing request /* this source code form is subject to the terms of the mozilla public * license, v.
...include #include #include #include #include /* nss headers */ #include #include #include #include #include #include #include #include #include #include #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define default_
key_bits 1024 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin wrapped enc
key-----" #define enc
key_trailer "-----end wrapped enc
key-----" #define mac
key_header "-----begin wrapped mac
key-----" #define mac
key_trailer "-----end wrapped mac
key-----" #define iv_header ...
... "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" #define lab_header "-----begin
key label-----" #define lab_trailer "-----end
key label-----" #define pub
key_header "-----begin pub
key -----" #define pub
key_trailer "-----end pub
key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----end new certificate request-----" typedef enum { gen_csr, encrypt, decrypt, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3...
...And 56 more matches
nsIWindowsRegKey
xpcom/ds/nsiwindowsreg
key.idlscriptable this interface is designed to provide scriptable access to the windows registry system.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) the interface represents a single
key in the registry.
...method overview void close(); void create(in unsigned long root
key, in astring relpath, in unsigned long mode); nsiwindowsreg
key createchild(in astring relpath, in unsigned long mode); astring getchildname(in unsigned long index); astring getvaluename(in unsigned long index); unsigned long getvaluetype(in astring name); boolean haschanged(); boolean haschild(in astring name); boolean hasvalue(in astring name); boolean iswatching(); void open(in unsigned long root
key, in astring relpath, in unsigned long mode); nsiwindowsreg
key openchild(in astring relpath, in unsigned long mode); acstring readbinaryvalue(in astring name); unsig...
...And 55 more matches
Enc Dec MAC Using Key Wrap CertReq PKCS10 CSR
generates encryption/mac
keys and outputs public
key as pkcs11 certificate signing request /* this source code form is subject to the terms of the mozilla public * license, v.
...*/ /* nspr headers */ #include <prthread.h> #include <plgetopt.h> #include <prerror.h> #include <prinit.h> #include <prlog.h> #include <prtypes.h> #include <plstr.h> /* nss headers */ #include <
keyhi.h> #include <pk11priv.h> /* our samples utilities */ #include "util.h" /* constants */ #define blocksize 32 #define modblocksize 128 #define default_
key_bits 1024 /* header file constants */ #define enc
key_header "-----begin wrapped enc
key-----" #define enc
key_trailer "-----end wrapped enc
key-----" #define mac
key_header "-----begin wrapped mac
key-----" #define mac
key_trailer "-----end wrapped mac
key-----...
..." #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" #define lab_header "-----begin
key label-----" #define lab_trailer "-----end
key label-----" #define pub
key_header "-----begin pub
key -----" #define pub
key_trailer "-----end pub
key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----end new certificate request-----" #define ns_cert_enc_header "-----begin certificate for encryption-----" #define ns_cert_enc_trailer "-----end ...
...And 51 more matches
Introduction to Public-Key Cryptography - Archive of obsolete content
public-
key cryptography and related standards and techniques underlie the security features of many products such as signed and encrypted email, single sign-on, and secure sockets layer (ssl) communications.
... this document introduces the basic concepts of public-
key cryptography.
... for an overview of ssl, see "introduction to ssl." for an overview of encryption and decryption, see "encryption and decryption." information on digital signatures is available from "digital signatures." public-
key cryptography is a set of well-established techniques and standards for protecting communications from eavesdropping, tampering, and impersonation attacks.
...And 47 more matches
SubtleCrypto.deriveKey() - Web APIs
the derive
key() method of the subtlecrypto interface can be used to derive a secret
key from a master
key.
... it takes as arguments some initial
key material, the derivation algorithm to use, and the desired properties for the
key to derive.
... it returns a promise which will be fulfilled with a crypto
key object representing the new
key.
...And 47 more matches
SubtleCrypto.wrapKey() - Web APIs
the wrap
key() method of the subtlecrypto interface "wraps" a
key.
... this means that it exports the
key in an external, portable format, then encrypts the exported
key.
... wrapping a
key helps protect it in untrusted environments, such as inside an otherwise unprotected data store or in transmission over an unprotected network.
...And 46 more matches
Gecko Keypress Event
gecko 1.9
key handling changed significantly after beta 5 (bug 359638, bug 429510 and the bugs on which they depend).
... the changes were risky so late in the release schedule, but they were necessary for fixing the many
key handling bugs.
... charcode of dom
keypress event if a
keypress event is fired without any modifier
keys (ctrl/alt(option)/meta(win/command)), then the properties of the event are the same as they were in gecko1.8.1.
...And 45 more matches
SubtleCrypto.importKey() - Web APIs
the import
key() method of the subtlecrypto interface imports a
key: that is, it takes as input a
key in an external, portable format and gives you a crypto
key object that you can use in the web crypto api.
... syntax const result = crypto.subtle.import
key( format,
keydata, algorithm, extractable, usages ); parameters format is a string describing the data format of the
key to import.
... spki: subjectpublic
keyinfo format.
...And 45 more matches
SeaMonkey - making custom toolbar (SM ver. 1.x) - Archive of obsolete content
this page tells you step-by-step how to make a custom toolbar button in seamon
key 1.x.
... (for seamon
key 2, firefox, thunderbird and sunbird, see the page: custom toolbar button) you do not need any special technical skills or tools, and almost all the information you need is on this page.
...supported applications you can use the steps on this page only with seamon
key 1.x versions.
...And 36 more matches
key - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] the
key element defines a window-global
keyboard shortcut and must be placed inside a
keyset element.
... when a
key matching the attributes on the
key element is pressed, the command will be fired on the
key element.
... the
key pressed must match the
key attribute (or
keycode attribute) as well as the modifiers attribute in order for the
key element to be activated.
...And 34 more matches
Encrypt Decrypt MAC Keys As Session Objects
nss sample code 4: encryption/decryption and mac
keys using session.
... generates encryption/mac
keys and uses session objects.
...de #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin aes
key ckaid-----" #define enc
key_trailer "-----end aes
key ckaid-----" #define mac
key_header "-----begin mac
key ckaid-----" #define mac
key_trailer "-----end mac
key ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer ...
...And 32 more matches
Example and tutorial: Simple synth keyboard - Web APIs
this article presents the code and working demo of a video
keyboard you can play using the mouse.
... the
keyboard allows you to switch among the standard waveforms as well as one custom waveform, and you can control the master gain using a volume slider beneath the
keyboard.
... the video
keyboard html there are three primary components to the display for our virtual
keyboard.
...And 32 more matches
SpiderMonkey Build Documentation
building spidermon
key obsolete: the canonical documentation now lives at: https://firefox-source-docs.mozilla.org/js/build.html.
... use these instructions to build the latest spidermon
key source code.
... and of course, you'll need to get the spidermon
key source code.
...And 28 more matches
SpiderMonkey 1.8.5
the latest version of spidermon
key can always be found on the source download page.
... the mozilla javascript team is pleased to announce the release of spidermon
key 1.8.5.
... spidermon
key 1.8.5 is the javascript engine that shipped in firefox 4.0.
...And 28 more matches
SpiderMonkey 1.8.7
xxx needs updating the mozilla javascript team is pleased to announce the release of spidermon
key 1.8.5.
... spidermon
key 1.8.5 is the javascript engine that shipped in firefox 4.0.
... it is much faster than spidermon
key 1.8, implements es-5 (ecma 262, 5th edition), and contains many new language and api features, described in detail below.
...And 27 more matches
HTTP Public Key Pinning (HPKP) - HTTP
note: public
key pinning mechanism was deprecated in favor of certificate transparency and expect-ct header.
... http public
key pinning (hpkp) was a security feature that used to tell a web client to associate a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates.
... to ensure the authenticity of a server's public
key used in tls sessions, this public
key is wrapped into a x.509 certificate which is usually signed by a certificate authority (ca).
...And 25 more matches
Accesskey display rules - Archive of obsolete content
each controls of xul can have an access
key which is specified by access
key attribute or access
key property (see access
key attribute document for the detail).
... xul elements display their access
keys in their label automatically if it's necessary.
...xul elements don't display any access
keys on mac xul elements don't display any access
keys on mac.
...And 24 more matches
IDBKeyRange - Web APIs
the idb
keyrange interface of the indexeddb api represents a continuous interval over some data type that is used for
keys.
... records can be retrieved from idbobjectstore and idbindex objects using
keys or a range of
keys.
...for example, you can iterate over all values of a
key in the value range a–z.
...And 24 more matches
Keyboard API - Web APIs
the
keyboard api provides methods for working with a physical
keyboard that is attached to a device running a browser.
...
keyboard mapping provides an interface for retrieving the string generated by particular physical
key on a
keyboard to correctly identify that
key to a user.
...
keyboard locking enables a web page to capture
keys that are normally reserved by the user agent or the underlying operating system.
...And 24 more matches
Keyboard-navigable JavaScript widgets - Accessibility
these widgets are typically composed of <div> and <span> elements that do not, by nature, offer the same
keyboard functionality that their desktop counterparts do.
... this document describes techniques to make javascript widgets accessible with the
keyboard.
... using tabindex by default, when people use the tab
key to browse a webpage, only interactive elements (like links, form controls) get focused.
...And 24 more matches
<keygen> - HTML: Hypertext Markup Language
the html <
keygen> element exists to facilitate generation of
key material, and submission of the public
key as part of an html form.
...it is expected that the <
keygen> element will be used in an html form along with other information needed to construct a certificate request, and that the result of the process will be a signed certificate.
... permitted aria roles none dom interface html
keygenelement attributes this element includes the global attributes.
...And 24 more matches
Desktop mouse and keyboard controls - Game development
previous overview: control mechanisms next now when we have our mobile controls in place and the game is playable on touch-enabled devices, it would be good to add mouse and
keyboard support, so the game can be playable also on desktop.
... pure javascript approach let's think about implementing pure javascript
keyboard/mouse controls in the game first to see how it would work.
... first, we'd need an event listener to listen for the pressed
keys: document.addeventlistener('
keydown',
keydownhandler, false); document.addeventlistener('
keyup',
keyuphandler, false); whenever any
key is pressed down, we're executing the
keydownhandler function, and when press finishes we're executing the
keyuphandler function, so we know when it's no longer pressed.
...And 23 more matches
CryptoKey - Web APIs
the crypto
key interface of the web crypto api represents a cryptographic
key obtained from one of the subtlecrypto methods generate
key(), derive
key(), import
key(), or unwrap
key().
... for security reasons, the crypto
key interface can only be used in a secure context.
... properties crypto
key.type string which may take one of the following values: "secret": this
key is a secret
key for use with a symmetric algorithm.
...And 22 more matches
SubtleCrypto.exportKey() - Web APIs
the export
key() method of the subtlecrypto interface exports a
key: that is, it takes as input a crypto
key object and gives you the
key in an external, portable format.
... to export a
key, the
key must have crypto
key.extractable set to true.
...
keys can be exported in several formats: see supported formats in the subtlecrypto.import
key() page for details.
...And 22 more matches
XUL Accesskey FAQ and Policies - Archive of obsolete content
what is an access
key?
... an access
key is an underlined letter in a web page, menu or dialog that indicates to a user a quick,
keyboard method of simulating a click on that element.
...on macintosh, access
keys are available only in html not in xul, and they are activated using ctrl+letter instead of alt.
...And 21 more matches
SubtleCrypto.generateKey() - Web APIs
use the generate
key() method of the subtlecrypto interface to generate a new
key (for symmetric algorithms) or
key pair (for public-
key algorithms).
... syntax const result = crypto.subtle.generate
key(algorithm, extractable,
keyusages); parameters algorithm is a dictionary object defining the type of
key to generate and providing extra algorithm-specific parameters.
... for rsassa-pkcs1-v1_5, rsa-pss, or rsa-oaep: pass an rsahashed
keygenparams object.
...And 21 more matches
KeyboardEvent: code values - Web APIs
the following tables show what code values are used for each native scancode or virtual
keycode on major platforms.
... the reason is that some browsers choose to interpret physical
keys differently, there are some differences in which
keys map to which codes.
... code values code values on windows this table shows the windows scan codes representing
keys and the
keyboardevent.code values which correspond to those hardware
keys.
...And 20 more matches
KeyboardEvent.getModifierState() - Web APIs
the
keyboardevent.getmodifierstate() method returns the current state of the specified modifier
key: true if the modifier is active (that is the modifier
key is pressed or locked), otherwise, false.
... syntax var active = event.getmodifierstate(
keyarg); returns a boolean parameters
keyarg a modifier
key value.
... the value must be one of the
keyboardevent.
key values which represent modifier
keys, or the string "accel" .
...And 20 more matches
Keyframe Formats - Web APIs
element.animate(),
keyframeeffect.
keyframeeffect(), and
keyframeeffect.set
keyframes() all accept objects formatted to represent a set of
keyframes.
... syntax there are two different ways to format
keyframes: an array of objects (
keyframes) consisting of properties and values to iterate over.
... this is the canonical format returned by the get
keyframes() method.
...And 20 more matches
hotkeys - Archive of obsolete content
assign hot
key combinations to functions in your add-on.
... usage to define a hot
key combination, create a hot
key object, passing it the combination and a function to be called when the user presses that combination.
... for example, this add-on defines two hot
key combinations, to show and hide a panel: // define
keyboard shortcuts for showing and hiding a custom panel.
...And 18 more matches
@keyframes - CSS: Cascading Style Sheets
the @
keyframes css at-rule controls the intermediate steps in a css animation sequence by defining styles for
keyframes (or waypoints) along the animation sequence.
... syntax @
keyframes slidein { from { transform: translatex(0%); } to { transform: translatex(100%); } } values <custom-ident> a name identifying the
keyframe list.
... <percentage> a percentage of the time through the animation sequence at which the specified
keyframe should occur.
...And 18 more matches
Bookmark Keywords - Archive of obsolete content
the
key to this ability, if you'll pardon the pun, is the ability to add a
keyword to any mozilla bookmark.
... under ordinary circumstances, this might be used to reduce typing of a common url: http://www.cnn.com/ could be given the
keyword cnn.
...mozilla will automatically expand the
keyword to the corresponding bookmarked url, and load up the site.
...And 17 more matches
PopupKeys - Archive of obsolete content
handling
keys within menus when using a menupopup element, a
keyboard listener is attached to the window that will handle
keypresses for the menu.
... this allows items within the menu to be navigated with the cursor
keys.
... the following table lists the
keys that are checked, and what the menu
keyboard listener does in response: cursor up/down move the highlight within the menu up or down, wrapping around if necessary.
...And 17 more matches
SpiderMonkey Internals
design walk-through at heart, spidermon
key is a fast interpreter that runs an untyped bytecode and operates on values of type js::value—type-tagged values that represent the full range of javascript values.
... in addition to the interpreter, spidermon
key contains a just-in-time (jit) compiler, a garbage collector, code implementing the basic behavior of javascript values, a standard library implementing ecma 262-5.1 §15 with various extensions, and a few public apis.
... interpreter like many portable interpreters, spidermon
key's interpreter is mainly a single, tremendously long function that steps through the bytecode one instruction at a time, using a switch statement (or faster alternative, depending on the compiler) to jump to the appropriate chunk of code for the current instruction.
...And 16 more matches
SpiderMonkey 1.8
the mozilla javascript team is pleased to announce the release of spidermon
key 1.8 release candidate 1.
... spidermon
key 1.8 is the javascript engine that shipped in firefox 3.0.
... it is much faster than spidermon
key 1.7 and contains a few new language features and api features, described in detail below.
...And 16 more matches
KeyboardEvent.code - Web APIs
the
keyboardevent.code property represents a physical
key on the
keyboard (as opposed to the character generated by pressing the
key).
... in other words, this property returns a value that isn't altered by
keyboard layout or the state of the modifier
keys.
... if the input device isn't a physical
keyboard, but is instead a virtual
keyboard or accessibility device, the returned value will be set by the browser to match as closely as possible to what would happen with a physical
keyboard, to maximize compatibility between physical and virtual input devices.
...And 16 more matches
KeyboardEvent.location - Web APIs
the
keyboardevent.location read-only property returns an unsigned long representing the location of the
key on the
keyboard or other input device.
... possible values are: constant value description dom_
key_location_standard 0 the
key has only one version, or can't be distinguished between the left and right versions of the
key, and was not pressed on the numeric
keypad or a
key that is considered to be part of the
keypad.
... dom_
key_location_left 1 the
key was the left-hand version of the
key; for example, the left-hand control
key was pressed on a standard 101
key us
keyboard.
...And 16 more matches
SpiderMonkey 31
the mozilla javascript team is pleased to announce the release of spidermon
key 31.
... spidermon
key 31 is the javascript engine that shipped in firefox 31.
... it continues to improve performance over previous spidermon
key releases, with a significantly improved garbage collector and other features.
...And 15 more matches
KeyboardEvent() - Web APIs
the
keyboardevent() constructor creates a new
keyboardevent.
... syntax event = new
keyboardevent(typearg,
keyboardeventinit); values typearg is a domstring representing the name of the event.
...
keyboardeventinitoptional is a
keyboardeventinit dictionary, having the following fields: "
key", optional and defaulting to "", of type domstring, that sets the value of
keyboardevent.
key.
...And 14 more matches
accesskey - Archive of obsolete content
« xul reference home attribute of: button, checkbox, caption, description, label, listitem, menu, menuitem, menulist, tab, radio, toolbarbutton, textbox access
key type: character this should be set to a character that is used as a shortcut
key.
... on non-macintosh platforms, the character on the element's label matching the access
key is underlined.
... for example, when a menu labeled 'file' has an access
key of 'f', the generated label will be 'file'.
...And 13 more matches
Using the Places keywords API
using the places
keywords api the places
keywords api allows to assign a
keyword to an url.
...
keywords represent an alias for the given url in the autocomplete (aka awesomebar) field, with smart replacement of query terms.
... a
keyword can only be associated to a given url, it's not possible to associate the same
keyword with multiple urls (doing so will just update the url it's pointing to).
...And 13 more matches
CSSKeyframesRule - Web APIs
the css
keyframesrule interface describes an object representing a complete set of
keyframes for a css animation.
... it corresponds to the contents of a whole @
keyframes at-rule.
... it implements the cssrule interface with a type value of 7 (cssrule.
keyframes_rule).
...And 13 more matches
SpiderMonkey: The Mozilla JavaScript runtime
spidermon
key is mozilla's javascript engine written in c and c++.
... guides building spidermon
key build documentation how to get spidermon
key source code, build it, and run the test suite.
... using spidermon
key introduction to the javascript shell documentation of the command-line javascript shell, js.
...And 12 more matches
IDBIndex.openKeyCursor() - Web APIs
the open
keycursor() method of the idbindex interface returns an idbrequest object, and, in a separate thread, creates a cursor over the specified
key range, as arranged by this index.
... the method sets the position of the cursor to the appropriate
key, based on the specified direction.
... if the
key range is not specified or is null, then the range includes all the
keys.
...And 12 more matches
KeyboardEvent.charCode - Web APIs
the charcode read-only property of the
keyboardevent interface returns the unicode value of a character
key pressed during a
keypress event.
...use the
key property instead.
... syntax var code = event.charcode; return value a number that represents the unicode value of the character
key that was pressed.
...And 12 more matches
PublicKeyCredentialCreationOptions - Web APIs
the public
keycredentialcreationoptions dictionary of the web authentication api holds options passed to navigators.credentials.create() in order to create a public
keycredential.
... properties public
keycredentialcreationoptions.rp an object describing the relying party which requested the credential creation.
... public
keycredentialcreationoptions.user an object describing the user account for which the credential is generated.
...And 12 more matches
accesskey - HTML: Hypertext Markup Language
the access
key global attribute provides a hint for generating a
keyboard shortcut for the current element.
... the attribute value must consist of a single printable character (which includes accented and other characters that can be generated by the
keyboard).
... the way to activate the access
key depends on the browser and its platform: windows linux mac firefox alt + shift +
key on firefox 57 or newer: control + option +
key or control + alt +
key on firefox 14 or newer: control + alt +
key on firefox 13 or older: control +
key internet explorer alt +
key alt + shift +
key n/a edge n/a control + option + ke...
...And 12 more matches
Extensions support in SeaMonkey 2 - Archive of obsolete content
starting with seamon
key 2 alpha 1 seamon
key supports toolkit/-style extensions.
... the basics to support seamon
key 2 as a target application, you need to add it to the list of target applications in the extension's install.rdf file.
... the code for that will look something like this: <em:targetapplication> <!-- seamon
key --> <description> <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <em:minversion>2.0</em:minversion> <em:maxversion>2.*</em:maxversion> </description> </em:targetapplication> the install.js is not supported any more and should be removed.
...And 11 more matches
SpiderMonkey 24
these release notes are an incomplete draft and were initially seeded from the spidermon
key 17 release notes, so they're not necessarily complete or fully accurate.
... the mozilla javascript team is pleased to announce the release of spidermon
key 24.
... you can download full source code here: https://ftp.mozilla.org/pub/mozilla.org/js/mozjs-24.2.0.tar.bz2 (sha1: ce779081cc11bd0c871c6f303fc4a0091cf4fe66) spidermon
key 24 is the javascript engine that shipped in firefox 24.
...And 11 more matches
SpiderMonkey 38
spidermon
key 38 is outdated and contains known security vulnerabilities.
... the mozilla javascript team is pleased to announce the release of spidermon
key 38.
... spidermon
key 38 is the javascript engine that shipped in firefox 38.
...And 11 more matches
MediaKeySession - Web APIs
the media
keysession interface of the encryptedmediaextensions api represents a context for message exchange with a content decryption module (cdm).
... properties media
keysession.closed read only returns a promise signaling when a media
keysession closes.
...closing a session means that licenses and
keys associated with it are no longer valid for decrypting media data.
...And 11 more matches
Keyboard - Accessibility
to be fully accessible, a web page must be operable by someone using only a
keyboard to access and control it.
... this includes users of screen readers, but can also include users who have trouble operating a pointing device such as a mouse or trackball, or whose mouse is not working at the moment, or who simply prefer to use a
keyboard for input whenever possible.
... focusable elements should have interactive semantics if an element can be focused using the
keyboard, then it should be interactive; that is, the user should be able to do something to it and produce a change of some kind (for example, activating a link or changing an option).
...And 11 more matches
Keyed collections - JavaScript
« previousnext » this chapter introduces collections of data which are indexed by a
key; map and set objects contain elements which are iterable in the order of insertion.
...a map object is a simple
key/value map and can iterate its elements in insertion order.
...you can use a for...of loop to return an array of [
key, value] for each iteration.
...And 11 more matches
Paddle and keyboard controls - Game development
it's time to implement some
keyboard controls.
... two event listeners for
keydown and
keyup events.
... two functions handling the
keydown and
keyup events the code that will be run when the buttons are pressed.
...And 10 more matches
IDBKeyRange.bound() - Web APIs
the bound() method of the idb
keyrange interface creates a new
key range with the specified upper and lower bounds.
... syntax var myidb
keyrange = idb
keyrange.bound(lower, upper); var myidb
keyrange = idb
keyrange.bound(lower, upper, loweropen); var myidb
keyrange = idb
keyrange.bound(lower, upper, loweropen, upperopen); parameters lower specifies the lower bound of the new
key range.
... upper specifies the upper bound of the new
key range.
...And 10 more matches
NSS Key Functions
this chapter describes two functions used to manipulate private
keys and
key databases such as the
key3.db database provided with nss.
... this was converted from "chapter 6:
key functions".
... sec
key_getdefault
keydb sec
key_destroyprivate
key sec
key_getdefault
keydb returns a handle to the default
key database opened by nss_init.
...And 9 more matches
GlobalEventHandlers.onkeypress - Web APIs
the on
keypress property of the globaleventhandlers mixin is an eventhandler that processes
keypress events.
... the
keypress event should fire when the user presses a
key on the
keyboard.
... however, in practice browsers do not fire
keypress events for certain
keys.
...And 9 more matches
PublicKeyCredential - Web APIs
the public
keycredential interface provides information about a public
key / private
key pair, which is a credential for logging in to a service using an un-phishable and data-breach resistant asymmetric
key pair instead of a password.
... properties public
keycredential.type read only secure context inherited from credential.
... always set to public-
key for public
keycredential instances.
...And 9 more matches
FC_GenerateKeyPair
name fc_generate
keypair - generate a new public/private
key pair syntax ck_rv fc_generate
keypair( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_attribute_ptr ppublic
keytemplate, ck_ulong uspublic
keyattributecount, ck_attribute_ptr pprivate
keytemplate, ck_ulong usprivate
keyattributecount, ck_object_handle_ptr phpublic
key, ck_object_handle_ptr phprivate
key ); parameters hsession [in] session handle.
...ppublic
keytemplate [in] pointer to the public
key template.
... uspublic
keyattributecount [in] number of attributes in the public
key template.
...And 8 more matches
sslkey.html
upgraded documentation may be found in the current nss reference
key functions chapter 6
key functions this chapter describes two functions used to manipulate private
keys and
key databases such as the
key3.db database provided with communicator.
... sec
key_getdefault
keydb sec
key_destroyprivate
key sec
key_getdefault
keydb returns a handle to the default
key database opened by nss_init.
... syntax #include <
key.h> #include <
keyt.h> sec
keykeydbhandle *sec
key_getdefault
keydb(void); returns the function returns a handle of type sec
keykeydbhandle.
...And 8 more matches
SpiderMonkey 1.8.8
these release notes are an incomplete draft and were initially seeded from the 1.8.5 release notes, so lots of the information here isn't actually new to spidermon
key 1.8.8 (nor is it even the case that the version number will be 1.8.8!).
... the mozilla javascript team is pleased to announce the release of spidermon
key 1.8.8.
... spidermon
key 1.8.8 is the javascript engine that shipped in firefox 10.0.
...And 8 more matches
SpiderMonkey 17
these release notes are an incomplete draft and were initially seeded from the (now-defunct) 1.8.8 release notes, which were themselves seeded from the 1.8.5 release notes, so lots of the information here isn't actually new to spidermon
key 17.
... the mozilla javascript team is pleased to announce the release of spidermon
key 17.
... spidermon
key 17 is the javascript engine that shipped in firefox 17.
...And 8 more matches
nsIBidiKeyboard
widget/public/nsibidi
keyboard.idlscriptable this interface lets the application detect bidirectional writer users, and do some magic for them.
... a user is a bidirectional writer if they have
keyboard layouts in both left-to-right and right-to-left directions (that is users who use arabic, iranian (persian), or israel (hebrew)
keyboard layout, beside an us (english) layout.) inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) method overview boolean islangrtl(); void setlangfrombidilevel(in pruint8 alevel); attributes attribute type description havebidi
keyboards boolean indicates whether or not the system has at least one
keyboard for each direction (left-to-right and right-to-left) installed.
... methods islangrtl() determines if the current
keyboard language is right-to-left.
...And 8 more matches
IDBIndex.getKey() - Web APIs
the get
key() method of the idbindex interface returns an idbrequest object, and, in a separate thread, finds either the primary
key that corresponds to the given
key in this index or the first corresponding primary
key, if
key is set to an idb
keyrange.
... if a primary
key is found, it is set as the result of the request object.
... syntax var request = myindex.get
key(
key); parameters
key optional a
key or idb
keyrange that identifies a record to be retrieved.
...And 8 more matches
Keyboard.lock() - Web APIs
the lock() method of the
keyboard interface returns a promise after enabling the capture of
keypresses for any or all of the
keys on the physical
keyboard.
... this method can only capture
keys that are granted access by the underlying operating system.
... syntax var promise =
keyboard.lock([
keycodes[]]) parameters
keycodes optional an array of one or more
key codes to lock.
...And 8 more matches
KeyboardLayoutMap - Web APIs
the
keyboardlayoutmap interface of the the
keyboard api is a map-like object with functions for retrieving the string associated with specific physical
keys.
... a list of valid
keys is found in the ui events
keyboardevent code values specification.
... properties
keyboardlayoutmap.entries read only returns an array of a given object's own enumerable property [
key, value] pairs, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
...And 8 more matches
Navigator.requestMediaKeySystemAccess() - Web APIs
the navigator.requestmedia
keysystemaccess() method returns a promise which delivers a media
keysystemaccess object that can be used to access a particular media
key system, which can in turn be used to create
keys for decrypting a media stream.
...consider that when deciding when to call requestmedia
keysystemaccess(); you don't want those requests to happen at inconvenient times.
... as a general rule, this function should be called only when it's about time to create and use a media
keys object by calling the returned media
keysystemaccess object's createmedia
keys() method.
...And 8 more matches
keyTimes - SVG: Scalable Vector Graphics
the
keytimes attribute represents a list of time values used to control the pacing of the animation.
...each time value in the
keytimes list is specified as a floating point value between 0 and 1 (inclusive), representing a proportional offset into the duration of the animation element.
... four elements are using this attribute: <animate>, <animatecolor>, <animatemotion>, and <animatetransform> html, body, svg { height: 100%; } <svg viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"> <circle cx="60" cy="10" r="10"> <animate attributename="cx" dur="4s" repeatcount="indefinite" values="60 ; 110 ; 60 ; 10 ; 60"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> <animate attributename="cy" dur="4s" repeatcount="indefinite" values="10 ; 60 ; 110 ; 60 ; 10"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> </circle> </svg> usage notes value <number> [ ; <number> ]* ;?
...And 8 more matches
FC_UnwrapKey
name fc_unwrap
key - unwrap a
key syntax ck_rv fc_unwrap
key( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle hunwrapping
key, ck_byte_ptr pwrapped
key, ck_ulong uswrapped
keylen, ck_attribute_ptr ptemplate, ck_ulong usattributecount, ck_object_handle_ptr ph
key ); parameters hsession [in] session handle.
...hunwrapping
key [in] handle of the ket to use for unwrapping.
... pwrapped
key [in] pointer to the wrapped
key.
...And 7 more matches
SpiderMonkey 45
spidermon
key 45 is outdated and contains known security vulnerabilities.
... the mozilla javascript team is pleased to announce the release of spidermon
key 45.
... you can download full source code from https://ftp.mozilla.org/pub/spidermon
key/releases/45.0.2/mozjs-45.0.2.tar.bz2 sha256: 570530b1e551bf4a459d7cae875f33f99d5ef0c29ccc7742a1b6f588e5eadbee md5: 2ca34f998d8b5ea79d8616dd26b5fbab spidermon
key 45 is the javascript engine that shipped in firefox 45.
...And 7 more matches
All keyboard shortcuts - Firefox Developer Tools
this page lists all
keyboard shortcuts used by the developer tools built into firefox.
... because access
keys are locale-dependent, they're not documented in this page.
...before firefox 55, the
keyboard shortcut was ctrl + shift + q (cmd + opt + q on a mac).
...And 7 more matches
IDBCursor.continuePrimaryKey() - Web APIs
the continueprimary
key() method of the idbcursor interface advances the cursor to the to the item whose
key matches the
key parameter as well as whose primary
key matches the primary
key parameter.
... a typical use case, is to resume the iteration where a previous cursor has been closed, without having to compare the
keys one by one.
... calling this method more than once before new cursor data has been loaded - for example, calling continueprimary
key() twice from the same onsuccess handler - results in an invalidstateerror being thrown on the second call because the cursor’s got value flag has been unset.
...And 7 more matches
IDBKeyRange.lowerBound() - Web APIs
the lowerbound() method of the idb
keyrange interface creates a new
key range with only a lower bound.
... syntax var myidb
keyrange = idb
keyrange.lowerbound(lower); var myidb
keyrange = idb
keyrange.lowerbound(lower, open); parameters lower specifies the lower bound of the new
key range.
... return value idb
keyrange: the newly created
key range.
...And 7 more matches
KeyframeEffect - Web APIs
the
keyframeeffect interface of the web animations api lets us create sets of animatable properties and values, called
keyframes.
... constructor
keyframeeffect() returns a new
keyframeeffect object instance, and also allows you to clone an existing
keyframe effect object instance.
... properties
keyframeeffect.target gets and sets the element, or originating element of the pseudo-element, being animated by this object.
...And 7 more matches
MediaKeyStatusMap - Web APIs
the media
keystatusmap interface of the encryptedmediaextensions api is a read-only map of media
key statuses by
key ids.
... properties media
keystatusmap.size read only returns the number of
key/value pars in the status map.
... methods media
keystatusmap.entries() read only returns a new iterator object containing an array of [
key, value] for each element in the status map, in insertion order.
...And 7 more matches
x-ms-acceleratorkey - HTML: Hypertext Markup Language
the x-ms-accelerator
key attribute accessibly declares that an accelerator
key has been assigned to an element: the element is activated via javascript when the
key(s) are pressed on a
keyboard.
... x-ms-accelerator
key exposes a notification in the accessibility tree, for screen readers and other assistive technologies, that an accelerator
key exists for that element.
... this attribute does not provide the accelerator
key behavior.
...And 7 more matches
Public-Key-Pins-Report-Only - HTTP
note: public
key pinning mechanism was deprecated in favor of certificate transparency and expect-ct header.
... the http public-
key-pins-report-only response header was used to send reports of pinning violation to the report-uri specified in the header but, unlike public-
key-pins still allows browsers to connect to the server if the pinning is violated.
... for more information, see the public-
key-pins header reference page and the http public
key pinning article.
...And 7 more matches
Public-Key-Pins - HTTP
note: public
key pinning mechanism was deprecated in favor of certificate transparency and expect-ct header.
... the http public-
key-pins response header used to associate a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates, however, it has been removed from modern browsers and is no longer supported.
... for more information, see the http public
key pinning article.
...And 7 more matches
NSS Key Log Format
key logs can be written by nss so that external programs can decrypt tls connections.
...you can tell wireshark where to find the
key file via edit→preferences→protocols→ssl→(pre)-master-secret log filename.
...
key logging is enabled by setting the environment variable ssl
keylogfile to point to a file.
...And 6 more matches
FC_WrapKey
name fc_wrap
key - wrap a
key syntax ck_rv fc_wrap
key( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle hwrapping
key, ck_object_handle h
key, ck_byte_ptr pwrapped
key, ck_ulong_ptr puswrapped
keylen ); parameters hsession [in] session handle.
...hwrapping
key [in] pointer to the public
key template.
... h
key [in] number of attributes in the public
key template.
...And 6 more matches
Getting SpiderMonkey source code
you can get the spidermon
key source code in gzipped form or directly from the mercurial repository.
... downloading gzipped spidermon
key source code you can download gzipped spidermon
key source code from the following urls: http://ftp.mozilla.org/pub/spidermon
key/releases/ http://ftp.mozilla.org/pub/spidermon
key/prereleases/ here is a command-line example of downloading and unzipping spidermon
key source code version 59.0: mkdir mozilla cd mozilla wget http://ftp.mozilla.org/pub/spidermon
key/prereleases/59/pre1/mozjs-59.0a1.0.tar.bz2 tar xvf mozjs-59.0a1.0.tar.bz2 these commands should work on most platforms including windows, as long as on windows you are using the mozillabuild bash shell.
... getting the latest spidermon
key source code from mercurial the mercurial repository at https://hg.mozilla.org/mozilla-central/ hosts the latest spidermon
key sources.
...And 6 more matches
CSSKeyframeRule - Web APIs
the css
keyframerule interface describes an object representing a set of style for a given
keyframe.
... it corresponds to the contains of a single
keyframe of a @
keyframes at-rule.
... it implements the cssrule interface with a type value of 8 (cssrule.
keyframe_rule).
...And 6 more matches
CryptoKeyPair - Web APIs
the crypto
keypair dictionary of the web crypto api represents a
key pair for an asymmetric cryptography algorithm, also known as a public-
key algorithm.
... a crypto
keypair object can be obtained using subtlecrypto.generate
key(), when the selected algorithm is one of the asymmetric algorithms: rsassa-pkcs1-v1_5, rsa-pss, rsa-oaep, ecdsa, or ecdh.
... it contains two properties, which are both crypto
key objects: a private
key property containing the private
key and a public
key property containing the public
key.
...And 6 more matches
IDBCursor.key - Web APIs
the
key read-only property of the idbcursor interface returns the
key for the record at the cursor's position.
...the cursor's
key can be any data type.
... syntax var
key = cursor.
key; value a value of any type.
...And 6 more matches
IDBKeyRange.only() - Web APIs
the only() method of the idb
keyrange interface creates a new
key range containing a single value.
... syntax var myidb
keyrange = idb
keyrange.only(value); parameters value is the value for the new
key range.
... return value idb
keyrange: the newly created
key range.
...And 6 more matches
IDBKeyRange.upperBound() - Web APIs
the upperbound() method of the idb
keyrange interface creates a new upper-bound
key range.
... syntax var myidb
keyrange = idb
keyrange.upperbound(upper[, open=false]) parameters bound specifies the upper bound of the new
key range.
...optional return value idb
keyrange: the newly created
key range.
...And 6 more matches
Keyboard - Web APIs
the
keyboard interface of the the
keyboard api provides functions that retrieve
keyboard layout maps and toggle capturing of
key presses from the physical
keyboard.
... a list of valid code values is found in the ui events
keyboardevent code values spec.
... methods
keyboard.getlayoutmap() returns a promise that resolves with an instance of
keyboardlayoutmap which is a map-like object with functions for retrieving the strings associated with specific physical
keys.
...And 6 more matches
MouseEvent.metaKey - Web APIs
the mouseevent.meta
key read-only property is a boolean that indicates whether the meta
key was pressed or not when a given mouse event occurs.
... be aware that many operating systems bind special functionality to the meta
key, so this property may be false even when the
key is actually pressed.
... on windows, for example, this
key may open the start menu.
...And 6 more matches
PublicKeyCredentialRequestOptions - Web APIs
the public
keycredentialrequestoptions dictionary of the web authentication api holds the options passed to navigator.credentials.get() in order to fetch a given public
keycredential.
... properties public
keycredentialrequestoptions.challenge a buffersource, emitted by the relying party's server and used as a cryptographic challenge.
... public
keycredentialrequestoptions.timeout optional a numerical hint, in milliseconds, which indicates the time the caller is willing to wait for the retrieval operation to complete.
...And 6 more matches
handler.ownKeys() - JavaScript
the handler.own
keys() method is a trap for reflect.own
keys().
... syntax const p = new proxy(target, { own
keys: function(target) { } }); parameters the following parameter is passed to the own
keys() method.
... return value the own
keys() method must return an enumerable object.
...And 6 more matches
setRootKey - Archive of obsolete content
setroot
key changes the root
key being accessed.
... method of winreg object syntax void setroot
key ( int
key ); parameters the method has the following parameter:
key an integer representing a root
key in the registry.
...description the setroot
key changes the root
key.
...And 5 more matches
FC_DeriveKey
name fc_derive
key - derive a
key from a base
key syntax ck_rv fc_derive
key( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle hbase
key, ck_attribute_ptr ptemplate, ck_ulong usattributecount, ck_object_handle_ptr ph
key ); parameters hsession [in] session handle.
...hbase
key [in] handle of the base
key.
... pwrapped
key [in] pointer to the wrapped
key.
...And 5 more matches
GCIntegration - SpiderMonkey Redirect 1
the spidermon
key garbage collector (gc) will be changing a lot in the future.
... {{ svg{source: "http://people.mozilla.org/~wmcclos
key/incremental1.svg", embedding: "iframe", height:"130"} }} assume object b is already marked, as in the leftmost frame, while objects a and c have not been marked yet.
...spidermon
key uses a simple barrier commonly called a "snapshot at the beginning" barrier.
...And 5 more matches
Document: keyup event - Web APIs
the
keyup event is fired when a
key is released.
... bubbles yes cancelable yes interface
keyboardevent event handler property on
keyup the
keydown and
keyup events provide a code indicating which
key is pressed, while
keypress indicates which character was entered.
... for example, a lowercase "a" will be reported as 65 by
keydown and
keyup, but as 97 by
keypress.
...And 5 more matches
Element: keydown event - Web APIs
the
keydown event is fired when a
key is pressed.
... unlike the
keypress event, the
keydown event is fired for all
keys, regardless of whether they produce a character value.
... bubbles yes cancelable yes interface
keyboardevent event handler property on
keydown the
keydown and
keyup events provide a code indicating which
key is pressed, while
keypress indicates which character was entered.
...And 5 more matches
HTMLKeygenElement - Web APIs
note: this page describes the
keygen element interface as specified, not as currently implemented by gecko.
... the <
keygen> elements expose the html
keygenelement interface, which provides special properties and methods (beyond the regular element object interface they also have available to them by inheritance) for manipulating the layout and presentation of
keygen elements.
... challenge is a domstring that reflects the challenge html attribute, containing a challenge string that is packaged with the submitted
key.
...And 5 more matches
IDBIndex.keyPath - Web APIs
the
keypath property of the idbindex interface returns the
key path of the current index.
... syntax var my
keypath = myindex.
keypath; value any data type that can be used as a
key path.
...we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
...And 5 more matches
IDBKeyRange.lowerOpen - Web APIs
the loweropen read-only property of the idb
keyrange interface returns a boolean indicating whether the lower-bound value is included in the
key range.
... syntax var loweropen = my
keyrange.loweropen value a boolean: value indication true the lower-bound value is not included in the
key range.
... false the lower-bound value is included in the
key range.
...And 5 more matches
IDBKeyRange.upperOpen - Web APIs
the upperopen read-only property of the idb
keyrange interface returns a boolean indicating whether the upper-bound value is included in the
key range.
... syntax var upperopen = my
keyrange.upperopen value a boolean: value indication true the upper-bound value is not included in the
key range.
... false the upper-bound value is included in the
key range.
...And 5 more matches
IDBObjectStore.openKeyCursor() - Web APIs
the open
keycursor() method of the idbobjectstore interface returns an idbrequest object whose result will be set to an idbcursor that can be used to iterate through matching results.
... used for iterating through the
keys of an object store with a cursor.
... syntax var request = objectstore.open
keycursor(); var request = objectstore.open
keycursor(query); var request = objectstore.open
keycursor(query, direction); parameters query optional the
key range to be queried.
...And 5 more matches
MouseEvent.altKey - Web APIs
the mouseevent.alt
key read-only property is a boolean that indicates whether the alt
key was pressed or not when a given mouse event occurs.
... be aware that the browser can't always detect the alt
key on some operating systems.
... on some linux variants, for example, a left mouse click combined with the alt
key is used to move or resize windows.
...And 5 more matches
PublicKeyCredentialCreationOptions.excludeCredentials - Web APIs
excludecredentials, an optional property of the public
keycredentialcreationoptions dictionary, is an array whose elements are descriptors for the public
keys already existing for a given user.
... syntax excludecredentials = public
keycredentialcreationoptions.excludecredentials value an array whose elements are objects with the following properties: type a string describing type of public-
key credential to be created.
... as of this writing (march 2019), only "public-
key" may be used.
...And 5 more matches
PublicKeyCredentialRequestOptions.allowCredentials - Web APIs
allowcredentials is an optional property of the public
keycredentialrequestoptions dictionary which indicates the existing credentials acceptable for retrieval.
... note: public
keycredentialcreationoptions.excludecredentials may be used during the creation of the credentials in order to avoid creating new credentials for an existing user with existing public
key credential.
... syntax allowcredentials = public
keycredentialrequestoptions.allowcredentials value an array whose elements are objects with the following properties: type a string describing type of public-
key credential to be created.
...And 5 more matches
Object.keys() - JavaScript
the object.
keys() method returns an array of a given object's own enumerable property names, iterated in the same order that a normal loop would.
... syntax object.
keys(obj) parameters obj the object of which the enumerable's own properties are to be returned.
... description object.
keys() returns an array whose elements are strings corresponding to the enumerable properties found directly upon object.
...And 5 more matches
FC_GenerateKey
name fc_generate
key - generate a new
key syntax ck_rv fc_generate
key( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_attribute_ptr ptemplate, ck_ulong ulcount, ck_object_handle_ptr ph
key ); parameters hsession [in] session handle.
...ptemplate [in] pointer to the template for the new
key.
...ph
key [out] pointer to the location to receive the handle of the new
key.
...And 4 more matches
Document: keydown event - Web APIs
the
keydown event is fired when a
key is pressed.
... unlike the
keypress event, the
keydown event is fired for all
keys, regardless of whether they produce a character value.
... bubbles yes cancelable yes interface
keyboardevent event handler property on
keydown the
keydown and
keyup events provide a code indicating which
key is pressed, while
keypress indicates which character was entered.
...And 4 more matches
EcdhKeyDeriveParams - Web APIs
the ecdh
keyderiveparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.derive
key(), when using the ecdh algorithm.
... ecdh enables two people who each have a
key pair consisting of a public and a private
key to derive a shared secret.
... they exchange public
keys and use the combination of their private
key and the other entity's public
key to derive a secret
key that they — and noone else — share.
...And 4 more matches
IDBCursor.primaryKey - Web APIs
the primary
key read-only property of the idbcursor interface returns the cursor's current effective
key.
...the cursor's primary
key can be any data type.
... syntax var value = cursor.primary
key; value a value of any data type.
...And 4 more matches
IDBLocaleAwareKeyRange - Web APIs
the idblocaleaware
keyrange interface of the indexeddb api is a firefox-specific version of idb
keyrange — it functions in exactly the same fashion, and has the same properties and methods, but it is intended for use with idbindex objects when the original index had a locale value specified upon its creation (see createindex()'s optionalparameters) — that is, it has locale aware sorting enabled.
... methods this interface inherits all the methods of its parent interface, idb
keyrange.
... properties this interface inherits all the properties of its parent interface, idb
keyrange.
...And 4 more matches
IDBObjectStore.keyPath - Web APIs
the
keypath read-only property of the idbobjectstore interface returns the
key path of this object store.
... if this property is null, the application must provide a
key for each modification operation.
... syntax var my
keypath = objectstore.
keypath; value any value type.
...And 4 more matches
MediaKeyMessageEvent - Web APIs
the media
keymessageevent interface of the encryptedmediaextensions api contains the content and related data when the content decryption module generates a message for the session.
...eight="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/media
keymessageevent" target="_top"><rect x="116" y="1" width="200" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="216" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">media
keymessageevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} constructor ...
... media
keymessageevent() creates a new instance of media
keymessageevent.
...And 4 more matches
MediaKeySystemConfiguration - Web APIs
the media
keysystemconfiguration dictionary holds configuration information about the media
key system in use.
... properties media
keysystemconfiguration.initdatatypes read only returns a list of supported initialization data type names.
... media
keysystemconfiguration.audiocapabilities read only returns a list of supported audio type and capability pairs.
...And 4 more matches
PublicKeyCredential.response - Web APIs
the response read-only property of the public
keycredential interface is an authenticatorresponse object which is sent from the authenticator to the user agent for the creation/fetching of credentials.
... an authenticatorresponse is either: an authenticatorattestationresponse (when the public
keycredential is created via credentialscontainer.create()) an authenticatorassertionresponse (when the public
keycredential is obtained via credentialscontainer.get()).
... in order to validate the creation of credentials, a relying party's server needs both: this response the extensions of the client (given by public
keycredential.getclientextensionresults()) to validate the demand.
...And 4 more matches
PublicKeyCredentialCreationOptions.authenticatorSelection - Web APIs
authenticatorselection, an optional property of the public
keycredentialcreationoptions dictionary, is an object giving criteria to filter out the authenticators to be used for the creation operation.
... syntax authenticatorselection = public
keycredentialcreationoptions.authenticatorselection value an object with the following properties: authenticatorattachmentoptional a string which is either "platform" or "cross-platform".
... requireresident
keyoptional a boolean which indicated that the credential private
key must be stored in the authenticator, the client or in a client device.
...And 4 more matches
PublicKeyCredentialCreationOptions.extensions - Web APIs
extensions, an optional property of the public
keycredentialcreationoptions dictionary, is an object providing the client extensions and their input values.
... note: an analogous option exists for the fetching operation (navigators.credentials.get()), see public
keycredentialrequestoptions.extensions.
... syntax extensions = public
keycredentialcreationoptions.extensions value an object with various
keys and values.
...And 4 more matches
PushSubscription.getKey() - Web APIs
the get
key() method of the pushsubscription interface returns an arraybuffer representing a client public
key, which can then be sent to a server and used in encrypting push message data.
... syntax var
key = subscription.get
key(name); parameters name a domstring representing the encryption method used to generate a client
key.
... the value can be: p256dh: an elliptic curve diffie–hellman public
key on the p-256 curve (that is, the nist secp256r1 elliptic curve).
...And 4 more matches
<kbd>: The Keyboard Input element - HTML: Hypertext Markup Language
the html
keyboard input element (<kbd>) represents a span of inline text denoting textual user input from a
keyboard, voice input, or any other text entry device.
... usage notes other elements can be used in tandem with <kbd> to represent more specific scenarios: nesting a <kbd> element within another <kbd> element represents an actual
key or other unit of input as a portion of a larger input.
... see representing
keystrokes within an input below.
...And 4 more matches
keyPoints - SVG: Scalable Vector Graphics
the
keypoints attribute indicates the simple duration of an animation.
....w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <path d="m10,110 a120,120 -45 0,1 110 10 a120,120 -45 0,1 10,110" stroke="lightgrey" stroke-width="2" fill="none" id="motionpath"/> <circle cx="10" cy="110" r="3" fill="lightgrey"/> <circle cx="110" cy="10" r="3" fill="lightgrey"/> <circle r="5" fill="red"> <animatemotion dur="3s" repeatcount="indefinite"
keypoints="0;0.5;1"
keytimes="0;0.15;1" calcmode="linear"> <mpath xlink:href="#motionpath"/> </animatemotion> </circle> </svg> usage notes value <number> [; <number>]* ;?
... this value defines a semicolon-separated list of floating point values between 0 and 1 and indicates how far along the motion path the object shall move at the moment in time specified by corresponding
keytimes value.
...And 4 more matches
keySplines - SVG: Scalable Vector Graphics
the
keysplines attribute defines a set of bézier curve control points associated with the
keytimes list, defining a cubic bézier function that controls interval pacing.
... if there are any errors in the
keysplines specification (bad values, too many or too few values), the animation will not occur.
... four elements are using this attribute: <animate>, <animatecolor>, <animatemotion>, and <animatetransform> html, body, svg { height: 100%; } <svg viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"> <circle cx="60" cy="10" r="10"> <animate attributename="cx" dur="4s" calcmode="spline" repeatcount="indefinite" values="60 ; 110 ; 60 ; 10 ; 60"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"
keysplines="0.5 0 0.5 1 ; 0.5 0 0.5 1 ; 0.5 0 0.5 1 ; 0.5 0 0.5 1"/> <animate attributename="cy" dur="4s" calcmode="spline" repeatcount="indefinite" values="10 ; 60 ; 110 ; 60 ; 10"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"
keysplines="0.5 0 0.5 1 ; 0.5 0 0.5 1 ; 0.5 0 0.5 1 ; 0.5 0 0.5 1"/> </circle> </svg> usage notes value <control-point> [ ; <con...
...And 4 more matches
enumKeys - Archive of obsolete content
enum
keys enumerates the registry sub
keys for the given
key.
... method of winreg object syntax string enum
keys ( string
key, int sub
keyindex ); parameters the enum
keys method has the following parameters:
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
... sub
keyindex an integer representing the 0-based index of the sub
key being sought.
...And 3 more matches
Key - MDN Web Docs Glossary: Definitions of Web-related terms
a
key is a piece of information used by a cipher for encryption and/or decryption.
... encrypted messages should remain secure even if everything about the cryptosystem, except for the
key, is public knowledge.
... in symmetric-
key cryptography, the same
key is used for both encryption and decryption.
...And 3 more matches
Keyword - MDN Web Docs Glossary: Definitions of Web-related terms
a
keyword is a word or phrase that describes content.
... online
keywords are used as queries for search engines or as words identifying content on websites.
... when you use a search engine, you use
keywords to specify what you are looking for, and the search engine returns relevant webpages.
...And 3 more matches
Simple SeaMonkey build
you can build a bleeding-edge, development version of seamon
key using the commands below.
... build prerequisites hardware requirements: the seamon
key build process is both i/o- and cpu-intensive, and can take a long time to build even on modern hardware.
...ibcurl4-openssl-dev libnotify-dev libxt-dev libiw-dev libidl-dev mesa-common-dev autoconf2.13 yasm libgtk2.0-dev libdbus-1-dev libdbus-glib-1-dev python-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libpulse-dev ubuntu linux # for ubuntu 12.04 lts (precise pangolin), replace the following line with: sudo apt-get build-dep thunderbird sudo apt-get build-dep seamon
key sudo apt-get install zip unzip mercurial g++ make autoconf2.13 yasm libgtk2.0-dev libglib2.0-dev libdbus-1-dev libdbus-glib-1-dev libasound2-dev libcurl4-openssl-dev libnotify-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libiw-dev libxt-dev mesa-common-dev libpulse-dev fedora linux centos rhel: sudo yum groupinstall 'development tools' 'development librari...
...And 3 more matches
FC_DigestKey
name fc_digest
key - add the digest of a
key to a multi-part digest operation.
... syntax ck_rv fc_digest
key( ck_session_handle hsession, ck_object_handle h
key ); parameters hsession [in] session handle.
... h
key [in] handle of the
key to be digested.
...And 3 more matches
SpiderMonkey compartments
a compartment is a new concept with spidermon
key 1.8.5.
... in previous versions of spidermon
key, the garbage collector would walk the entire heap of all javascript objects when garbage collection was needed.
... compartment example the firefox browser embeds spidermon
key.
...And 3 more matches
JS::ProtoKeyToId
this article covers features introduced in spidermon
key 38 convert a jsproto
key to js id.
... syntax void js::proto
keytoid(jscontext *cx, jsproto
key key, js::mutablehandleid idp); name type description cx jscontext * pointer to a js context from which to derive runtime information.
...
key jsproto
key the prototype
key to convert.
...And 3 more matches
Setting up CDT to work on SpiderMonkey
there is a guide for setting up cdt to work with the mozilla codebase, but it does not cover setting things up for just spidermon
key instead of the whole mozilla codebase.
... step 1 - preparing a spidermon
key build for cdt to index all code, spidermon
key has to be built with debug information.
... give the project a name that you like ("spidermon
key" has a nice ring to it) and use the "browser…" button to select your checkout's js/src folder for the "existing code location".
...And 3 more matches
Cache.keys() - Web APIs
the
keys() method of the cache interface returns a promise that resolves to an array of cache
keys.
... syntax cache.
keys(request, {options}).then(function(
keys) { // do something with your array of requests }); parameters request optional the request want to return, if a specific
key is desired.
... options optional an object whose properties control how matching is done in the
keys operation.
...And 3 more matches
Document: keypress event - Web APIs
the
keypress event is fired when a
key that produces a character value is pressed down.
... examples of
keys that produce a character value are alphabetic, numeric, and punctuation
keys.
... examples of
keys that don't produce a character value are modifier
keys such as alt, shift, ctrl, or meta.
...And 3 more matches
Element: keypress event - Web APIs
the
keypress event is fired when a
key that produces a character value is pressed down.
... examples of
keys that produce a character value are alphabetic, numeric, and punctuation
keys.
... examples of
keys that don't produce a character value are modifier
keys such as alt, shift, ctrl, or meta.
...And 3 more matches
Element: keyup event - Web APIs
the
keyup event is fired when a
key is released.
... bubbles yes cancelable yes interface
keyboardevent event handler property on
keyup the
keydown and
keyup events provide a code indicating which
key is pressed, while
keypress indicates which character was entered.
... for example, a lowercase "a" will be reported as 65 by
keydown and
keyup, but as 97 by
keypress.
...And 3 more matches
GlobalEventHandlers.onkeydown - Web APIs
the on
keydown property of the globaleventhandlers mixin is an eventhandler that processes
keydown events.
... the
keydown event fires when the user presses a
keyboard
key.
... syntax target.on
keydown = functionref; value functionref is a function name or a function expression.
...And 3 more matches
GlobalEventHandlers.onkeyup - Web APIs
the on
keyup property of the globaleventhandlers mixin is an eventhandler that processes
keyup events.
... the
keyup event fires when the user releases a
key that was previously pressed.
... syntax target.on
keyup = functionref; value functionref is a function name or a function expression.
...And 3 more matches
IDBKeyRange.lower - Web APIs
the lower read-only property of the idb
keyrange interface returns the lower bound of the
key range.
... syntax var lower = my
keyrange.lower value the lower bound of the
key range (can be any type.) example the following example illustrates how you'd use a
key range.
... here we declare
keyrangevalue = idb
keyrange.upperbound("f", "w", true, true); — a range that includes everything between "f" and "w" but not including them — since both the upper and lower bounds have been declared as open (true).
...And 3 more matches
IDBKeyRange.upper - Web APIs
the upper read-only property of the idb
keyrange interface returns the upper bound of the
key range.
... syntax var upper = my
keyrange.upper value the upper bound of the
key range (can be any type.) example the following example illustrates how you'd use a
key range.
... here we declare
keyrangevalue = idb
keyrange.upperbound("f", "w", true, true); — a range that includes everything between "f" and "w" but not including them — since both the upper and lower bounds have been declared as open (true).
...And 3 more matches
IDBObjectStore.getKey() - Web APIs
the get
key() method of the idbobjectstore interface returns an idbrequest object, and, in a separate thread, returns the
key selected by the specified query.
... if a
key is successfully found, then a structured clone of it is created and set as the result of the request object.
... syntax var request = objectstore.get
key(
key); parameters
key the
key or
key range that identifies the record to be retrieved.
...And 3 more matches
KeyboardLayoutMap.get() - Web APIs
the get() method of the
keyboardlayoutmap interface returns the element with the given
key.
... a list of valid
keys is found in the ui events
keyboardevent code values spec.
... syntax var value =
keyboardlayoutmap.get(
key) parameters
key the
key of the item to return from the map.
...And 3 more matches
KeyframeEffect.composite - Web APIs
the composite property of a
keyframeeffect resolves how an element's animation impacts its underlying property values.
... syntax // getting var compositeenumeration =
keyframeeffect.composite; // setting
keyframeeffect.composite = 'accumulate'; value to understand these values, take the example of a
keyframeeffect value of blur(2) working on an underlying property value of blur(3).
... replace the
keyframeeffect overrides the underlying value it is combined with: blur(2) replaces blur(3).
...And 3 more matches
MediaKeySystemAccess - Web APIs
the media
keysystemaccess interface of the encryptedmediaextensions api provides access to a
key system for decryption and/or a content protection provider.
... you can request an instance of this object using the navigator.requestmedia
keysystemaccess() method.
... properties media
keysystemaccess.
keysystem read only returns a domstring identifying the
key system being used.
...And 3 more matches
MouseEvent.ctrlKey - Web APIs
the mouseevent.ctrl
key read-only property is a boolean that indicates whether the ctrl
key was pressed or not when a given mouse event occurs.
... note: on macintosh
keyboards, this
key is the control
key.
... syntax var ctrl
keypressed = instanceofmouseevent.ctrl
key return value a boolean, where true indicates that the
key is pressed, and false indicates that the
key is not pressed.
...And 3 more matches
PublicKeyCredential.getClientExtensionResults() - Web APIs
getclientextensionresults() is a method of the public
keycredential interface that returns an arraybuffer which contains a map between the extensions identifiers and their results after having being processed by the client.
... during the creation or fetching of a public
keycredential (respectively via navigator.credentials.create() and navigator.credentials.get()), it is possible to have "custom" processing by the client for different extensions which are respectively given by public
keycredentialcreationoptions.extensions and public
keycredentialrequestoptions.extensions.
... syntax maparraybuffer = public
keycredential.getclientextensionresults() parameters none.
...And 3 more matches
PublicKeyCredential.id - Web APIs
the id read-only property of the public
keycredential interface is a domstring, inherited from credential, which represents the identifier of the current public
keycredential instance.
... this property is a base64url encoded version of public
keycredential.rawid.
... syntax id = public
keycredential.id value a domstring being the base64url encoded version of public
keycredential.rawid.
...And 3 more matches
Storage.key() - Web APIs
the
key() method of the storage interface, when passed a number n, returns the name of the nth
key in a given storage object.
... the order of
keys is user-agent defined, so you should not rely on it.
... syntax var a
keyname = storage.
key(index); parameters index an integer representing the number of the
key you want to get the name of.
...And 3 more matches
TouchEvent.altKey - Web APIs
summary a boolean value indicating whether or not the alt (alternate)
key is enabled when the touch event is created.
... if the alt
key is enabled, the attribute's value is true.
... syntax var altenabled = touchevent.alt
key; return value altenabled true if the alt
key is enabled for this event; and false if the alt is not enabled.
...And 3 more matches
TouchEvent.metaKey - Web APIs
summary a boolean value indicating whether or not the meta
key is enabled when the touch event is created.
... if this
key is enabled, the attribute's value is true.
... note: on macintosh
keyboards, this is the ⌘ command
key.
...And 3 more matches
XRInputSourceArray.keys() - Web APIs
the
keys() method in the xrinputsourcearray interface returns a javascript iterator which can then be used to iterate over the
keys used to reference each item in the array of input sources.
... syntax xrinputsourcearray.
keys(); parameters none.
... return value a javascript iterator that can be used to walk through the
keys for each entry in the list of input sources.
...And 3 more matches
Merging TraceMonkey Repo - Archive of obsolete content
these are the steps to merge the tracemon
key repository to mozilla-central.
... let the mozilla-central sheriff know that you intend to perform a tracemon
key merge to mozilla-central.
... hg clone ssh://hg.mozilla.org/mozilla-central mozilla-central hg clone ssh://hg.mozilla.org/tracemon
key tm-merge cd tm-merge pull mozilla-central into tracemon
key via hg pull ../mozilla-central you will see a notice about adding at least one head to the repository -- this is the mozilla-central head that you are about to merge.
...And 2 more matches
createKey - Archive of obsolete content
create
key adds a
key to the registry.
... method of winreg object syntax int create
key ( string sub
key, string classname); parameters the method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
...for information on this parameter, see the description of regcreate
keyex in your windows api documentation.
...And 2 more matches
Symmetric-key cryptography - MDN Web Docs Glossary: Definitions of Web-related terms
symmetric-
key cryptography is a term used for cryptographic algorithms that use the same
key for encryption and for decryption.
... the
key is usually called a "symmetric
key" or a "secret
key".
... this is usually contrasted with public-
key cryptography, in which
keys are generated in pairs and the transformation made by one
key can only be reversed using the other
key.
...And 2 more matches
SpiderMonkey Internals: Thread Safety
this page describes implementation details of the spidermon
key javascript engine.
... it is mainly of interest to people working on spidermon
key itself.
... see js_threadsafe for a gentler introduction to using spidermon
key in a multi-threaded application.
...And 2 more matches
JSProtoKey
this article covers features introduced in spidermon
key 24 possible standard object prototype types.
... value prototype in javascript jsproto_null a dummy
key for invalid prototype.
...t8clampedarray jsproto_proxy proxy mxr search for jsproto_proxy jsproto_weakmap weakmap mxr search for jsproto_weakmap jsproto_map map mxr search for jsproto_map jsproto_set set mxr search for jsproto_set jsproto_dataview dataview mxr search for jsproto_dataview jsproto_symbol symbol added in spidermon
key 38 mxr search for jsproto_symbol jsproto_sharedarraybuffer sharedarraybuffer (nightly only) mxr search for jsproto_sharedarraybuffer jsproto_intl intl mxr search for jsproto_intl jsproto_typedobject typedobject (nightly only) mxr search for jsproto_typedobject jsproto_generatorfunction generatorfunction added in spidermon
key 31 ...
...And 2 more matches
JS_IdToProtoKey
this article covers features introduced in spidermon
key 31 convert a js id to a jsproto
key.
... syntax jsproto
key js_idtoproto
key(jscontext *cx, js::handleid id); name type description cx jscontext * pointer to a js context from which to derive runtime information.
... description js_idtoproto
key converts a specified js id, id, to a prototype
key.
...And 2 more matches
GetKeyBindings
« nsiaccessible page summary this method provides array of localized string of global
keyboard accelerator for the given action index supported by accessible.
... nsidomdomstringlist get
keybindings( in pruint8 aactionindex ); parameters aactionindex[in] index of the given action.
... return values returns array of localized string of global
keyboard accelerator.
...And 2 more matches
CSSKeywordValue - Web APIs
the css
keywordvalue interface of the the css typed object model api creates an object to represent css
keywords and other identifiers.
... the interface instance name is a stringifier meaning that when used anywhere a string is expected it will return the value of css
keyword.value.
... constructor css
keywordvalue.css
keywordvalue() creates a new css
keywordvalue object.
...And 2 more matches
DOMTokenList.keys() - Web APIs
the
keys() method of the domtokenlist interface returns an iterator allowing to go through all
keys contained in this object.
... the
keys are of type unsigned integer.
... syntax tokenlist.
keys(); parameters none.
...And 2 more matches
HTMLMediaElement.setMediaKeys() - Web APIs
the setmedia
keys() property of the htmlmediaelement interface returns a promise that resolves to the passed media
keys, which are those used to decrypt media during playback.
... syntax var promise = htmlmediaelement.setmedia
keys(media
keys); parameters media
keys a reference to a media
keys object that the htmlmediaelement can use for decryption of media data during playback.
... returns a promise that resolves to the passed instance of media
keys.
...And 2 more matches
HmacKeyGenParams - Web APIs
the hmac
keygenparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.generate
key(), when generating a
key for the hmac algorithm.
... length optional a number — the length in bits of the
key.
... if this is omitted the length of the
key is equal to the length of the digest generated by the digest function you have chosen.
...And 2 more matches
IDBKeyRange.includes() - Web APIs
the includes() method of the idb
keyrange interface returns a boolean indicating whether a specified
key is inside the
key range.
... syntax var isincluded = my
keyrange.includes(
key) parameters
key the
key you want to check for in your
key range.
... exceptions this method may raise a domexception of the following type: attribute description dataerror the supplied
key was not a valid
key.
...And 2 more matches
IDBObjectStore.getAllKeys() - Web APIs
the getall
keys() method of the idbobjectstore interface returns an idbrequest object retrieves record
keys for all objects in the object store matching the specified parameter or all objects in the store if no parameters are given.
... this method produces the same result for: a record that doesn't exist in the database a record that has an undefined value to tell these situations apart, you need to call the opencursor() method with the same
key.
... syntax var request = objectstore.getall
keys(); var request = objectstore.getall
keys(query); var request = objectstore.getall
keys(query, count); parameters query optional a value that is or resolves to an idb
keyrange.
...And 2 more matches
Keyboard.getLayoutMap() - Web APIs
the getlayoutmap() method of the
keyboard interface returns a promise that resolves with an instance of
keyboardlayoutmap which is a map-like object with functions for retrieving the strings associated with specific physical
keys.
... syntax var promise =
keyboard.getlayoutmap() parameters none.
... return value a promise that resolves with an instance of
keyboardlayoutmap.
...And 2 more matches
Keyboard.unlock() - Web APIs
the unlock() method of the
keyboard interface unlocks all
keys captured by the
keyboard.lock() method and returns synchronously.
... syntax
keyboard.unlock() parameters none.
... return value undefined specifications specification status comment
keyboard mapthe definition of '
keyboard' in that specification.
...And 2 more matches
KeyboardEvent.which - Web APIs
the which read-only property of the
keyboardevent interface returns the numeric
keycode of the
key pressed, or the character code (charcode) for an alphanumeric
key pressed.
... syntax var
keyresult = event.which; return value
keyresult contains the numeric code for a particular
key pressed, depending on whether an alphanumeric or non-alphanumeric
key was pressed.
... please see
keyboardevent.charcode and
keyboardevent.
keycode for more details.
...And 2 more matches
KeyboardLayoutMap.has() - Web APIs
the has() method of the
keyboardlayoutmap interface returns a boolean indicating whether the object has an element with the specified
key.
... a list of valid
keys is found in the ui events
keyboardevent code values spec.
... syntax var aboolean =
keyboardlayoutmap.has(
key) parameters
key the
key of an element to search for in the map.
...And 2 more matches
MouseEvent.shiftKey - Web APIs
the mouseevent.shift
key read-only property is a boolean that indicates whether the shift
key was pressed or not when a given mouse event occurs.
... syntax var shift
keypressed = instanceofmouseevent.shift
key return value a boolean, where true indicates that the
key is pressed, and false indicates that the
key is not pressed.
... example this example logs the shift
key property when you trigger a click event.
...And 2 more matches
PublicKeyCredential.rawId - Web APIs
the rawid read-only property of the public
keycredential interface is an arraybuffer object containing the identifier of the credentials.
... the public
keycredential.id property is a base64url encoded version of this identifier.
... syntax rawid = public
keycredential.rawid value a arraybuffer containing the identifier of the credentials.
...And 2 more matches
PublicKeyCredentialCreationOptions.challenge - Web APIs
the challenge property of the public
keycredentialcreationoptions dictionary is a buffersource used as a cryptographic challenge.
...this value (among other client data) will be signed by the authenticator, using its private
key, and must be sent back for verification to the server as part of authenticatorattestationresponse.attestationobject.
... syntax challenge = public
keycredentialcreationoptions.challenge value a buffersource which is at least 16 bytes long.
...And 2 more matches
PublicKeyCredentialCreationOptions.timeout - Web APIs
the timeout property, of the public
keycredentialcreationoptions dictionary, represents an hint, given in milliseconds, for the time the script is willing to wait for the completion of the creation operation.
... note: an analogous option exists for the fetching operation (navigators.credentials.get()), see public
keycredentialrequestoptions.timeout.
... syntax timeout = public
keycredentialcreationoptions.timeout value a numerical hint, expressed in milliseconds, giving the time to wait for the creation operation to complete.
...And 2 more matches
PublicKeyCredentialRequestOptions.challenge - Web APIs
the challenge property of the public
keycredentialrequestoptions dictionary is a buffersource used as a cryptographic challenge.
...this value (among other client data) will be signed by the authenticator's private
key and produce authenticatorassertionresponse.signature which should be sent back to the server as part of the response.
... syntax challenge = public
keycredentialrequestoptions.challenge value a buffersource which is at least 16 bytes long.
...And 2 more matches
PublicKeyCredentialRequestOptions.extensions - Web APIs
extensions, an optional property of the public
keycredentialrequestoptions dictionary, is an object providing the client extensions and their input values.
... note: an analogous option exists for the creation operation (navigators.credentials.create()), see public
keycredentialcreationoptions.extensions.
... syntax extensions = public
keycredentialrequestoptions.extensions value an object with various
keys and values.
...And 2 more matches
Reflect.ownKeys() - JavaScript
the static reflect.own
keys() method returns an array of the target object's own property
keys.
... syntax reflect.own
keys(target) parameters target the target object from which to get the own
keys.
... return value an array of the target object's own property
keys.
...And 2 more matches
Symbol.keyFor() - JavaScript
the symbol.
keyfor(sym) method retrieves a shared symbol
key from the global symbol registry for the given symbol.
... syntax symbol.
keyfor(sym); parameters sym symbol, required.
... the symbol to find a
key for.
...And 2 more matches
Rebranding SpiderMonkey (1.8.5)
after installing the build pre-requisites and downloading the spidermon
key source tarball issue the following commands at the terminal: cd js/src autoconf-2.13 for the remainder of this document wherever you see the text $brand you will substitute that text with the name of your brand.
... for example the default brand for spidermon
key 1.8.5 is 'mozjs185'.
... mkdir build-$brand-release cd build-$brand-release configure this build of spidermon
key with the desired options.
...you may now perform the build and installation of your custom branded spidermon
key library: make note: depending on your system you may need administrative rights to perform the installation: make install the following information isn't technically needed for using your library but it will help other applications use your library.
SpiderMonkey 52
the mozilla javascript team is pleased to announce the release of spidermon
key 52.
... spidermon
key 52 is the javascript engine that shipped in firefox 52.
... it continues to improve performance over previous spidermon
key releases.
... platform support migrating to spidermon
key 52 new javascript language features new c++ apis deleted apis api changes known issues ...
AesKeyGenParams - Web APIs
the aes
keygenparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.generate
key(), when generating an aes
key: that is, when the algorithm is identified as any of aes-cbc, aes-ctr, aes-gcm, or aes-kw.
... length a number — the length in bits of the
key to generate.
... examples see the examples for subtlecrypto.generate
key().
... specifications specification status comment web cryptography apithe definition of 'subtlecrypto.aes
keygenparams' in that specification.
CacheStorage.keys() - Web APIs
the
keys() method of the cachestorage interface returns a promise that will resolve with an array containing strings corresponding to all of the named cache objects tracked by the cachestorage object in the order they were created.
... syntax caches.
keys().then(function(
keylist) { //do something with your
keylist }); parameters none.
...we return the
keys of the caches in the cachestorage object using
keys(), then check each
key to see if it is in the whitelist.
... then.addeventlistener('activate', function(event) { var cachewhitelist = ['v2']; event.waituntil( caches.
keys().then(function(
keylist) { return promise.all(
keylist.map(function(
key) { if (cachewhitelist.indexof(
key) === -1) { return caches.delete(
key); } }); }) ); }); specifications specification status comment service workersthe definition of 'cachestorage:
keys' in that specification.
FormData.keys() - Web APIs
the formdata.
keys() method returns an iterator allowing to go through all
keys contained in this object.
... the
keys are usvstring objects.
... syntax formdata.
keys(); return value returns an iterator.
... example // create a test formdata object var formdata = new formdata(); formdata.append('
key1', 'value1'); formdata.append('
key2', 'value2'); // display the
keys for (var
key of formdata.
keys()) { console.log(
key); } the result is:
key1
key2 specifications specification status comment xmlhttprequestthe definition of '
keys() (as iterator<>)' in that specification.
HTMLMediaElement.onwaitingforkey - Web APIs
the onwaitingfor
key property of the htmlmediaelement is an event handler, fired when a waitingfor
key event occurs, when playback is blocked while waiting for an encryption
key.
...="_top"><rect x="331" y="65" width="160" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="411" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmlmediaelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} syntax htmlmediaelement.onwaitingfor
key = function(waitingfor
key) { ...
... } specifications specification status comment encrypted media extensionsthe definition of 'onwaitingfor
key' in that specification.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetonwaitingfor
keychrome full support 55edge full support 79firefox full support yesie ?
Headers.keys() - Web APIs
the headers.
keys() method returns an iterator allowing to go through all
keys contained in this object.
... the
keys are bytestring objects.
... syntax headers.
keys(); return value returns an iterator.
... example // create a test headers object var myheaders = new headers(); myheaders.append('content-type', 'text/xml'); myheaders.append('vary', 'accept-language'); // display the
keys for(var
key of myheaders.
keys()) { console.log(
key); } the result is: content-type vary ...
IDBIndex.getAllKeys() - Web APIs
the getall
keys() method of the idbindex interface instantly retrieves the primary
keys of all objects inside the index, setting them as the result of the request object.
... syntax var all
keysrequest = idbindex.getall
keys(); var all
keysrequest = idbindex.getall
keys(query); var all
keysrequest = idbindex.getall
keys(query, count); parameters query optional a
key or an idb
keyrange identifying the
keys to retrieve.
... if this value is null or missing, the browser will use an unbound
key range.
... example var myindex = objectstore.index('index'); var getall
keysrequest = myindex.getall
keys(); getall
keysrequest.onsuccess = function() { console.log(getall
keysrequest.result); } specification specification status comment indexed database api draftthe definition of 'getall()' in that specification.
KeyboardLayoutMap.forEach() - Web APIs
the foreach() method of the
keyboardlayoutmap interface executes a provided function once for each element of the map.
... syntax
keyboardlayoutmap.foreach(function callback(currentvalue[, index[, array]]) { //your iterator }[, thisarg]); parameters callback the function to execute for each element, taking three arguments: currentvalue the value of the current element being processed.
... array optional the
keyboardlayoutmap that foreach() is being called on.
... specifications specification status comment
keyboard mapthe definition of 'foreach()' in that specification.
KeyframeEffectOptions - Web APIs
the
keyframeeffectoptions dictionary, part of the web animations api, is used by element.animate(),
keyframeeffectreadonly() and
keyframeeffect() to describe timing properties for animation effects.
... simply put, these properties describe how the user agent should go about making the transition from
keyframe to
keyframe, and how to behave when the animation begins and ends.
... specifications specification status comment web animations level 2the definition of '
keyframeeffectoptions' in that specification.
... web animationsthe definition of '
keyframeeffectoptions' in that specification.
MediaKeys - Web APIs
the media
keys interface of encryptedmediaextensions api represents a set of
keys that an associated htmlmediaelement can use for decryption of media data during playback.
... methods media
keys.createsession() returns a new media
keysession object, which represents a context for message exchange with a content decryption module (cdm).
... media
keys.setservercertificate() returns a promise to a server certificate to be used to encrypt messages to the license server.
... examples //tbd specifications specification status comment encrypted media extensionsthe definition of 'media
keys' in that specification.
NodeList.keys() - Web APIs
the nodelist.
keys() method returns an iterator allowing to go through all
keys contained in this object.
... the
keys are unsigned integer.
... syntax nodelist.
keys(); return value returns an iterator.
... example var node = document.createelement("div"); var kid1 = document.createelement("p"); var kid2 = document.createtextnode("hey"); var kid3 = document.createelement("span"); node.appendchild(kid1); node.appendchild(kid2); node.appendchild(kid3); var list = node.childnodes; // using for..of for(var
key of list.
keys()) { console.log(
key); } the result is: 0 1 2 ...
PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() - Web APIs
isuserverifyingplatformauthenticatoravailable() is a static method of the public
keycredential interface that returns a promise which resolves to true if a user-verifying platform authenticator is available.
... syntax public
keycredential.isuserverifyingplatformauthenticatoravailable() parameters none.
... note: this is a static method which is directly called on the public
keycredential interface and not on an instance.
... examples public
keycredential.isuserverifyingplatformauthenticatoravailable() .then(function(available){ if(available){ // we can proceed with the creation of a public
keycredential // with this authenticator } else { // use another kind of authenticator or a classical login/password // workflow } }).catch(function(err){ // something went wrong console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'isuserverifyingplatformauthenticatoravailable' in that specification.
PublicKeyCredentialCreationOptions.attestation - Web APIs
attestation is an optional property of the public
keycredentialcreationoptions dictionary.
... syntax attestation = public
keycredentialcreationoptions.attestation value a string which may be "none": the relying party is not interested in this attestation.
... examples var public
key = { attestation: "indirect", challenge: new uint8array(26) /* this actually is given from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { id: new uint8array(26), /* to be changed for each user */ name: "jdoe@example.com", displayname: "john doe", }, pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; nav...
...igator.credentials.create({ public
key }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'attestation' in that specification.
PublicKeyCredentialCreationOptions.rp - Web APIs
the rp property of the public
keycredentialcreationoptions dictionary is an object describing the relying party which requested the credential creation (via navigator.credentials.create()).
... syntax relyingpartyobj = public
keycredentialcreationoptions.rp properties icon optional an url as a usvstring value which points to an image resource which can be the logo/icon of the relying party.
... examples var public
key = { challenge: /* from the server */, rp: { name: "example corp", id : "login.example.com", icon: "https://login.example.com/login.ico" }, user: { id: new uint8array(16), name: "jdoe@example.com", displayname: "john doe" }, pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; navigator.credentials.create({ public
key }) .then(function (newcre...
...dentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'rp' in that specification.
PublicKeyCredentialCreationOptions.user - Web APIs
the user property of the public
keycredentialcreationoptions dictionary is an object describing the user account for which the credentials are generated (via navigator.credentials.create()).
... syntax useraccount = public
keycredentialcreationoptions.user properties displayname a domstring which is human readable and intended for display.
... examples var public
key = { challenge: new uint8array(26) /* this actually is given from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { // to be changed for each user id: new uint8array.from(window.atob("laegmlkjnrlkgnamlafalfka="), c=>c.charcodeat(0)); name: "jdoe@example.com", displayname: "john doe", icon: "https://gravatar.com/avatar/jdoe.png" }...
..., pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; navigator.credentials.create({ public
key }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'user' in that specification.
PublicKeyCredentialRequestOptions.rpId - Web APIs
the rpid property, of the public
keycredentialrequestoptions dictionary, is an optional property which indicates the relying party's identifier as a usvstring.
... note: an analogous option exists for the creation operation (navigators.credentials.create()), see the id property of public
keycredentialcreationoptions.rp.
... syntax rpid = public
keycredentialrequestoptions.rpid value a usvstring for the identifier of the relying party.
... examples var options = { challenge: new uint8array([/* bytes sent from the server */]), rpid: "example.com" // will only work if the current domain // is something like foo.example.com }; navigator.credentials.get({ "public
key": options }) .then(function (credentialinfoassertion) { // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'rpid' in that specification.
PublicKeyCredentialRequestOptions.timeout - Web APIs
the timeout property, of the public
keycredentialrequestoptions dictionary, represents an hint, given in milliseconds, for the time the script is willing to wait for the completion of the retrieval operation.
... note: an analogous option exists for the creation operation (navigators.credentials.create()), see public
keycredentialcreationoptions.timeout.
... syntax timeout = public
keycredentialrequestoptions.timeout value a numerical hint, expressed in milliseconds, giving the time to wait for the creation operation to complete.
... examples var options = { challenge: new uint8array([/* bytes sent from the server */]), timeout: 6000 // wait a minute for the fetching operation // and maybe fail if it takes longer }; navigator.credentials.get({ "public
key": options }) .then(function (credentialinfoassertion) { // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'timeout' in that specification.
PublicKeyCredentialRequestOptions.userVerification - Web APIs
userverification is an optional property of the public
keycredentialrequestoptions.
... note: an analogous option exists for the creation operation (navigators.credentials.create()), see the userverification property of public
keycredentialcreationoptions.authenticatorselection.
... syntax userverification = public
keycredentialrequestoptions.userverification value a string qualifying how the user verification should be part of the authentication process.
... examples var options = { userverification: "preferred", challenge: new uint8array([/* bytes sent from the server */]), }; navigator.credentials.get({ "public
key": options }) .then(function (credentialinfoassertion) { // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'userverification...
TouchEvent.ctrlKey - Web APIs
summary a boolean value indicating whether the control (control)
key is enabled when the touch event is created.
... if this
key is enabled, the attribute's value is true.
... syntax var ctrlenabled = touchevent.ctrl
key; return value ctrlenabled true if the control
key is enabled for this event; and false if the control is not enabled.
... example the touchevent.alt
key example includes an example of this property's usage.
TouchEvent.shiftKey - Web APIs
summary a boolean value indicating whether or not the shift
key is enabled when the touch event is created.
... if this
key is enabled, the attribute's value is true.
... syntax var shiftenabled = touchevent.shift
key; return value shiftenabled true if the shift
key is enabled for this event; and false if the shift
key is not enabled.
... example the touchevent.alt
key example includes an example of this property's usage.
URLSearchParams.keys() - Web APIs
the
keys() method of the urlsearchparams interface returns an iterator allowing iteration through all
keys contained in this object.
... the
keys are usvstring objects.
... syntax searchparams.
keys(); parameters none.
... examples // create a test urlsearchparams object var searchparams = new urlsearchparams("
key1=value1&
key2=value2"); // display the
keys for(var
key of searchparams.
keys()) { console.log(
key); } the result is:
key1
key2 specifications specification status comment urlthe definition of '
keys() (see "iterable")' in that specification.
Feature-Policy: publickey-credentials-get - HTTP
the http feature-policy header public
key-credentials-get directive controls whether the current document is allowed to access web authentcation api to create new public-
key credentials, i.e, via navigator.credentials.get({public
key: ..., ...}).
... when this policy is enabled, any attempt to query public
key credentials will result in an error.
... syntax feature-policy: public
key-credentials-get <allowlist>; <allowlist> an allowlist is a list of origins that takes one or more of the following values, separated by spaces: *: the feature will be allowed in this document, and all nested browsing contexts (iframes) regardless of their origin.
... definition of public
key-credentials-get directive, default allowlist.
key - XPath
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes the
key function returns a node-set of nodes that have the given value for the given
key.
... syntax
key(
keyname ,value ) arguments
keyname a string containing the name of the xsl:
key element to be used.
... value the returned node-set will contain every node that has this value for the given
key.
... notes the xsl:
key element defines what attribute on what given elements will be used to match the
key.
<xsl:key> - XSLT: Extensible Stylesheet Language Transformations
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes the <xsl:
key> element declares a named
key which can be used elsewhere in the stylesheet with the
key( ) function.
... syntax <xsl:
key name=name match=expression use=expression /> required attributes name specifies a name for this
key.
... match defines the nodes for which this
key is applicable.
... use specifies an xpath expression that will be used to determine the value of the
key for each of the applicable nodes.
Archived SpiderMonkey docs - Archive of obsolete content
this section contains old spidermon
key documentation.
... file objectnon-standard server-side objectmerging tracemon
key repothese are the steps to merge the tracemon
key repository to mozilla-central.
... between resolving conflicts, finding a good time to land, watching the tree, and marking bugs as fixed, it takes around half a day.spidermon
key coding conventionsthe spidermon
key project owners enforce coding conventions pretty strictly during code reviews.
isKeyWritable - Archive of obsolete content
is
keywritable returns whether the given registry
key is writable or not.
... method of winreg object syntax boolean is
keywritable( string
key); parameters the method has the following parameter:
key a string representing the path to the
key returns a boolean value: true if the
key is writable; false if not.
... example winreg = getwinregistry(); if ( winreg != null ) { winreg.setroot
key ( winreg.h
key_local_machine ); if(winreg.is
keywritable("software")) { //is
keywritable returned true } else { //is
keywritable returned false } ...
keyExists - Archive of obsolete content
keyexists returns whether the
key exists.
... method of winreg object syntax boolean
keyexists ( string
key); parameters the method has the following parameter:
key a string representing the path to the
key returns boolean value description if the user does not have read access to the given
key, this will also return false.
... example winreg = getwinregistry(); if ( winreg != null ) { winreg.setroot
key( winreg.h
key_local_machine); if(winreg.
keyexists("software\\mozilla")) { //
keyexists returned true } else { //
keyexists returned false } } ...
keyset - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] a container element for
key elements.
... the
keyset and its descendants are not displayed.
... attributes disabled examples <
keyset> <
key id="sample-
key" modifiers="shift"
key="r"/> </
keyset> attributes inherited from xul element align, allowevents, allownegativeassertions, class, coalesceduplicatearcs, collapsed, container, containment, context, contextmenu, datasources, dir, empty, equalsize, flags, flex, height, hidden, id, insertafter, insertbefore, left, maxheight, maxwidth, menu, minheight, minwidth, mousethrough, observes, ordinal, orient, pack, persist, popup, position, preference-editable, querytype, ref, removeelement, sortdirection, sortresource, sortresource2, statustext, style, template, tooltip, tooltiptext, top, uri, wait-cursor, width disabled type: boolean indicates whether the element is ...
SpiderMonkey releases
this page lists spidermon
key release notes.
... note: standalone spidermon
key is not an official product.
... past releases spidermon
key 52 spidermon
key 45 spidermon
key 38 spidermon
key 31 spidermon
key 24 spidermon
key 17 spidermon
key 1.8.8 spidermon
key 1.8.7 spidermon
key 1.8.5 spidermon
key 1.8 ...
Debugger keyboard shortcuts - Firefox Developer Tools
by default, on some macs, the function
key is remapped to use a special feature: for example, to change the screen brightness or the volume.
... see this guide to using these
keys as standard function
keys.
... to use a remapped
key as a standard function
key, hold the function
key down as well (so to open the profiler, use shift + function + f5).
CSSKeywordValue.value - Web APIs
the value property of the css
keywordvalue interface returns or sets the value of the css
keywordvalue.
... syntax var val = css
keywordvalue.value css
keywordvalue.value = val value a usvstring.
... let indicator = document.getelementbyid('indicator'); indicator.attributestylemap.set('display', new css
keywordvalue('initial')); indicator.attributestylemap.get('display').value // 'initial' specifications specification status comment css typed om level 1the definition of 'undefined' in that specification.
CSSUnparsedValue.keys() - Web APIs
the cssunparsedvalue.
keys() method returns a new array iterator object that contains the
keys for each index in the array.
... syntax cssunparsedvalue.
keys() parameters none.
... specifications specification status comment css typed om level 1the definition of '
keys()' in that specification.
EcKeyGenParams - Web APIs
the ec
keygenparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.generate
key(), when generating any elliptic-curve-based
key pair: that is, when the algorithm is identified as either of ecdsa or ecdh.
...this may be any of the following names for nist-approved curves: p-256 p-384 p-521 examples see the examples for subtlecrypto.generate
key().
... specifications specification status comment web cryptography apithe definition of 'subtlecrypto.ec
keygenparams' in that specification.
EcKeyImportParams - Web APIs
the ec
keyimportparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.import
key() or subtlecrypto.unwrap
key(), when generating any elliptic-curve-based
key pair: that is, when the algorithm is identified as either of ecdsa or ecdh.
...this may be any of the following names for nist-approved curves: p-256 p-384 p-521 examples see the examples for subtlecrypto.import
key().
... specifications specification status comment web cryptography apithe definition of 'subtlecrypto.ec
keyimportparams' in that specification.
Element.accessKey - Web APIs
the element.access
key property sets the
keystroke which a user can press to jump to a given element.
... the element.access
key property is seldom used because of its multiple conflicts with already present
key bindings in browsers.
... to work around this, browsers implement access
key behavior if the
keys are pressed with other "qualifying"
keys (such as alt + access
key).
accessKeyLabel - Web APIs
the htmlelement.access
keylabel read-only property returns a string that represents the element's assigned access
key (if any); otherwise it returns an empty string.
... syntax label = element.access
keylabel example javascript var node = document.getelementbyid('btn1'); if (node.access
keylabel) { node.title += ' [' + node.access
keylabel + ']'; } else { node.title += ' [' + node.access
key + ']'; } node.onclick = function () { var p = document.createelement('p'); p.textcontent = 'clicked!'; node.parentnode.appendchild(p); }; html <button access
key="h" title="caption" id="btn1">hover me</button> result specifications specification status comment html living standardthe definition of 'htmlelement.access
keylabel' in that specification.
... html5the definition of 'htmlelement.access
keylabel' in that specification.
KeyboardEvent.isComposing - Web APIs
the
keyboardevent.iscomposing read-only property returns a boolean value indicating if the event is fired within a composition session, i.e.
... syntax var bool = event.iscomposing; example var kbdevent = new
keyboardevent("synthetic
key", false); console.log(kbdevent.iscomposing); // return false specifications specification status comment ui eventsthe definition of '
keyboardevent.prototype.iscomposing' in that specification.
... working draft document object model (dom) level 3 events specificationthe definition of '
keyboardevent.prototype.iscomposing' in that specification.
KeyboardLayoutMap.entries - Web APIs
the entries read-only property of the
keyboardlayoutmap interface returns an array of a given object's own enumerable property [
key, value] pairs, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... syntax
keyboardlayoutmap.entries() value an array of the given
keyboardlayoutmap object's own enumerable property [
key, value] pairs.
... specifications specification status comment
keyboard mapthe definition of 'entries' in that specification.
KeyboardLayoutMap.size - Web APIs
the size read-only property of the
keyboardlayoutmap interface returns the number of elements in the map.
... syntax var size =
keyboardlayoutmap.size() value a number.
... specifications specification status comment
keyboard mapthe definition of 'size' in that specification.
KeyboardLayoutMap.values - Web APIs
the values read-only property of the
keyboardlayoutmap interface returns a new array iterator object that contains the values for each index in the map.
... syntax var iterator =
keyboardlayoutmap.values value an iterator.
... specifications specification status comment
keyboard mapthe definition of 'values' in that specification.
KeyframeEffect.iterationComposite - Web APIs
the iterationcomposite property of a
keyframeeffect resolves how the animation's property value changes accumulate or override each other upon each of the animation's iterations.
... syntax // getting var iterationcompositeenumeration =
keyframeeffect.iterationcomposite; // setting
keyframeeffect.iterationcomposite = 'replace'; values replace the
keyframeeffect value produced is independent of the current iteration.
... accumulate subsequent iterations of the
keyframeeffect build on the final value of the previous iteration.
KeyframeEffect.target - Web APIs
the target property of a
keyframeeffect interface represents the element or pseudo-element being animated.
... syntax var targetelement = document.getelementbyid("elementtoanimate"); var
keyframes = new
keyframeeffect( targetelement,
keyframeblock, timingoptions ); // returns #elementtoanimate
keyframes.target; // assigns
keyframes a new target
keyframes.target = newtargetelement; value an element, csspseudoelement, or null.
... examples in the follow the white rabbit example, whiterabbit sets the target element to be animated: var whiterabbit = document.getelementbyid("rabbit"); var rabbitdown
keyframes = new
keyframeeffect( whiterabbit, [ { transform: 'translatey(0%)' }, { transform: 'translatey(100%)' } ], { duration: 3000, fill: 'forwards' } ); // returns <div id="rabbit">click the rabbit's ears!</div> rabbitdown
keyframes.target; specifications specification status comment web animationsthe definition of '
keyframeeffect' in that specification.
MediaKeyMessageEvent() - Web APIs
the media
keymessageevent constructor creates a new media
keymessageevent object which creates a new instance of media
keymessageevent.
... syntax var media
keymessageevent = new media
keymessageevent(typearg, options) parameters typearg a domstring containing one of may be one of license-request, license-renewal, license-renewal, or individualization-request.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetmedia
keymessageevent() constructor experimentalchrome full support 42edge full support ≤18firefox ?
MediaKeySession.closed - Web APIs
the media
keysession.closed read-only property returns a promise signaling when a media
keysession closes.
...closing a session means that licenses and
keys associated with it are no longer valid for decrypting media data.
... syntax var promise = media
keysessionobj.closed; value a promise.
MediaKeySession.onmessage - Web APIs
the onmessage property of the media
keysession is an event handler, fired whenever a media
keymessageevent occurs, denoting a message is generated by the content decryption module.
..." fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">eventtarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#d4dde4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/media
keysession" target="_top"><rect x="151" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="226" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">media
keysession</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} syntax media
keysession.
...onmessage = function(media
keymessageevent) { ...
MediaKeyStatusMap.get() - Web APIs
the get property of the media
keystatusmap interface returns the value associated with the given
key, or undefined if there is none.
... syntax var value = media
keystatusmap.get(
key); parameters
key the
key whose value you want returned.
... returns the value associated with the given
key, or undefined.
Navigator.keyboard - Web APIs
the
keyboard read-only property of the navigator interface returns a
keyboard object which provides access to functions that retrieve
keyboard layout maps and toggle capturing of
key presses from the physical
keyboard.
... syntax var
keyboard = navigator.
keyboard value a
keyboard object.
... specifications specification status comment
keyboard mapthe definition of '
keyboard' in that specification.
PaymentRequestEvent.instrumentKey - Web APIs
the instrument
key read-only property of the paymentrequestevent interface returns a paymentinstrument object reflecting the payment instrument selected by the user or an empty string if the user has not registered or chosen a payment instrument.
... syntax var instrument
key = paymentrequestevent.instrument
key value a paymentinstrument object.
... specifications specification status comment payment handler apithe definition of 'instrument
key' in that specification.
RsaHashedKeyGenParams - Web APIs
the rsahashed
keygenparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.generate
key(), when generating any rsa-based
key pair: that is, when the algorithm is identified as any of rsassa-pkcs1-v1_5, rsa-pss, or rsa-oaep.
... examples see the examples for subtlecrypto.generate
key().
... specifications specification status comment web cryptography apithe definition of 'subtlecrypto.rsahashed
keygenparams' in that specification.
Array.prototype.keys() - JavaScript
the
keys() method returns a new array iterator object that contains the
keys for each index in the array.
... syntax arr.
keys() return value a new array iterator object.
... examples
key iterator doesn't ignore holes var arr = ['a', , 'c']; var sparse
keys = object.
keys(arr); var dense
keys = [...arr.
keys()]; console.log(sparse
keys); // ['0', '2'] console.log(dense
keys); // [0, 1, 2] specifications specification ecmascript (ecma-262)the definition of 'array.prototype.
keys' in that specification.
Map.prototype.keys() - JavaScript
the
keys() method returns a new iterator object that contains the
keys for each element in the map object in insertion order.
... syntax mymap.
keys() return value a new map iterator object.
... examples using
keys() var mymap = new map(); mymap.set('0', 'foo'); mymap.set(1, 'bar'); mymap.set({}, 'baz'); var mapiter = mymap.
keys(); console.log(mapiter.next().value); // "0" console.log(mapiter.next().value); // 1 console.log(mapiter.next().value); // object specifications specification ecmascript (ecma-262)the definition of 'map.prototype.
keys' in that specification.
TypedArray.prototype.keys() - JavaScript
the
keys() method returns a new array iterator object that contains the
keys for each index in the array.
... syntax arr.
keys() return value a new array iterator object.
... examples iteration using for...of loop var arr = new uint8array([10, 20, 30, 40, 50]); var earray = arr.
keys(); // your browser must support for..of loop // and let-scoped variables in for loops for (let n of earray) { console.log(n); } alternative iteration var arr = new uint8array([10, 20, 30, 40, 50]); var earr = arr.
keys(); console.log(earr.next().value); // 0 console.log(earr.next().value); // 1 console.log(earr.next().value); // 2 console.log(earr.next().value); // 3 console.log(earr.next().value); // 4 specifications specification ecmascript (ecma-262)the definition of '%typedarray%.prototype.
keys()' in that specification.
deleteKey - Archive of obsolete content
delete
key removes a
key from the registry.
... method of winreg object syntax int delete
key ( string sub
key); parameters the method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
keycode - Archive of obsolete content
« xul reference home
keycode type: string
key code for
keys that do not have displayable characters, such as the enter
key or function
keys, use this attribute instead of the
key attribute.
... valid
keys are listed at
keyboard shortcuts.
keytext - Archive of obsolete content
« xul reference home
keytext type: string a label for the
keyboard shortcut.
... this text would appear next to a menuitem label if that menuitem is associated with the
key element via its
key attribute.
panel.ignorekeys - Archive of obsolete content
« xul reference home ignore
keys type: boolean if false, the default value, the escape
key may be used to close the panel.
... if true, the escape
key cannot be used to close the panel.
Building SpiderMonkey with UBSan
use the script to compile spidermon
key.
... this enables all the cheap undefined behavior checks other than: alignment, which hits known bugs in spidermon
key, and is more implementation-defined (slow on x86 / crash on arm) than undefined behavior float-cast-overflow, which hits known bugs in spidermon
key, and isn't exploited by today's compilers float-divide-by-zero, which jesse doesn't think is actually undefined behavior (aside from the question of whether cpu overflow flags are set) vptr, a check that requires rtti, which is disabled by default in spidermon
key 4.
Self-hosted builtins in SpiderMonkey
since firefox 17, spidermon
key has the ability to self-host built-in functions in javascript.
... the selfhostingdefines.h header contains adding self-hosted functions to host objects first, the code has to be embedded into spidermon
key.
Profiling SpiderMonkey
costs of thread safety currently, threadsafe spidermon
key costs us 10-15% on some benchmarks vs.
...if you're looking to investigate that, build a standalone copy of spidermon
key and compare it with xpcshell.
nsMsgKey
defined in comm-central/ mailnews/ base/ public/ mailnewstypes2.idl typedef unsigned long nsmsg
key; ...
MediaKeyStatusMap.entries() - Web APIs
the entries() read-only property of the media
keystatusmap interface returns a new iterator object, containing an array of [
key, value] pairs for each element in the status map, in insertion order.
Index
found 550 pages: # page tags and summary 1 spidermon
key: the mozilla javascript runtime spidermon
key standalone source code releases can be found on the releases page.
... 2 creating javascript tests automated testing, build documentation, guide, qa, spidermon
key in which test suite does your new test belong?
... 4 foss guide, spidermon
key feel free to add your own spidermon
key-based open source projects (and if necessary add categories)!
...And 545 more matches
Index - Web APIs
42 aescbcparams api, aescbcparams, dictionary, reference, web crypto api the aescbcparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.encrypt(), subtlecrypto.decrypt(), subtlecrypto.wrap
key(), or subtlecrypto.unwrap
key(), when using the aes-cbc algorithm.
... 43 aesctrparams api, aesctrparams, dictionary, reference, web crypto api the aesctrparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.encrypt(), subtlecrypto.decrypt(), subtlecrypto.wrap
key(), or subtlecrypto.unwrap
key(), when using the aes-ctr algorithm.
... 44 aesgcmparams api, aesgcmparams, dictionary, reference, web crypto api the aesgcmparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.encrypt(), subtlecrypto.decrypt(), subtlecrypto.wrap
key(), or subtlecrypto.unwrap
key(), when using the aes-gcm algorithm.
...And 305 more matches
Index
this strategy allows nss to work with many hardware devices (e.g., to speed up the calculations required for cryptographic operations, or to access smartcards that securely protect a secret
key) and software modules (e.g., to allow to load such modules as a plugin that provides additional algorithms or stores
key or trust information) that implement the pkcs#11 interface.
... some cryptography uses the same secret
key for both encrypting and decrypting, for example password based encryption (pbe).
... this is often sufficient if you encrypt data for yourself, but as soon as you need to exchange signed/encrypted data with communication partners, using public
key encryption simplifies the
key management.
...And 249 more matches
nsITextInputProcessor
dom/interfaces/base/nsitextinputprocessor.idlscriptable this interface is a text input events synthesizer and manages its composition and modifier state 1.0 66 introduced gecko 38 inherits from: nsisupports last changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamon
key 2.35) the motivation of this interface is to provide better api than nsidomwindowutils to dispatch
key events and create, modify, and commit composition in higher level.
... nsidomwindowutils has provided the methods which dispatched
keyboard events and composition events almost directly.
... therefore they sometimes caused impossible scenarios in automated tests (what's tested with such events?) and js-ime and/or js-
keyboard on firefox os or add-ons may dispatch events with wrong rules.
...And 121 more matches
Index - Archive of obsolete content
45 hot
keys add-on sdk assign hot
key combinations to functions in your add-on.
... 227 default preferences a
key part of any extension is the default settings that come with it.
...as a rough overview this is a version string split by periods, some examples: 240 extensions support in seamon
key 2 add-ons, codingscripting, extensions, javascript, seamon
key, url, thunderbird starting with seamon
key 2 alpha 1 seamon
key supports toolkit/-style extensions.
...And 88 more matches
PKCS11 FAQ
nss opens new read/write sessions for
key generation, some password management, and storage of new certificates.
...example: rsa private
key, ca certificate, user's own certificate, user's name.
... private
keys (rsa and dsa) and the corresponding certificates are read from the token.
...And 74 more matches
certutil
name certutil — manage
keys and certificate in the the nss database.
... synopsis certutil [options] arguments description the certificate database tool, certutil, is a command-line utility that can create and modify certificate and
key database files.
... it can also list, generate, modify, or delete certificates within the database, create or change the password, generate new public and private
key pairs, display the contents of the
key database, or delete
key pairs within the
key database.
...And 66 more matches
NSS tools : certutil
name certutil — manage
keys and certificate in both nss databases and other nss tokens synopsis certutil [options] [[arguments]] description the certificate database tool, certutil, is a command-line utility that can create and modify certificate and
key databases.
... it can specifically list, generate, modify, or delete certificates, create or change the password, generate new public and private
key pairs, display the contents of the
key database, or delete
key pairs within the
key database.
... certificate issuance, part of the
key and certificate management process, requires that
keys and certificates be created in the
key database.
...And 64 more matches
NSS Sample Code Sample1
nss sample code 1:
key generation and transport between servers.
... this is an example program that demonstrates how to do
key generation and transport between cooperating servers.
... this program shows the following: rsa
key pair generation naming rsa
key pairs looking up a previously generated
key pair by name creating aes and mac
keys (or encryption and mac
keys in general) wrapping symmetric
keys using your own rsa
key pair so that they can be stored on disk or in a database.
...And 61 more matches
Using IndexedDB - Web APIs
// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction || {read_write: "readwrite"}; // this line should only be needed if it is needed to support the object's constants for older browsers window.idb
keyrange = window.idb
keyrange || window.webkitidb
keyrange || window.msidb
keyrange; // (mozilla has never prefixed these objects, so we don't need window.mozidb*) beware that implementations that use a prefix may be buggy, or incomplete, or following an old version of the specification.
...in the handler for the upgradeneeded event, you should create the object stores needed for this version of the database: // this event is only implemented in recent browsers request.onupgradeneeded = function(event) { // save the idbdatabase interface var db = event.target.result; // create an objectstore for this database var objectstore = db.createobjectstore("name", {
keypath: "my
key" }); }; in this case, the database will already have the object stores from the previous version of the database, so you do not have to create these object stores again.
...if you need to change an existing object store (e.g., to change the
keypath), then you must delete the old object store and create it again with the new options.
...And 60 more matches
JSAPI reference
the jsapi is the c++ api for the spidermon
key javascript engine.
... note: the foss wiki page contains a few links to other libraries and programs that can make life easier when using spidermon
key and the jsapi.
... a note on versioning: up until the release of firefox 4, spidermon
key, and thus the jsapi, was versioned in an ad-hoc way, with releases happening at times that roughly, but not really, corresponded to firefox releases.
...And 56 more matches
Introduction to SSL - Archive of obsolete content
the document assumes that you are familiar with the basic concepts of public-
key cryptography, as summarized in "introduction to public-
key cryptography." the ssl protocol the transmission control protocol/internet protocol (tcp/ip) governs the transport and routing of data over the internet.
...ssl-enabled client software can use standard techniques of public-
key cryptography to check that a server's certificate and public id are valid and have been issued by a certificate authority (ca) listed in the client's list of trusted cas.
... use public-
key encryption techniques to generate shared secrets.
...And 53 more matches
nss tech note5
ck_mechanism_type ciphermech = ckm_des_cbc_pad <big>(for example)</big> choose a slot on which to to do the operation pk11slotinfo* slot = pk11_getbestslot(ciphermech, null); or pk11slotinfo* slot = pk11_getinternal
keyslot(); /* alwys returns internal slot, may not be optimal */ prepare the
key if using a raw
key /* turn the raw
key into a secitem */ secitem
keyitem;
keyitem.data = /* ptr to an array of
key bytes */
keyitem.len = /* length of the array of
key bytes */ /* turn the secitem into a
key object */ pk11sym
key* sym
key = pk11_importsy...
...m
key(slot, ciphermech, pk11_originunwrap, cka_encrypt, &
keyitem, null); if generating the
key - see section generate a symmetric
key <big>prepare the parameter for crypto context.
...if not using cbc mode, just pass a null iv parm to pk11_paramfromiv function secitem ivitem; ivitem.data = /* ptr to an array of iv bytes */ ivitem.len = /* length of the array of iv bytes */ secitem *secparam = pk11_paramfromiv(ciphermech, &ivitem);</big> <big>now encrypt and decrypt using the
key and parameter setup in above steps</big> create encryption context pk11context* enccontext = pk11_createcontextbysym
key(ciphermech, cka_encrypt or cka_decrypt, sym
key, secparam); do the operation.
...And 53 more matches
Textbox (XPFE autocomplete) - Archive of obsolete content
attributes access
key, alwaysopenpopup, autocompletesearch, autocompletesearchparam, autofill, autofillaftermatch, autofill, completedefaultindex, crop, disableautocomplete, disableautocomplete, disabled, disablehistory, enablehistory, focused, forcecomplete, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, ignoreblurwhilesearching, inputtooltiptext, label, maxlength, maxrows, minresultsforpopup, minresul...
..., size, tabindex, tabscrolling, textlength, textvalue, timeout, type, useraction, value methods addsession, clearresults, getdefaultsession, getresultat, getresultcount, getresultvalueat, getsession, getsessionbyname, getsessionresultat, getsessionstatusat, getsessionvalueat, removesession, select, setselectionrange, syncsessions examples (example needed) attributes access
key type: character this should be set to a character that is used as a shortcut
key.
... alwaysopenpopup obsolete since gecko 1.9.1 type: boolean note: applies to: thunderbird and seamon
keyif true, the autocomplete popup will be displayed even when there are no matches.
...And 51 more matches
NSS Tools certutil
using the certificate database tool the certificate database tool is a command-line utility that can create and modify the netscape communicator cert8.db and
key3.db database files.
... it can also list, generate, modify, or delete certificates within the cert8.db file and create or change the password, generate new public and private
key pairs, display the contents of the
key database, or delete
key pairs within the
key3.db file.
...it means that cert9.db and
key4.db files may be targeted instead.
...And 45 more matches
Installing plugins to Gecko embedding browsers on Windows - Archive of obsolete content
this document presents the windows registry
keys plugin installers can parse to determine where to install a given plugin (for mozilla browsers) on windows.
...none of the registry
keys mentioned here are written by browsers before the mozilla 0.9.1 timeframe.
... for example, netscape 6.0 and 6.01 do not write any of these
keys into the registry, and thus these
keys are not available for plugin vendors to parse for these two browsers.
...And 43 more matches
sample2
*/ /* nspr headers */ #include <prthread.h> #include <plgetopt.h> #include <prerror.h> #include <prinit.h> #include <prlog.h> #include <prtypes.h> #include <plstr.h> /* nss headers */ #include <cryptohi.h> #include <
keyhi.h> #include <pk11priv.h> #include <cert.h> #include <base64.h> #include <secerr.h> #include <secport.h> #include <secoid.h> #include <secmodt.h> #include <secoidt.h> #include <sechash.h> /* our samples utilities */ #include "util.h" /* constants */ #define blocksize 32 #define modblocksize 128 #define default_
key_bits 1024 /* header file constants */ #define enc
key_header "-----begin wrapped en...
...c
key-----" #define enc
key_trailer "-----end wrapped enc
key-----" #define mac
key_header "-----begin wrapped mac
key-----" #define mac
key_trailer "-----end wrapped mac
key-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" #define lab_header "-----begin
key label-----" #define lab_trailer "-----end
key label-----" #define pub
key_header "-----begin pub
key -----" #define pub
key_trailer "-----end pub
key -----" #define ns_certreq_header "-----begin new certificate request-----" #define ns_certreq_trailer "-----end new certificate request-----" #define ns_cert_enc_header "-----begin certificate for encryption...
...*/ #ifndef port_errortostring #define port_errortostring(err) pr_errortostring((err), pr_language_i_default) #endif /* sample 6 commands */ typedef enum { generate_csr, add_cert_to_db, save_cert_to_header, encrypt, decrypt, sign, verify, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3, pad = 4, pub
key = 5, lab = 6, certenc= 7, certvfy= 8, sig = 9 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s %s %s %s %s %s %s %s %s %s\n\n", progname, " -<g|a|h|e|ds|v> -d <dbdirpath> ", "[-p <dbpwd> | -f <dbpwdfile>] [-z <noisefilename>] [-a <\"\">]", "-s <subject> -r <csr> | ", "-n <nic...
...And 43 more matches
Encryption and Decryption - Archive of obsolete content
with most modern cryptography, the ability to keep encrypted information secret is based not on the cryptographic algorithm, which is widely known, but on a number called a
key that must be used with the algorithm to produce an encrypted result or to decrypt previously encrypted information.
... decryption with the correct
key is simple.
... decryption without the correct
key is very difficult, and in some cases impossible for all practical purposes.
...And 42 more matches
textbox (Toolkit autocomplete) - Archive of obsolete content
attributes access
key, autocompletepopup, autocompletesearch, autocompletesearchparam, completedefaultindex, completeselectedindex,crop, disableautocomplete, disabled, disable
keynavigation, enablehistory, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputtooltiptext, label, maxlength, maxrows, minresultsforpopup, nomatch, onchange, oninput, onsearchcomplete, ontextentered, ontextreverted, ope...
...n, readonly,showcommentcolumn, showimagecolumn, size, tabindex, tabscrolling, timeout, type, value properties accessibletype, completedefaultindex, controller, crop, disableautocomplete, disable
keynavigation, disabled, editable, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputfield, label, maxlength, maxrows, minresultsforpopup, open, popup, popupopen, searchcount, searchparam, selectionend, selectionstart, showcommentcolumn, showimagecolumn,size, tabindex, tabscrolling, textlength, textvalue, timeout, type, value methods getsearchat, onsearchcomplete, ontextentered, ontextreverted, select, setselectionrange examples <textbox type="autocomplete" autocompletesearch="history"/> attributes access
key type: character this should be set to...
... a character that is used as a shortcut
key.
...And 41 more matches
Index - Archive of obsolete content
3 a xul bestiary add-ons, extensions, needstechnicalreview, xul this xulnote presents some of the
key concepts and terms in the xul development environment.
... 10 access
key reference, xul, xul attributes, xul reference, access
key no summary!
... 33 buttonaccess
keyaccept xul attributes, xul reference no summary!
...And 40 more matches
sslerr.html
it can be due to a server being misconfigured to use a non-rsa certificate with the rsa
key exchange algorithm.
... ssl_error_no_certificate -12285 "unable to find the certificate or
key necessary for authentication." this error has many potential causes; for example: certificate or
key not found in database.
... wrong password for
key database.
...And 40 more matches
XUL accessibility guidelines - Archive of obsolete content
guidelines
keyboard access
keyboard access is important to users who can't use a mouse.
... many screen reader users and those with physical disabilities rely on the
keyboard as their primary input tool.
... these users require easy, predictable, and well-documented
keyboard control.
...And 38 more matches
Encrypt Decrypt_MAC_Using Token
generates encryption/mac
keys and uses token for storing.
...de #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin aes
key ckaid-----" #define enc
key_trailer "-----end aes
key ckaid-----" #define mac
key_header "-----begin mac
key ckaid-----" #define mac
key_trailer "-----end mac
key ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer ...
... "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit.
...And 38 more matches
nsINavBookmarksService
1.0 67 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) implemented by: @mozilla.org/browser/nav-bookmarks-service;1.
...astring getitemguid(in long long aitemid); obsolete since gecko 14.0 long long getitemidforguid(in astring aguid); obsolete since gecko 14.0 long getitemindex(in long long aitemid); prtime getitemlastmodified(in long long aitemid); autf8string getitemtitle(in long long aitemid); unsigned short getitemtype(in long long aitemid); astring get
keywordforbookmark(in long long aitemid); obsolete since gecko 40.0 astring get
keywordforuri(in nsiuri auri); obsolete since gecko 40.0 nsitransaction getremovefoldertransaction(in long long aitemid); nsiuri geturifor
keyword(in astring
keyword); obsolete since gecko 40.0 void importbookmarkshtml(in nsiuri url); obsolete since gecko 1.9 void importbookmark...
...setitemdateadded(in long long aitemid, in prtime adateadded); void setitemguid(in long long aitemid, in astring aguid); obsolete since gecko 14.0 void setitemindex(in long long aitemid, in long anewindex); void setitemlastmodified(in long long aitemid, in prtime alastmodified); void setitemtitle(in long long aitemid, in autf8string atitle); void set
keywordforbookmark(in long long aitemid, in astring a
keyword); obsolete since gecko 40.0 void set
keywordforuri(in nsiuri uri, in astring
keyword); obsolete since gecko 1.9 obsolete since gecko 40.0 attributes attribute type description bookmarksmenufolder long long the item id of the bookmarks menu folder.
...And 37 more matches
PKCS11 Implement
if the ckf_write_protected flag is set, nss won't use the token to generate
keys.
...the nss attempts to initialize the device only if it needs to generate a
key or needs to set the user pin.
... the nss calls c_initpin to initialize the device and set the user pin; if these calls are successful, the
key is generated and at that point the cfk_user_pin_initialized flag should change from false to true.
...And 36 more matches
sslfnc.html
syntax #include "nss.h" secstatus nss_init(char *configdir); parameter this function has the following parameter: configdir a pointer to a string containing the pathname of the directory where the certificate,
key, and security module databases reside.
... description nss_init opens the certn.db,
keyn.db, and secmod.db files (wheren is a numeric digit) in the specified directory.
... syntax #include "nss.h" secstatus nss_initreadwrite(char *configdir); parameter this function has the following parameter: configdir a pointer to a string containing the pathname of the directory where the certificate,
key, and security module databases reside.
...And 36 more matches
An overview of NSS Internals
this strategy allows nss to work with many hardware devices (e.g., to speed up the calculations required for cryptographic operations, or to access smartcards that securely protect a secret
key) and software modules (e.g., to allow to load such modules as a plugin that provides additional algorithms or stores
key or trust information) that implement the pkcs#11 interface.
... some cryptography uses the same secret
key for both encrypting and decrypting, for example password based encryption (pbe).
... this is often sufficient if you encrypt data for yourself, but as soon as you need to exchange signed/encrypted data with communication partners, using public
key encryption simplifies the
key management.
...And 33 more matches
NSS functions
keywords: deprecated - function should no longer be used.
... mxr 3.6 and later cert_createrdn mxr 3.2.1 and later cert_createsubjectcertlist mxr 3.4 and later cert_createvalidity mxr 3.5 and later cert_crlcacherefreshissuer mxr 3.7 and later cert_decodealtnameextension mxr 3.10 and later cert_decodeauthinfoaccessextension mxr 3.10 and later cert_decodeauth
keyid mxr 3.10 and later cert_decodeavavalue mxr 3.4 and later cert_decodebasicconstraintvalue mxr 3.2 and later cert_decodecertfrompackage mxr 3.4 and later cert_decodecertificatepoliciesextension mxr 3.2 and later cert_decodecertpackage mxr 3.2 and later cert_decodecrldistributionpoints mxr 3.10 and late...
...r cert_decodedercrl mxr 3.2 and later cert_decodedercrlwithflags mxr 3.6 and later cert_decodegeneralname mxr 3.4 and later cert_decodenameconstraintsextension mxr 3.10 and later cert_decodeocspresponse mxr 3.6 and later cert_decodeoidsequence mxr 3.2 and later cert_decodepriv
keyusageperiodextension mxr 3.10 and later cert_decodetruststring mxr 3.4 and later cert_decodeusernotice mxr 3.2 and later cert_dernametoascii mxr 3.4 and later cert_destroycertarray mxr 3.2 and later cert_destroycertificate mxr 3.2 and later cert_destroycertificatelist mxr 3.2 and later cert_destroycertificatepoliciese...
...And 33 more matches
Basic concepts - Web APIs
it gives you the big picture and explains
key concepts.
... overview of indexeddb indexeddb lets you store and retrieve objects that are indexed with a "
key." all changes that you make to the database happen within transactions.
...so keep the following important concepts in mind: indexeddb databases store
key-value pairs.
...And 33 more matches
Map - JavaScript
the map object holds
key-value pairs and remembers the original insertion order of the
keys.
... any value (both objects and primitive values) may be used as either a
key or a value.
... description a map object iterates its elements in insertion order — a for...of loop returns an array of [
key, value] for each iteration.
...And 33 more matches
NSS Sample Code Sample_3_Basic Encryption and MACing
sample code 3 /* nspr headers */ #include <prthread.h> #include <plgetopt.h> #include <prerror.h> #include <prinit.h> #include <prlog.h> #include <prtypes.h> #include <plstr.h> /* nss headers */ #include <
keyhi.h> #include <pk11priv.h> /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin aes
key ckaid-----" #define enc
key_trailer "-----end aes
key ckaid-----" ...
...#define mac
key_header "-----begin mac
key ckaid-----" #define mac
key_trailer "-----end mac
key ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3, pad = 4 } headertype; /* print a usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c <a|b> -d <dbdirpath> [-z <noisefilename>] " "[-p <dbpwd> | -f <dbpwdfile>] -...
...*/ /* nspr headers */ #include <prthread.h> #include <plgetopt.h> #include <prerror.h> #include <prinit.h> #include <prlog.h> #include <prtypes.h> #include <plstr.h> /* * gather a cka_id */ secstatus gathercka_id(pk11sym
key*
key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesym
key,
key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read sym
key cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric
key */ pk11sym
key * generatesym
key(pk11slotinfo *...
...And 32 more matches
Web Authentication API - Web APIs
the web authentication api is an extension of the credential management api that enables strong authentication with public
key cryptography, enabling passwordless authentication and/or secure second-factor authentication without sms texts.
... web authentication concepts and usage the web authentication api (also referred to as webauthn) uses asymmetric (public-
key) cryptography instead of passwords or sms texts for registering, authenticating, and second-factor authentication with websites.
...similar to the other forms of the credential management api, the web authentication api has two basic methods that correspond to register and login: navigator.credentials.create() - when used with the public
key option, creates new credentials, either for registering a new account or for associating a new asymmetric
key pair credentials with an existing account.
...And 32 more matches
Handling common accessibility problems - Learn web development
when we say accessibility in the context of web technology, most people immediately think of making sure websites/apps are usable by people with disabilities, for example: visually impaired people using screen readers or magnification/zoom to access text people with motor function impairments using the
keyboard (or other non-mouse features) to activate website functionality.
... using native
keyboard accessibility certain html features can be selected using only the
keyboard — this is default behavior, available since the early days of the web.
... you can try this out using our native-
keyboard-accessibility.html example (see the source code) — open this in a new tab, and try pressing the tab
key; after a few presses, you should see the tab focus start to move through the different focusable elements; the focused elements are given a highlighted default style in every browser (it differs slightly between different browsers) so that you can tell what element is focused.
...And 31 more matches
Encrypt and decrypt MAC using token
generates encryption/mac
keys and uses token for storing.
...de #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin aes
key ckaid-----" #define enc
key_trailer "-----end aes
key ckaid-----" #define mac
key_header "-----begin mac
key ckaid-----" #define mac
key_trailer "-----end mac
key ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer ...
... "-----end mac-----" #define pad_header "-----begin pad-----" #define pad_trailer "-----end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c "); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20s specify db directory path\n\n", "-d "); fprintf(stderr, "%-20s specify db password ...
...And 31 more matches
NSS tools : pk12util
name pk12util — export and import
keys and certificate to or from a pkcs #12 file and the nss database synopsis pk12util [-i p12file [-h tokenname] [-v] [common-options] ] [ -l p12file [-h tokenname] [-r] [common-options] ] [ -o p12file -n certname [-c
keycipher] [-c certcipher] [-m|--
key_len
keylen] [-n|--cert_
key_len cert
keylen] [common-options] ] [ common-options are: [-d [sql:]directory] [-p dbprefix] [-k slotpasswordfile|-k slotpassword] [-w p12filepasswordfile|-w p12filepassword] ] description the pkcs #12 utility, pk12util, enables sharing certificates among any server that supports pkcs#12.
... the tool can import certificates and
keys from pkcs#12 files into security databases, export certificates, and list certificates and
keys.
... options and arguments options -i p12file import
keys and certificates from a pkcs#12 file into a security database.
...And 31 more matches
NSS tools : pk12util
nss tools : pk12util name pk12util — export and import
keys and certificate to or from a pkcs #12 file and the nss database synopsis pk12util [-i p12file|-l p12file|-o p12file] [-d [sql:]directory] [-h tokenname] [-p dbprefix] [-r] [-v] [-k slotpasswordfile|-k slotpassword] [-w p12filepasswordfile|-w p12filepassword] description the pkcs #12 utility, pk12util, enables sharing certificates among any server that supports pkcs#12.
... the tool can import certificates and
keys from pkcs#12 files into security databases, export certificates, and list certificates and
keys.
... options and arguments options -i p12file import
keys and certificates from a pkcs#12 file into a security database.
...And 30 more matches
Accessing the Windows Registry Using XPCOM
support in firefox 1.5 or newer in firefox 1.5, a new api was added, nsiwindowsreg
key, which provides extensive registry functionality.
... a simple example here's a simple example showing how to read your windows productid: var wrk = components.classes["@mozilla.org/windows-registry-
key;1"] .createinstance(components.interfaces.nsiwindowsreg
key); wrk.open(wrk.root_
key_local_machine, "software\\microsoft\\windows\\currentversion", wrk.access_read); var id = wrk.readstringvalue("productid"); wrk.close(); this example, while simple, shows several important things about using the interface.
...second, you must call open() on the
key before attempting to read a value.
...And 30 more matches
JSS Provider Notes
by default, the jss provider carries out all operations except messagedigest on the internal
key storage token, a software token included in jss/nss.
... whenever a new thread is created, its token is initialized to the default, the internal
key storage token.
... the following example shows how you can specify which token is used for various jca operations: // lookup pkcs #11 tokens cryptomanager manager = cryptomanager.getinstance(); cryptotoken tokena = manager.gettokenbyname("tokena"); cryptotoken tokenb = manager.gettokenbyname("tokenb"); // create an rsa
keypairgenerator using tokena manager.setthreadtoken(tokena);
keypairgenerator rsakpg =
keypairgenerator.getinstance("rsa", "mozilla-jss"); // create a dsa
keypairgenerator using tokenb manager.setthreadtoken(tokenb);
keypairgenerator dsakpg =
keypairgenerator.getinstance("dsa", "mozilla-jss"); // generate an rsa
keypair.
...And 29 more matches
Mozilla-JSS JCA Provider notes
by default, the jss provider carries out all operations except messagedigest on the internal
key storage token, a software token included in jss/nss.
...whenever a new thread is created, its token is initialized to the default, the internal
key storage token.
...the following example shows how you can specify which token is used for various jca operations: // lookup pkcs #11 tokens cryptomanager manager = cryptomanager.getinstance(); cryptotoken tokena = manager.gettokenbyname("tokena"); cryptotoken tokenb = manager.gettokenbyname("tokenb"); // create an rsa
keypairgenerator using tokena manager.setthreadtoken(tokena);
keypairgenerator rsakpg =
keypairgenerator.getinstance("mozilla-jss", "rsa"); // create a dsa
keypairgenerator using tokenb manager.setthreadtoken(tokenb);
keypairgenerator dsakpg =
keypairgenerator.getinstance("mozilla-jss", "dsa"); // generate an rsa
keypair.
...And 29 more matches
EncDecMAC using token object - sample 3
*/ /* nspr headers */ #include #include #include #include #include #include #include /* nss headers */ #include #include /* our samples utilities */ #include "util.h" #define buffersize 80 #define digestsize 16 #define ptext_mac_buffer_size 96 #define ciphersize 96 #define blocksize 32 #define cipher_header "-----begin cipher-----" #define cipher_trailer "-----end cipher-----" #define enc
key_header "-----begin aes
key ckaid-----" #define enc
key_trailer "-----end aes
key ckaid-----" #define mac
key_header "-----begin mac
key ckaid-----" #define mac
key_trailer "-----end mac
key ckaid-----" #define iv_header "-----begin iv-----" #define iv_trailer "-----end iv-----" #define mac_header "-----begin mac-----" #define mac_trailer "-----end mac-----" #define pad_header "-----begin pad-----" #defi...
...ne pad_trailer "-----end pad-----" typedef enum { encrypt, decrypt, unknown } commandtype; typedef enum { sym
key = 0, mac
key = 1, iv = 2, mac = 3, pad = 4 } headertype; /* * print usage message and exit */ static void usage(const char *progname) { fprintf(stderr, "\nusage: %s -c -d [-z ] " "[-p | -f ] -i -o \n\n", progname); fprintf(stderr, "%-20s specify 'a' for encrypt operation\n\n", "-c "); fprintf(stderr, "%-20s specify 'b' for decrypt operation\n\n", " "); fprintf(stderr, "%-20s specify db directory path\n\n", "-d "); fprintf(stderr, "%-20s specify db password [optional]\n\n", "-p "); fprintf(stderr, "%-20s specify db password file [optional]\n\n", "-f "); fprintf(stderr, "%-20s specify noise file name [optional]\n\n", "-z "); fprintf(stderr, "%-21s specify an input file name\n\n", "-i ...
..., "-o "); fprintf(stderr, "%-7s for encrypt, it takes as an input file and produces\n", "note :"); fprintf(stderr, "%-7s .enc and .header as intermediate output files.\n\n", ""); fprintf(stderr, "%-7s for decrypt, it takes .enc and .header\n", ""); fprintf(stderr, "%-7s as input files and produces as a final output file.\n\n", ""); exit(-1); } /* * gather a cka_id */ secstatus gathercka_id(pk11sym
key*
key, secitem* buf) { secstatus rv = pk11_readrawattribute(pk11_typesym
key,
key, cka_id, buf); if (rv != secsuccess) { pr_fprintf(pr_stderr, "pk11_readrawattribute returned (%d)\n", rv); pr_fprintf(pr_stderr, "could not read sym
key cka_id attribute\n"); return rv; } return rv; } /* * generate a symmetric
key */ pk11sym
key * generatesym
key(pk11slotinfo *slot, ck_mechanism_type mechanism, int
keysi...
...And 28 more matches
JSAPI User Guide
this document explains how to embed spidermon
key, the mozilla javascript engine, in your c++ program.
...these programs can execute javascript code from c++ using the spidermon
key api.
... note: the foss wiki page contains a few links to other libraries and programs that can make life easier when using spidermon
key and jsapi.
...And 28 more matches
Dict.jsm
the dict.jsm javascript code module offers routines for managing dictionaries of
key/value pairs.
... to use it, you first need to import the code module into your javascript scope: components.utils.import("resource://gre/modules/dict.jsm"); creating a dictionary you can create a new, empty dictionary by simply calling the dict() constructor: var newdict = new dict(); if you wish, you may also pass in an object literal of
key/value pairs with which to initialize the dictionary: var someobj = {}; var newdict = new dict({
key1: "foo",
key2: someobj}); note that values may be any javascript object type.
... note: you can actually specify non-strings as
keys; these are converted to strings before being used, so they're documented here as if they were a string parameter.
...And 27 more matches
NSS tools : signtool
synopsis signtool [-k
keyname] -h -h -l -l -m -v -w -g nickname -s size -b basename [[-c compression level] ] [[-d cert-dir] ] [[-i installer script] ] [[-m metafile] ] [[-x name] ] [[-f filename] ] [[-t|--token tokenname] ] [[-e extension] ] [[-o] ] [[-z] ] [[-x] ] [[--outfile] ] [[--verbose value] ] [[--norecurse] ] [[--leavearc] ] [[-j directory] ] [[-z jarfile] ] [[-o] ] [[-p password] ] [directory-tree] [archive] description the signing tool, signtool, creates digital signatures and uses a java archive (jar) file to associate the signatures with files in a directory.
... before you can use netscape signing tool to sign files, you must have an object-signing certificate, which is a special certificate whose associated private
key is used to create digital signatures.
... communicator supports the public-
key cryptography standard known as pkcs #12, which governs
key portability.
...And 27 more matches
Index
each item has a
key that identifies the item.
... items are found, added, and removed from the hashtable by using the
key.
...each item has a
key that identifies the item.
...And 27 more matches
nsIMsgDatabase
inherits from: nsidbchangeannouncer method overview void open(in nsilocalfile afoldername, in boolean acreate, in boolean aleaveinvaliddb); void forcefolderdbclosed(in nsimsgfolder afolder); void close(in boolean aforcecommit); void commit(in nsmsgdbcommit committype); void forceclosed(); void clearcachedhdrs; void resethdrcachesize(in unsigned long size); nsimsgdbhdr getmsghdrfor
key(in nsmsg
key key); nsimsgdbhdr getmsghdrformessageid(in string messageid); boolean contains
key(in nsmsg
key key); nsimsgdbhdr createnewhdr(in nsmsg
key key); void addnewhdrtodb(in nsimsgdbhdr newhdr, in boolean notify); nsimsgdbhdr copyhdrfromexistinghdr(in nsmsg
key key, in nsimsgdbhdr existinghdr, in boolean addhdrtodb); void listall
keys(in nsmsg
keyarrayref output
keys); native code only...
...synccounts; nsimsgthread getthreadcontainingmsghdr(in nsimsgdbhdr msghdr); void markhdrread(in nsimsgdbhdr msghdr, in boolean bread, in nsidbchangelistener instigator); void markhdrreplied(in nsimsgdbhdr msghdr, in boolean breplied, in nsidbchangelistener instigator); void markhdrmarked(in nsimsgdbhdr msghdr, in boolean mark,in nsidbchangelistener instigator); void markmdnneeded(in nsmsg
key key, in boolean bneeded,in nsidbchangelistener instigator); boolean ismdnneeded(in nsmsg
key key); void markmdnsent(in nsmsg
key key, in boolean bneeded, in nsidbchangelistener instigator); boolean ismdnsent(in nsmsg
key key); void markread(in nsmsg
key key, in boolean bread, in nsidbchangelistener instigator); void markreplied(in nsmsg
key key, in boolean breplied, in nsidbchangelistener in...
...stigator); void markforwarded(in nsmsg
key key, in boolean bforwarded, in nsidbchangelistener instigator); void markhasattachments(in nsmsg
key key, in boolean bhasattachments, in nsidbchangelistener instigator); void markthreadread(in nsimsgthread thread, in nsidbchangelistener instigator, in nsmsg
keyarrayptr thosemarked); native code only!
...And 27 more matches
IDBObjectStoreSync - Web APIs
method overview any add (in any value, in optional any
key) raises (idbdatabaseexception); idbindexsync createindex (in domstring name, in domstring storename, in domstring
keypath, in optional boolean unique); any get (in any
key) raises (idbdatabaseexception); idbcursorsync opencursor (in optional idb
keyrange range, in optional unsigned short direction) raises (idbdatabaseexception); idbindexsync openindex (in domst...
...ring name) raises (idbdatabaseexception); any put (in any value, in optional any
key) raises (idbdatabaseexception); void remove (in any
key) raises (idbdatabaseexception); void removeindex (in domstring indexname) raises (idbdatabaseexception); attributes attribute type description indexnames readonly domstringlist a list of the names of the indexes on this object store.
...
keypath readonly domstring the
key path of this object store.
...And 27 more matches
SubtleCrypto - Web APIs
even assuming you use the basic cryptographic functions correctly, secure
key management and overall security system design are extremely hard to get right, and are generally the domain of specialist security experts.
... subtlecrypto.encrypt() returns a promise that fufills with the encrypted data corresponding to the clear text, algorithm, and
key given as parameters.
... subtlecrypto.decrypt() returns a promise that fulfills with the clear data corresponding to the encrypted text, algorithm, and
key given as parameters.
...And 27 more matches
Menus - Archive of obsolete content
the cursor
keys can also be used to adjust which menuitem is the current item.
... the menu can also be opened by using the
keyboard.
... the user can press a
key to highlight the menu labels and navigate with the cursor
keys.
...And 26 more matches
The First Install Problem - Archive of obsolete content
the solution suggests that plugin vendors ought to leave dlls on a windows desktop whether or not a netscape gecko browser is detected, and then write
keys in the windows registry giving future netscape gecko browsers the path where the plugin resides and meta-information about how to load the plugin.
... this document supplements the
key parsing methodology suggested for installers.
... the solution is to encourage plugin vendors to write registry
keys to the win32 system registry, like the example application.
...And 26 more matches
IDBIndexSync - Web APIs
method overview any add (in any value, in optional any
key) raises (idbdatabaseexception); any get (in any
key) raises (idbdatabaseexception); any getobject (in any
key) raises (idbdatabaseexception); void opencursor (in optional idb
keyrange range, in optional unsigned short direction) raises (idbdatabaseexception); void openobjectcursor (in optional idb
keyrange range, in optional unsigned short direction) raises (idbd...
...atabaseexception); any put (in any value, in optional any
key) raises (idbdatabaseexception); void remove (in any
key) raises (idbdatabaseexception); attributes attribute type description
keypath readonly domstring the
key path of this index.
... unique readonly boolean if true, a
key can have only one value within the index; if false, a
key can have duplicate values.
...And 26 more matches
Parser API
recent builds of the standalone spidermon
key shell include a reflection of the spidermon
key parser, made available as a javascript api.
... note: this page describes spidermon
key-specific behavior and might be incomplete.
... visit estree spec for a community ast standard that includes latest ecmascript features and is backward-compatible with spidermon
key format.
...And 25 more matches
A Web PKI x509 certificate primer
in general, x509 certificates bind a signature to a validity period, a public
key, a subject, an issuer, and a set of extensions.
... one issue that is not commonly known is that the x509 trust graph is not a forest (a bunch of trees where each root is a trusted root) but a cyclic graph, where the same
key/issuer can be a root or an intermediate for another root in the browsers
key store (when roots create intermediates for each other it is called cross-signing).
...
key usage this extension is used to constrain the purpose for the
key in the certificate.
...And 25 more matches
nss tech note7
data types nss uses the following data types to represent
keys: sec
keypublic
key: a public
key, defined in "
keythi.h".
... sec
keyprivate
key: a private
key, defined in "
keythi.h".
... pk11sym
key: a symmetric
key (often called a session
key), defined in "secmodt.h".
...And 24 more matches
nsIMsgDBView
ervalue sortorder); void docommand(in nsmsgviewcommandtypevalue command); void docommandwithfolder(in nsmsgviewcommandtypevalue command, in nsimsgfolder destfolder); void getcommandstatus(in nsmsgviewcommandtypevalue command, out boolean selectable_p, out nsmsgviewcommandcheckstatevalue selected_p); void viewnavigate(in nsmsgnavigationtypevalue motion, out nsmsg
key resultid, out nsmsgviewindex resultindex, out nsmsgviewindex threadindex, in boolean wrap); boolean navigatestatus(in nsmsgnavigationtypevalue motion); nsmsg
key get
keyat(in nsmsgviewindex index); nsimsgdbhdr getmsghdrat(in nsmsgviewindex index); nsimsgfolder getfolderforviewindex(in nsmsgviewindex index); acstring geturiforviewindex(in nsmsgviewindex i...
...ndex); nsimsgdbview clonedbview(in nsimessenger amessengerinstance, in nsimsgwindow amsgwindow, in nsimsgdbviewcommandupdater acommandupdater); void geturisforselection([array, size_is(count)] out string uris, out unsigned long count); void getindicesforselection([array, size_is(count)] out nsmsgviewindex indices, out unsigned long count); void loadmessagebymsg
key(in nsmsg
key amsg
key); void loadmessagebyviewindex(in nsmsgviewindex aindex); void loadmessagebyurl(in string aurl); void reloadmessage(); void reloadmessagewithallparts(); void selectmsgby
key(in nsmsg
key key); void selectfoldermsgby
key(in nsimsgfolder afolder, in nsmsg
key a
key); void ondeletecompleted(in boolean succeeded); ns...
...msgviewindex findindexfrom
key(in nsmsg
key amsg
key, in boolean aexpand); void expandandselectthreadbyindex(in nsmsgviewindex aindex, in boolean aaugment); void addcolumnhandler(in astring acolumn, in nsimsgcustomcolumnhandler ahandler); void removecolumnhandler(in astring acolumn); nsimsgcustomcolumnhandler getcolumnhandler(in astring acolumn); attributes attribute type description viewtype nsmsgviewtypevalue readonly: type of view.
...And 24 more matches
JXON - Archive of obsolete content
the text content of each element is stored into the
keyvalue property, while nodeattributes, if they exist, are listed under the child object
keyattributes.
... if (onode.nodetype === 1 && !onode.prefix) { // nodetype is "element" (1) sprop = onode.nodename.tolowercase(); vcontent = new jxontree(onode); if (this.hasownproperty(sprop)) { if (this[sprop].constructor !== array) { this[sprop] = [this[sprop]]; } this[sprop].push(vcontent); } else { this[sprop] = vcontent; nlength++; } } } this.
keyvalue = parsetext(scollectedtxt); } else { this.
keyvalue = null; } if (oparentnode.hasattributes && oxmlparent.hasattributes()) { var oattrib; this.
keyattributes = {}; for (nattrlen; nattrlen < oxmlparent.attributes.length; nattrlen++) { oattrib = oxmlparent.attributes.item(nattrlen); this.
keyattributes[oattrib.name.tolowercase()] = parsetext(oattrib.value.trim()); ...
... this.
keylength = nlength; this.attributeslength = nattrlen; // this.domnode = oxmlparent; */ /* object.freeze(this); */ } /* * optional methods...
...And 23 more matches
generateCRMFRequest() - Archive of obsolete content
use <
keygen> or the future web crypto api instead.
... crmfobject = crypto.generatecrmfrequest("requesteddn", "regtoken", "authenticator", "escrowauthoritycert", "crmf generation done code",
keysize1, "
keyparams1", "
keygenalg1", ...,
keysizen, "
keyparamsn", "
keygenalgn"); this method will generate a sequence of crmf requests that has n requests.
... one request for each
key pair that is generated.
...And 23 more matches
SSL and TLS - Archive of obsolete content
ssl/tls uses a combination of public
key and symmetric-
key encryption.
... symmetric-
key encryption is much faster than public-
key encryption, but public-
key encryption provides better authentication techniques.
...the handshake allows the server to authenticate itself to the client using public-
key techniques, then allows the client and the server to cooperate in the creation of symmetric
keys used for rapid encryption, decryption, and tamper detection during the session that follows.
...And 23 more matches
Third-party APIs - Learn web development
they usually require api
keys security for browser apis tends to be handled by permission prompts, as discussed in our first article.
... third party apis have a slightly different permissions system — they tend to use developer
keys to allow developers access to the api functionality, which is more to protect the api vendor than the user.
... you'll find a line similar to the following in the mapquest api example: l.mapquest.
key = 'your-api-
key-here'; this line specifies an api or developer
key to use in your application — the developer of the application must apply to get a
key, and then include it in their code to be allowed access to the api's functionality.
...And 23 more matches
NSS tools : modutil
this tool can also create certificate,
key, and module security database files.
... the tasks associated with security module database management are part of a process that typically also involves managing
key databases and certificate databases.
... -create create new certificate,
key, and module databases.
...And 23 more matches
NSS tools : modutil
this tool can also create certificate,
key, and module security database files.
... the tasks associated with security module database management are part of a process that typically also involves managing
key databases and certificate databases.
... -create create new certificate,
key, and module databases.
...And 23 more matches
Bytecode Descriptions
push true if obj has a property with the
key id.
...format: jof_ic conversions toproperty
key stack: propertynamevalue ⇒ property
key convert a value to a property
key.
... implements: toproperty
key, except that if the result would be the string representation of some integer in the range 0..2^31, we push the corresponding int32 value instead.
...And 23 more matches
Detailed XPCOM hashtable guide
each item has a
key that identifies the item.
... items are found, added, and removed from the hashtable by using the
key.
... hashtables may seem like arrays, but there are important differences: array hashtable
keys: integer: arrays are always
keyed on integers, and must be contiguous.
...And 22 more matches
nsIDOMWindowUtils
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 49.0 (firefox 49.0 / thunderbird 49.0 / seamon
key 2.46) implemented by: window.
...; void resumetimeouts(); void sendcompositionevent(in astring atype); obsolete since gecko 9 void sendcompositionevent(in astring atype, in astring adata, in astring alocale); obsolete since gecko 38.0 void sendcontentcommandevent(in astring atype, [optional] in nsitransferable atransferable); void getclassname(in object aobj); boolean send
keyevent(in astring atype, in long a
keycode, in long acharcode, in long amodifiers, [optional] in boolean apreventdefault); obsolete since gecko 15.0 boolean send
keyevent(in astring atype, in long a
keycode, in long acharcode, in long amodifiers, [optional] in unsigned long aadditionalflags); deprecated since gecko 38.0 void sendmouseevent(in astring atype, in float ax, in float ay...
...e, in float ax, in float ay, in long abutton, in long ascrollflags, in long adelta, in long amodifiers); obsolete since gecko 17.0 void sendwheelevent(in float ax, in float ay, in double adeltax, in double adeltay, in double adeltaz, in unsigned long adeltamode, in long amodifiers, in long alineorpagedeltax, in long alineorpagedeltay, in unsigned long aoptions); void sendnative
keyevent(in long anative
keyboardlayout, in long anative
keycode, in long amodifierflags, in astring acharacters, in astring aunmodifiedcharacters); void sendnativemouseevent(in long ascreenx, in long ascreeny, in long anativemessage, in long amodifierflags, in nsidomelement aelement); nsiquerycontenteventresult sendquerycontentevent(in unsigned long atype, in unsigned long aoffset,...
...And 22 more matches
nsISessionStore
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) in versions of firefox prior to 3.5, the user preference browser.sessionstore.enabled must be true for these calls to be successful.
... method overview void deletetabvalue(in nsidomnode atab, in astring a
key); void deletewindowvalue(in nsidomwindow awindow, in astring a
key); nsidomnode duplicatetab(in nsidomwindow awindow, in nsidomnode atab); nsidomnode forgetclosedtab(in nsidomwindow awindow, in unsigned long aindex); nsidomnode forgetclosedwindow(in unsigned long aindex); astring getbrowserstate(); unsigned long getclosedtabcount(in nsidomwindow awindow); astring getclosedtabdata(in nsidomwindow awindow); unsigned long getclosedwindowcount(); astring getclosedwindowdata(); astring gettabstate(in nsidomnode atab); astring gettabvalue(in nsidomnode at...
...ab, in astring a
key); astring getwindowstate(in nsidomwindow awindow); astring getwindowvalue(in nsidomwindow awindow, in astring a
key); void init(in nsidomwindow awindow); void persisttabattribute(in astring aname); void restorelastsession(); void setbrowserstate(in astring astate); void settabstate(in nsidomnode atab, in astring astate); void settabvalue(in nsidomnode atab, in astring a
key, in astring astringvalue); void setwindowstate(in nsidomwindow awindow, in astring astate, in boolean aoverwrite); void setwindowvalue(in nsidomwindow awindow, in astring a
key, in astring astringvalue); nsidomnode undoclosetab(in nsidomwindow awindow, in unsigned long aindex); nsidomwindow undoclo...
...And 22 more matches
WeakMap - JavaScript
the weakmap object is a collection of
key/value pairs in which the
keys are weakly referenced.
... the
keys must be objects and the values can be arbitrary values.
... you can learn more about weakmaps in the weakmap object guide (under
keyed collections).
...And 22 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
the namespace uri is : http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul if the character encoding is utf-8, both the encoding specifier and the xml declaration can be omitted.
... <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="chrome://global/skin/"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <!-- contents go here.
...using methods we will cover in chapter 4, we will see how windows can be acquired using these values as
keys.
...And 21 more matches
How to build custom form controls - Learn web development
we require our control to be usable with a mouse as well as with a
keyboard, and comprehensible to a screen reader, just like any native control.
... the control was active and the user moves the focus to another control using the
keyboard (e.g.
... the tab
key).
...And 21 more matches
MenuItems - Archive of obsolete content
adding shortcut
keys to menu items a shortcut
key may be associated with a menu item.
... unlike the access
key, which only functions while the menu is open, a shortcut
key works at any time.
... a shortcut
key can be created using the
key element.
...And 20 more matches
Complete - Archive of obsolete content
this page is for readers who have followed the custom toolbar button tutorial for firefox, thunderbird and sunbird, or the custom toolbar button:seamon
key tutorial for seamon
key, and who want to learn more about developing extensions.
...it also supports seamon
key.
... in seamon
key it supports two themes (classic and modern).
...And 20 more matches
SubtleCrypto.deriveBits() - Web APIs
the derivebits() method of the subtlecrypto interface can be used to derive an array of bits from a base
key.
... it takes as its arguments the base
key, the derivation algorithm to use, and the length of the bit string to derive.
... this method is very similar to subtlecrypto.derive
key(), except that derive
key() returns a crypto
key object rather than an arraybuffer.
...And 20 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
68 certificate authority cryptography, glossary, security a certificate authority (ca) is an organization that signs digital certificates and their associated public
keys.
... 76 cipher suite cryptography, glossary, security a cipher suite is a combination of a
key exchange algorithm, authentication method, bulk encryption cipher, and message authentication code.
... 77 ciphertext cryptography, glossary, privacy, security in cryptography, a ciphertext is a scrambled message that conveys information but is not legible unless decrypted with the right cipher and the right secret (usually a
key), reproducing the original cleartext.
...And 19 more matches
Accessible Toolkit Checklist
the work when implementing a new toolkit it's important to: implement standard
keyboard behavior, which can vary from platform to platform.
...since the individual widgets predominately come from the operating system, they already implement standard
keyboard commands and follow the operating system's visual theme.
...these toolkits need to have accessibility implemented from the ground up, and get nothing for free in terms of
keyboard, api or os-theme support.
...And 19 more matches
PKCS #11 Module Specs
valid flags are: rsa - this token should be used for all rsa operations (other than private
key operations where the
key lives in another token).
... dsa - this token should be used for all dsa operations (other than private
key operations where the
key lives in another token).
... rc4 - this token should be used for all rc4 operations which are not constrained by an existing
key in another token.
...And 19 more matches
NSS Tools modutil
this tool can also create
key3.db, cert8.db, and secmod.db security database files.
... the tasks associated with security module database management are part of a process that typically also involves managing
key databases (
key3.db files) and certificate databases (cert8.db files).
... the
key, certificate, and pkcs #11 module management process generally begins with creating the
keys and
key database necessary to generate and manage certificates and the certificate database.
...And 19 more matches
Redis Tips
event logging lists, zsets, pubsub queues lists (rpush, blpop, blpoprpush, etc.) priority queues zsets membership sets, bitstrings state hashes heartbeats zsets hit counters zsets message broadcast pubsub search reverse indexes (never use
keys in production) documentation redis has fantastic documentation.
... things are strings, mostly as you can see from that last example, the values pointed to by
keys are strings or they are nil.
... but some commands only work with numbers (like incr); for these, if your
key can't be parsed as a number, it's an error: redis> set foo pie ok redis> incr foo (error) err value is not an integer or out of range atomic counters i guess that sounds like geiger counters.
...And 19 more matches
imgIContainer
66 introduced gecko 1.0 inherits from: nsisupports last changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) implemented by: ?????????????????????????????????????.
... obsolete since gecko 2.0 methods native code only!addrestoredata obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
...void addrestoredata( [array, size_is(acount), const] in char data, in unsigned long acount ); parameters data missing description acount missing description exceptions thrown missing exception missing description native code only!appendframe obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
...And 18 more matches
IDBIndex - Web APIs
you can retrieve records in an object store through the primary
key or by using an index.
... an index lets you look up records in an object store using properties of the values in the object stores records other than the primary
key the index is a persistent
key-value storage where the value part of its records is the
key part of a record in the referenced object store.
... you can grab a set of
keys within a range.
...And 18 more matches
ARIA Test Cases - Accessibility
as such, they are used to test a variety of features, such as styling, behavior, mouse, and
keyboard interactions, to name few.
... a screen magnifier should move the current view to the alert or open a new panel with the alert information optional, but desired: if there are widgets within the alert, their role and any
keyboard mnemonic (access
key) should be spoken.
... for example, "options, button, alt+shift+t" should be spoken if there is an options button in the alert with alt+shift+t as an access
key.
...And 18 more matches
<color> - CSS: Cascading Style Sheets
a <color> can be defined in any of the following ways: using a
keyword (such as blue or transparent) using the rgb cubic-coordinate system (via the #-hexadecimal or the rgb() and rgba() functional notations) using the hsl cylindrical-coordinate system (via the hsl() and hsla() functional notations) note: this article describes the <color> data type in detail.
... color
keywords color
keywords are case-insensitive identifiers that represent a specific color, such as red, blue, black, or lightseagreen.
... there are a few caveats to consider when using color
keywords: html only recognizes the 16 basic color
keywords found in css1, using a specific algorithm to convert unrecognized values (often to completely different colors).
...And 18 more matches
Install script template - Archive of obsolete content
writes registry
keys exposing the above secondary install location for other browsers to find.
... the
keys are written according to the specification: http://mozilla.org/projects/plugins/first-install-problem.html and follows the plid specification: http://mozilla.org/projects/plugins/plugin-identifier.html **/ // define some global variables var plugin_file = "npmyplugin.dll"; // this plugin consists of an xpt file because it is scriptable // http://mozilla.org/projects/plugins/scripting-plugins.html var component_file = "npmypluginscriptable.xpt"; var plugin_size = 2000; // (dll file) reserve a little extra so it is not required to update too often var component_size = 10; // (xpi file) reserve a little extra so it is not required to update too often var software_name="cult3d mozilla viewer"; // plids (http://mozilla.org/projects/plugins/plugin-identifier.html)...
... var plid = "@myplugin.com/myplugin,version=5.3"; var version = "5.3.0.0"; var mimetype = "application/x-my-plugin"; var suffix = "my"; var suffix_description = "my plugin files"; var company_name = "mypluginco"; var plugin_description = "my exemplary plugin mine all mine"; // registry constant paths // these will be used when the win32 registry
keys are written var h
key_local_machine = "h
key_local_machine"; var h
key_current_user = "h
key_current_user"; var reg_moz_path = "software\\mozillaplugins"; // my own error code in case secondary installation fails var nosecondaryinstall = 1; // error return codes need some memory var err; // error return codes when we try and install to the current browser var errblock1; // error return codes when we try and do a s...
...And 17 more matches
Building accessible custom components in XUL - Archive of obsolete content
<code> @namespace url("http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"); grid.spreadsheet { border: thin solid; } grid.spreadsheet label { border-bottom: 1px solid black; border-left: 1px solid black; margin: 0; padding: 3px; } grid.spreadsheet description { color: black; background-color: white; margin: 0px; padding: 2px; border-left: thin solid; border-bottom: thin solid; font-family: monospace; font...
...<code> <window id="accjax" title="accjax spreadsheet" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:x2="http://www.w3.org/tr/xhtml2" xmlns:wairole="http://www.w3.org/2005/01/wai-rdf/guiroletaxonomy#" > </code> once the namespaces are in place, we define the roles for each component of our spreadsheet.
...we still have no way to focus individual cells, nor do we have a way to navigate the spreadsheet with the
keyboard.
...And 17 more matches
Setting up your own test automation environment - Learn web development
create a new file inside your project directory called google_test.js: give it the following contents, then save it: const webdriver = require('selenium-webdriver'), by = webdriver.by, until = webdriver.until; const driver = new webdriver.builder() .forbrowser('firefox') .build(); driver.get('http://www.google.com'); driver.findelement(by.name('q')).send
keys('webdriver'); driver.sleep(1000).then(function() { driver.findelement(by.name('q')).send
keys(webdriver.
key.tab); }); driver.findelement(by.name('btnk')).click(); driver.sleep(2000).then(function() { driver.gettitle().then(function(title) { if(title === 'webdriver - google search') { console.log('test passed'); } else { console.log('test failed'); } driver.quit(...
...ire('selenium-webdriver'), by = webdriver.by, until = webdriver.until; let driver_fx = new webdriver.builder() .forbrowser('firefox') .build(); let driver_chr = new webdriver.builder() .forbrowser('chrome') .build(); searchtest(driver_fx); searchtest(driver_chr); function searchtest(driver) { driver.get('http://www.google.com'); driver.findelement(by.name('q')).send
keys('webdriver'); driver.sleep(1000).then(function() { driver.findelement(by.name('q')).send
keys(webdriver.
key.tab); }); driver.findelement(by.name('btnk')).click(); driver.sleep(2000).then(function() { driver.gettitle().then(function(title) { if(title === 'webdriver - google search') { console.log('test passed'); } else { console.log('test failed'); ...
... webdriver syntax crash course let's have a look at a few
key features of the webdriver syntax.
...And 17 more matches
Cryptography functions
_blockdata mxr 3.2 and later pk11_changepw mxr 3.2 and later pk11_checkuserpassword mxr 3.2 and later pk11_cipherop mxr 3.2 and later pk11_clonecontext mxr 3.2 and later pk11_configurepkcs11 mxr 3.2 and later pk11_convertsessionpriv
keytotokenpriv
key mxr 3.6 and later pk11_convertsessionsym
keytotokensym
key mxr 3.6 and later pk11_copytokenpriv
keytosessionpriv
key mxr 3.11 and later pk11_createcontextbysym
key mxr 3.2 and later pk11_createdigestcontext mxr 3.2 and later pk11_creategenericobject ...
... mxr 3.12 and later pk11_createmergelog mxr 3.12 and later pk11_createpbealgorithmid mxr 3.2 and later pk11_createpbev2algorithmid mxr 3.12 and later pk11_deletetokenprivate
key mxr 3.4 and later pk11_deletetokenpublic
key mxr 3.4 and later pk11_deletetokensym
key mxr 3.4 and later pk11_derive mxr 3.2 and later pk11_derivewithflags mxr 3.2 and later pk11_derivewithflagsperm mxr 3.9 and later pk11_destroycontext mxr 3.2 and later pk11_destroygenericobject mxr 3.9.2 and later ...
... pk11_destroygenericobjects mxr 3.9.2 and later pk11_destroymergelog mxr 3.12 and later pk11_destroyobject mxr 3.2 and later pk11_destroytokenobject mxr 3.2 and later pk11_digestbegin mxr 3.2 and later pk11_digest
key mxr 3.2 and later pk11_digestop mxr 3.2 and later pk11_digestfinal mxr 3.2 and later pk11_doesmechanism mxr 3.2 and later pk11_exportencryptedprivate
keyinfo mxr 3.2 and later pk11_exportencryptedpriv
keyinfo mxr 3.9 and later pk11_exportprivate
keyinfo mxr 3...
...And 17 more matches
nss tech note3
each cert has a "type" and a "
key usage", each of which may contain one or more valid values.
... each of the above seccertusages translates into a required set of cert type and
key usage for the certificate itself, and into another set of required cert type and
key usage for all the ca certs in the cert chain.
... to determine if a cert is valid for a given cert usage, it must have the the cert type and
key usage required for that cert usage, and all the ca certs in the cert chain must have the cert type and
key usage required for ca certs for that cert usage.
...And 17 more matches
How to embed the JavaScript engine
a bare bones tutorial hello world sample embedding application the following code is a very simple application that shows how to embed spidermon
key and run a simple javascript script.
... the code differs for each spidermon
key version, please choose right version for your spidermon
key.
... spidermon
key 24 // following code might be needed in some case // #define __stdc_limit_macros // #include <stdint.h> #include "jsapi.h" /* the class of the global object.
...And 17 more matches
Tracing JIT
the tracing jit in spidermon
key consists of a generic, low level component called nanojit which is co-maintained between adobe and mozilla, and a spidermon
key-specific high level component called jstracer.
... the nanojit component is language agnostic, and contains no knowledge about spidermon
key or any other part of the mozilla codebase.
...the monitor watches the executing spidermon
key interpreter.
...And 17 more matches
Using CSS animations - CSS: Cascading Style Sheets
animations consist of two components, a style describing the css animation and a set of
keyframes that indicate the start and end states of the animation’s style, as well as possible intermediate waypoints.
... there are three
key advantages to css animations over traditional script-driven animation techniques: they’re easy to use for simple animations; you can create them without even having to know javascript.
...this does not configure the actual appearance of the animation, which is done using the @
keyframes at-rule as described in defining the animation sequence using
keyframes below.
...And 17 more matches
The Essentials of an Extension - Archive of obsolete content
other mozilla and mozilla-based applications such as thunderbird and seamon
key have their own.
...for example, if you create a firefox extension, it would normally take little effort to port it to seamon
key, which has very similar features and ui.
... <overlay id="xulschoolhello-browser-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> the root element in the file is an overlay.
...And 16 more matches
CSUN Firefox Materials
in fact, the same
keyboard commands are still available, so users can become comfortable and productive right away.
...firefox on linux currently boasts the best onscreen
keyboard support in the industry via gok, the gnome onscreen
keyboard.
...
keyboard support "mozilla firefox is a web-browser with superior
keyboard support.
...And 16 more matches
Hacking Tips
this page list a few tips to help you investigate issues related to spidermon
key.
... all tips listed here are dealing with the javascript shell obtained at the end of the build documentation of spidermon
key.
... the backtrace contains in the following order, the stack depth, the interpreter frame pointer (see js/src/vm/stack.h, stackframe class) or (nil) if compiled with ionmon
key, the file and line number of the call location and under parentheses, the jsscript pointer and the jsbytecode pointer (pc) executed.
...And 16 more matches
NSS API Guidelines
the areas which need the most work (both here and throughout the code) is: the relationship of the certificate library with just about every other component (most noticeably pkcs #12, pkcs #7, and pkcs #11) splitting low
key and high
key components more clearly the crypto wrappers (pkcs #11 wrappers) and high
key pkcs #12 and pkcs #5 libraries nss compiles into the libraries described below.
... same level as ssl lib/crmf cmmf.h, crmf.h, crmft.h, cmmft.h, crmffut.h cryptohi provides high-level cryptographic support operations: such as signing, verifying signatures,
key generation,
key manipulation, hashing; and data types.
... sign/verify lib/cryptohi cryptohi.h, cryptoht.h, hasht.h,
keyhi.h,
keythi.h,
key.h,
keyt.h, sechash.h fort provides a pkcs #11 interface, to fortezza crypto services.
...And 15 more matches
nsIDOMStorage
a storage object stores an arbitrary set of
key-value pairs, which may be retrieved, modified and removed as needed.
... a
key may only exist once within a storage object, and only one value may be associated with a particular
key.
...
keys are stored in a particular order with the condition that this order not change by merely changing the value associated with a
key, but the order may change when a
key is added or removed.
...And 15 more matches
nsIDictionary
extensions/xml-rpc/idl/nsidictionary.idlscriptable a simple mutable table of objects, maintained as
key/value pairs.
... objects can be located and managed by referencing them by
key.
... 66 introduced gecko 1.0 obsolete gecko 1.9.1 inherits from: nsisummary last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) note: this interface was removed in firefox 3.5; use dict.jsm instead.
...And 15 more matches
Movement, orientation, and motion: A WebXR example - Web APIs
in this article, we'll make use of information introduced in the previous articles in our webxr tutorial series to construct an example which animates a rotating cube around which the user can move freely using a vr headset,
keyboard, and/or mouse.
...the code looks like this: const xrotationdegreespersecond = 25; const yrotationdegreespersecond = 15; const zrotationdegreespersecond = 35; const enablerotation = true; const allowmouserotation = true; const allow
keyboardmotion = true; const enableforcepolyfill = false; //const session_type = "immersive-vr"; const session_type = "inline"; const mouse_speed = 0.003; xrotationdegreespersecond the number of degrees of rotation to apply around the x axis per second.
... allow
keyboardmotion if true, the w, a, s, and d
keys move the viewer forward, left, backward, and to the right, while the up and down arrow
keys move up and down.
...And 15 more matches
HTML documentation index - HTML: Hypertext Markup Language
8 access
key global attributes, html, reference, access
key the access
key global attribute provides a hint for generating a
keyboard shortcut for the current element.
... the attribute value must consist of a single printable character (which includes accented and other characters that can be generated by the
keyboard).
... 31 tabindex global attributes, html, reference the tabindex global attribute indicates that its element can be focused, and where it participates in sequential
keyboard navigation (usually with the tab
key, hence the name).
...And 15 more matches
Elements - Archive of obsolete content
this way a more-or-less universal namespace declaration in your bindings could be like: <bindings xmlns="http://www.mozilla.org/xbl" xmlns:html = "http://www.w3.org/1999/xhtml" xmlns:xul = "http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:svg = "http://www.w3.org/2000/svg" xmlns:xlink= "http://www.w3.org/1999/xlink"> binding <!entity % binding-content "(resources?,content?,implementation?,handlers?)"> <!element binding %binding-content;> <!attlist binding id id #required extends cdata #implied display cda...
...ndler id id #implied event nmref #required action cdata #implied phase (capturing|bubbling|target) #implied button (1|2|3) #implied modifiers cdata #implied
keycode cdata #implied
key cdata #implied charcode cdata #implied clickcount (1|2|3) #implied command id #implied preventdefault false|true #implied > the handler ...
... modifiers - the modifiers attribute imposes a filter on
key and mouse handlers.
...And 14 more matches
Accessibility Features in Firefox
in fact, the same
keyboard commands are still available, so users can become comfortable and productive right away.
... firefox on linux currently boasts the best onscreen
keyboard support in the industry via gok, the gnome onscreen
keyboard.
...
keyboard support "mozilla firefox is a web-browser with superior
keyboard support." alan cantor, cantor access consulting firefox includes
keyboard access to all of its amazing features: browse with caret allows users to select arbitrary content with the
keyboard and move through content as if inside a read-only editor.
...And 14 more matches
NSS_3.12_release_notes.html
nss 3.12 release notes 17 june 2008 newsgroup: mozilla.dev.tech.crypto contents introduction distribution information new in nss 3.12 bugs fixed documentation compatibility feedback introduction network security services (nss) 3.12 is a minor release with the following new features: sqlite-based shareable certificate and
key databases libpkix: an rfc 3280 compliant certificate path validation library camellia cipher support tls session ticket extension (rfc 5077) nss 3.12 is tri-licensed under the mpl 1.1/gpl 2.0/lgpl 2.1.
... note: firefox 3 uses nss 3.12, but not the new sqlite-based shareable certificate and
key databases.
...pped with nss3.12: utilrename.h new functions in the nss shared library: cert_checknamespace (see cert.h) cert_encodecertpoliciesextension (see cert.h) cert_encodeinfoaccessextension (see cert.h) cert_encodeinhibitanyextension (see cert.h) cert_encodenoticereference (see cert.h) cert_encodepolicyconstraintsextension (see cert.h) cert_encodepolicymappingextension (see cert.h) cert_encodesubject
keyid (see certdb/cert.h) cert_encodeusernotice (see cert.h) cert_findcrlentryreasonexten (see cert.h) cert_findcrlnumberexten (see cert.h) cert_findnameconstraintsexten (see cert.h) cert_getclassicocspdisabledpolicy (see cert.h) cert_getclassicocspenabledhardfailurepolicy (see cert.h) cert_getclassicocspenabledsoftfailurepolicy (see cert.h) cert_getpkixverifynistrevocationpolicy (see cert.h) cert_ge...
...And 14 more matches
Python binding for NSS
many methods/functions provide sane default (
keyword) parameters freeing the python programmer from having to specify all parameters yet allowing them to be overriden when necessary.
...eleases/pynss_release_0_17_0/src/ change log the primary enhancement in this version is adding support for pbkdf2 the following module functions were added: nss.create_pbev2_algorithm_id the following class methods were added: nss.algorithmid.get_pbe_crypto_mechanism nss.algorithmid.get_pbe_iv nss.pk11slot.pbe_
key_gen nss.pk11slot.format_lines nss.pk11slot.format nss.pk11sym
key.format_lines nss.pk11sym
key.format nss.secitem.to_base64 nss.secitem.format_lines nss.secitem.format the following files were added: doc/examples/pbkdf2_example.py the secitem constructor added 'ascii' parameter to permit initializatio...
...ificate.signing_trust_flags sslciphersuiteinfo.cipher_suite sslciphersuiteinfo.cipher_suite_name sslciphersuiteinfo.auth_algorithm sslciphersuiteinfo.auth_algorithm_name sslciphersuiteinfo.kea_type sslciphersuiteinfo.kea_type_name sslciphersuiteinfo.symmetric_cipher sslciphersuiteinfo.symmetric_cipher_name sslciphersuiteinfo.symmetric_
key_bits sslciphersuiteinfo.symmetric_
key_space sslciphersuiteinfo.effective_
key_bits sslciphersuiteinfo.mac_algorithm sslciphersuiteinfo.mac_algorithm_name sslciphersuiteinfo.mac_bits sslciphersuiteinfo.is_fips sslciphersuiteinfo.is_exportable sslciphersuiteinfo.is_nonstandard sslchannelinfo.protocol_version sslchannelinfo.protoco...
...And 14 more matches
NSS Tools pk12util
the tool allows you to import certificates and
keys from pkcs #12 files into nss or export them and also list certificates and
keys in such files.
... synopsis pk12util -i p12file [-h tokenname] [-v] [common-options] or pk12util -o p12file -n certname [-c
keycipher] [-c certcipher] [-m | --
key_len
keylen] [-n | --cert_
key_len cert
keylen] [common-options] or pk12util -l p12file [-h tokenname] [-r] [common-options] where [common-options] = [-d dir] [-p dbprefix] [-k slotpasswordfile | -k slotpassword] [-w p12filepasswordfile | -w p12filepassword] syntax to run the pkcs #12 tool, type ther command pk12util option [arguments] where option and arguments are combinations of the options and arguments listed in the following section.
...the options and arguments for the pk12util command are defined as follows: options -i p12file import a certificate and private
key from from the p12file into the database.
...And 14 more matches
background-position - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-position: top; background-position: bottom; background-position: left; background-position: right; background-position: center; /* <percentage> values */ background-position: 25% 75%; /* <length> values */ background-position: 0 0; background-position: 1cm 2cm; background-position: 10ch 8em; /* multiple images */ background-position: 0 0, center; /* edge offsets value...
...if two non-
keyword values are used, the first value represents the horizontal position and the second represents the vertical position.
...if three or four values are used, the length-percentage values are offsets for the preceding
keyword value(s).
...And 14 more matches
Signing an XPI - Archive of obsolete content
enter a password which will be used to encrypt your
keys.
...certificate common name: xpi test organization: tjworld organization unit: software state or province: nottingham country (must be exactly 2 characters): gb username: tj email address: certificates@lan.tjworld.net generated public/private
key pair certificate request generated certificate has been signed certificate "mytestcert" added to database exported certificate to x509.raw and x509.cacert.
...there are several issuers of software developer certificates, with the three
key differentials: availability, cost and identity verification.
...And 13 more matches
Adding Event Handlers to XBL-defined Elements - Archive of obsolete content
event handlers as you might expect, mouse clicks,
key presses and other events are passed to each of the elements inside the content.
...<handlers> <handler event="click" button="0" action="alert('left button pressed');"/> <handler event="mouseup" button="1" action="alert('middle button pressed')"/> <handler event="click" button="2" action="alert('right button pressed');"/> </handlers> handling
key events for
key events, you can use a number of attributes similar to those for the
key element to match a specific
key and match only when certain modifer
keys are pressed.
...<handlers> <handler event="
keypress"
key=" " action="this.checked=!checked"/> </handlers> you can also use the
keycode attribute to check for non-printable
keys.
...And 13 more matches
textbox - Archive of obsolete content
the value may still be adjusted with the
keyboard.
..., dropping the rest of the text replacewithcommas pastes the text with the newlines replaced with commas replacewithspaces pastes the text with newlines replaced with spaces strip pastes the text with the newlines removed stripsurroundingwhitespace pastes the text with newlines and adjacent whitespace removed onblur type: script code this event is sent when a textbox loses
keyboard focus.
...from gecko 1.9 to gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9), the script code would actually execute twice, once in the context of the anonymous html <input> element and once in the context of the <textbox> element itself.
...And 13 more matches
Advanced Svelte: Reactivity, lifecycle, accessibility - Learn web development
objective: learn some advanced svelte techniques involving solving reactivity issues,
keyboard accessibility problems to do with component lifecycle, and more.
... from inside todos.svelte, where the component is called: <moreactions {todos} on:checkall={e => checkalltodos(e.detail)} on:removecompleted={removecompletedtodos} /> working with the dom: focusing on the details now that we have completed all of the app's required functionality, we'll concentrate on some accessibility features that will improve the usability of our app for both
keyboard-only and screenreader users.
... in its current state our app has a couple of
keyboard accessibility problems involving focus management.
...And 13 more matches
Mozilla’s UAAG evaluation report
checkpoint title status notes/plans 1.1 full
keyboard access.
... (p1) vg we have some remaining bugs, and some
keyboard usability issues, but in general mozilla now has
keyboard equivalents for almost everything.
... most browsers do not allow the user to select text with the
keyboard alone.
...And 13 more matches
Places utilities for JavaScript
post_data_anno - i need to clarify here, but i think this is the name of the annotation that stores information for
keyword searches from a bookmark.
... placesutils method overview nsiuri createfixeduri(string aspec); string getformattedstring(string
key, string params); string getstring(string
key); boolean nodeisfolder(nsinavhistoryresultnode anode); boolean nodeisbookmark(nsinavhistoryresultnode anode); boolean nodeisseparator(nsinavhistoryresultnode anode); boolean nodeisvisit(nsinavhistoryresultnode anode); boolean nodeisuri(nsinavhistoryresultnode anode); boolean nodeisquery(nsi...
... nsitransaction maketransaction(string data, string type, nsinavhistoryresultnode container, int index, boolean copy); nsinavhistoryresult getfoldercontents(int afolderid, boolean aexcludeitems, boolean aexpandqueries); boolean showaddbookmarkui(nsiuri auri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker, boolean aloadinsidebar, string a
keyword, string apostdata); boolean showminimaladdbookmarkui(nsiuri auri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker, boolean aloadinsidebar, string a
keyword, string apostdata); boolean showaddlivemarkui(nsiuri afeeduri, nsiuri asiteuri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker); boolean sho...
...And 13 more matches
nsIMsgDBHdr
getstringreference(in long refnum); void setrecipientsarray(in string names, in string addresses,in unsigned long numaddresses); void setcclistarray(in string names, in string addresses,in unsigned long numaddresses); void setbcclistarray(in string names, in string addresses,in unsigned long numaddresses);new in thunderbird 3.1 [noscript] void getauthorcollation
key(out octetptr
key, out unsigned long len); [noscript] void getsubjectcollation
key(out octetptr
key, out unsigned long len); [noscript] void getrecipientscollation
key(out octetptr
key, out unsigned long len); attributes attribute type description isread boolean readonly: indicates whether or not the message is read.
... threadid nsmsg
key indicates the id of the thread to which this message belongs.
... message
key nsmsg
key indicates the database
key for this message.
...And 13 more matches
IDBObjectStore - Web APIs
records within an object store are sorted according to their
keys.
... idbobjectstore.
keypath read only the
key path of this object store.
... if this attribute is null, the application must provide a
key for each modification operation.
...And 13 more matches
Operable - Accessibility
guideline 2.1 —
keyboard accessible: make all functionality available from a
keyboard this guideline covers the necessity of making core website functionality available via a
keyboard in addition to other means (e.g.
... mouse), so that users that rely on
keyboard controls can access them.
... success criteria how to conform to the criteria practical resource 2.1.1
keyboard (a) all functionality should be accessible using
keyboard controls, unless it cannot be done using the
keyboard (e.g.
...And 13 more matches
package.json - Archive of obsolete content
ng the add-on's directory is "my-addon"): { "name": "my-addon", "title": "my-addon", "id": "jid1-1fergv45e4f4f@jetpack", "description": "a basic add-on", "author": "", "license": "mpl-2.0", "version": "0.1" } if you are using the new jpm tool, you can easily access manifest data from package.json by requiring it like any other module: var title = require("./package.json").title;
key reference package.json may contain the following
keys: author the name of the package's original author; this could be the name of a person or a company.
... engines object with supported applications (
key) and required version numbers (value).
... firefox: firefox desktop fennec: firefox for android thunderbird: thunderbird seamon
key: seamon
key any application uuid example: "engines": { "firefox": ">= 38.0a1", "fennec": ">= 38.0a1" } fullname note: this is deprecated along with cfx; it's not available when using jpm.
...And 12 more matches
List of Mozilla-Based Applications - Archive of obsolete content
abstract accounting tool adobe acrobat and adobe reader portable document format (pdf) software uses mozilla spidermon
key adobe flash player popular browser plug-in uses nss in linux version adwatch content management system uses xul and xpcom aicpcu/iia exam app exam delivery software aliwal geocoder geocoding & data on a map amarok xul remote remote control for amarok music player ample sdk javascript gui-framework ...
...raries chromeless browser with html-based interface classilla mozilla browser for mac os 9 clines a clone of color lines (game) standalone version cloud web operating system cloud browse iphone/ipad/ipod touch browser seems to be firefox running remotely on servers that people access through device conkeror
keyboard-oriented browser convertigo enterprise mashup server server tool for transactional web scraping and for web clipping cometbird another firefox mod modified version of firefox correo email couac (fr) web-based email and jabber app couchdb document-oriented database uses spidermon
key courtanet benefit (f...
... clock frizione javascript development, testing and deployment environment uses mozilla rhino geckofx embeddable gecko gjs javascript bindings for gnome globalmojo browser that raises money for your favorite causes gluescript a javascript engine which can be used as a general purpose language uses mozilla spidermon
key and formerly called wxjavascript gnome operating system gnome 3 will use spidermon
key through gjs google adwords editor editor google gadgets for linux google’s desktop widget engine uses xulrunner according to the build instructions grani grain sizing assessment tool according to this wiki page grani is based on xul and xpcom daim ...
...And 12 more matches
Back to the Server: Server-Side JavaScript On The Rise - Archive of obsolete content
in fact, the next javascript engine from mozilla, tracemon
key, is poised to boost javascript performance by factors of 20 to 40 times according to brendan eich, mozilla cto and the creator of javascript.
... there are currently two main javascript engines used server-side and both are from the minds at mozilla: mozilla rhino and mozilla spidermon
key.
...spidermon
key on the other hand is the javascript engine (written in c) in the highly popular mozilla firefox browser.
...And 12 more matches
HTML: A good basis for accessibility - Learn web development
for example, a control button to play a video on your site could be marked up like this: <div>play video</div> but as you'll see in greater detail later on, it makes sense to use the correct element for the job: <button>play video</button> not only do html <button>s have some suitable styling applied by default (which you will probably want to override), they also have built-in
keyboard accessibility — users can navigate between buttons using the tab
key and activate their selection using return or enter.
... good for seo — search engines give more importance to
keywords inside headings, links, etc.
... than
keywords included in non-semantic <div>s, etc., so your documents will be more findable by customers.
...And 12 more matches
HTML: A good basis for accessibility - Learn web development
for example, a control button to play a video on your site could be marked up like this: <div>play video</div> but as you'll see in greater detail later on, it makes sense to use the correct element for the job: <button>play video</button> not only do html <button>s have some suitable styling applied by default (which you will probably want to override), they also have built-in
keyboard accessibility — users can navigate between buttons using the tab
key and activate their selection using return or enter.
... good for seo — search engines give more importance to
keywords inside headings, links, etc.
... than
keywords included in non-semantic <div>s, etc., so your documents will be more findable by customers.
...And 12 more matches
Index - Learn web development
7 html: a good basis for accessibility at, accessibility, article, beginner, buttons, codingscripting, forms, html, learn, links, a11y, assistive technology,
keyboard, screenreader, semantics you should now be well-versed in writing accessible html for most occasions.
... at, accessibility, article, beginner, css, codingscripting, html, javascript, learn, tools, users, assistive technology,
keyboard, screan reader, screenreader this article should have given you a useful high-level overview of accessibility, shown you why it's important, and looked at how you can fit it into your workflow.
... beginner, domain names, infrastructure, intro, needsactivelearning, web domain names are a
key part of the internet infrastructure.
...And 12 more matches
Software accessibility: Where are we today?
type on a standard
keyboard.
...some examples of these assistive devices and software include: screen reading software, which speaks text displayed on the screen using hardware or software text-to-speech, and which allows a blind person to use the
keyboard to simulate mouse actions alternate input devices, which allow people with physical disabilities to use alternatives to a
keyboard and mouse voice recognition software, which allows a person to simulate typing on a
keyboard or selecting with a mouse by speaking into the computer screen magnification software, which allows a low-vision computer user to more easily read portions of the s...
...if you're physically disabled, you may not be able to type on a regular
keyboard or use a mouse.
...And 12 more matches
Command line options
firefox, thunderbird and seamon
key2.x only.
...firefox and seamon
key only.
...firefox and seamon
key2.x only.
...And 12 more matches
IME handling guide
it handles native
key events before or after focused application (depending on the platform) and creates a composition string (a.k.a.
...ime is used by chinese, japanese, korean and taiwan users for inputting chinese characters because the number of them is beyond thousands and cannot be input from the
keyboard directly.
... when a user presses convert
key, japanese ime separates the composition string as "わたしの" (my), "なまえは" (name is) and "なかのです" (nakano).
...And 12 more matches
Garbage collection
design overview spidermon
key has a mark-sweep garbage collection (gc) with incremental marking mode, generational collection, and compaction.
...some
key properties of compartments are: every cell (js heap object) belongs to at most one compartment.
... compartments are a fundamental cross-cutting concept in spidermon
key (see also compartments), though anything related to memory is now more concerned with zones, especially gc.
...And 12 more matches
JSClass
syntax struct jsclass { const char *name; uint32_t flags; /* optional since spidermon
key 37 */ jspropertyop addproperty; jsdeletepropertyop delproperty; jspropertyop getproperty; jsstrictpropertyop setproperty; jsenumerateop enumerate; jsresolveop resolve; jsconvertop convert; /* obsolete since spidermon
key 44 */ /* optional since spidermon
key 25 */ jsfinalizeop finalize; /* optional */ jsclassinternal reserved0; /* obsolete since spidermon
key 13 *...
.../ jscheckaccessop checkaccess; /* obsolete since spidermon
key 29 */ jsnative call; jshasinstanceop hasinstance; jsnative construct; jsxdrobjectop xdrobject; /* obsolete since spidermon
key 13 */ jstraceop trace; /* added in spidermon
key 17 */ jsclassinternal reserved1; /* obsolete since spidermon
key 13 */ void *reserved[n]; /* sizeof 'reserved' depends on version */ }; name type description name const char * class name flags uint32_t class flags.
... use null or js_propertystub (spidermon
key 31 or older) for default behavior.
...And 12 more matches
nsIDOMStorage2
last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) inherits from: nsisupports method overview void clear(); domstring getitem(in domstring
key); domstring
key(in unsigned long index); void removeitem(in domstring
key); void setitem(in domstring
key, in domstring data); attributes attribute type description length unsigned long the number of
keys stored in local storage.
...getitem() returns from local storage the data corresponding to the specified
key.
... domstring getitem( in domstring
key ); parameters
key the
key for which data should be returned.
...And 12 more matches
Debugger.Memory - Firefox Developer Tools
debugger.memory handler functions similar to debugger’s handler functions, debugger.memory inherits accessor properties that store handler functions for spidermon
key to call when given events occur in debuggee code.
...because spidermon
key’s collector is incremental, a full collection cycle may consist of multiple discrete collection slices with the js mutator running interleaved.
...tils” “mem_pressure” “cc_waiting” “cc_forced” “load_end” “page_hide” “nsjscontext_destroy” “set_new_document” “set_doc_shell” “dom_utils” “dom_ipc” “dom_worker” “inter_slice_gc” “refresh_frame” “full_gc_timer” “shutdown_cc” “user_inactive” nonincrementalreason if spidermon
key’s collector determined it could not incrementally collect garbage, and had to do a full gc all at once, this is a short string describing the reason it determined the full gc was necessary.
...And 12 more matches
IDBCursor - Web APIs
it has a position within the range, and moves in a direction that is increasing or decreasing in the order of record
keys.
... idbcursor.
key read only returns the
key for the record at the cursor's position.
...the cursor's
key can be any data type.
...And 12 more matches
SubtleCrypto.sign() - Web APIs
it takes as its arguments a
key to sign with, some algorithm-specific parameters, and the data to sign.
... syntax const signature = crypto.subtle.sign(algorithm,
key, data); parameters algorithm is a string or object that specifies the signature algorithm to use and its parameters: to use rsassa-pkcs1-v1_5, pass the string "rsassa-pkcs1-v1_5" or an object of the form { "name": "rsassa-pkcs1-v1_5" }.
...
key is a crypto
key object containing the
key to be used for signing.
...And 12 more matches
Using the Web Animations API - Web APIs
here’s the simplified css that controls alice’s animation: #alice { animation: alicetumbling infinite 3s linear; } @
keyframes alicetumbling { 0% { color: #000; transform: rotate(0) translate3d(-50%, -50%, 0); } 30% { color: #431236; } 100% { color: #000; transform: rotate(360deg) translate3d(-50%, -50%, 0); } } this changes alice’s color and her transform’s rotation over 3 seconds at a constant (linear) rate and loops infinitely.
... in the @
keyframes block we can see that 30% of the way through each loop (about .9 seconds in), alice’s color changes from black to a deep burgundy then back again by the end of the loop.
... representing
keyframes the first thing we need is to create a
keyframe object corresponding to our css @
keyframes block: var alicetumbling = [ { transform: 'rotate(0) translate3d(-50%, -50%, 0)', color: '#000' }, { color: '#431236', offset: 0.3}, { transform: 'rotate(360deg) translate3d(-50%, -50%, 0)', color: '#000' } ]; here we’re using an array containing multiple objects.
...And 12 more matches
An overview of accessible web applications and widgets - Accessibility
see also live regions
keyboard navigation often times developers overlook support for the
keyboard when they create custom widgets.
... to be accessible to a variety of users, all features of a web application or widget should also be controllable with the
keyboard, without requiring a mouse.
... in practice, this usually involves following the conventions supported by similar widgets on the desktop, taking full advantage of the tab, enter, spacebar, and arrow
keys.
...And 12 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
looks like a text input, but has validation parameters and relevant
keyboard in supporting browsers and devices with dynamic
keyboards.
...displays a numeric
keypad in some devices with dynamic
keypads.
...displays a search icon instead of enter
key on some devices with dynamic
keypads.
...And 12 more matches
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.
... multiple
keys may be separated by spaces or commas.
...
keys will map to other
keys on platforms that do not have them.
...And 11 more matches
toolbar - Archive of obsolete content
tes autohide, currentset, customindex, customizable, defaultset, grippyhidden, grippytooltiptext, height, iconsize, mode, toolbarname properties accessibletype, currentset, firstpermanentchild, lastpermanentchild, toolbarname, toolboxid methods insertitem style classes chromeclass-toolbar examples <toolbox> <toolbar id="nav-toolbar"> <toolbarbutton id="nav-users" access
key="u" label="users"/> <toolbarbutton id="nav-groups" access
key="p" label="groups"/> <toolbarbutton id="nav-events" access
key="e" label="events" disabled="true"/> </toolbar> </toolbox> attributes autohide type: boolean when set to true, the toolbar will be invisible unless the alt
key is pressed by the user.
... currentset not in seamon
key 1.x type: comma-separated string the current set of displayed items on the toolbar.
... customindex not in seamon
key 1.x type: integer this value is the index of the toolbar in the list of the custom toolbars.
...And 11 more matches
NSS Sample Code sample6
nss sample code 6: persistent symmetric
keys in nss database /* example code to illustrate generation of a secret symmetric
key ring * that persists in the nss database.
... the symmetric
keys can then be used * without ever exposing them in the clear.
... * * to encrypt, you need the id of the
key to use.
...And 11 more matches
NSS PKCS11 Functions
in particular, these functions are used for obtaining certificates,
keys, and passwords.
...secmod_loadusermodule secmod_unloadusermodule secmod_openuserdb secmod_closeuserdb pk11_findcertfromnickname pk11_find
keybyanycert pk11_getslotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc secmod_loadusermodule load a new pkcs #11 module based on a modulespec.
...if configdir is not specified, and nocertdb and no
keydb is not specified, the load will fail.
...And 11 more matches
gtstd.html
upgraded documentation may be found in the current nss reference getting started with ssl chapter 2 getting started with ssl this chapter describes how to set up your environment, including certificate and
key databases.
... ssl, pkcs #11, and the default security databases setting up the certificate and
key databases building nss programs ssl, pkcs #11, and the default security databases the basic relationships among the nss libraries are described in introduction to network security services.
...each slot for a pkcs #11 module can in turn contain a token, which is the hardware or software device that actually provides cryptographic services and optionally stores certificates and
keys.
...And 11 more matches
XPCOM hashtable guide
each item has a
key that identifies the item.
... items are found, added, and removed from the hashtable by using the
key.
... hashtables may seem like arrays, but there are important differences: array hashtable
keys: integer: arrays are always
keyed on integers, and must be contiguous.
...And 11 more matches
nsIDBChangeListener
example here is an example implementation of the listener (that does nothing): var mylistener = { onhdrflagschanged: function(ahdrchanged, aoldflags, anewflags, ainstigator) {}, onhdrdeleted: function(ahdrchanged, aparent
key, aflags, ainstigator) {}, onhdradded: function(ahdrchanged, aparent
key, aflags, ainstigator) {}, onparentchanged: function(a
keychanged, oldparent, newparent, ainstigator) {}, onannouncergoingaway: function(ainstigator) {}, onreadchanged: function(ainstigator) {}, onjunkscorechanged: function(ainstigator) {}, onhdrpropertychanged: function(ahdrtochange, aprechange, astatus, ainstigator) {}, onevent: function(adb, ae...
...dlistener(mylistener); alternately, you can access the message database through the nsimsgdbview like so: gfolderdisplay.view.dbview.db.addlistener(mylistener); method overview void onhdrflagschanged(in nsimsgdbhdr ahdrchanged, in unsigned long aoldflags, in unsigned long anewflags, in nsidbchangelistener ainstigator); void onhdrdeleted(in nsimsgdbhdr ahdrchanged, in nsmsg
key aparent
key, in long aflags, in nsidbchangelistener ainstigator); void onhdradded(in nsimsgdbhdr ahdrchanged, in nsmsg
key aparent
key, in long aflags, in nsidbchangelistener ainstigator); void onparentchanged(in nsmsg
key a
keychanged, in nsmsg
key oldparent, in nsmsg
key newparent, in nsidbchangelistener ainstigator); void onannouncergoingaway(in nsidbchangeannouncer instiga...
... void onhdrdeleted(in nsimsgdbhdr ahdrchanged, in nsmsg
key aparent
key, in long aflags, in nsidbchangelistener ainstigator); parameters ahdrchanged the nsimsgdbhdr of the message that was removed.
...And 11 more matches
EffectTiming.fill - Web APIs
element.animate(), and
keyframeeffect() accept an object of timing properties including fill.
... the value of fill corresponds directly to fill in effecttiming objects returned by gettiming() in animationeffect and
keyframeeffect.
... "auto" if the animation effect the fill mode is being applied to is a
keyframe effect (
keyframeeffect or
keyframeeffectreadonly), "auto" is equivalent to "none".
...And 11 more matches
CSS values and units - CSS: Cascading Style Sheets
depending on the property, the value can include a single integer or
keyword, to a series of
keywords and values with or without units.
... textual data types <custom-ident> pre-defined
keywords as an <ident> <string> <url> text data types are either <string>, a quoted series of characters, or an <ident>, a "css identifier" which is an unquoted string.
... in the css specifications, values that can be defined by the web developer, like
keyframe animations, font-family names, or grid areas are listed as a <custom-ident>, <string>, or both.
...And 11 more matches
Using the Editor from XUL - Archive of obsolete content
the user chooses 'close' from the file menu, uses the
key shortcut, or quits the application, causing all windows to be closed.
... editor event handling editing operations happen in response to user events: mouse,
key, drag and drop, and ime (international text input) events.
...for text widgets and composer): nstexteditor
keylistener (as a nsidom
keylistener) nstexteditormouselistener (as a nsidommouselistener) nstexteditorfocuslistener (as a nsidomfocuslistener) nstexteditortextlistener (as a nsidomtextlistener) nstexteditorcompositionlistener (as a nsidomcompositionlistener) nstexteditordraglistener (as a nsidomdraglistener) in nseditorshell::preparedocumentforediting(), we install a mouse lis...
...And 10 more matches
Digital Signatures - Archive of obsolete content
this section describes how public-
key cryptography addresses the problem of tampering.
... the content of the hashed data cannot, for all practical purposes, be deduced from the hash-which is why it is called "one-way." similarly, in public
key encryption, a
key pair is generated for digital signing.
... the
key pair consists of a private signing
key and a public verification
key.
...And 10 more matches
WAI-ARIA basics - Learn web development
as an example, you could use aria-labelledby to specify that a
key description contained in a <div> is the label for multiple table cells, or you could use it as an alternative to image alt text — specify existing information on the page as an image's alt text, rather than having to repeat it inside the alt attribute.
... this last point is
key — to use a screenreader in the first place, your operating system needs to run browsers that have the necessary accessibility apis in place to expose the information screenreaders need to do their job.
... enhancing
keyboard accessibility: there are built-in html elements that have native
keyboard accessibility; when other elements are used along with javascript to simulate similar interactions,
keyboard accessibility and screenreader reporting suffers as a result.
...And 10 more matches
HTML text fundamentals - Learn web development
search engines indexing your page consider the contents of headings as important
keywords for influencing the page's search rankings.
...{ textarea.value = userentry; solution.value = 'show solution'; } updatecode(); }); var htmlsolution = '<h1>my short story</h1>\n<p>i am a statistician and my name is trish.</p>\n<p>my legs are made of cardboard and i am married to a fish.</p>'; var solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substr...
...ng(0, caretpos); var back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; why do we need semantics?
...And 10 more matches
Cooperative asynchronous JavaScript: Timeouts and intervals - Learn web development
this is the
key to the whole operation — you are setting the variable defined earlier to an active requestanimation() call, which takes the draw() function as its parameter.
... this was a problem, for example, in the mon
key island-inspired walking animation from our drawing graphics article: in this example, you have to animate both the position of the character on the screen, and the sprite being shown.
...the game will have two players, one of whom controls the game using the a
key, and the other with the l
key.
...And 10 more matches
McCoy
the cryptographic
keys and other mccoy data are kept in a profile folder separate from the application so you can uninstall and reinstall without losing your precious
keys.
...this is located in: %appdata%\mozilla\mccoy (windows) ~/.mozilla/mccoy (linux) ~/library/application support/mccoy (mac os x) it is highly recommended that you back up your profile folder and store it in a safe location whenever you create a new
key; without a backup, there is no way to recover your private
keys if they are lost!
...once you have a password set you can change it from the
keys menu and you will have to enter it each time you run mccoy.
...And 10 more matches
NSS tools : crlutil
the
key and certificate management process generally begins with creating
keys in the
key database, then generating and managing certificates in the certificate database(see certutil tool) and continues with certificates expiration or revocation.
...for information on certificate and
key database management, see using the certificate database tool.
... -p dbprefix specify the prefix used on the nss security database files (for example, my_cert8.db and my_
key3.db).
...And 10 more matches
NSS tools : crlutil
the
key and certificate management process generally begins with creating
keys in the
key database, then generating and managing certificates in the certificate database(see certutil tool) and continues with certificates expiration or revocation.
...for information on certificate and
key database management, see using the certificate database tool.
... -p dbprefix specify the prefix used on the nss security database files (for example, my_cert8.db and my_
key3.db).
...And 10 more matches
Shell global objects
these are the global objects that are set up automatically by the spidermon
key js command-line interpreter when you start the program.
... this page lists variables and functions available on spidermon
key 53.
... assertfloat32(value, isfloat32) in ionmon
key only, asserts that value has (resp.
...And 10 more matches
nsIMsgFolder
supports semholder); boolean testsemaphore(in nsisupports semholder); void getnewmessages(in nsimsgwindow awindow, in nsiurllistener alistener); void writetofoldercache(in nsimsgfoldercache foldercache, in boolean deep); long getnumnewmessages(in boolean deep); void setnumnewmessages(in long numnewmessages); acstring generatemessageuri(in nsmsg
key msg
key); void addmessagedispositionstate(in nsimsgdbhdr amessage,in nsmsgdispositionstate adispositionflag); void markmessagesread(in nsisupportsarray messages, in boolean markread); void markallmessagesread(); void markmessagesflagged(in nsisupportsarray messages, in boolean markflagged); void markthreadread(in nsimsgthread thread); void setl...
...abelformessages(in nsisupportsarray messages, in nsmsglabelvalue label); nsimsgdatabase getmsgdatabase(in nsimsgwindow msgwindow); void setmsgdatabase(in nsimsgdatabase msgdatabase); nsimsgdatabase getdbfolderinfoanddb(out nsidbfolderinfo folderinfo); nsimsgdbhdr getmessageheader(in nsmsg
key msg
key); boolean shouldstoremsgoffline(in nsmsg
key msg
key); boolean hasmsgoffline(in nsmsg
key msg
key); nsiinputstream getofflinefilestream(in nsmsg
key msg
key, out pruint32 offset, out pruint32 size); void downloadmessagesforoffline(in nsisupportsarray messages, in nsimsgwindow window); nsimsgfolder getchildwithuri(in acstring uri, in boolean deep, in boolean caseinsensitive); void downloadallforoffline(in nsiurlliste...
...in nsimsgfolder folder,in boolean caseinsensitive); boolean confirmfolderdeletionforfilter(in nsimsgwindow msgwindow); void alertfilterchanged(in nsimsgwindow msgwindow); void throwalertmsg(in string msgname, in nsimsgwindow msgwindow); astring getstringwithfoldernamefrombundle(in string msgname); void notifycompactcompleted(); long comparesort
keys(in nsimsgfolder msgfolder); [noscript] void getsort
key(out octet_ptr
key, out unsigned long length); boolean callfilterplugins(in nsimsgwindow amsgwindow); acstring getstringproperty(in string propertyname); void setstringproperty(in string propertyname, in acstring propertyvalue); boolean isancestorof(in nsimsgfolder folder); boolean contain...
...And 10 more matches
nsIPushSubscription
inherits from: nsisupports last changed in gecko 46.0 (firefox 46.0 / thunderbird 46.0 / seamon
key 2.43) each subscription is associated with a unique url generated by the push service.
...a subscription also has a public
key and secret; these are used to encrypt message payloads.
... method overview void get
key(in domstring name, [optional] out uint32_t
keylen, [array, size_is(
keylen), retval] out uint8_t
key); bool quotaapplies(); bool isexpired(); attributes attribute type description endpoint domstring the subscription url.
...And 10 more matches
nsIWindowsShellService
inherits from: nsishellservice last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview string getregistryentry(in long ah
keyconstant, in string asub
keyname, in string avaluename); obsolete since gecko 1.8 void restorefilesettings(in boolean aforallusers); obsolete since gecko 1.9 void shortcutmaintenance(); attributes attribute type description desktopbackgroundcolor unsigned long the desktop background color, visible when no background image is used, or if the background image is centered and does not fill the entire screen.
... constants valid starting
keys for the windows registry.
... constant value description hkcr 0 h
key_classes_root.
...And 10 more matches
SubtleCrypto.encrypt() - Web APIs
it takes as its arguments a
key to encrypt with, some algorithm-specific parameters, and the data to encrypt (also known as "plaintext").
... syntax const result = crypto.subtle.encrypt(algorithm,
key, data); parameters algorithm is an object specifying the algorithm to be used and any extra parameters if required: to use rsa-oaep, pass an rsaoaepparams object.
...
key is a crypto
key containing the
key to be used for encryption.
...And 10 more matches
SubtleCrypto.verify() - Web APIs
it takes as its arguments a
key to verify the signature with, some algorithm-specific parameters, the signature, and the original signed data.
... syntax const result = crypto.subtle.verify(algorithm,
key, signature, data); parameters algorithm is a domstring or object defining the algorithm to use, and for some algorithm choices, some extra parameters.
...
key is a crypto
key containing the
key that will be used to verify the signature.
...And 10 more matches
ARIA: application role - Accessibility
any sort of special interpretation of html structures and widgets should be suspended, and control should be completely handed over to the browser and web application to handle mouse,
keyboard, or touch interaction.
... in this mode, the web author is completely responsible for handling any and all
keyboard input, focus management, and other interactions and cannot assume assistive technologies would do any processing on their end.
...a
keyboard interaction model is generated that is very similar to a word processor where users can read line by line, sentence by sentence, or paragraph by paragraph.
...And 10 more matches
ARIA: grid role - Accessibility
the position of each cell is significant and can be focused using
keyboard input.
...even though both data grids and layout grids employ the same aria roles, states, and properties, differences in their content and purpose surface factors that are important to consider in
keyboard interaction design.
... if the grid is used as an interactive widget,
keyboard interactions need to be implemented.
...And 10 more matches
ARIA: button role - Accessibility
alse">save</div> the above example creates a simple button which is first in the focus order, though <button> or <input> with type="button" should be used for buttons: <button id="savechanges">save</button> note: if using role="button" instead of the semantic <button> or <input type="button"> elements, you will need to make the element focusable and have to define event handlers for click and
keydown events, including the enter and space
keys, in order to process the user's input.
...
keyboard interactions
key function enter activates the button.
... required javascript features required event handlers buttons can be operated by mouse, touch, and
keyboard users.
...And 10 more matches
Detecting CSS animation support - CSS: Cascading Style Sheets
testing for css animation support this code will check to see if css animation support is available: var animation = false, animationstring = 'animation',
keyframeprefix = '', domprefixes = 'webkit moz o ms khtml'.split(' '), pfx = '', elem = document.createelement('div'); if( elem.style.animationname !== undefined ) { animation = true; } if( animation === false ) { for( var i = 0; i < domprefixes.length; i++ ) { if( elem.style[ domprefixes[i] + 'animationname' ] !== undefined ) { pfx = domprefixes[ i ]; animationstring...
... = pfx + 'animation';
keyframeprefix = '-' + pfx.tolowercase() + '-'; animation = true; break; } } } for starters we define a few variables.
...if it is true then both the animation property name and the
keyframe prefix will be the right ones.
...And 10 more matches
CSS Box Alignment - CSS: Cascading Style Sheets
key concepts and terminology the specification details some alignment terminology to make it easier to discuss these alignment properties outside of their implementation within a particular layout method.
... there are also some
key concepts which are common to all layout methods.
... types of alignment there are three different types of alignment that the specification details; these use
keyword values.
...And 10 more matches
HTML attribute: rel - HTML: Hypertext Markup Language
the type of relationships is given by the value of the rel attribute, which, if present, must have a value that is an unordered set of unique space-separated
keywords, which are listed in the following table.
... every
keyword within a space seperated value should be unique within that value.
...like all html
keyword attribute values, these values are case-insenstive.
...And 10 more matches
inputmode - HTML: Hypertext Markup Language
it can have the following values: none no virtual
keyboard.
... for when the page implements its own
keyboard input control.
... text (default value) standard input
keyboard for the user's current locale.
...And 10 more matches
Focus and Selection - Archive of obsolete content
the user can change the focus by clicking an element with the mouse or by pressing the tab
key.
... when the tab
key is pressed, the next element is given the focus.
... to step backwards, the shift
key and tab
key can be pressed.
...And 9 more matches
CSS values and units - Learn web development
in the following example we have set the color of our heading using a
keyword, and the background using the rgb() function: h1 { color: black; background-color: rgb(197,93,161); } a value in css is a way to define a collection of allowable sub-values.
... this means that if you see <color> as valid you don't need to wonder which of the different types of color value can be used —
keywords, hex values, rgb() functions, etc.
... color
keywords quite often in examples here in the learn section or elsewhere on mdn you will see the color
keywords used, as they are a simple and understandable way of specifying color.
...And 9 more matches
Gecko info for Windows accessibility vendors
the base of our support for these products is msaa (microsoft active accessibility), external readonly dom support, and the
keyboard api/user interface.
... definitions here are some basic definitions that you'll need for this document to make sense: gecko: the rendering engine for firefox, thunderbird, nvu, mozilla seamon
key and other applications.
...gecko can render a variety of content, not just html and supports
key web standards such as cascading style sheets, javascript and the w3c dom.
...And 9 more matches
Localization content best practices
localization files choose good
key ids the ids (names) chosen for your
keys, regardless of the file format, should always be descriptive of the string, and its role in the interface (button label, title, etc.).
...when you have to change a
key id, adding a progressive number to the existing
key should always be used as a last resort.
... if a string is tied to an access
key or a tooltip, use string ids that highlight this relation: neweventbtn.label = add event neweventbtn.access
key = a neweventbtn.tooltip = add a new event don't duplicate ids if you're adding new strings, check that you're not duplicating an existing id.
...And 9 more matches
NSS 3.35 release notes
please use the equivalent ssl_sig_rsa_pss_rsae_sha* for rsaencryption
keys, or ssl_sig_rsa_pss_pss_sha* for pss
keys.
... if nss is initialized, in read-write mode with a database directory provided, it uses database files to store certificates,
key, trust, and other information.
... 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.
...And 9 more matches
NSS Sample Code sample2
* the example skips the details of obtaining the
key & iv to use, and * just uses a hardcoded
key & iv.
... * note: iv is only needed if cipher blocking chaining (cbc) mode of encryption * is used * * the recommended approach is to store and transport wrapped (encrypted) * des
keys (ivs can be in the clear).
... however, it is a common (and dangerous) * practice to use raw des
keys.
...And 9 more matches
NSS Tools crlutil
the
key and certificate management process generally begins with creating
keys in the
key database, then generating and managing certificates in the certificate database(see certutil tool) and continues with certificates expiration or revocation.
...for information on certificate and
key database management, see using the certificate database tool.
... -p dbprefix specify the prefix used on the nss security database files (for example, my_cert8.db and my_
key3.db).
...And 9 more matches
Exact Stack Rooting
this guide is intended for spidermon
key hackers!
... users of the spidermon
key api will want to read the gc rooting guide instead.
... introduction this guide explains the basics of interacting with the gc from spidermon
key.
...And 9 more matches
JS::PersistentRooted
this article covers features introduced in spidermon
key 31 a copyable, assignable global gc root type with arbitrary lifetime, an infallible constructor, and automatic unrooting on destruction.
... syntax js::persistentrooted<t> var; // added in spidermon
key 38 js::persistentrooted<t> var(cx); js::persistentrooted<t> var(cx, initial); js::persistentrooted<t> var(rt); js::persistentrooted<t> var(rt, initial); name type description cx jscontext * the context to get the runtime in which to add the root rt jsruntime * the runtime in which to add the root.
...added in spidermon
key 38 void init(jscontext* cx, t initial) void init(jsruntime* rt) void init(jsruntime* rt, t initial) void reset() reset the value to initial value of the type.
...And 9 more matches
nsIAppShellService
inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) implemented by: @mozilla.org/appshell/appshellservice;1 as a service: var appshellservice = components.classes["@mozilla.org/appshell/appshellservice;1"] .getservice(components.interfaces.nsiappshellservice); method overview void closetoplevelwindow(in nsixulwindow awindow); obsolete since gecko 1.8 void createhiddenwindow(in nsiappshell aappshell); native code only!
...obsolete since gecko 1.8 methods closetoplevelwindow() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) close a window.
... createstartupstate() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) creates the initial state of the application by launching tasks specfied by "general.startup.*" prefs.
...And 9 more matches
nsIINIParser
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) typically, you'll create an nsiiniparser object by calling nsiiniparserfactory.createiniparser().
... nsiutf8stringenumerator get
keys(in autf8string asection); nsiutf8stringenumerator getsections(); autf8string getstring(in autf8string asection, in autf8string a
key); methods get
keys() returns an nsiutf8stringenumerator providing the
keys available within the specified section of the ini file.
... nsiutf8stringenumerator get
keys( in autf8string asection ); parameters asection the name of the section whose
keys you wish to enumerate.
...And 9 more matches
WebIDL bindings
"spidermon
key" interfaces are used to represent objects that are implemented natively by the javascript engine (e.g., typed arrays).
... "spidermon
key" interfaces typed array, array buffer, and array buffer view arguments are represented by the objects in typedarray.h.
...the generated c++ api will look as follows: namespace stringtolongmapbinding { namespace maplikehelpers { void clear(mozilla::dom::stringtolongmap* self, errorresult& arv); bool delete(mozilla::dom::stringtolongmap* self, const nsastring& a
key, errorresult& arv); bool has(mozilla::dom::stringtolongmap* self, const nsastring& a
key, errorresult& arv); void set(mozilla::dom::stringtolongmap* self, const nsastring& a
key, int32_t avalue, errorresult& arv); } // namespace maplikehelpers } // namespace stringtolongmapbindings setlike example interface: interface stringset { setlike<domstring>; }; the bindings for this interface will ...
...And 9 more matches
Document - Web APIs
globaleventhandlers.on
keydown is an eventhandler representing the code to be called when the
keydown event is raised.
... globaleventhandlers.on
keypress is an eventhandler representing the code to be called when the
keypress event is raised.
... globaleventhandlers.on
keyup is an eventhandler representing the code to be called when the
keyup event is raised.
...And 9 more matches
HTMLTextAreaElement - Web APIs
target="_top"><rect x="301" y="65" width="190" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="396" y="94" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">htmltextareaelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties access
key string: returns / sets the element's access
key attribute.
... the two properties tabindex and access
key are inherited from htmlelement from html5 on, but were defined on htmltextareaelement in dom level 2 html and earlier specifications.
... methods blur() removes focus from the control;
keystrokes will subsequently go nowhere.
...And 9 more matches
IDBObjectStore.put() - Web APIs
if the record is successfully stored, then a success event is fired on the returned request object with the result set to the
key for the stored record, and the transaction set to the transaction in which this object store is opened.
... syntax let request = objectstore.put(item); let request = objectstore.put(item,
key); parameters item the item you wish to update (or insert).
...
key optional the primary
key of the record you want to update (e.g.
...And 9 more matches
Attestation and Assertion - Web APIs
attestation when an authenticator registers a new
key pair with a service, the authenticator signs the public
key with an attestation certificate.
... attestationobject - cryptographic attestation that a newly generated
keypair was created by that authenticator.
...the attestedcredentialdata field contains the credentialid and credentialpublic
key.
...And 9 more matches
Value definition syntax - CSS: Cascading Style Sheets
a component can be a
keyword, some characters considered as a literal, or a value of a given css data type or of another css property.
... component value types
keywords generic
keywords a
keyword with a predefined meaning appears literally, without quotation marks.
... the specific case of inherit, initial and unset all css properties accept the
keywords inherit, initial and unset, that are defined throughout css.
...And 9 more matches
<easing-function> - CSS: Cascading Style Sheets
the most useful of these functions are given a
keyword that allows them to be easily referenced.
...this
keyword represents the easing function cubic-bezier(0.0, 0.0, 1.0, 1.0).
...
keywords for common cubic-bezier easing functions ease the animation starts slowly, accelerates sharply, and then slows gradually towards the end.
...And 9 more matches
JavaScript data types and data structures - JavaScript
special non-data but structural type for any constructed object instance also used as data structures: new object, new array, new map, new set, new weakmap, new set, new date and almost everything made with new
keyword; function : a non-data structure, though it also answers for typeof operator: typeof instance === "function".
...the indeed proper way to check what sort of object we are using is instanceof
keyword.
... symbol type a symbol is a unique and immutable primitive value and may be used as the
key of an object property (see below).
...And 9 more matches
jpm - Archive of obsolete content
you can sign an xpi you've already generated by passing the xpi file in the --xpi argument, like this: jpm sign --api-
key ${jwt_issuer} --api-secret ${jwt_secret} --xpi <xpi file> alternatively, you can omit the --xpi argument, in which case jpm sign will generate an xpi from the current directory (or --addon-dir).
... jpm sign --api-
key ${jwt_issuer} --api-secret ${jwt_secret} this submits an xpi it to the addons.mozilla.org signing api, then downloads a signed xpi to the working directory if it passes validation.
... to get values for --api-
key and --api-secret, you will need to create api credentials on addons.mozilla.org.
...And 8 more matches
JavaScript crypto - Archive of obsolete content
use <
keygen> or the future web crypto api instead.
... generating
keys and issuing user certificates there are several crypto object methods used in generating
keys for certificates: generatecrmfrequest(), importusercertificates().
... the generatecrmfrequest() function generates a
key and creates a crmf request object.
...And 8 more matches
How to Write and Land Nanojit Patches - Archive of obsolete content
obsolete since gecko 11 (firefox 11 / thunderbird 11 / seamon
key 2.8)this feature is obsolete.
...nanojit was removed during the development of (firefox 11 / thunderbird 11 / seamon
key 2.8), so this information is relevant to earlier versions of the codebase.
...ojects/nanojit-central if you want to actually commit changes) tinderbox: http://tinderbox.mozilla.org/showbuilds.cgi?tree=nanojit commit log: http://hg.mozilla.org/projects/nanojit-central/shortlog/ irc channel: irc.mozilla.org #nanojit procedure the first thing to understand is that there are now three copies of nanojit in public mozilla.com repositories: one in nanojit-central, one in tracemon
key, one in tamarin-redux.
...And 8 more matches
Archived Mozilla and build documentation - Archive of obsolete content
ant script to assemble an extension this ant script helps to package an extension archived spidermon
key docs this section contains old spidermon
key documentation.
... bookmark
keywords practically every web surfer has bookmarks, of course, and power surfers usually have hundreds stuffed into folders within folders.
... creating a skin for seamon
key 2.x you're going to make a theme for seamon
key 2, but don't know how?
...And 8 more matches
CSS and JavaScript accessibility best practices - Learn web development
something should definitely happen when states change, and you shouldn't get rid of the pointer cursor or the outline — both are very important accessibility aids for those using
keyboard controls.
...for example, in our tabbed info box example (see source code) we have three panels of information, but we are positioning them on top of one another and providing tabs that can be clicked to show each one (it is also
keyboard accessible — you can alternatively use tab and enter/return to select them).
...as we looked at in our html: a good basis for accessibility article, the
key considerations are: good semantics: using the right element for the right job.
...And 8 more matches
Define terms with HTML - Learn web development
in this article, we'll cover how to properly mark up
keywords when you're defining them.
... objective: learn how to introduce new
keywords and how to build description lists.
...dictionaries and glossaries formally associate
keywords with one or more descriptions, as in this case: blue (adjective) of a color like the sky in a sunny day.
...And 8 more matches
Accessibility in React - Learn web development
previous overview: client-side javascript frameworks next in our final tutorial article, we'll focus on (pun intended) accessibility, including focus management in react, which can improve usability and reduce confusion for both
keyboard-only and screenreader users.
... objective: to learn about implementing
keyboard accessibility in react.
... including
keyboard users at this point, we've accomplished all of the features we set out to implement.
...And 8 more matches
NSS Sample Code sample5
nss sample code 5: pki encryption with a raw public & private
key in der format /* example code to illustrate pki crypto ops (encrypt with public
key, * decrypt with private
key) * * no nss db needed.
... the public
key & private
key to use are * sourced from a base64-encoded der subjectpublic
keyinfo structure, * and a base64-encoded der private
keyinfo structure.
... * * there is no attempt to link the public & private
key together * * this example does not do any padding.
...And 8 more matches
Property attributes
spidermon
key additionally defines several non-standard property attributes.
... mxr id search for jsprop_permanent jsprop_propop_accessors passed to js_define(uc)property* and js_defineelement if getters/setters are jspropertyop/jsstrictpropertyop added in spidermon
key 38.
...added in spidermon
key 38 mxr id search for jsprop_define_late jsfun_stub_gsops use js_propertystub getter/setter instead of defaulting to class gsops for property holding function.
...And 8 more matches
IAccessibleAction
each action can be performed or queried for a name, description or associated
key bindings.
... actions are needed more for ats that assist the mobility impaired, such as on-screen
keyboards and voice command software.
...method overview [propget] hresult description([in] long actionindex, [out] bstr description ); hresult doaction([in] long actionindex ); [propget] hresult
keybinding([in] long actionindex, [in] long nmaxbindings, [out, size_is(,nmaxbindings), length_is(, nbindings)] bstr
keybindings, [out] long nbindings ); [propget] hresult localizedname([in] long actionindex, [out] bstr localizedname ); hresult nactions([out,retval] long nactions ); [propget] hresult name([in] long actionindex, [out] bstr name ); methods description() returns a description o...
...And 8 more matches
nsIErrorService
string bundle
keys can also be mapped.
... inherits from: nsisupports last changed in gecko 1.7 implemented by: @mozilla.org/xpcom/error-service;1 method overview string geterrorstringbundle(in short errormodule); string geterrorstringbundle
key(in nsresult error); void registererrorstringbundle(in short errormodule, in string stringbundleurl); void registererrorstringbundle
key(in nsresult error, in string stringbundle
key); void unregistererrorstringbundle(in short errormodule); void unregistererrorstringbundle
key(in nsresult error); methods geterrorstringbundle() retrieves a string bundle url for an error module.
...geterrorstringbundle
key() retrieves a
key in a string bundle for an nsresult error code.
...And 8 more matches
nsIHttpServer
an nsifile corresponding to the * directory is available from the metadata object passed to the * handler, under the
key "directory".
...*/ readonly attribute nsihttpserveridentity identity; /** * retrieves the string associated with the given
key in this, for the given * path's saved state.
... all
keys are initially associated with the empty * string.
...And 8 more matches
DevTools API - Firefox Developer Tools
on
key(panel, toolbox) optional.
... a method that is called when the
keyboard shortcut for the tool is activated while the tool is the active tool.
...default: false
key string, optional.
...And 8 more matches
Index - Firefox Developer Tools
9 introduction to dom inspector dom_inspector the dom inspector is a mozilla extension that you can access from the tools > web development menu in seamon
key, or by selecting the dom inspector menu item from the tools menu in firefox and thunderbird, or by using ctrl/cmd+shift+i in either application.
... 10 all
keyboard shortcuts tools, l10n:priority this page lists all
keyboard shortcuts used by the developer tools built into firefox.
... 17 debugger-api debugger, intermediate, intro, javascript, tools mozilla’s javascript engine, spidermon
key, provides a debugging interface named debugger which lets javascript code observe and manipulate the execution of other javascript code.
...And 8 more matches
Manipulating video using canvas - Web APIs
this tutorial demonstrates how to perform chroma-
keying (also known as the "green screen effect") using javascript code.
...x; background:#3b3b3b; } </style> </head> <body> <div> <video id="video" src="media/video.mp4" controls="true" crossorigin="anonymous"/> </div> <div> <canvas id="c1" width="160" height="96"></canvas> <canvas id="c2" width="160" height="96"></canvas> </div> <script type="text/javascript" src="processor.js"></script> </body> </html> the
key bits to take away from this are: this document establishes two canvas elements, with the ids c1 and c2.
... canvas c1 is used to display the current frame of the original video, while c2 is used to display the video after performing the chroma-
keying effect; c2 is preloaded with the still image that will be used to replace the green background in the video.
...And 8 more matches
StorageEvent - Web APIs
stroke-width="2px" /><text x="176" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">storageevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} method overview void initstorageevent( in domstring type, in boolean canbubble, in boolean cancelable, in domstring
key, in domstring oldvalue, in domstring newvalue, in usvstring url, in storage storagearea ); attributes attribute type description
key domstring represents the
key changed.
... the
key attribute is null when the change is caused by the storage clear() method.
... newvalue domstring the new value of the
key.
...And 8 more matches
jspage - Archive of obsolete content
{var a=""; var c=this.replace(/<script[^>]*>([\s\s]*?)<\/script>/gi,function(){a+=arguments[1]+"\n";return"";});if(b===true){$exec(a);}else{if($type(b)=="function"){b(a,c); }}return c;},substitute:function(a,b){return this.replace(b||(/\\?{([^{}]+)}/g),function(d,c){if(d.charat(0)=="\\"){return d.slice(1);}return(a[c]!=undefined)?a[c]:""; });}});hash.implement({has:object.prototype.hasownproperty,
keyof:function(b){for(var a in this){if(this.hasownproperty(a)&&this[a]===b){return a;}}return null; },hasvalue:function(a){return(hash.
keyof(this,a)!==null);},extend:function(a){hash.each(a||{},function(c,b){hash.set(this,b,c);},this);return this;},combine:function(a){hash.each(a||{},function(c,b){hash.include(this,b,c); },this);return this;},erase:function(a){if(this.hasownproperty(a)){delete this[...
...et(d,b.call(c,e,d,this)); },this);return a;},filter:function(b,c){var a=new hash;hash.each(this,function(e,d){if(b.call(c,e,d,this)){a.set(d,e);}},this);return a;},every:function(b,c){for(var a in this){if(this.hasownproperty(a)&&!b.call(c,this[a],a)){return false; }}return true;},some:function(b,c){for(var a in this){if(this.hasownproperty(a)&&b.call(c,this[a],a)){return true;}}return false;},get
keys:function(){var a=[]; hash.each(this,function(c,b){a.push(b);});return a;},getvalues:function(){var a=[];hash.each(this,function(b){a.push(b);});return a;},toquerystring:function(a){var b=[]; hash.each(this,function(f,e){if(a){e=a+"["+e+"]";}var d;switch($type(f)){case"object":d=hash.toquerystring(f,e);break;case"array":var c={};f.each(function(h,g){c[g]=h; });d=hash.toquerystring(c,e);break;defa...
...ult:d=e+"="+encodeuricomponent(f);}if(f!=undefined){b.push(d);}});return b.join("&");}});hash.alias({
keyof:"indexof",hasvalue:"contains"}); var event=new native({name:"event",initialize:function(a,f){f=f||window;var k=f.document;a=a||f.event;if(a.$extended){return a;}this.$extended=true;var j=a.type; var g=a.target||a.srcelement;while(g&&g.nodetype==3){g=g.parentnode;}if(j.test(/
key/)){var b=a.which||a.
keycode;var m=event.
keys.
keyof(b);if(j=="
keydown"){var d=b-111; if(d>0&&d<13){m="f"+d;}}m=m||string.fromcharcode(b).tolowercase();}else{if(j.match(/(click|mouse|menu)/i)){k=(!k.compatmode||k.compatmode=="css1compat")?k.html:k.body; var i={x:a.pagex||a.clientx+k.scrollleft,y:a.pagey||a.clienty+k.scrolltop};var c={x:(a.pagex)?a.pagex-f.pagexoffset:a.clientx,y:(a.pagey)?a.pagey-f.pageyoffset:a.cli...
...And 7 more matches
Using XPInstall to Install Plugins - Archive of obsolete content
on windows: write windows registry
keys that netscape gecko browsers (that get installed after the current browser) can parse to discover where the plugin is installed on the machine.
... in particular, the windows registry
keys should point to the secondary install location so that future netscape gecko browsers can find and add to their list of available plugin locations.
... the exact format of these registry
keys and how they should be written is covered in the section on the first install problem.
...And 7 more matches
dialog - Archive of obsolete content
attributes buttonaccess
keyaccept, buttonaccess
keycancel, buttonaccess
keydisclosure, buttonaccess
keyextra1, buttonaccess
keyextra2, buttonaccess
keyhelp, buttonalign, buttondir, buttondisabledaccept, buttonlabelaccept, buttonlabelcancel, buttonlabeldisclosure, buttonlabelextra1, buttonlabelextra2, buttonlabelhelp, buttonorient, buttonpack, buttons, defaultbutton, title properties buttons, defaultbutton methods accep...
...tdialog, canceldialog, centerwindowonscreen, getbutton, movetoalertposition examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="donothing" title="dialog example" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" buttons="accept,cancel" buttonlabelcancel="cancel" buttonlabelaccept="save"> <dialogheader title="options" description="my preferences"/> <groupbox> <caption label="colour"/> <radiogroup> <radio label="red"/> <radio label="green" selected="true"/> <radio label="blue"/> </radiogroup> <label value="nickname"/> <textbox/> </groupbox> </dialog> attributes activetitlebarcolor type: color string specify background color of the window's titleb...
... buttonaccess
keyaccept type: string the access
key to use for the "accept" button.
...And 7 more matches
NPEvent - Archive of obsolete content
longint; where: point; modifiers: integer; end; xwindows typedef xevent npevent; fields npevent on microsoft windows the data structure has the following fields: event one of the following event types: wm_paint wm_lbuttondown wm_lbuttonup wm_lbuttondblclk wm_rbuttondown wm_rbuttonup wm_rbuttondblclk wm_mbuttondown wm_mbuttonup wm_mbuttondblclk wm_mousemove wm_
keyup wm_
keydown wm_setcursor wm_setfocus wm_killfocus for information about these events, see the microsoft windows developer documentation.
...values: 0 nullevent 1 mousedown 2 mouseup 3
keydown 4
keyup 5 auto
key 6 updateevt 7 diskevt 8 activateevt 15 osevt 23 khighlevelevent getfocusevent 0, 1 (true, false) losefocusevent adjustcursorevent 0, 1 (true, false) for information about these events, see the mac os developer documentation.
...the event type may be any of the ollowing: graphicsexpose focusin focusout enternotify leavenotify motionnotify buttonpress buttonrelease
keypress
keyrelease description microsoft windows description the type npevent represents an event passed by npp_handleevent() to a windowless plug-in.
...And 7 more matches
-ms-accelerator - Archive of obsolete content
the -ms-accelerator css property is a microsoft extension that sets or retrieves a string indicating whether the object represents a
keyboard shortcut.
... initial valuefalseapplies toall elementsinheritednocomputed valueas specifiedanimation typediscrete syntax /* the object is not a
keyboard shortcut (the default) */ -ms-accelerator: false /* the object is a
keyboard shortcut */ -ms-accelerator: true values false the object is not a
keyboard shortcut.
... true the object is a
keyboard shortcut.
...And 7 more matches
Unconventional controls - Game development
using a tv remote to control the game ended up being surprisingly easy, because the events fired by the controller are emulating conventional
keyboard
keys.
... captain rogers had the
keyboard controls implemented already: this.cursors = this.input.
keyboard.createcursor
keys(); //...
...the cursors are the four directional arrow
keys on the
keyboard, and these have exactly the same
key codes as the arrow
keys on the remote.
...And 7 more matches
The HTML5 input types - Learn web development
you can also use the multiple attribute in combination with the email input type to allow several email addresses to be entered in the same input (separated by commas): <input type="email" id="email" name="email" multiple> on some devices — notably, touch devices with dynamic
keyboards like smart phones — a different virtual
keypad might be presented that is more suitable for entering email addresses, including the @
key.
... see the firefox for android
keyboard screenshot below for an example: note: you can find examples of the basic text input types at basic input examples (see the source code also).
...additionally, on devices with dynamic
keyboards, the
keyboard's enter
key may read "search", or display a magnifying glass icon.
...And 7 more matches
Making asynchronous programming easier with async and await - Learn web development
previous overview: asynchronous next more recent additions to the javascript language are async functions and the await
keyword, part of the so-called ecmascript 2017 javascript edition (see ecmascript next support in mozilla).
... the async
keyword first of all we have the async
keyword, which you put in front of a function declaration to turn it into an async function.
... an async function is a function that knows how to expect the possibility of the await
keyword being used to invoke asynchronous code.
...And 7 more matches
TypeScript support in Svelte - Learn web development
in this case, if you run npm run validate (either in the vs code console or terminal) you will get the following error: even better, if you run it from the vs code integrated terminal (you can open it with the ctrl + `
keyboard shortcut), cmd/ctrl + clicking on the file name will take you to the line containing the error.
... typescript is telling us to specify the type of the
key, initial, and value variables.
... the first one is easy — the
key of our local web storage should be a string.
...And 7 more matches
Overview of NSS
nss provides a complete open-source implementation of the crypto libraries used by aol, red hat, google, and other companies in a variety of products, including the following: mozilla products, including firefox, thunderbird, seamon
key, and firefox os.
...rsa standard that governs implementation of public-
key cryptography based on the rsa algorithm.
...rsa standard that governs implementation of diffie-hellman
key agreement.
...And 7 more matches
nsIApplicationCache
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) each application cache has a unique client id for use with nsicacheservice.opensession() method, to access the cache's entries.
...method overview void activate(); void addnamespaces(in nsiarray namespaces); void discard(); void gatherentries(in pruint32 typebits, out unsigned long count, [array, size_is(count)] out string
keys); nsiapplicationcachenamespace getmatchingnamespace(in acstring
key); unsigned long gettypes(in acstring
key); void initashandle(in acstring groupid, in acstring clientid); void markentry(in acstring
key, in unsigned long typebits); void unmarkentry(in acstring
key, in unsigned long typebits); attributes attribute type description active boolean true if the cache is the active...
...void gatherentries( in pruint32 typebits, out unsigned long count, [array, size_is(count)] out string
keys ); parameters typebits a bit field indicating the types against which to match.
...And 7 more matches
nsITelemetry
1.0 66 introduced gecko 6.0 inherits from: nsisupports last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) implemented by: @mozilla.org/base/telemetry;1 as a service: let telemetry = components.classes["@mozilla.org/base/telemetry;1"] .getservice(components.interfaces.nsitelemetry); method overview jsval gethistogrambyid(in acstring id); jsval snapshothistograms(in uint32_t adataset, in boolean asubsession, in boolean aclear); jsval get
keyedhistogrambyid(in acstring id); void capturestack(in acstring name); jsval...
... snapshotcapturedstacks([optional] in boolean clear); nsisupports getloadedmodules(); jsval snapshot
keyedhistograms(in uint32_t adataset, in boolean asubsession, in boolean aclear); void sethistogramrecordingenabled(in acstring id, in boolean enabled); void asyncfetchtelemetrydata(in nsifetchtelemetrydatacallback acallback); double mssinceprocessstart(); void scalaradd(in acstring aname, in jsval avalue); void scalarset(in acstring aname, in jsval avalue); void scalarsetmaximum(in acstring aname, in jsval avalue); jsval snapshotscalars(in uint32_t adataset, [optional] in boolean aclear); void
keyedscalaradd(in acstring aname, in astring a
key, in jsval avalue); void
keyedscalarset(in acstring a...
...name, in astring a
key, in jsval avalue); void
keyedscalarsetmaximum(in acstring aname, in astring a
key, in jsval avalue); jsval snapshot
keyedscalars(in uint32_t adataset, [optional] in boolean aclear); void clearscalars(); test only void flushbatchedchildtelemetry(); void recordevent(in acstring acategory, in acstring amethod, in acstring aobject, [optional] in jsval avalue, [optional] in jsval extra); void seteventrecordingenabled(in acstring acategory, in boolean aenabled); jsval snapshotevents(in uint32_t adataset, [optional] in boolean aclear); void registerevents(in acstring acategory, in jsval aeventdata); void registerscalars(in acstring acategoryname, in jsval ascalardata); void clearevents(); te...
...And 7 more matches
Using the Multiple Accounts API
the accounts, identities, and servers are all linked via
keys.
...
keys are simply internal strings that uniquely identify each account, identity and server.
... the
keys are also used to decide the name of each of the preferences that hold the object's data.
...And 7 more matches
Debugger.Object - Firefox Developer Tools
spidermon
key creates exactly one debugger.object instance for each debuggee object it presents to a given debugger instance: if the debugger encounters the same object through two different routes (perhaps two functions are called on the same object), spidermon
key presents the same debugger.object instance to the debugger each time.
... while most debugger.object instances are created by spidermon
key in the process of exposing debuggee’s behavior and state to the debugger, the debugger can use debugger.object.prototype.makedebuggeevalue to create debugger.object instances for given debuggee objects, or use debugger.object.prototype.copy and debugger.object.prototype.create to create new objects in debuggee compartments, allocated as if by particular debuggee globals.
... this accessor returns whatever name appeared after the function
keyword in the source code, regardless of whether the function is the result of instantiating a function declaration (which binds the function to its name in the enclosing scope) or evaluating a function expression (which binds the function to its name only within the function’s body).
...And 7 more matches
Debugger - Firefox Developer Tools
uncaughtexceptionhook either null or a function that spidermon
key calls when a call to a debug event handler, breakpoint handler, or similar function throws some exception, which we refer to asdebugger-exception here.
... exceptions thrown in the debugger are not propagated to debuggee code; instead, spidermon
key calls this function, passingdebugger-exception as its sole argument and the debugger instance as the this value.
... if the uncaught exception hook itself throws an exception,uncaught-hook-exception, spidermon
key throws a new error object,confess-to-debuggee-exception, to the debuggee whose message blames the debugger, and includes textual descriptions ofuncaught-hook-exception and the originaldebugger-exception.
...And 7 more matches
Debugger.Object - Firefox Developer Tools
spidermon
key creates exactly one debugger.object instance for each debuggee object it presents to a given debugger instance: if the debugger encounters the same object through two different routes (perhaps two functions are called on the same object), spidermon
key presents the same debugger.object instance to the debugger each time.
... while most debugger.object instances are created by spidermon
key in the process of exposing debuggee's behavior and state to the debugger, the debugger can use debugger.object.prototype.makedebuggeevalue to create debugger.object instances for given debuggee objects, or use debugger.object.prototype.copy and debugger.object.prototype.create to create new objects in debuggee compartments, allocated as if by particular debuggee globals.
... this accessor returns whatever name appeared after the function
keyword in the source code, regardless of whether the function is the result of instantiating a function declaration (which binds the function to its name in the enclosing scope) or evaluating a function expression (which binds the function to its name only within the function's body).
...And 7 more matches
Basic animations - Web APIs
if we wanted to make a game, we could use
keyboard or mouse events to control the animation and use settimeout().
...head> <body> <canvas id="cw"></canvas> </body> </html> output snake game <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <title>nokia 1100:snake..member berries</title> </head> <body> <div class="
keypress hide"> <div class="up" onclick="emit(38)">↑</div> <div class="right" onclick="emit(39)">→</div> <div class="left" onclick="emit(37)">←</div> <div class="down" onclick="emit(40)">↓</div> </div> <div class="banner" id="selector"> <div> time :<span id="time">0</span> </div> <div>lousygames ©</di...
...ign: center; color: #fff; background: #3f51b5; line-height: 29px; position: fixed; left: 0; top: 0; right: 0; font-family: monospace; height: 30px; opacity: .4; display: flex; transition: .5s } .banner:hover { opacity: 1 } div#selector>div { flex-basis: 30% } @
keyframes diss { from { opacity: 1 } to { opacity: 0 } } .
keypress>div { border: dashed 3px #fff; height: 48%; width: 48%; display: flex; align-content: center; justify-content: center; align-self: center; align-items: center; font-size: -webkit-xxx-large; ...
...And 7 more matches
IDBCursorSync - Web APIs
method overview bool continue (in optional any
key); void remove () raises (idbdatabaseexception); attributes attribute type description count readonly unsigned long long the total number of objects that share the current
key.
...
key readonly any the
key for the record at the cursor's position.
...setting this attribute can raise an idbdatabaseexception with the following codes: data_err if the underlying object store uses in-line
keys and the property at the
key path does not match the
key in this cursor's position.
...And 7 more matches
SubtleCrypto.decrypt() - Web APIs
it takes as arguments a
key to decrypt with, some optional extra parameters, and the data to decrypt (also known as "ciphertext").
... syntax const result = crypto.subtle.decrypt(algorithm,
key, data); parameters algorithm is an object specifying the algorithm to be used, and any extra parameters as required.
...
key is a crypto
key containing the
key to be used for decryption.
...And 7 more matches
Writing WebSocket servers - Web APIs
the client will send a pretty standard http request with headers that looks like this (the http version must be 1.1 or greater, and the method must be get): get /chat http/1.1 host: example.com:8000 upgrade: websocket connection: upgrade sec-websocket-
key: dghlihnhbxbszsbub25jzq== sec-websocket-version: 13 the client can solicit extensions and/or subprotocols here; see miscellaneous for details.
... the most interesting header here is sec-websocket-
key.
...the sec-websocket-accept header is important in that the server must derive it from the sec-websocket-
key that the client sent to it.
...And 7 more matches
Web APIs
a angle_instanced_arrays abortcontroller abortsignal absoluteorientationsensor abstractrange abstractworker accelerometer addresserrors aescbcparams aesctrparams aesgcmparams aes
keygenparams ambientlightsensor analysernode animation animationeffect animationevent animationplaybackevent animationtimeline arraybufferview attr audiobuffer audiobuffersourcenode audioconfiguration audiocontext audiocontextlatencycategory audiocontextoptions audiodestinationnode audiolistener audionode audionodeoptions audioparam audioparamdescriptor audioparammap audioprocessingevent au...
...toothadvertisingdata bluetoothcharacteristicproperties bluetoothdevice bluetoothremotegattcharacteristic bluetoothremotegattdescriptor bluetoothremotegattserver bluetoothremotegattservice body broadcastchannel budgetservice budgetstate buffersource bytelengthqueuingstrategy bytestring c cdatasection css cssconditionrule csscounterstylerule cssgroupingrule cssimagevalue css
keyframerule css
keyframesrule css
keywordvalue cssmathproduct cssmathsum cssmathvalue cssmediarule cssnamespacerule cssnumericvalue cssomstring csspagerule csspositionvalue cssprimitivevalue csspseudoelement cssrule cssrulelist cssstyledeclaration cssstylerule cssstylesheet cssstylevalue csssupportsrule cssunitvalue cssunparsedvalue cssvalue cssvaluelist cssvariablerefere...
...2d caretposition channelmergernode channelsplitternode characterdata childnode client clients clipboard clipboardevent clipboarditem closeevent comment compositionevent constantsourcenode constrainboolean constraindomstring constraindouble constrainulong contentindex contentindexevent convolvernode countqueuingstrategy crashreportbody credential credentialscontainer crypto crypto
key crypto
keypair customelementregistry customevent d domconfiguration domerror domexception domhighrestimestamp domimplementation domimplementationlist domlocator dommatrix dommatrixreadonly domobject domparser dompoint dompointinit dompointreadonly domquad domrect domrectreadonly domstring domstringlist domstringmap domtimestamp domtokenlist domuserdata datatransfer datatransferi...
...And 7 more matches
background-size - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-size: 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; ba...
...ckground-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.
... note: the behavior of <gradient>s changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5).
...And 7 more matches
justify-items - CSS: Cascading Style Sheets
in table cell layouts, this property is ignored (more about alignment in block, absolute positioned and table layout) in flexbox layouts, this property is ignored (more about alignment in flexbox) in grid layouts, it aligns the items inside their grid areas on the inline axis (more about alignment in grid layouts) syntax /* basic
keywords */ justify-items: auto; justify-items: normal; justify-items: stretch; /* positional alignment */ justify-items: center; /* pack items around the center */ justify-items: start; /* pack items from the start */ justify-items: end; /* pack items from the end */ justify-items: flex-start; /* equivalent to 'start'.
...ms: last baseline; /* overflow alignment (for positional alignment only) */ justify-items: safe center; justify-items: unsafe center; /* legacy alignment */ justify-items: legacy right; justify-items: legacy left; justify-items: legacy center; /* global values */ justify-items: inherit; justify-items: initial; justify-items: unset; this property can take one of four different forms: basic
keywords: one of the
keyword values normal, auto, or stretch.
... baseline alignment: the baseline
keyword, plus optionally one of first or last.
...And 7 more matches
text-transform - CSS: Cascading Style Sheets
syntax /*
keyword values */ text-transform: none; text-transform: capitalize; text-transform: uppercase; text-transform: lowercase; text-transform: full-width; text-transform: full-size-kana; /* global values */ text-transform: inherit; text-transform: initial; text-transform: unset; capitalize is a
keyword that converts the first letter of each word to uppercase.
... the capitalize
keyword was under-specified in css 1 and css 2.1.
... uppercase is a
keyword that converts all characters to uppercase.
...And 7 more matches
transform-origin - CSS: Cascading Style Sheets
syntax /* one-value syntax */ transform-origin: 2px; transform-origin: bottom; /* x-offset | y-offset */ transform-origin: 3cm 2px; /* x-offset-
keyword | y-offset */ transform-origin: left 2px; /* x-offset-
keyword | y-offset-
keyword */ transform-origin: right top; /* y-offset-
keyword | x-offset-
keyword */ transform-origin: top right; /* x-offset | y-offset | z-offset */ transform-origin: 2px 30% 10px; /* x-offset-
keyword | y-offset | z-offset */ transform-origin: left 5px -3px; /* x-offset-
keyword | y-offset-
keyword | z-offset */ transf...
...orm-origin: right bottom 2cm; /* y-offset-
keyword | x-offset-
keyword | z-offset */ transform-origin: bottom right 2cm; /* global values */ transform-origin: inherit; transform-origin: initial; transform-origin: unset; the transform-origin property may be specified using one, two, or three values, where each value represents an offset.
... if two or more values are defined and either no value is a
keyword, or the only used
keyword is center, then the first value represents the horizontal offset and the second represents the vertical offset.
...And 7 more matches
<input type="submit"> - HTML: Hypertext Markup Language
formtarget a string which specifies a name or
keyword that indicates where to display the response received after submitting the form.
... in addition to the actual names of tabs, windows, or inline frames, there are a few special
keywords that can be used: _self loads the response into the same browsing context as the one that contains the form.
... adding a submit
keyboard shortcut
keyboard shortcuts, also known as access
keys and
keyboard equivalents, let the user trigger a button using a
key or combination of
keys on the
keyboard.
...And 7 more matches
A re-introduction to JavaScript (JS tutorial) - JavaScript
they have methods as well that allow you to manipulate the string and access information about the string: 'hello'.charat(0); // "h" 'hello, world'.replace('world', 'mars'); // "hello, mars" 'hello'.touppercase(); // "hello" other types javascript distinguishes between null, which is a value that indicates a deliberate non-value (and is only accessible through the null
keyword), and undefined, which is a value of type undefined that indicates an uninitialized variable — that is, a value hasn't even been assigned yet.
... javascript has a boolean type, with possible values true and false (both of which are
keywords.) any value can be converted to a boolean according to the following rules: false, 0, empty strings (""), nan, null, and undefined all become false.
... variables new variables in javascript are declared using one of three
keywords: let, const, or var.
...And 7 more matches
Object.defineProperty() - JavaScript
normal property addition through assignment creates properties which show up during property enumeration (for...in loop or object.
keys method), whose values may be changed, and which may be deleted.
...they share the following optional
keys (note: the default value is in the case of defining properties using object.defineproperty()): configurable true if and only if the type of this property descriptor may be changed and if the property may be deleted from the corresponding object.
... a data descriptor also has the following optional
keys: value the value associated with the property.
...And 7 more matches
Reflect - JavaScript
reflect.defineproperty(target, property
key, attributes) similar to object.defineproperty().
... reflect.deleteproperty(target, property
key) the delete operator as a function.
... equivalent to calling delete target[property
key].
...And 7 more matches
Enhanced Extension Installation - Archive of obsolete content
any location specified in a guid-to-path registry
key mapping, e.g.
... app-registry a registry-
key based install location for items living at locations specified by a guid-to-path value set within the registry at a predefined location.
...this is a list of all installed items, disabled or not,
keyed first by install location name, then by guid.
...And 6 more matches
Session store API - Archive of obsolete content
one
key scenario in which supporting this feature can be crucial for an extension: firefox 2 lets users undo the closing of tabs.
... saving a value with a tab the following code will attach a
key/value pair to a tab, so that when the tab is restored, that pair is still associated with it.
... var ss = components.classes["@mozilla.org/browser/sessionstore;1"] .getservice(components.interfaces.nsisessionstore); var currenttab = gbrowser.selectedtab; var datatoattach = "i want to attach this"; ss.settabvalue(currenttab, "
key-name-here", datatoattach); this code sets the value of the
key "
key-name-here" to datatoattach.
...And 6 more matches
XUL Events - Archive of obsolete content
once an element has the focus,
keyboard events are sent to it.
... attribute: onfocus
keydown the
keydown event is sent to an element that has the focus while a
key is pressed but not released.
... attribute: on
keydown
keypress the
keypress event is sent to an element that has the focus when a
key is pressed and released.
...And 6 more matches
tabbox - Archive of obsolete content
label="last tab"/> </tabs> <tabpanels> <tabpanel><!-- tabpanel first elements go here --></tabpanel> <tabpanel><!-- tabpanel second elements go here --></tabpanel> <tabpanel><button label="click me"/></tabpanel> <tabpanel><!-- tabpanel fourth elements go here --></tabpanel> </tabpanels> </tabbox> attributes eventnode type: one of the values below indicates where
keyboard navigation events are listened to.
...thus, if this attribute is not used, the tabbox or an element inside it must have the focus for the
keyboard navigation to apply.
... parent
keyboard navigation is captured at the parent of the tabbox.
...And 6 more matches
Mobile accessibility - Learn web development
there are some exceptions that need special consideration for mobile; the main ones are: control mechanisms — make sure interface controls such as buttons are accessible on mobiles (i.e., mainly touchscreen), as well as desktops/laptops (mainly mouse/
keyboard).
...these function in much the same way as desktop screenreaders, except they are largely operated using touch gestures rather than
key combinations.
... hold your finger down on the virtual
keyboard until you get the character you want, and then release your finger to type it.
...And 6 more matches
Making decisions in your code — conditionals - Learn web development
else syntax basic if...else syntax looks like the following in pseudocode: if (condition) { code to run if condition is true } else { run some other code instead } here we've got: the
keyword if followed by some parentheses.
... the
keyword else.
...here's some more pseudocode, to give you an idea: switch (expression) { case choice1: run this code break; case choice2: run this code instead break; // include as many cases as you like default: actually, just run this code } here we've got: the
keyword switch, followed by a set of parentheses.
...And 6 more matches
Mozilla Quirks Mode Behavior
obsolete since gecko 35 (firefox 35.0 / thunderbird 35.0 / seamon
key 2.32) (bug 95530) this quirk is now html5 conform and has been adopted in standards mode.
... prior to gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3), there was no class check, so the :hover pseudoclass was not applied to class selectors; for example, .someclass:hover did not work.
... obsolete since gecko 10.0 however, html5 requires this behavior, and starting in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), this also works in standards mode (bug 80784, bug 93077).
...And 6 more matches
JSS FAQ
can you explain token names and
keys with regards to jss?
... jss example code is essentially developer test code; with that understanding, the best directory to look for sample code is in the org/mozilla/jss/tests directory: http://lxr.mozilla.org/mozilla/source/security/jss/org/mozilla/jss/tests org/mozilla/jss/tests/closedbs.java org/mozilla/jss/tests/
keyfactorytest.java org/mozilla/jss/tests/digesttest.java org/mozilla/jss/tests/jcasigtest.java org/mozilla/jss/tests/
keywrapping.java org/mozilla/jss/tests/listcerts.java org/mozilla/jss/tests/pk10gen.java org/mozilla/jss/tests/sdr.java org/mozilla/jss/tests/selftest.java org/mozilla/jss/tests/setupdbs.java org/mozilla/jss/tests/sigtest.java ...
... org/mozilla/jss/tests/sym
keygen.java org/mozilla/jss/tests/test
keygen.java org/mozilla/jss/tests/sslclientauth.java org/mozilla/jss/tests/listcacerts.java org/mozilla/jss/tests/
keystoretest.java org/mozilla/jss/tests/verifycert.java ssl examples: org/mozilla/jss/tests/sslclientauth.java org/mozilla/jss/ssl/sslclient.java org/mozilla/jss/ssl/sslserver.java org/mozilla/jss/ssl/ssltest.java other test code that may prove useful: org/mozilla/jss/asn1/integer.java org/mozilla/jss/asn1/sequence.java org/mozilla/jss/asn1/set.java org/mozilla/jss/pkcs10/certificationrequest.java org/mozilla/jss/pkcs12/pfx.java org/mozilla/jss/pkix/cert/certificate.java org/mozilla/jss/pkix/cmmf/certrepcontent.java ...
...And 6 more matches
NSS Sample Code sample4
nss sample code 4: pki encryption /* example code to illustrate pki crypto ops (encrypt with public
key, * decrypt with private
key) * * code assumes that you have set up a nss database with a certificate * and a private
key.
... * # create ca cert, self-signed, generates
key-pair, prompts for
key * # type, cert type etc * # answers for prompts: 5,9,n,y,-1,n,5,6,7,9,n * $ certutil -s -s "cn=test ca, o=bogus inc, l=mtn view, st=ca, c=us" \ * -n testca -t ctu,ctu,ctu -v 60 -x -d .
... -1 -2 -5 * * there are many ways to setup a public/private
key to use - this * example shows one of them.
...And 6 more matches
NSC_InitToken
specifically, nsc_inittoken() initializes or clears the
key database, removes the password, and then marks all the user certs in the certificate database as non-user certs.
... (user certs are the certificates that have their associated private
keys in the
key database.) note: the so password should be the empty string, i.e., ulpinlen argument should be 0.
...the
key database is in slot 2.
...And 6 more matches
pkfnc.html
in particular, these functions are used for obtaining certificates,
keys, and passwords.
... pk11_findcertfromnickname pk11_find
keybyanycert pk11_getslotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc pk11_findcertfromnickname finds a certificate from its nickname.
... pk11_find
keybyanycert finds the private
key associated with a specified certificate in any available slot.
...And 6 more matches
Introduction to the JavaScript shell
the javascript shell (js) is a command-line program included in the spidermon
key source distribution.
... to get the spidermon
key javascript shell, see the spidermon
key build documentation or download a compiled binary for your platform from the nightly builds.
... note: starting with spidermon
key 44 (firefox 44 / thunderbird 44 / seamon
key 2.41), the standard, web-compatible javascript version is used by default (and not js1.7+ anymore).
...And 6 more matches
Split object
in spidermon
key, a split object is made up of two jsobjects: an inner object and an outer object.
...programs other than mozilla that embed spidermon
key should avoid using split objects.
...spidermon
key walks up the scope chain to the nearest object that has jsprincipals attached.
...And 6 more matches
AT APIs Support
but in the meantime it more up-to-date and contains more details than existed analogues for at-spi and msaa this documentation explains how makers of screen readers, voice dictation packages, onscreen
keyboards, magnification software and other assitive technologies can support gecko-based software.
... accessible gecko gecko is a rendering engine that firefox, seamon
key, netscape and yelp use.
... gecko can render a variety of content, not just html and supports
key web standards such as cascading style sheets, javascript and the w3c dom.
...And 6 more matches
nsIAppStartup
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) implemented by: @mozilla.org/toolkit/app-startup;1.
... createstartupstate() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) creates the initial state of the application by launching tasks specfied by "general.startup.*" prefs.
... doprofilestartup() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) starts up the profile manager with the given arguments.
...And 6 more matches
nsIDBFolderInfo
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) implemented by: ?????????????????????????????????????.
...long flags); void setbooleanproperty(in string propertyname, in boolean apropertyvalue); void setcharacterset(in string charset); void setcharactersetoverride(in boolean charactersetoverride); obsolete since gecko 1.8 void setcharptrproperty(in string apropertyname, in string apropertyvalue); void sethighwater(in nsmsg
key highwater, in boolean force); void setlocale(in nsstring locale); native code only!
...obsolete since gecko 1.8 void setproperty(in string propertyname, in astring propertystr); void setuint32property(in string propertyname, in unsigned long propertyvalue); attributes attribute type description charactersetoverride boolean expiredmark nsmsg
key expungedbytes long flags long folderdate unsigned long foldername string foldersize unsigned long highwater nsmsg
key imaphierarchyseparator wchar imaptotalpendingmes...
...And 6 more matches
nsIEditorIMESupport
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void begincomposition(in nstexteventreplyptr areply); native code only!
... methods native code only!begincomposition obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
...void begincomposition( in nstexteventreplyptr areply ); parameters areply endcomposition() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) handles the end of inline input composition.
...And 6 more matches
nsIFaviconService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) implemented by: @mozilla.org/browser/favicon-service;1.
... getfavicondata() obsolete since gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) note: this method was removed in gecko 22.0.
... getfavicondataasdataurl() obsolete since gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) note: this method was removed in gecko 22.0.
...And 6 more matches
nsINavHistoryResultObserver
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamon
key 2.8) note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1), this interface replaced the older nsinavhistoryresultviewer interface, which only allowed one client at a time.
...odedateaddedchanged(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodehistorydetailschanged(in nsinavhistoryresultnode anode, in prtime anewvisitdate, in unsigned long anewaccesscount); void nodeiconchanged(in nsinavhistoryresultnode anode); void nodeinserted(in nsinavhistorycontainerresultnode aparent, in nsinavhistoryresultnode anode, in unsigned long anewindex); void node
keywordchanged(in nsinavhistoryresultnode anode, in autf8string anew
keyword); void nodelastmodifiedchanged(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodemoved(in nsinavhistoryresultnode anode, in nsinavhistorycontainerresultnode aoldparent, in unsigned long aoldindex, in nsinavhistorycontainerresultnode anewparent, in unsigned long anewindex); void noderemoved(in nsinavhistor...
... containerclosed() obsolete since gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamon
key 2.8) called when a container node's state changes from opened to closed.
...And 6 more matches
nsIStringBundleOverride
method overview nsisimpleenumerator enumerate
keysinbundle(in autf8string url); astring getstringfromname(in autf8string url, in acstring
key); methods enumerate
keysinbundle() get all override
keys for a given string bundle.
... nsisimpleenumerator enumerate
keysinbundle( in autf8string url ); parameters url the url of the original string bundle whose
keys are to be overridden.
... return value an enumeration of nsipropertyelement objects for the
keys that are overridden in the given string bundle.
...And 6 more matches
Using nsIDirectoryService
first, you must know what the string
key (or property) is that refers to this locations.
... header files containing known
keys are listed in the known locations section of this document.
...second, you must acquire the implementation and call get() passing the known string
key.
...And 6 more matches
DOM Inspector internals - Firefox Developer Tools
besides the dom inspector's primary ui, there are a couple other top-level inspectors which differ slightly (the object inspector and dom inspector sidebar used in seamon
key).
...its contents should resemble the following: extensions/ … jsutil/ … prefs/ … res/ … tests/ … viewers/ … browseroverlay.xul commandoverlay.xul editingoverlay.xul flasher.js hooks.js inspector.css inspector.js inspectoroverlay.xul inspector.xml inspector.xul
keysetoverlay.xul object.js object.xul popupoverlay.xul sidebar.js sidebar.xul statusbaroverlay.xul tasksoverlay-cz.xul tasksoverlay-ff.xul tasksoverlay-mobile.xul tasksoverlay-sb.xul tasksoverlay-tb.xul tasksoverlay.xul toolboxoverlay.xul utils.js venkmanoverlay.xul viewerregistry.js overlays you will notice that there are a lot of overlays.
...in order for dom inspector to be useful with its host application, though, there should be a way to launch dom inspector within it, e.g., by a menu item and an optional
keyboard shortcut such as ctrl+shift+i (or cmd+shift+i).
...And 6 more matches
Debugger.Frame - Firefox Developer Tools
for a given debugger instance, spidermon
key creates only one debugger.frame instance for a given visible frame.
...even though the debuggee and debugger share the same javascript stack, frames pushed for spidermon
key’s calls to handler methods to report events in the debuggee are never considered visible frames.) invocation functions and “debugger” frames aninvocation function is any function in this interface that allows the debugger to invoke code in the debuggee: debugger.object.prototype.call, debugger.frame.prototype.eval, and so on.
... handler methods of debugger.frame instances each debugger.frame instance inherits accessor properties holding handler functions for spidermon
key to call when given events occur in the frame.
...And 6 more matches
Using the CSS Typed Object Model - Web APIs
you'll note that custom properties retain the value as written in the stylesheet, whereas computed styles will be listed as the computed value — color was listed as an rgb() value and the font-weight returned was 700 even though we use a named color and and the bold
keyword.
... cssunitvalue and css
keywordvalue the power of the css typed om is that values are separate from units; parsing and concatenating string values may become be a thing of the past.
...if the value is a
keyword, the object returned is a css
keywordvalue.
...And 6 more matches
Element - Web APIs
element.tabstop is a boolean indicating if the element can receive input focus via the tab
key.
...for example, the browser might fire this event when the user presses the esc
key or clicks a "close dialog" button which is part of the browser's ui.
...
keyboard events
keydown fired when a
key is pressed.
...And 6 more matches
FormData - Web APIs
the formdata interface provides a way to easily construct a set of
key/value pairs representing form fields and their values, which can then be easily sent using the xmlhttprequest.send() method.
... methods formdata.append() appends a new value onto an existing
key inside a formdata object, or adds the
key if it does not already exist.
... formdata.delete() deletes a
key/value pair from a formdata object.
...And 6 more matches
IDBObjectStore.createIndex() - Web APIs
syntax var myidbindex = objectstore.createindex(indexname,
keypath); var myidbindex = objectstore.createindex(indexname,
keypath, objectparameters); parameters indexname the name of the index to create.
...
keypath the
key path for the index to use.
... note that it is possible to create an index with an empty
keypath, and also to pass in a sequence (array) as a
keypath.
...And 6 more matches
MouseEvent.initMouseEvent() - Web APIs
syntax event.initmouseevent(type, canbubble, cancelable, view, detail, screenx, screeny, clientx, clienty, ctrl
key, alt
key, shift
key, meta
key, button, relatedtarget); parameters type the string to set the event's type to.
... ctrl
key whether or not control
key was depressed during the event.
... sets the value of mouseevent.ctrl
key.
...And 6 more matches
Using the Web Storage API - Web APIs
the web storage api provides mechanisms by which browsers can securely store
key/value pairs.
... basic concepts storage objects are simple
key-value stores, similar to objects, but they stay intact through page loads.
... the
keys and the values are always strings (note that, as with objects, integer
keys will be automatically converted to strings).
...And 6 more matches
ARIA: listbox role - Accessibility
it is highly recommended to use the html select element, or a group of radio buttons if only one item can be selected, or a group of checkboxes if multiple items can be selected, because there is a lot of
keyboard interactivity to manage focus for all the descendants, and native html elements provide this functionality for you for free.
...it is recommended that a checkbox, link or other method be used to select all items, and ctrl+a could be used as a shortcut
key for this.
... (for further details and a full list of aria states and properties see the aria listbox (role) documentation.)
keyboard interactions when a single-select listbox receives focus: if none of the options are selected before the listbox receives focus, the first option receives focus.
...And 6 more matches
Event reference
et button is pressed submit the submit button is pressed printing events event name fired when beforeprint the print dialog is opened afterprint the print dialog is closed text composition events event name fired when compositionstart the composition of a passage of text is prepared (similar to
keydown for a
keyboard input, but works with other inputs such as speech recognition).
... clipboard events event name fired when cut the selection has been cut and copied to the clipboard copy the selection has been copied to the clipboard paste the item from the clipboard has been pasted
keyboard events event name fired when
keydown any
key is pressed
keypress any
key (except shift, fn, or capslock) is in a pressed position (fired continuously).
...
keyup any
key is released mouse events event name fired when auxclick a pointing device button (any non-primary button) has been pressed and released on an element.
...And 6 more matches
<input type="tel"> - HTML: Hypertext Markup Language
despite the fact that inputs of type tel are functionally identical to standard text inputs, they do serve useful purposes; the most quickly apparent of these is that mobile browsers — especially on mobile phones — may opt to present a custom
keypad optimized for entering phone numbers.
... mozactionhint a string indicating the type of action that will be taken when the user presses the enter or return
key while editing the field; this is used to determine an appropriate label for that
key on a virtual
keyboard.
... mozactionhint a mozilla extension, supported by firefox for android, which provides a hint as to what sort of action will be taken if the user presses the enter or return
key while editing the field.
...And 6 more matches
JSON.stringify() - JavaScript
all symbol-
keyed properties will be completely ignored, even when using the replacer function.
...[1, 'false', false]); // '[1,"false",false]' json.stringify([nan, null, infinity]); // '[null,null,null]' json.stringify({ x: 5 }); // '{"x":5}' json.stringify(new date(2006, 0, 2, 15, 4, 5)) // '"2006-01-02t15:04:05.000z"' json.stringify({ x: 5, y: 6 }); // '{"x":5,"y":6}' json.stringify([new number(3), new string('false'), new boolean(false)]); // '[3,"false",false]' // string-
keyed array elements are not enumerable and make no sense in json let a = ['foo', 'bar']; a['baz'] = 'quux'; // a: [ 0: 'foo', 1: 'bar', baz: 'quux' ] json.stringify(a); // '["foo","bar"]' json.stringify({ x: [10, undefined, function(){}, symbol('')] }); // '{"x":[10,null,null,null]}' // standard data structures json.stringify([new set([1]), new map([[1, 2]]), new weakset([{a: 1}]), new weakma...
... as a function, it takes two parameters: the
key and the value being stringified.
...And 6 more matches
Symbol.for() - JavaScript
the symbol.for(
key) method searches for existing symbols in a runtime-wide symbol registry with the given
key and returns it if found.
... otherwise a new symbol gets created in the global symbol registry with this
key.
... syntax symbol.for(
key); parameters
key string, required.
...And 6 more matches
How to make PWAs re-engageable using Notifications and Push - Progressive web apps (PWAs)
from the server-side, the whole process has to be encrypted with public and private
keys for security reasons — allowing everyone to send push messages unsecured using your app would be a terrible idea.
...if not, we initialize a new subscription: const response = await fetch('./vapidpublic
key'); const vapidpublic
key = await response.text(); const convertedvapid
key = urlbase64touint8array(vapidpublic
key); the app fetches the server's public
key and converts the response to text; then it needs to be converted to a uint8array (to support chrome).
... to learn more about vapid
keys you can read the sending vapid identified webpush notifications via mozilla’s push service blog post.
...And 6 more matches
begin - SVG: Scalable Vector Graphics
each individual value can be one of the following : <offset-value>, <syncbase-value>, <event-value>, <repeat-value>, <access
key-value>, <wallclock-sync-value> or the
keyword indefinite.
...those are: focus, blur, focusin, focusout, activate, auxclick, click, dblclick, mousedown, mouseenter, mouseleave, mousemove, mouseout, mouseover, mouseup, wheel, beforeinput, input,
keydown,
keyup, compositionstart, compositionupdate, compositionend, load, unload, abort, error, select, resize, scroll, beginevent, endevent, and repeatevent.
... <access
key-value> this value defines an access
key that should trigger the animation.
...And 6 more matches
cfx - Archive of obsolete content
--
keydir=
keydir supply a different location for signing
keys.
...
keydir may be specified as a full path or as a path relative to the current directory.
... --
keydir=
keydir supply a different location for signing
keys.
...And 5 more matches
popChallengeResponse - Archive of obsolete content
use <
keygen> or the future web crypto api instead.
... resultstring = crypto.popchallengeresponse("challengestring"); argument description "challengestring" a base-64 encoded cmmf popodec
keychallcontent message.
... the resultstring will either be a base-64 encoded popodec
keyrespcontent message, or one of the following error strings: error string description "error:invalidparameter:xxx" the parameter xxx was an invalid value.
...And 5 more matches
Mozilla Crypto FAQ - Archive of obsolete content
i've updated this version of the mozilla crypto faq to discuss the situation now that the rsa public
key algorithm is in the public domain and a full open source crypto implementation is being added to the mozilla code base.
...patent on the rsa public
key algorithm.
... version 3.1 of the network security services library will include a complete open source implementation of the cryptographic algorithms needed for mozilla ssl support, including the rsa public
key algorithm (now in the public domain).
...And 5 more matches
autocompletesearch - Archive of obsolete content
« xul reference home autocompletesearch new in thunderbird 2requires seamon
key 1.1 type: space-separated list of values a space-separated list of search component names, each of which implements the nsiautocompletesearch interface.
... search-autocomplete requires seamon
key 2.1 the user's default search engine's suggestions are searched.
... places-tag-autocomplete requires seamon
key 2.1 the user's places tags are searched.
...And 5 more matches
Looping code - Learn web development
the first, which you'll use most of the time, is the for loop — this has the following syntax: for (initializer; condition; final-expression) { // code to run } here we have: the
keyword for, followed by some parentheses.
...the condition is included inside the parentheses, which are preceded by the while
keyword rather than for.
...the
keyword directly precedes the curly braces containing the code to run and the final expression.
...And 5 more matches
React interactivity: Editing, filtering, conditional rendering - Learn web development
{ // if this task has the same id as the edited task if (id === task.id) { // return {...task, name: newname} } return task; }); settasks(editedtasklist); } pass edittask into our <todo /> components as a prop in the same way we did with deletetask: const tasklist = tasks.map(task => ( <todo id={task.id} name={task.name} completed={task.completed}
key={task.id} toggletaskcompleted={toggletaskcompleted} deletetask={deletetask} edittask={edittask} /> )); now open todo.js.
... a javascript object would be a great way to relate names to behaviors: each
key is the name of a filter; each property is the behavior associated with that name.
... beneath our previous addition, add the following — here we are using the object.
keys() method to collect an array of filter_names: const filter_names = object.
keys(filter_map); note: we are defining these constants outside our app() function because if they were defined inside it, they would be recalculated every time the <app /> component re-renders, and we don’t want that.
...And 5 more matches
Mozilla Plugin Accessibility
see the plugin
keyboard navigation proposal to see how the largest problems can be solved.
...all browser
keys unavailable when plugin has focus focused plugins currently have no choice but to consume all
keyboard events.
... the new plugin api will allow plugins to bubble unused
keypresses to the browser.
...And 5 more matches
FIPS Mode - an explanation
whether it is hardware or software, that device will have all the cryptographic engines in it, and also will stores
keys and perhaps certificates inside.
... the device must have a way for users to authenticate to it (to "login" to it), to prove to it that they are authorized to use the cryptographic engines and
keys it contains.
... it may not do any cryptographic operations that involve the use of cryptographic
keys, nor allow any of the
keys or certificates it holds to be seen or used, except when a user has successfully authenticated to it.
...And 5 more matches
NSS 3.24 release notes
a ssl_configservercert function has been added for configuring ssl/tls server sockets with a certificate and private
key.
...ssl_configservercert automatically determines the certificate type from the certificate and private
key.
... the caller is no longer required to use sslkeatype explicitly to select a "slot" into which the certificate is configured (which incorrectly identifies a
key agreement type rather than a certificate).
...And 5 more matches
NSS 3.28 release notes
key exporters for tls 1.3 are supported (bug 1310610).
... this includes the early
key exporter, which can be used if 0-rtt is enabled.
... note that there is a difference between tls 1.3 and
key exporters in older versions of tls.
...And 5 more matches
FC_InitToken
specifically, fc_inittoken() initializes or clears the
key database, removes the password, and then marks all the user certs in the certificate database as non-user certs.
... (user certs are the certificates that have their associated private
keys in the
key database.) a user must be able to call fc_inittoken() without logging into the token (to assume the nss user role) because either the user's password hasn't been set yet or the user forgets the password and needs to blow away the password-encrypted private
key database and start over.
... ckr_token_write_protected we don't have a reference to the
key database (we failed to open the
key database or we have released our reference).
...And 5 more matches
NSS_3.12.3_release_notes.html
nss_use_decoded_cka_ec_point boolean (any non-empty value to enable) tells nss to send ec
key points across the pkcs#11 interface in the non-standard unencoded format that was used by default before nss 3.12.3.
... the new
key point format is a der encoded asn.1 octet string.
... new korean seed cipher: new macros for seed support: in blapit.h: nss_seed nss_seed_cbc seed_block_size seed_
key_length in pkcs11t.h: ckk_seed ckm_seed_
key_gen ckm_seed_ecb ckm_seed_cbc ckm_seed_mac ckm_seed_mac_general ckm_seed_cbc_pad ckm_seed_ecb_encrypt_data ckm_seed_cbc_encrypt_data in secmod.h: public_mech_seed_flag in secmodt.h: secmod...
...And 5 more matches
JSNewEnumerateOp
this callback overrides a portion of spidermon
key's default [[enumerate]] internal method.
... syntax typedef bool (* jsnewenumerateop)(jscontext *cx, js::handleobject obj, js::autoidvector &properties); // added in spidermon
keysidebar 38 typedef bool (* jsnewenumerateop)(jscontext *cx, js::handleobject obj, jsiterateop enum_op, js::mutablehandlevalue statep, js::mutablehandleid idp); // obsolete since jsapi 37 name type description cx jscontext * the context in which the enumeration is taking place.
...id array to populate with all property
keys.
...And 5 more matches
JS_SetOptions
this is only meaningful if spidermon
key is built with xpconnect.
... mxr id search for jsoption_xml jsoption_allow_xml added in spidermon
key 15 if this is off, e4x syntax isn't supported no matter what version number is set.
... mxr id search for jsoption_allow_xml jsoption_moar_xml added in spidermon
key 15 ecmascript for xml (e4x) support: parse <!-- --> as a token, not backward compatible with the comment-hiding hack used in html script tags.
...And 5 more matches
nsIDownloadManager
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) implemented by: @mozilla.org/download-manager;1.
... endbatchupdate() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) indicate that a batch update is ending.
... flush() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) flush the download datasource to disk.
...And 5 more matches
nsIUpdateItem
1.0 66 introduced gecko 1.8 obsolete gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) this interface is obsolete; instead of using the extension manager, you should use the addon manager.
... method overview void init(in astring id, in astring version, in astring installlocation
key, in astring minappversion, in astring maxappversion, in astring name, in astring downloadurl, in astring xpihash, in astring iconurl, in astring updateurl, in astring update
key, in long type, in astring targetappid); attributes attribute type description iconurl astring the url of the icon that can be shown for this item.
... installlocation
key astring the name of the install location where this item is installed.
...And 5 more matches
Mozilla
bugzilla bugzilla.mozilla.org (often abbreviated b.m.o) is mozilla.org's bug-tracking system, a database for recording bugs and enhancement requests for firefox, thunderbird, seamon
key, camino, and other mozilla.org projects.
... building spidermon
key with ubsan 1.
... cookies preferences in mozilla these preferences apply to most mozilla products (including firefox and seamon
key), however they are application-specific, so not all of them may apply to you.
...And 5 more matches
IDBIndex.openCursor() - Web APIs
the opencursor() method of the idbindex interface returns an idbrequest object, and, in a separate thread, creates a cursor over the specified
key range.
... if the
key range is not specified or is null, then the range includes all the records.
... if at least one record matches the
key range, then the result property of the event is set to the new idbcursorwithvalue object; the value of the cursor object is set to a structured clone of the referenced value.
...And 5 more matches
IDBObjectStore.add() - Web APIs
if a record already exists in the object store with the
key parameter as its
key, then an error constrainerror event is fired on the returned request object.
... syntax var request = objectstore.add(value); var request = objectstore.add(value,
key); parameters value the value to be stored.
...
key optional the
key to use to identify the record.
...And 5 more matches
IndexedDB API - Web APIs
this is the main landing page for mdn's indexeddb coverage — here we provide links to the full api reference and usage guides, browser support details, and some explanation of
key concepts.
...if you'd prefer a simple api, try libraries such as localforage, dexie.js, zangodb, pouchdb, idb, idb-
keyval, jsstore and lovefield that make indexeddb more programmer-friendly.
...
key concepts and usage indexeddb is a transactional database system, like an sql-based rdbms.
...And 5 more matches
Inputs and input sources - Web APIs
most commonly, these inputs are from
keyboards and mice, but you could also use non-xr gamepad devices, network inputs, or other sources of data to simulate user controls.
... using
keyboard and mouse events capturing input from the
keyboard and mouse is done just like it is in any web application.
...we want the player to be able to use the w, a, s, and d
keys to move forward, left, backward, and right.
...And 5 more matches
ARIA: dialog role - Accessibility
additionally, the following needs to be done: the dialog must be properly labeled
keyboard focus must be managed correctly the sections below describe how these two requirements can be met.
... required javascript features focus management a dialog has particular requirements for how
keyboard focus should be managed: dialogs should always have at least one focusable control.
... when the dialog appears on the screen,
keyboard focus (whose control depends upon the dialogs purpose) should be moved to the default focusable control inside the dialog.
...And 5 more matches
align-items - CSS: Cascading Style Sheets
syntax /* basic
keywords */ align-items: normal; align-items: stretch; /* positional alignment */ /* align-items does not take left and right values */ align-items: center; /* pack items around the center */ align-items: start; /* pack items from the start */ align-items: end; /* pack items from the end */ align-items: flex-start; /* pack flex items from the start */ align-items: flex-end; /* pack flex items from t...
...he end */ /* baseline alignment */ align-items: baseline; align-items: first baseline; align-items: last baseline; /* overflow alignment (for positional alignment only) */ align-items: safe center; align-items: unsafe center; /* global values */ align-items: inherit; align-items: initial; align-items: unset; values normal the effect of this
keyword is dependent of the layout mode we are in: in absolutely-positioned layouts, the
keyword behaves like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
... in static position of absolutely-positioned layouts, the
keyword behaves as stretch.
...And 5 more matches
animation-timing-function - CSS: Cascading Style Sheets
syntax /*
keyword values */ animation-timing-function: ease; animation-timing-function: ease-in; animation-timing-function: ease-out; animation-timing-function: ease-in-out; animation-timing-function: linear; animation-timing-function: step-start; animation-timing-function: step-end; /* function values */ animation-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1); animation-timing-function: steps(4, end); /...
...* steps function
keywords */ animation-timing-function: steps(4, jump-start); animation-timing-function: steps(10, jump-end); animation-timing-function: steps(20, jump-none); animation-timing-function: steps(5, jump-both); animation-timing-function: steps(6, start); animation-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.
... if no animation-timing-function is specified on a
keyframe, the corresponding value of animation-timing-function from the element to which the animation is applied is used for that
keyframe.
...And 5 more matches
display - CSS: Cascading Style Sheets
syntax the css display property is specified using
keyword values.
...
keyword values are grouped into six value categories: .container { display: [ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy> ; } outside <display-outside> these
keywords specify the element’s outer display type, which is essentially its role in flow layout.
... inside <display-inside> these
keywords specify the element’s inner display type, which defines the type of formatting context that its contents are laid out in (assuming it is a non-replaced element).
...And 5 more matches
font-variant-ligatures - CSS: Cascading Style Sheets
syntax /*
keyword values */ font-variant-ligatures: normal; font-variant-ligatures: none; font-variant-ligatures: common-ligatures; /* <common-lig-values> */ font-variant-ligatures: no-common-ligatures; /* <common-lig-values> */ font-variant-ligatures: discretionary-ligatures; /* <discretionary-lig-values> */ font-variant-ligatures: no-discretionary-ligatures; /* <discretionary-lig-values> ...
...storical-ligatures; /* <historical-lig-values> */ font-variant-ligatures: contextual; /* <contextual-alt-values> */ font-variant-ligatures: no-contextual; /* <contextual-alt-values> */ /* global values */ font-variant-ligatures: inherit; font-variant-ligatures: initial; font-variant-ligatures: unset; the font-variant-ligatures property is specified as one of the
keyword values listed below.
... values normal this
keyword leads to the activation of the usual ligatures and contextual forms needed for correct rendering.
...And 5 more matches
justify-self - CSS: Cascading Style Sheets
in table cell layouts, this property is ignored (more about alignment in block, absolute positioned and table layout) in flexbox layouts, this property is ignored (more about alignment in flexbox) in grid layouts, it aligns an item inside its grid area on the inline axis (more about alignment in grid layouts) syntax /* basic
keywords */ justify-self: auto; justify-self: normal; justify-self: stretch; /* positional alignment */ justify-self: center; /* pack item around the center */ justify-self: start; /* pack item from the start */ justify-self: end; /* pack item from the end */ justify-self: flex-start; /* equivalent to 'start'.
...k item from the right */ /* baseline alignment */ justify-self: baseline; justify-self: first baseline; justify-self: last baseline; /* overflow alignment (for positional alignment only) */ justify-self: safe center; justify-self: unsafe center; /* global values */ justify-self: inherit; justify-self: initial; justify-self: unset; this property can take one of three different forms: basic
keywords: one of the
keyword values normal, auto, or stretch.
... baseline alignment: the baseline
keyword, plus optionally one of first or last.
...And 5 more matches
Audio and Video Delivery - Developer guides
the api supports use cases ranging from simple clear
key decryption to high value video (given an appropriate user agent implementation).
... license/
key exchange is controlled by the application, facilitating the development of robust playback applications supporting a range of content decryption and protection technologies.
... you may detect click, touch and/or
keyboard events to trigger actions such as play, pause and scrubbing.
...And 5 more matches
Content categories - Developer guides
they are: <a>, <abbr>, <address>, <article>, <aside>, <audio>, <b>,<bdo>, <bdi>, <blockquote>, <br>, <button>, <canvas>, <cite>, <code>, <command>, <data>, <datalist>, <del>, <details>, <dfn>, <div>, <dl>, <em>, <embed>, <fieldset>, <figure>, <footer>, <form>, <h1>, <h2>, <h3>, <h4>, <h5>, <h6>, <header>, <hgroup>, <hr>, <i>, <iframe>, <img>, <input>, <ins>, <kbd>, <
keygen>, <label>, <main>, <map>, <mark>, <math>, <menu>, <meter>, <nav>, <noscript>, <object>, <ol>, <output>, <p>, <picture>, <pre>, <progress>, <q>, <ruby>, <s>, <samp>, <script>, <section>, <select>, <small>, <span>, <strong>, <sub>, <sup>, <svg>, <table>, <template>, <textarea>, <time>, <ul>, <var>, <video>, <wbr> and text.
... elements belonging to this category are <abbr>, <audio>, <b>, <bdo>, <br>, <button>, <canvas>, <cite>, <code>, <command>, <data>, <datalist>, <dfn>, <em>, <embed>, <i>, <iframe>, <img>, <input>, <kbd>, <
keygen>, <label>, <mark>, <math>, <meter>, <noscript>, <object>, <output>, <picture>, <progress>, <q>, <ruby>, <samp>, <script>, <select>, <small>, <span>, <strong>, <sub>, <sup>, <svg>, <textarea>, <time>, <var>, <video>, <wbr> and plain text (not only consisting of white spaces characters).
...elements that belong to this category include: <a>, <button>, <details>, <embed>, <iframe>, <
keygen>, <label>, <select>, and <textarea>.
...And 5 more matches
HTML attribute reference - HTML: Hypertext Markup Language
access
key global attribute
keyboard shortcut to activate or add focus to the element.
... autofocus <button>, <input>, <
keygen>, <select>, <textarea> the element should be automatically focused after the page loaded.
... challenge <
keygen> a challenge string that is submitted along with the public
key.
...And 5 more matches
<select>: The HTML Select element - HTML: Hypertext Markup Language
usage notes selecting multiple options on a desktop computer, there are a number of ways to select multiple options in a <select> element with a multiple attribute: mouse users can hold the ctrl, command, or shift
keys (depending on what makes sense for your operating system) and then click multiple options to select/deselect them.
... warning: the mechanism for selecting multiple non-contiguous items via the
keyboard described below currently only seems to work in firefox.
...
keyboard users can select multiple contiguous items by: focusing on the <select> element (e.g.
...And 5 more matches
Global attributes - HTML: Hypertext Markup Language
the event handler attributes: onabort, onautocomplete, onautocompleteerror, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncuechange, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, oninput, oninvalid, on
keydown, on
keypress, on
keyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onsort, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting.
... list of global attributes access
key provides a hint for generating a
keyboard shortcut for the current element.
...the browser should use the first one that exists on the computer
keyboard layout.
...And 5 more matches
HTTP Index - HTTP
15 connection management in http/1.x connection management, guide, http, networking, performance, webmechanics connection management is a
key topic in http: opening and maintaining connections largely impacts the performance of web sites and web applications.
... 41 http public
key pinning (hpkp) guide, hpkp, http, security http public
key pinning (hpkp) is a security feature that tells a web client to associate a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates.
...when this policy is enabled, the promise returned by navigator.requestmedia
keysystemaccess() will reject with a domexception.
...And 5 more matches
Object.entries() - JavaScript
the object.entries() method returns an array of a given object's own enumerable string-
keyed property [
key, value] pairs, in the same order as that provided by a for...in loop.
... syntax object.entries(obj) parameters obj the object whose own enumerable string-
keyed property [
key, value] pairs are to be returned.
... return value an array of the given object's own enumerable string-
keyed property [
key, value] pairs.
...And 5 more matches
Dialogs and Prompts - Archive of obsolete content
this will: handle a few
keyboard events (enter/esc and more), which is good for
keyboard accessibility.
... <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" id="..." title="..." buttons="accept,cancel" ondialogaccept="return onaccept();" ondialogcancel="return oncancel();"> <script src="chrome://..."/> <!-- content --> </dialog> you need to implement onaccept and oncancel functions in your script.
... for each of these buttons you can set their label, access
key and oncommand handler by adding buttonlabel<buttonname>, buttonaccess
key<buttonname> and ondialog<buttonname> attributes to the dialog element.
...And 4 more matches
Extension Versioning, Update and Compatibility - Archive of obsolete content
ink>http://www.mysite.com/foobar2.5.xpi</em:updatelink> <em:updatehash>sha256:78fc1d2887eda35b4ad2e3a0b60120ca271ce6e64ad2e3a0b60120ca271ce6e6</em:updatehash> </rdf:description> </em:targetapplication> </rdf:description> </rdf:li> </rdf:seq> </em:updates> <!-- a signature is only necessary if your add-on includes an update
key in its install.rdf.
...in the install.rdf of the already installed add-on updateurl must be specified in one of the following ways: the updateurl uses https, or there is no updateurl at all (which defaults to addons.mozilla.org which is https) the updateurl uses http and the update
key entry is specified which will be used to verify the data in the update manifest.
... when you specify an update
key in the install.rdf, you must include a digital signature in the update manifest or the information will be rejected.
...And 4 more matches
Appendix F: Monitoring DOM changes - Archive of obsolete content
mon
key patching in many instances, especially when dealing with chrome code, the best way to modify actions which result in dom mutations is by wrapping the functions that trigger those changes.
...because it is based on css, it can be
keyed to match new elements of any arbitrary css selector.
... */ if ('mozcss
keyframerule' in window || 'css
keyframerule' in window) { var watchnodes = function watchnodes(selector, callback, doc) { const event = watchnodes.prefix + (watchnodes._i++); const xhtml = 'http://www.w3.org/1999/xhtml'; doc = doc || document; let style = doc.createelementns(xhtml, 'style'); style.setattribute('type', 'text/css'); let preamble = ...
...And 4 more matches
Promises - Archive of obsolete content
yield db.executecached( "insert into nodes (id, owner,
key, value) \ values (:id, :owner, :
key, :value);", { params: { id: node.id, owner: node.owner.id,
key: node.
key, value: node.value }}); }); // perform a bulk update.
... yield db.execute( "update owners, nodes \ set owners.name = nodes.name \ where owners.id = nodes.owner and nodes.
key = 'name';"); // process some results.
... yield db.execute( "select owners.group as group, nodes.value as task \ from nodes \ inner join owners on owner.id = nodes.owner \ where nodes.
key = 'task';", { onrow: row => { runtask(row.getresultbyname("task"), row.getresultbyname("group")); } }); // and quickly grab a single row value.
...And 4 more matches
Search Extension Tutorial (Draft) - Archive of obsolete content
in particular, changing the location bar search
keyword url in a way which is not automatically reset when the add-on is removed will result in a reset prompt for users.
...the following file, for instance, would change the default
keyword search engine, assuming that an engine with the name example engine is installed, as described below: // this is a localizable preference, so it must contain a url which // points at a properties file containing the preference name as a // property.
...while the former is the simpler method, it does not support complex descriptions containing suggestion urls or separate
keyword search urls.
...And 4 more matches
Index of archived content - Archive of obsolete content
sdk api lifecycle sdk and xul comparison testing the add-on sdk two types of scripts working with events xul migration guide high-level apis addon-page base64 clipboard context-menu hot
keys indexed-db l10n notifications page-mod page-worker panel passwords private-browsing querystring request selection self simple-prefs simple-storage system tabs t...
...web content in an extension without security issues downloading json and javascript in extensions enhanced extension installation extension etiquette extension library extension packaging extension samples extension theming guidelines extension versioning, update and compatibility extensions support in seamon
key 2 firefox addons developer guide hiding browser chrome hotfix extension how to convert an overlay extension to restartless inline options install manifests installing extensions and themes from web pages interaction between privileged and non-privileged pages jetpack processes legacy add-ons ...
...ion components using the stylesheet service bookmarks.export() bookmarks.import() adding preferences to an extension an interview with douglas bowman of wired news archived mozilla and build documentation activex control for hosting netscape plug-ins in ie archived spidermon
key docs file object open merging tracemon
key repo spidermon
key coding conventions autodial for windows nt automated testing tips and tricks automatic mozilla configurator enabling quicklaunch for ...
...And 4 more matches
Creating a Firefox sidebar extension - Archive of obsolete content
the locale includes the name and shortcut
keys for the sidebar.
...chrome/locale/emptysidebar.dtd <!entity emptysidebar.title "emptysidebar"> <!entity openemptysidebar.command
key "e"> <!entity openemptysidebar.modifiers
key "shift accel"> the content folder includes our sidebar, the emptysidebar.xul is shown in example 3.
...chrome/content/emptysidebar.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css" ?> <?xml-stylesheet href="chrome://browser/skin/browser.css" type="text/css" ?> <!doctype page system "chrome://emptysidebar/locale/emptysidebar.dtd"> <page id="sbemptysidebar" title="&emptysidebar.title;" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" > <vbox flex="1"> <label id="atest" value="&emptysidebar.title;" /> </vbox> </page> new extensions can be registered in the menus or popups, firefox uses overlays for extending menus.
...And 4 more matches
Getting Started - Archive of obsolete content
the folder containing seamon
key is called folder_with_seamon
key in this manual.
... extract theme while you can hypothetically begin with any theme already designed for seamon
key 2, for the sake of consistency we'll speak as though everyone is editing classic (default seamon
key theme).
... this is located in the file classic.jar found in the seamon
key 2 installation directory.
...And 4 more matches
enumValueNames - Archive of obsolete content
enumvaluenames enumerates the value of a given
key.
... method of winreg object syntax string enumvaluenames ( string
key, int sub
keyindex ); parameters the enumvaluenames method has the following parameters:
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
... sub
keyindex an integer representing the 0-based index of the
key value being sought.
...And 4 more matches
OpenClose - Archive of obsolete content
the user may cancel selecting a command from a menu by pressing the escape
key.
...there isn't a means of replicating this action with the
keyboard, so you should always provide an alternate means of accessing the functionality of the menu.
... this can be done by either placing alternate commands elsewhere in the user interface, or by providing a
keyboard shortcut to open the menu.
...And 4 more matches
Localization - Archive of obsolete content
access
keys and
keyboard shortcuts for example.
... xul <menuitem label="&undo.label;" access
key="&undo.
key;"/> dtd <!entity undo.label "undo"> <!entity undo.
key "u"> the example above uses two entities, one for the label on the undo menu item and the second for the access
key.
... <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <?xml-stylesheet href="findfile.css" type="text/css"?> <!doctype window system "chrome://findfile/locale/findfile.dtd"> <window id="findfile-window" title="&findwindow.title;" persist="screenx screeny width height" orient="horizontal" onload="initsearchlist()" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script src="findfile.js"/> <popupset> <menupopup id="editpopup"> <menuitem label="&cutcmd.label;" access
key="&cutcmd.access
key;"/> <menuitem label="©cmd.label;" access
key="©cmd.access
key;"/> <menuitem label="&pastecmd.label;" access
key="&pastecmd.access
key;" disabled="true"/> </menupopup> </popupset> <
keyset> <
key id="cut_cm...
...And 4 more matches
Using Remote XUL - Archive of obsolete content
<?xml version="1.0"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" /> a xul document requires only two entities to be valid, an xml processing instruction on the first line that identifies the file as xml, and a window element that defines a xul application window (or in this case web page).
... <?xml version="1.0"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <iframe src="https://www.mozilla.org/" flex="1" /> </window> the xul iframe element is just like its html counterpart: it defines an area within which web content can be displayed.
... <?xml version="1.0"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <menubar> <menu label="the mozilla organization" /> <menu label="developer docs" /> <menu label="testing" /> <menu label="tools" /> <button label="faq" /> <button label="search" /> </menubar> <iframe src="https://www.mozilla.org/" flex="1" /> </window> the menubar element is a container for a series of menus.
...And 4 more matches
menuitem - Archive of obsolete content
attributes acceltext, access
key, allowevents, autocheck, checked, closemenu, command, crop, description, disabled, image,
key, label, name, selected, tabindex, type, validate, value properties accessibletype, access
key, command, control, crop, disabled, image, label, labelelement, parentcontainer, selected, tabindex, value style classes menuitem-iconic, menuitem-non-iconic examples <menulist> <menupopup> <menuitem label="option 1" value="1"/> <menuitem label="option 2" value="2"/> <menuitem label="option 3" value="...
...3"/> <menuitem label="option 4" value="4"/> </menupopup> </menulist> attributes acceltext type: string text that appears beside the menu label to indicate the shortcut
key (accelerator
key) to use to invoke the command.
... if this value is set, it overrides an assigned
key set in the
key attribute.
...And 4 more matches
Index - Game development
30 implementing game control mechanisms controls, desktop, gamepad, games, javascript, laptop, mobile,
keyboard, mouse, touch one of html5's main advantages as a game development platform is the ability to run on various platforms and devices.
...in this series of articles we will show you how you can approach building a game that can be played using touchscreen smartphones, mouse and
keyboard, and also less common mechanisms such as gamepads.
... 32 desktop mouse and
keyboard controls controls, desktop, games, javascript,
keyboard, mouse ok, we've dealt with touch,
keyboard and mouse controls.
...And 4 more matches
Advanced text formatting - Learn web development
<dt>bacon</dt>\n <dd>the glue that binds the world together.</dd>\n <dt>eggs</dt>\n <dd>the glue that binds the cake together.</dd>\n <dt>coffee</dt>\n <dd>the drink that gets the world running in the morning.</dd>\n <dd>a light brown color.</dd>\n</dl>'; const solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).
...(0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; quotations html also has features available for marking up quotations; which element you ...
...sitive thinking, and <q cite="http://www.affirmationsforpositivethinking.com">the need to eliminate negative self talk</q> (as mentioned in <a href="http://www.affirmationsforpositivethinking.com"><cite>affirmations for positive thinking</cite></a>.)</p>'; const solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).
...And 4 more matches
Getting started with HTML - Learn web development
n.value === 'show solution') { textarea.value = solutionentry; solution.value = 'hide solution'; } else { textarea.value = userentry; solution.value = 'show solution'; } updatecode(); }); var htmlsolution = '<em>this is my text.</em>'; var solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substr...
...ng(0, caretpos); var back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; nesting elements elements can be placed within other elements.
...lution'; } else { textarea.value = userentry; solution.value = 'show solution'; } updatecode(); }); var htmlsolution = '<p>a link to my <a href="https://www.mozilla.org/" title="the mozilla homepage" target="_blank">favorite website</a>.</p>'; var solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substr...
...And 4 more matches
Ember interactivity: Events, classes and state - Learn web development
creating todos for our card-header / todo input, we'll want to be able to submit our typed in todo task when we press the enter
key and have it appear in the todos list.
... we can capture the
keydown event via the on modifier, which is just ember syntactic sugar around addeventlistener and removeeventlistener (see this explanation if needed).
... add the new line shown below to your header.hbs file: <input class='new-todo' aria-label='what needs to be done?' placeholder='what needs to be done?' autofocus {{on '
keydown' this.on
keydown}} > this new attribute is inside double curly braces, which tells you it is part of ember's dynamic templating syntax.
...And 4 more matches
Componentizing our React app - Learn web development
unique
keys now that react is rendering our tasks out of an array, it has to keep track of which one is which in order to render them properly.
... react tries to do its own guesswork to keep track of things, but we can help it out by passing a
key prop to our <todo /> components.
...
key is a special prop that's managed by react – you cannot use the word
key for any other purpose.
...And 4 more matches
Eclipse CDT
keyboard shortcuts regarding
key bindings (
keyboard shortcuts), the bindings given below are the defaults.
... you can change the
key bindings by opening the workspace preferences (eclipse > preferences, or window > preferences) and selecting "general >
keys".
... you can set the scheme to "emacs" or "microsoft visual studio" if that's your thing, or change individual
key bindings.
...And 4 more matches
HTTP Cache
implementation only should need to enhance the context
key generation and parsing code and enhance current - or create new when needed - nsicachestorage implementations to carry any additional information down to the cache service.
... see context
keying details for more information.
... storage and entries scopes a scope
key string used to map the storage scope is based on the arguments of nsiloadcontextinfo.
...And 4 more matches
Application Translation with Mercurial
seamon
key and sea-* denote branches of seamon
key, the suite consisting of browser, mail and chat client and more.
... thunderbird, lightning or seamon
key: download the comm-<branch>.hg file (e.g.
...by pressing the windows
key and r on the
keyboard or by calling the "run..." command from the windows "start" button, and then typing cmd and pressing the enter
key.
...And 4 more matches
gettext
to take advantage of this functionality, you need to use a different
keyword (i.e.
...for instance, in php the default
keyword for regular messages is gettext() and _().
... for messages with plural support, the default
keyword is ngettext().
...And 4 more matches
Midas
see: more about security preferences note: the shortcut
key will automatically trigger this command (typically accel-c) with or without the signed js or any code on the page to handle it.
...see: more about security preferences note: the shortcut
key will automatically trigger this command (typically accel-x) with or without the signed js or any code on the page to handle it.
...this is similar to the delete button on the
keyboard.
...And 4 more matches
Certificate functions
mxr 3.6 and later cert_createrdn mxr 3.2.1 and later cert_createsubjectcertlist mxr 3.4 and later cert_createvalidity mxr 3.5 and later cert_crlcacherefreshissuer mxr 3.7 and later cert_decodealtnameextension mxr 3.10 and later cert_decodeauthinfoaccessextension mxr 3.10 and later cert_decodeauth
keyid mxr 3.10 and later cert_decodeavavalue mxr 3.4 and later cert_decodebasicconstraintvalue mxr 3.2 and later cert_decodecertfrompackage mxr 3.4 and later cert_decodecertificatepoliciesextension mxr 3.2 and later cert_decodecertpackage mxr 3.2 and later cert_decodecrldistributionpoints mxr 3.10 and late...
...r cert_decodedercrl mxr 3.2 and later cert_decodedercrlwithflags mxr 3.6 and later cert_decodegeneralname mxr 3.4 and later cert_decodenameconstraintsextension mxr 3.10 and later cert_decodeocspresponse mxr 3.6 and later cert_decodeoidsequence mxr 3.2 and later cert_decodepriv
keyusageperiodextension mxr 3.10 and later cert_decodetruststring mxr 3.4 and later cert_decodeusernotice mxr 3.2 and later cert_dernametoascii mxr 3.4 and later cert_destroycertarray mxr 3.2 and later cert_destroycertificate mxr 3.2 and later cert_destroycertificatelist mxr 3.2 and later cert_destroycertificatepoliciese...
...sernotice mxr 3.10 and later cert_destroyvalidity mxr 3.5 and later cert_dupcertificate mxr 3.2 and later cert_dupcertlist mxr 3.2 and later cert_enableocspchecking mxr 3.2 and later cert_encodealtnameextension mxr 3.7 and later cert_encodeandaddbitstrextension mxr 3.5 and later cert_encodeauth
keyid mxr 3.5 and later cert_encodebasicconstraintvalue mxr 3.5 and later cert_encodecertpoliciesextension mxr 3.12 and later cert_encodecrldistributionpoints mxr 3.5 and later cert_encodegeneralname mxr 3.4 and later cert_encodeinfoaccessextension mxr 3.12 and later cert_encodeinhibitanyextension mxr 3.12...
...And 4 more matches
OLD SSL Reference
initialization initializing caches configuration communication functions used by callbacks cleanup chapter 2 getting started with ssl this chapter describes how to set up your environment, including certificate and
key databases, to run the nss sample code.
... ssl, pkcs #11, and the default security databases setting up the certificate and
key databases setting up the ca db and certificate setting up the server db and certificate setting up the client db and certificate verifying the server and client certificates building nss programs chapter 3 selected ssl types and structures this chapter describes some of the most important types and structures used with the functions described in the rest of this document, and how to manage the memory used for them.
... types and structures certcertdbhandle certcertificate pk11slotinfo secitem sec
keyprivate
key secstatus managing secitem memory secitem_freeitem secitem_zfreeitem chapter 4 ssl functions this chapter describes the core ssl functions.
...And 4 more matches
ssltyp.html
types and structures managing secitem memory types and structures these types and structures are described here: certcertdbhandle certcertificate pk11slotinfo secitem sec
keyprivate
key secstatus additional types used by a single function only are described with the function's entry in each chapter.
...<a name="> many of the structures presented here (certcertdbhandle, certcertificate, pk11slotinfo, and sec
keyprivate
key) are opaque--that is, they are types defined as structures (for example, certcertdbhandlestr) that may change in future releases of network security services.
... sec
keyprivate
key an opaque, generic
key structure.
...And 4 more matches
Rhino Debugger
you may move backward and forward through the history list by pressing the up/down arrow
keys on the
keyboard.
... controlling execution the debugger provides the following facilities for you to control the execution of scripts you are debugging: step into to single step entering any function calls, you may do any of the following: select the debug->step into menu item on the menu bar press the step into button on the toolbar press the f11
key on the
keyboard execution will resume.
... step over to single step to the next line in the current function, you may do any of the following: select the debug->step over menu item on the menu bar press the step over button on the toolbar press the f7
key on the
keyboard execution will resume but control will return to the debugger at the next line in the current function or top-level script.
...And 4 more matches
JS::IdentifyStandardInstance
this article covers features introduced in spidermon
key 31 determine if the given object is an instance/prototype/constructor for a standard class.
... syntax jsproto
key js::identifystandardinstance(jsobject *obj); jsproto
key js::identifystandardprototype(jsobject *obj); jsproto
key js::identifystandardinstanceorprototype(jsobject *obj); jsproto
key js::identifystandardconstructor(jsobject *obj); // added in spidermon
key 38 name type description obj jsobject * pointer to the instance/prototype/constructor object to determine.
...if so, return the associated jsproto
key.
...And 4 more matches
JS_FS
// added in spidermon
key 38 #define js_fninfo(name,call,info,nargs,flags) ...
... // added in spidermon
key 17 #define js_self_hosted_fn(name,selfhostedname,nargs,flags) ...
... // added in spidermon
key 31 #define js_self_hosted_sym_fn(symbol, selfhostedname, nargs, flags) ...
...And 4 more matches
Signing Mozilla apps for Mac OS X
while testing and debugging for test and debug purposes, the easiest way to get a signing certificate is to use apple's
keychain feature to create one.
...it will guide you through creating a private
key, certificate signing request, and importing your new developer id into the
keychain access application on your mac.
... --
keychain /path/to/
keychain lets you specify which
keychain contains the signing certificate specified by your-signing-identity, rather than allowing the codesign to search the
keychain list.
...And 4 more matches
Mork
some notes on further terminology: when referring to cells or aliases, the first component is the
key and the second component is the value.
... expanding refers to taking a '^' hex buffer and replacing it with the alias value for the hex
key (explained below).
...if inside the meta-dictionary, the only cell we care about is if the
key is 'a' (for atom scope).
...And 4 more matches
nsIBrowserHistory
inherits from: nsiglobalhistory2 last changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) implemented by: @mozilla.org/browser/nav-history-service;1.
... methods addpagewithdetails() obsolete since gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) note: this method was removed in gecko 15.0.
... markpageasfollowedlink() obsolete since gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) note: this method was moved to another interface in gecko 22.0.
...And 4 more matches
nsICacheEntryDescriptor
inherits from: nsicacheentryinfo last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void close(); void doom(); void doomandfailpendingrequests(in nsresult status); string getmetadataelement(in string
key); void markvalid(); nsiinputstream openinputstream(in unsigned long offset); nsioutputstream openoutputstream(in unsigned long offset); void setdatasize(in unsigned long size); void setexpirationtime(in pruint32 expirationtime); void setmetadataelement(in string
key, in string value); void visitmetadata(in nsicachemetadatavisitor visitor); attributes attribute type description accessgranted nscacheaccessmode ge...
...meta data is a table of
key/value string pairs.
...string getmetadataelement( in string
key ); parameters
key the
key for retrieving the meta data.
...And 4 more matches
nsICachingChannel
inherits from: nsicacheinfochannel last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) this interface provides: support for "stream as file" semantics (for jar and plugins).
... cache
key nsisupports uniquely identifies the data in the cache for this channel.
... holding a reference to this
key does not prevent the cached data from being removed.
...And 4 more matches
nsIDOMMouseScrollEvent
1.0 66 introduced gecko 1.9.1 inherits from: nsidommouseevent last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) gecko 1.9.2 note prior to gecko 1.9.2, this inherited from nsisupports instead of from nsidommouseevent.
... method overview void initmousescrollevent(in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in long axis); attributes attribute type description axis long indicates which mouse wheel axis changed; this will be either horizontal_axis or vertical_axis.
...void initmousescrollevent( in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in long axis ); parameters typearg the type of event.
...And 4 more matches
nsIFrameLoader
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) note: this interface works in tandem with the nsicontentview interface to manage frames across processes if electrolysis is in use to support per-frame processes.
... method overview void activateframeevent(in astring atype, in boolean capture); void activateremoteframe(); void destroy(); void loadframe(); void loaduri(in nsiuri auri); void sendcrossprocess
keyevent(in astring atype, in long a
keycode, in long acharcode, in long amodifiers, [optional] in boolean apreventdefault); void sendcrossprocessmouseevent(in astring atype, in float ax, in float ay, in long abutton, in long aclickcount, in long amodifiers, [optional] in boolean aignorerootscrollframe); void updatepositionandsize(in nsiframe aiframe); native code only!
... sendcrossprocess
keyevent() creates and sends a
keyevent to the content viewport's process.
...And 4 more matches
nsINavHistoryResultViewer
1.0 66 introduced gecko 1.9 obsolete gecko 2.0 inherits from: nsisupports last changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
... void nodedateaddedchanged(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodelastaddedchanged(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodehistorydetailschanged(in nsinavhistoryresultnode anode, in prtime anewvisitdate, in unsigned long anewaccesscount); void nodeiconchanged(in nsinavhistoryresultnode anode); void node
keywordchanged(in nsinavhistoryresultnode anode, in autf8string anew
keyword); void nodemoved(in nsinavhistoryresultnode anode, in nsinavhistorycontainerresultnode aoldparent, in unsigned long aoldindex, in nsinavhistorycontainerresultnode anewparent, in unsigned long anewindex); void nodetitlechanged(in nsinavhistoryresultnode anode, in autf8string anewtitle); void nodere...
... void node
keywordchanged( in nsinavhistoryresultnode anode, in prtime anewvalue ); parameters anode the node whose title has changed.
...And 4 more matches
nsIScrollable
inherits from: nsiscrollable last changed in gecko 29.0 (firefox 29.0 / thunderbird 29.0 / seamon
key 2.26) method overview long getcurscrollpos(in long scrollorientation); obsolete since gecko 29.0 long getdefaultscrollbarpreferences(in long scrollorientation); void getscrollbarvisibility(out boolean verticalvisible, out boolean horizontalvisible); void getscrollrange(in long scrollorientation, out long minpos, out long maxpos); obsolete since gecko 29.0 void setcurscrollpos(in long scrollorientation, in long curpos); obsolete since g...
... methods getcurscrollpos() obsolete since gecko 29.0 (firefox 29.0 / thunderbird 29.0 / seamon
key 2.26) long getcurscrollpos( in long scrollorientation ); parameters scrollorientation an integer representing the orientation of the scrollbar.
... getscrollrange() obsolete since gecko 29.0 (firefox 29.0 / thunderbird 29.0 / seamon
key 2.26) void getscrollrange( in long scrollorientation, out long minpos, out long maxpos ); parameters scrollorientation an integer representing the orientation of the scrollbar.
...And 4 more matches
nsITreeView
inherits from: nsisupports last changed in gecko 22 (firefox 22 / thunderbird 22 / seamon
key 2.19) implementing a nsitreeview in lieu of dom methods for tree creation can improve performance dramatically, and removes the need to make changes to the tree manually when changes to the database occur.
... candropbeforeafter() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) method used by the drag feedback code to determine if a drag is allowable at the current location.
... candropon() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) method used by the drag feedback code to determine if a drag is allowable at the current location.
...And 4 more matches
nsIURIFixup
inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) implemented by: @mozilla.org/docshell/urifixup;1 as a service: var urifixup = components.classes["@mozilla.org/docshell/urifixup;1"] .createinstance(components.interfaces.nsiurifixup); method overview nsiuri createexposableuri(in nsiuri auri); nsiuri createfixupuri(in autf8string auritext, in unsigned long afixupflags); nsiuri
keywordtouri(in autf8string a
keyword); nsiurifixupinfo getfixupuriinfo(in autf8string auritext, in unsigned long afixupflags); constants constant value description ...
... fixup_flag_allow_
keyword_lookup 1 allow the fixup to use a
keyword lookup service to complete the uri.
... the fixup object implementer should honour this flag and only perform any lengthy
keyword (or search) operation if it is set.
...And 4 more matches
Index
these pages document thunderbird and the mailnews backend which is also used in other projects such as seamon
key and postbox.
... 7 address book interfaces mailnews, mozilla, seamon
key, thunderbird this page contains a list of the interfaces that you'll will most likely hit when writing patches for the address book or writing extensions.
... 8 address book examples mailnews, seamon
key, thunderbird this article provides examples on accessing and manipulating thunderbird address books.
...And 4 more matches
PKCS #11 Netscape Trust Objects - Network Security Services
pkcs #11 is a standard that defines ways to store certificates,
keys and perform crypto operations.
... cka_trust_digital_signature ck_trust level of trust for digital signature
key usage purpose.
... cka_trust_non_repudiation ck_trust level of trust for non-repudiation
key usage purpose.
...And 4 more matches
Work with animations - Firefox Developer Tools
this article covers three tools you can use to visualize and edit animations: the animation inspector editing @
keyframes editing timing functions animation inspector the page inspector's animations view displays animations in the page synchronized along a timeline, with a draggable widget you can use to move to any point in the timeline and see the page at that point.
... it displays animations created using css transitions, css @
keyframes rules, or the web animations api.
...the bar is: blue if a transition was used to animate a property orange if a @
keyframes animation was used green if the web animations api was used the bar contains a lightning bolt icon if the property was animated using the compositor thread (see more about the cost of animating different css properties).
...And 4 more matches
AuthenticatorAttestationResponse.attestationObject - Web APIs
the attestationobject property of the authenticatorattestationresponse interface returns an arraybuffer containing the new public
key, as well as signature over the entire attestationobject with a private
key that is stored in the authenticator when it is manufactured.
... as part of the credentialscontainer.create() call, an authenticator will create a new
keypair as well as an attestationobject for that
keypair.
... the public
key that corresponds to the private
key that has created the attestation signature is well known; however, there are various well known attestation public
key chains for different ecosystems (for example, android or tpm attestations).
...And 4 more matches
CSS Typed Object Model API - Web APIs
cssunparsedvalue.entries() method returning an array of a given object's own enumerable property [
key, value] pairs in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... cssunparsedvalue.
keys() method returning a new array iterator object that contains the
keys for each index in the array.
... css
keywordvalue serialization the css
keywordvalue interface of the the css typed object model api creates an object to represent css
keywords and other identifiers.
...And 4 more matches
Element.animate() - Web APIs
syntax var animation = element.animate(
keyframes, options); parameters
keyframes either an array of
keyframe objects, or a
keyframe object whose property are arrays of values to iterate over.
... see
keyframe formats for more details.
...notice the array of objects passed as
keyframes and also the timing options block.
...And 4 more matches
HTMLMediaElement - Web APIs
htmlmediaelement.media
keys read only returns a media
keys object or null.
... media
keys is a set of
keys that an associated htmlmediaelement can use for decryption of media data during playback.
... htmlmediaelement.onwaitingfor
key sets the eventhandler called when playback is blocked while waiting for an encryption
key.
...And 4 more matches
IDBCursor.continue() - Web APIs
the continue() method of the idbcursor interface advances the cursor to the next position along its direction, to the item whose
key matches the optional
key parameter.
... if no
key is specified, the cursor advances to the immediate next position, based on its direction.
... syntax cursor.continue(
key); parameters
key optional the
key to position the cursor at.
...And 4 more matches
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
msaa decision-making guide use msaa whenever you have created custom controls where you're handling the drawing, mouse and
keyboard accessibility in your own code.
... get_acc
keyboardshortcut: what is the
keyboard shortcut for this iaccessible (underlined alt+combo mnemonic) get_accfocus: which child is focused?
...m [important] role_pagetab [important] role_propertypage [important] role_indicator role_graphic [important] role_statictext [important] role_text [important] role_pushbutton [important] role_checkbutton [important] role_radiobutton [important] role_combobox [important] role_droplist [important] role_progressbar [important] role_dial role_hot
keyfield role_slider role_spinbutton role_diagram role_animation role_equation role_buttondropdown role_buttonmenu role_buttondropdowngrid role_whitespace role_pagetablist [important] role_clock role_splitbutton role_ipaddress role_nothing msaa object identifiers cheat sheet for information on what each object identifier does, see the m...
...And 4 more matches
Controlling Ratios of Flex Items Along the Main Axis - CSS: Cascading Style Sheets
fully understanding how these properties work with growing and shrinking items is the real
key to mastering flexbox.
... there is a concept in css of min-content and max-content — these
keywords are defined in the css intrinsic and extrinsic sizing specification, and can be used in place of a length unit.
...in a browser that supports this
keyword you should be able to see that the text has taken all of the soft wrapping opportunities available to it, becoming as small as it can be without overflowing.
...And 4 more matches
CSS grids, logical values, and writing modes - CSS: Cascading Style Sheets
logical and physical properties and values css is full of physical positioning
keywords – left and right, top and bottom.
... if we position an item using absolute positioning, we use these physical
keywords as offset values to push the item around.
... in the code snippet below, the item is placed 20 pixels from the top, and 30 pixels from the left of the container: .container { position: relative; } .item { position: absolute; top: 20px; left: 30px; } <div class="container"> <div class="item">item</div> </div> another place you might see physical
keywords in use, is when using text-align: right to align text to the right.
...And 4 more matches
animation - CSS: Cascading Style Sheets
/* @
keyframes duration | timing-function | delay | iteration-count | direction | fill-mode | play-state | name */ animation: 3s ease-in 1s 2 reverse both paused slidein; /* @
keyframes name | duration | timing-function | delay */ animation: 3s linear 1s slidein; /* @
keyframes name | duration */ animation: slidein 3s; <div class="grid"> <div class="col"> <div class="note"> given the follow...
...ing animation: <pre>@
keyframes slidein { from { transform: scalex(0); } to { transform: scalex(1); } }</pre> </div> <div class="row"> <div class="cell"> <button class="play" title="play"></button> </div> <div class="cell flx"> <div class="overlay">animation: 3s ease-in 1s 2 reverse both paused slidein;</div> <div class="animation a1"></div> </div> </div> <div class="row"> <div class="cell"> <button class="pause" title="pause"></button> </div> <div class="cell flx"> <div class="overlay">animation: 3s linear 1s slidein;</div> <div class="animation a2"></div> </div> </div> <div class="row"> <div class="cell"> <button class="pause" title="pause"></butto...
...: space-between; } .col { display: flex; flex: 1 auto; flex-direction: column; } .cell { box-sizing: border-box; margin: .5em; padding: 0; background-color: #fff; overflow: hidden; text-align: left; } .flx { flex: 1 0; } .note { background: #fff3d4; padding: 1em; margin: .5em; font: .8em sans-serif; text-align: left; flex: none; } .overlay { padding: .5em; } @
keyframes slidein { from { transform: scalex(0); } to { transform: scalex(1); } } .a1 { animation: 3s ease-in 1s 2 reverse both paused slidein; } .a2 { animation: 3s linear 1s slidein; } .a3 { animation: 3s slidein; } .animation { background: #3f87a6; width: 100%; height: calc(100% - 1.5em); transform-origin: left center; } window.addeventlistener('load', function () { var animation ...
...And 4 more matches
cursor - CSS: Cascading Style Sheets
syntax /*
keyword value */ cursor: pointer; cursor: auto; /* url, with a
keyword fallback */ cursor: url(hand.cur), pointer; /* url and coordinates, with a
keyword fallback */ cursor: url(cursor1.png) 4 12, auto; cursor: url(cursor2.png) 2 2, pointer; /* global values */ cursor: inherit; cursor: initial; cursor: unset; the cursor property is specified as zero or more <url> values, separated by commas, followed by a single mandatory
keyword value.
...the browser will try to load the first image specified, falling back to the next if it can't, and falling back to the
keyword value if no images could be loaded (or if none were specified).
... for example, this specifies two images using <url> values, providing <x><y> coordinates for the second one, and falling back to the progress
keyword value if neither image can be loaded: cursor: url(one.svg), url(two.svg) 5 5, progress; values <url> a url(…) or a comma separated list url(…), url(…), …, pointing to an image file.
...And 4 more matches
font-size - CSS: Cascading Style Sheets
e: xx-large; font-size: xxx-large; /* <relative-size> values */ font-size: smaller; font-size: larger; /* <length> values */ font-size: 12px; font-size: 0.8em; /* <percentage> values */ font-size: 80%; /* global values */ font-size: inherit; font-size: initial; font-size: unset; the font-size property is specified in one of the following ways: as one of the absolute-size or relative-size
keywords as a <length> or a <percentage>, relative to the parent element's font size values xx-small, x-small, small, medium, large, x-large, xx-large, xxx-large absolute-size
keywords, based on the user's default font size (which is medium).
... larger, smaller relative-size
keywords.
... the font will be larger or smaller relative to the parent element's font size, roughly by the ratio used to separate the absolute-size
keywords above.
...And 4 more matches
perspective-origin - CSS: Cascading Style Sheets
syntax /* one-value syntax */ perspective-origin: x-position; /* two-value syntax */ perspective-origin: x-position y-position; /* when both x-position and y-position are
keywords, the following is also valid */ perspective-origin: y-position x-position; /* global values */ perspective-origin: inherit; perspective-origin: initial; perspective-origin: unset; values x-position indicates the position of the abscissa of the vanishing point.
... left, a
keyword being a shortcut for the 0 length value.
... center, a
keyword being a shortcut for the 50% percentage value.
...And 4 more matches
User input and controls - Developer guides
modern web user input goes beyond simple mouse and
keyboard: think of touchscreens for example.
... user input and controls workflow the following diagram illustrates the typical workflow for implementing user input mechanisms: first of all, you need to decide which input mechanisms you want to cover in your application out of mouse,
keyboard, finger touch and so on.
... you should always be mindful of
keyboard accessibility where appropriate — many web users only use
keyboard to navigate web sites and apps, and locking them out of your functionality is a bad idea.
...And 4 more matches
tabindex - HTML: Hypertext Markup Language
the tabindex global attribute indicates that its element can be focused, and where it participates in sequential
keyboard navigation (usually with the tab
key, hence the name).
... it accepts an integer as a value, with different results depending on the integer's value: a negative value (usually tabindex="-1") means that the element is not reachable via sequential
keyboard navigation, but could be focused with javascript or visually by clicking with the mouse.
...the user won't be able to focus any element with a negative tabindex using the
keyboard, but a script can do so by calling the focus() method.
...And 4 more matches
Protocol upgrade mechanism - HTTP
for example: sec-websocket-extensions: superspeed, colormode; depth=16 sec-websocket-
key provides information to the server which is needed in order to confirm that the client is entitled to request an upgrade to websocket.
...the value of the
key is computed using an algorithm defined in the websocket specification, so this does not provide security.
...in essence, then, this
key simply confirms that "yes, i really mean to open a websocket connection." this header is automatically added by clients that choose to use it; it cannot be added using the xmlhttprequest.setrequestheader() method.
...And 4 more matches
Expressions and operators - JavaScript
the syntax is: delete object.property; delete object[property
key]; delete property; // legal only within a with statement where object is the name of an object, property is an existing property, and property
key is a string or symbol referring to an existing property.
...operand is the string, variable,
keyword, or object for which the type is to be returned.
...e = 1; var foo = ['apple', 'mango', 'orange']; var today = new date(); the typeof operator returns the following results for these variables: typeof myfun; // returns "function" typeof shape; // returns "string" typeof size; // returns "number" typeof foo; // returns "object" typeof today; // returns "object" typeof doesntexist; // returns "undefined" for the
keywords true and null, the typeof operator returns the following results: typeof true; // returns "boolean" typeof null; // returns "object" for a number or string, the typeof operator returns the following results: typeof 62; // returns "number" typeof 'hello world'; // returns "string" for property values, the typeof operator returns the type of value the property contains: typeo...
...And 4 more matches
Map.prototype.forEach() - JavaScript
the foreach() method executes a provided function once per each
key/value pair in the map object, in insertion order.
... syntax mymap.foreach(callback([value][,
key][,map])[, thisarg]) parameters callback function to execute for each entry of mymap.
...
key optional
key of each iteration.
...And 4 more matches
Object.defineProperties() - JavaScript
props an object whose
keys represent the names of properties to be defined or modified and whose values are objects describing those properties.
... data descriptors and accessor descriptors may optionally contain the following
keys: configurable true if and only if the type of this property descriptor may be changed and if the property may be deleted from the corresponding object.
... a data descriptor also has the following optional
keys: value the value associated with the property.
...And 4 more matches
WeakMap() constructor - JavaScript
the weakmap() constructor creates weakmap objects which are a collections of
key/value pairs in which the
keys are weakly referenced.
... the
keys must be objects and the values can be arbitrary values.
... you can learn more about weakmaps in the section weakmap object in
keyed collections.
...And 4 more matches
Expressions and operators - JavaScript
this chapter documents all the javascript language operators, expressions and
keywords.
... primary expressions basic
keywords and general expressions in javascript.
... this the this
keyword refers to a special property of an execution context.
...And 4 more matches
end - SVG: Scalable Vector Graphics
those are: focus, blur, focusin, focusout, activate, auxclick, click, dblclick, mousedown, mouseenter, mouseleave, mousemove, mouseout, mouseover, mouseup, wheel, beforeinput, input,
keydown,
keyup, compositionstart, compositionupdate, compositionend, load, unload, abort, error, select, resize, scroll, beginevent, endevent, and repeatevent .
... <access
key-value> this value defines an access
key that should trigger the end of the animation.
... the element animation will end when the user presses the specified
key.
...And 4 more matches
Cross-domain Content Scripts - Archive of obsolete content
in particular, they can't: access content hosted in an iframe, if that content is served from a different domain make cross-domain xmlhttprequests however, you can enable these features for specific domains by adding them to your add-on's package.json under the "cross-domain-content"
key, which itself lives under the "permissions"
key: "permissions": { "cross-domain-content": ["http://example.org/", "http://example.com/"] } the domains listed must include the scheme and fully qualified domain name, and these must exactly match the domains serving the content - so in the example above, the content script will not be allowed to access content served from https://example.com/.
... </body> </html> the "page-script.js" file locates "today's featured article" and sends its content to "main.js": // page-script.js var iframe = window.document.getelementbyid("wikipedia"); var todaysfeaturedarticle = iframe.contentwindow.document.getelementbyid("mp-tfa"); self.postmessage(todaysfeaturedarticle.textcontent); for this to work, we need to add the "cross-domain-content"
key to "package.json": "permissions": { "cross-domain-content": ["http://en.m.wikipedia.org/"] } the add-on should successfully retrieve the iframe's content.
...if you want to try it out, you'll need to register and get an api
key.
...And 3 more matches
panel - Archive of obsolete content
the panel just contains a <textarea> element: when the user presses the return
key, the contents of the <textarea> is sent to the main add-on code.
...var textarea = document.getelementbyid("edit-box"); textarea.addeventlistener('
keyup', function on
keyup(event) { if (event.
keycode == 13) { // remove the newline.
...var textarea = document.getelementbyid("edit-box"); textarea.addeventlistener('
keyup', function on
keyup(event) { if (event.
keycode == 13) { // remove the newline.
...And 3 more matches
Miscellaneous - Archive of obsolete content
ing the version of an extension as specified in the extension's install.rdf components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("extension-guid@example.org", function(addon) { // this is an asynchronous callback function that might not be called immediately alert("my extension's version is " + addon.version); }); restarting firefox/thunderbird/seamon
key_2.0 for firefox 3 see onwizardfinish around here: http://mxr.mozilla.org/seamon
key/sou...pdates.js#1639 for firefox 2 see around here: http://mxr.mozilla.org/mozilla1.8/so...pdates.js#1631 bug 338039 tracks improving this situation by providing a simple method to restart the application.
... example for firefox: services.startup.quit(services.startup.eforcequit|services.startup.erestart); mouse and
keyboard detecting mouse wheel events when scrolling the mouse wheel on an element, the dommousescroll event fires.
...</div> <script type="text/javascript"> var elm = document.getelementbyid("scrollarea"); elm.addeventlistener("dommousescroll", function scroll(event){ //event.detail is positive for a downward scroll, negative for an upward scroll alert("scrolling " + event.detail + " lines"); }, false); </script> if you do not receive a dommousescroll event while holding any of the modifier
keys (ctrl,shift,alt,meta) you should check the mousewheel.withcontrol
key.action and related preferences.
...And 3 more matches
Install Manifests - Archive of obsolete content
</description> update
key to ensure the security of update rdf data that is retrieved over plain http you must use a digital signature to verify the contents of the data.
... in order to do so you must include the public part of the cryptographic
key in an update
key entry in the install.rdf of the add-on.
... <em:update
key>migfma0gcsqgsib3dqebaquaa4gnadcbiqkbgqdk426erd/h3xtsjvab5+pjqbhj zc9edi5ocjs8r3fiobj9zhjk1txeae7jwqt9wumbwtefvws+fi9vwu8058n9chhd nyep6i4luuyjturnn7yw/igzyij2oksya32ruxayteqawqpt/j63wbixiecxmysf awb/zh4kapiy3vnrzqidaqab</em:update
key> updateurl a link to a custom update manifest file that specifies available updates to the add-on.
...And 3 more matches
Chapter 5: Let's build a Firefox extension - Archive of obsolete content
listing 3: additional content for overlay.xul <?xml version="1.0"?> <overlay id="helloworldoverlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <menupopup id="menu_toolspopup"> <menuitem id="helloworldmenuitem" label="hello, world!" insertbefore="sanitizeseparator" oncommand="window.opendialog('chrome://helloworld/content/clock.xul','clock','chrome,centerscreen,modal');"/> </menupopup> </overlay> phase 2: adding a function to display the time in phase 2, we will make it so that selec...
... listing 5: content for clock.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/"?> <dialog id="clockdialog" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="clock" buttons="accept" onload="initclock();"> <script type="application/javascript" src="chrome://helloworld/content/clock.js"/> <hbox align="center"> <label value="current time:" /> <textbox id="currenttime" /> </hbox> </dialog> listing 6: content for clock.js function initclock() { showcurrenttime(); window.setinterval...
... listing 8: revisions to clock.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/"?> <!doctype dialog system "chrome://helloworld/locale/clock.dtd"> <dialog id="clockdialog" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="&helloworld.clock;" buttons="accept" onload="initclock();"> <script type="application/javascript" src="chrome://helloworld/content/clock.js" /> <hbox align="center"> <label value="&helloworld.currenttime;:" /> <textbox id="currenttime" /> </hbox> </dialog> create the dtd that defines the entity references now create the dtd file ...
...And 3 more matches
Adding Events and Commands - Archive of obsolete content
another way to attach event handlers, just like html, is to place the handler in the xul code: <overlay id="xulschoolhello-browser-overlay" onload="xulschoolchrome.browseroverlay.init();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> we prefer the first method because it keeps a better separation of content and behavior.
...for a button, it represents the action of the user clicking on it, or focusing it with the
keyboard and then pressing the enter
key.
...used when an element receives or loses focus when the user is navigating with the
keyboard.
...And 3 more matches
Adding sidebars - Archive of obsolete content
they also have shortcuts to open or close them using the
keyboard.
... <menupopup id="viewsidebarmenu"> <menuitem id="xulschoolhello-sidebar" label="&xulschoolhello.sidebar.title;" access
key="&xulschoolhello.sidebar.access
key;" type="checkbox" autocheck="false" group="sidebar" sidebarurl="chrome://xulschoolhello/content/sidebar.xul" sidebartitle="&xulschoolhello.sidebar.title;" oncommand="togglesidebar('xulschoolhello-sidebar');" /> </menupopup> the example in the mdc page includes a shortcut
key combination to toggle the new sidebar.
...
keyboard shortcuts are an essential feature of firefox, and you can add your own into your extensions, which is also great.
...And 3 more matches
Appendix E: DOM Building and Insertion (HTML & XUL) - Archive of obsolete content
json templating jsontodom.namespaces = { html: "http://www.w3.org/1999/xhtml", xul: "http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" }; jsontodom.defaultnamespace = jsontodom.namespaces.html; function jsontodom(jsontemplate, doc, nodes) { function namespace(name) { var reelemnameparts = /^(?:(.*):)?(.*)$/.exec(name); return { namespace: jsontodom.namespaces[reelemnameparts[1]], shortname: reelemnameparts[2] }; } // note that 'elemnameorarray' is: either the full ...
...onclick) for (var
key in elemattr) { var val = elemattr[
key]; if (nodes &&
key == "
key") { nodes[val] = elem; continue; } var attrns = namespace(
key); if (typeof val == "function") { // special case for function attributes; don't just add them as 'on...' attributes, but as events, using addeventlistener ...
... elem.addeventlistener(
key.replace(/^on/, ""), val, false); } else { // note that the default namespace for xml attributes is, and should be, blank (ie.
...And 3 more matches
Learn XPI Installer Scripting by Example - Archive of obsolete content
in the browser.xpi installation, this function appears at line 20: var err = initinstall("netscape seamon
key", "browser", "6.0.0.2000110807"); if you call a method on the install object before initinstall(), you will get an error.
...in the example above, "netscape seamon
key" is the display name, "browser" is the registry name, and the version is "6.0.0.2000110807." see initinstall in the xpinstall api reference for more information on the initialization process.
...in the example above, all of the contents of the "bin" directory in the archive are queued for installation, and the target of that installation (when the installation is actually begun with a call to performinstall at the end), is the communicatorfolder directory defined at line 22 as "program." "program" is one of a short list of
keywords that can be used in place of full path names in methods such as addfile.
...And 3 more matches
Namespaces - Archive of obsolete content
although there's nothing preventing someone else from using the namespace http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul, it's fairly unlikely anyone would choose that accidentally.
...the xul and foobar namespaces must be defined at the top of the xml document in which they are used, like so: <foobar:some-element xmlns:xul="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:foobar="the-foobar-namespace"> <xul:textbox id="foo" value="bar"/> <foobar:textbox favorite-food="pancakes"/> </foobar:some-element> notice i've mixed two <textboxes/> in the same document.
...in xul documents, you'll usually see this: <window id="foo" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> ...
...And 3 more matches
Adding Event Handlers - Archive of obsolete content
a typical event is the user pressing a mouse button or pressing a
key.
...various properties are set on the event object such as the mouse position, the
key that was pressed, and so forth.
...for example, the command event will occur regardless of whether the user uses the mouse to click a button, or presses the enter
key.
...And 3 more matches
Accessibility/XUL Accessibility Reference - Archive of obsolete content
column see grid columns see grid command see
keyboard shortcut tutorial commandset see
keyboard shortcut tutorial deck only the currently selected deck layer can be focused.
... image <image src="images/img.xbm" tooltiptext='<!--image label-->'/>
key see
keyboard shortcut tutorial
keyset see
keyboard shortcut tutorial listbox <label control='listid'><!--label text--></label> <listbox id="listid"> <listitem value="val" label="<!--item text-->"/> </listbox> <label control='listid2' value='<!--list label-->' /> <listbox rows="5" id='listid2'> <listcols> <listcol/> <listcol/> <listc...
...items are read per line as in "pearl female gray" listitem see listbox menuitem see menulist and menubar menubar <menubar hidden="false"> <menu label="file" access
key="f"> <menupopup> <menuitem label="new" access
key="n"
key="file-new-
key"/> </menupopup> </menu> </menubar> menulist <label value="<!--label text-->" control="comboid" /> <menulist id="comboid"> <menupopup> <menuitem label="<!--option1-->" /> <menuitem label="<!--option2-->" selected="true" /> <menuitem label="<!--option3-->" /> </menupopup...
...And 3 more matches
menuseparator - Archive of obsolete content
attributes acceltext, access
key, allowevents, command, crop, disabled, image, label, selected, tabindex, value properties accessibletype, access
key, command, control, crop, disabled, image, label, labelelement, parentcontainer, selected, tabindex, value examples <menu label="menu"> <menupopup> <menuitem label="item1"/> <menuseparator/> <menuitem label="item2"/> <menuitem label="item3"/> </menupopup> </menu> attributes acceltext type: string text that appears beside the menu label to indicate the shortcut...
...
key (accelerator
key) to use to invoke the command.
... if this value is set, it overrides an assigned
key set in the
key attribute.
...And 3 more matches
richlistbox - Archive of obsolete content
attributes disabled, disable
keynavigation, preference, seltype, suppressonselect, tabindex, value properties accessibletype, currentindex, currentitem, disabled, disable
keynavigation, itemcount, scrollboxobject, selectedcount, selectedindex, selecteditem, selecteditems, seltype, suppressonselect, tabindex, value methods additemtoselection, appenditem, clearselection, ensureelementisvisible, ensureindexisvisible, getin...
...you can click on any richlistitem element and use the
keyboard to move the selection around.
... disable
keynavigation type: boolean if this attribute is not used, the user can navigate to specific items within the element by pressing
keys corresponding to letters in the item's label.
...And 3 more matches
toolbarbutton - Archive of obsolete content
relevant accessbility guidelines all toolbar functionality should be duplicated elsewhere in the application where possible, provide
keyboard alternatives.
... attributes access
key, autocheck, checkstate, checked, command, crop, dir, disabled, dlgtype, group, image, label, oncommand, open, orient, tabindex, title, type, validate properties access
key, accessibletype, autocheck, checkstate, checked, command, crop, dir, disabled, dlgtype, group, image, label, open, orient, tabindex, type examples <toolbar id="test-toolbar"> <toolbarbutton access
key="p" label="plain"/> <toolbarbutton access
key="c" label="checkbox" type="checkbox"/> <toolbarbutton access
key="b" label="menu-button" type="menu-button"> <menupopup> <menuitem ...
...label="menu item 1"/> <menuitem label="menu item 2"/> </menupopup> </toolbarbutton> <toolbarbutton access
key="m" label="menu" type="menu"> <menupopup> <menuitem label="menu item 1"/> <menuitem label="menu item 2"/> </menupopup> </toolbarbutton> </toolbar> <toolbar id="radio-toolbar"> <toolbarbutton access
key="1" label="radio 1" type="radio" group="radiogroup"/> <toolbarbutton access
key="2" label="radio 2" type="radio" group="radiogroup"/> <toolbarbutton access
key="3" label="radio 3" type="radio" group="radiogroup"/> </toolbar> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...And 3 more matches
tree - Archive of obsolete content
relevant accessbility guidelines provide alternative access (for example, via menus) to column picker and for header behaviors like sorting (these have no default
keyboard access).
... attributes disable
keynavigation, disabled, editable, enablecolumndrag, flags, hidecolumnpicker, onselect, rows, seltype, statedatasource, tabindex, treelines properties accessibletype, builderview, columns, contentview, currentindex, disable
keynavigation, disabled, editingcolumn, editingrow, enablecolumndrag, firstordinalcolumn, inputfield, seltype, selstyle, tabindex, treeboxobject, view examples a tree with several columns <tree flex="1" rows="2"> <treecols> <treecol id="sender" label="sender" flex="1"/> <treecol id="subject" label="subject" flex="2"/> </treecols> <treechildren> <treeitem> <treerow> <treecell label="joe@somewhere.com"/> <treecell label="top secret plans"/> </treerow> </treeitem> <treeitem...
... disable
keynavigation type: boolean if this attribute is not used, the user can navigate to specific items within the element by pressing
keys corresponding to letters in the item's label.
...And 3 more matches
New in JavaScript 1.8 - Archive of obsolete content
the features that require the use of the new
keywords "yield" and "let" require you to specify version 1.7 or higher because existing code might use those
keywords as variable or function names.
... the features that do not introduce new
keywords (such as generator expressions) can be used without specifying the javascript version.
... array.prototype.reduce() array.prototype.reduceright() changed functionality in javascript 1.8 changes in destructuring for..in one change that occurred in the release of javascript 1.8 was a bug fix related to the
key/value destructuring of arrays introduced in javascript 1.7.
...And 3 more matches
Images in HTML - Learn web development
essentially, the
key is to deliver a usable experience, even when the images can't be seen.
...no access to
keyboard users).
... '<img src="https://udn.realityripple.com/samples/ec/5a13bd14f6.jpg"\n alt="the head and torso of a dinosaur skeleton; it has a large head with long sharp teeth"\n width="200"\n height="171"\n title="a t-rex on display in the manchester university museum">'; var solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { var scrollpos = textarea.scrolltop; var caretpos = textarea.selectionstart; var front = (textarea.value).substr...
...And 3 more matches
Client-side storage - Learn web development
one
key feature of web storage is that the data persists between page loads (and even when the browser is shut down, in the case of localstorage).
...add the following code, below your previous handler: // setup the database tables if this has not already been done request.onupgradeneeded = function(e) { // grab a reference to the opened database let db = e.target.result; // create an objectstore to store our notes in (basically like a single table) // including a auto-incrementing
key let objectstore = db.createobjectstore('notes_os', {
keypath: 'id', autoincrement:true }); // define what data items the objectstore will contain objectstore.createindex('title', 'title', { unique: false }); objectstore.createindex('body', 'body', { unique: false }); console.log('database setup complete'); }; this is where we define the schema (structure) of our database; that is, ...
...we've given it the name notes, and also specified an autoincrement
key field called id — in each new record this will automatically be given an incremented value — the developer doesn't need to set this explicitly.
...And 3 more matches
Useful string methods - Learn web development
= greetings[i];' + '\n if (greetings[i].indexof(\'christmas\') !== -1) {' + '\n let result = input;' + '\n let listitem = document.createelement(\'li\');' + '\n listitem.textcontent = result;' + '\n list.appendchild(listitem);' + '\n }' + '\n}'; let solutionentry = jssolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).s...
...0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; fixing capitalization in this exercise we have the names of cities in the united kingdom,...
...+ '\n let capitalized = lower.replace(firstletter,firstletter.touppercase());' + '\n let result = capitalized;' + '\n let listitem = document.createelement(\'li\');' + '\n listitem.textcontent = result;' + '\n list.appendchild(listitem);' + '\n' + '\n}'; let solutionentry = jssolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).s...
...And 3 more matches
React interactivity: Events and state - Learn web development
your tasklist constant declaration should now look like so: const tasklist = tasks.map(task => ( <todo id={task.id} name={task.name} completed={task.completed}
key={task.id} /> ) ); adding a task we’ve now got a settasks hook that we can use in our addtask() function to update our list of tasks.
...type anything into the form and click "add" (or press the enter
key) and you'll see your new todo item appear in the ui!
...this is bad for accessibility, and makes it impossible for react to tell future tasks apart with the
key prop.
...And 3 more matches
Rendering a list of Vue components - Learn web development
key attribute before we do that, there's one other piece of syntax to know about that is used with v-for, the
key attribute.
...to make sure it is re-using list elements appropriately, it needs a unique "
key" on the same element that you attach v-for to.
... to make sure that vue can accurately compare the
key attributes, they need to be string or numeric values.
...And 3 more matches
Index
2 application translation with mercurial android, draft, editing, firefox, lightning, localization, mercurial, seamon
key, translate, patch, thunderbird first, get the required programs to compile mozilla applications like firefox and thunderbird from build instructions.
...localizing current versions of firefox, thunderbird and seamon
key includes working with mercurial.
...the steps below are fairly generic; for the most part they apply to creating l10n patches for firefox, thunderbird, seamon
key, or calendar.
...And 3 more matches
Writing localizable code
about localizers a few notes about localizers for developers who rarely deal with them: localizers like tools, and they don't like editors, localization tools are often based on
key-value pairs, at least some localizers have their talents focused on language skills and are not savvy in programming, or even building applications.
... guidelines thus, there are a few guidelines you should follow to make localization of your code easier: choose good
key names the names chosen for your
keys (regardless of whether that's a dtd or a properties file) should be descriptive.
...if you change the semantics of a localized string, change the
key.
...And 3 more matches
NSS 3.19.1 release notes
nss 3.19.1 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_19_1_rtm/src/ security fixes in nss 3.19.1 bug 1138554 / cve-2015-4000 - the minimum strength of
keys that libssl will accept for finite field algorithms (rsa, diffie-hellman, and dsa) have been increased to 1023 bits.
... notable changes in nss 3.19.1 nss reports the bit length of
keys more accurately.
... thus, the sec
key_public
keystrength and sec
key_public
keystrengthinbits functions could report smaller values for values that have leading zero values.
...And 3 more matches
NSS Sample Code sample3
stration program for hashing and macs */ #include <iostream.h> #include "pk11pub.h" #include "nss.h" static void printdigest(unsigned char *digest, unsigned int len) { int i; cout << "length: " << len << endl; for(i = 0;i < len;i++) printf("%02x ", digest[i]); cout << endl; } /* * main */ int main(int argc, const char *argv[]) { int status = 0; pk11slotinfo *slot = 0; pk11sym
key *
key = 0; pk11context *context = 0; unsigned char data[80]; unsigned char digest[20]; /*is there a way to tell how large the output is?*/ unsigned int len; secstatus s; /* initialize nss * if your application code has already initialized nss, you can skip it * here.
... * this code uses the simplest of the init functions, which does not * require a nss database to exist */ nss_nodb_init("."); /* get a slot to use for the crypto operations */ slot = pk11_getinternal
keyslot(); if (!slot) { cout << "getinternal
keyslot failed" << endl; status = 1; goto done; } /* * part 1 - simple hashing */ cout << "part 1 -- simple hashing" << endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a context for hashing (digesting) */ context = pk11_createdigestcontext(sec_oid_md5); if (!context) { cout << "createdigestcontext failed" << endl; goto done; } s = pk11_digestbegin(context); if (s != secsuccess) { cout << "digestbegin failed" << endl; goto done; } s = pk11_digestop(context, data, size...
...of data); if (s != secsuccess) { cout << "digestupdate failed" << endl; goto done; } s = pk11_digestfinal(context, digest, &len, sizeof digest); if (s != secsuccess) { cout << "digestfinal failed" << endl; goto done; } /* print digest */ printdigest(digest, len); pk11_destroycontext(context, pr_true); context = 0; /* * part 2 - hashing with included secret
key */ cout << "part 2 -- hashing with included secret
key" << endl; /* initialize data */ memset(data, 0xbc, sizeof data); /* create a
key */
key = pk11_
keygen(slot, ckm_generic_secret_
key_gen, 0, 128, 0); if (!
key) { cout << "create
key failed" << endl; goto done; } cout << (void *)
key << endl; /* create parameters for crypto context */ /* note: params must be provided, but may be empty */ ...
...And 3 more matches
NSS Tools certutil-tasks
allow listing and lookup of
keys by index and nickname.
... improve coherence of
key and certificate nicknames.
... remove
keys "stranded" without a certificate (except for the imminent (????) encryption
key for password files).
...And 3 more matches
FOSS
feel free to add your own spidermon
key-based open source projects (and if necessary add categories)!
... wrappers / bindings c++ cocos2d-js - cocos2d-js is a cross-platform game engine which embeds spidermon
key, providing the same api for both web and native platforms.
... flusspferd - (newer) c++ bindings libjspp - c++ template based library for extending & embedding spidermon
key; works with spidermon
key 1.8.5 and above, has lots of goodies spiderape - the oldest c++ bindings for spidermon
key trixul - (trixul cvs) - trixul xml-based gui toolkit embeds spidermon
key, using javascript to implement logic behind its gui, supporting calls from javascript to c++ objects rust mozjs - rust bindings used by servo gnome gjs - javascript bindings to gnome (broadly, to any library using the gobject introspection mechanism) objective caml http://alain.frisch.fr/soft.html#spider - bindings to embed spidermon
key in ocaml applications perl http://jspl.msg.mx/ - bindings to cross-embed spidermon
key and perl.
...And 3 more matches
GC Rooting Guide
introduction this guide explains the basics of interacting with spidermon
key's gc as a spidermon
key api user.
... since spidermon
key has a moving gc, it is very important that it knows about each and every pointer to a gc thing in the system.
... spidermon
key's rooting api tries to make this task as simple as possible.
...And 3 more matches
JS::Value
js::value is subject to garbage collection a js::value can refer to a string or object located in spidermon
key's garbage-collected heap.
...the solution is to tell spidermon
key that you're using the object, then tell it again when you're done.
...in some places, spidermon
key provides already-rooted js::values which you can use for variables.
...And 3 more matches
JSClass.flags
this is only meaningful if spidermon
key is built with xpconnect and the jsclass_has_private flag is also set.
... mxr id search for jsclass_private_is_nsisupports jsclass_is_domjsclass added in spidermon
key 17 objects are dom.
... mxr id search for jsclass_is_domjsclass jsclass_emulates_undefined added in spidermon
key 24 causes objects which have this class to emulate undefined in certain circumstances.
...And 3 more matches
JSObjectOps.dropProperty
this documentation should be considered spidermon
key internals documentation, not api documentation.
... as a spidermon
key implementation detail, what is actually locked here (under the native implementation of jsobjectops) is not the property but some collection of objects including the object on which the property is defined.
... a single, built-in jsobjectops implementation is used for most spidermon
key objects that are exposed to scripts.
...And 3 more matches
Starting WebLock
again, this is similar to the forward declare in c++ (except that c++ does not have the interface
keyword seen here).
... */ void undefine(in string prop); /** * returns an array of the
keys.
... */ void get
keys(out pruint32 count, [array, size_is(count), retval] out string
keys); }; directory service hierarchy there are two steps involved to find directories or files with the directory service (nsidirectoryservice).
...And 3 more matches
nsIApplicationCacheService
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) method overview void cacheopportunistically(in nsiapplicationcache cache, in acstring
key); nsiapplicationcache chooseapplicationcache(in acstring
key); nsiapplicationcache createapplicationcache(in acstring group); void deactivategroup(in acstring group); nsiapplicationcache getactivecache(in acstring group); nsiapplicationcache getapplicationcache(in acstring clientid); void getgroups([optional] out unsigned long count, [array, size_is(count),...
... retval] out string groupids); methods cacheopportunistically() flags the specified
key as one that should be cached opportunistically.
...void cacheopportunistically( in nsiapplicationcache cache, in acstring
key ); parameters cache the cache in which the entry is currently cached.
...And 3 more matches
nsICacheSession
inherits from: nsisupports last changed in gecko 14 (firefox 14 / thunderbird 14 / seamon
key 2.11) method overview void asyncopencacheentry(in acstring
key, in nscacheaccessmode accessrequested, in nsicachelistener listener, [optional] in boolean nowait); void evictentries(); prbool isstorageenabled(); nsicacheentrydescriptor opencacheentry(in acstring
key, in nscacheaccessmode accessrequested, in boolean blockingmode); void doomentry(in acstring
key, in nsicachelistener listener); attributes attribute type description doome...
...void asyncopencacheentry( in acstring
key, in nscacheaccessmode accessrequested, in nsicachelistener listener, [optional] in boolean nowait ); parameters
key the
key for cache entry.
... doomentry() asynchronously dooms an entry specified by the
key.
...And 3 more matches
nsIContentViewer
inherits from: nsisupports last changed in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7) implemented by: ?????????????????????????????????????.
... note: prior to gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), this attribute was part of nsidocumentviewer.
... note: prior to gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), this attribute was part of nsidocumentviewer.
...And 3 more matches
nsIDocumentLoader
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) implemented by: @mozilla.org/docloaderservice;1.
... methods clearparentdocloader() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void clearparentdocloader(); parameters none.
... createdocumentloader() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void createdocumentloader( out nsidocumentloader aninstance ); parameters aninstance destroy() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void destroy(); parameters none.
...And 3 more matches
nsINavHistoryResultViewObserver
the tree automatically invokes this method when certain
keys are pressed.
... for example, when the delete
key is pressed, this method is called with the string "delete".
...the tree automatically invokes this method when certain
keys are pressed.
...And 3 more matches
nsISyncJPAKE
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void final(in acstring ab, in acstring agvb, in acstring arb, in acstring ahkdfinfo, out acstring aaes256
key, out acstring ahmac256
key); void round1(in acstring asignerid, out acstring agx1, out acstring agv1, out acstring ar1, out acstring agx2, out acstring agv2, out acstring ar2); void round2(in acstring apeerid, in acstring apin, in acstring agx3, in acstring agv3, in acstring ar3, in acstring agx4, in acstring agv4, in acstring ar4, out acstring aa, out acstring agva, out acstring ara); methods final() perform the ...
...this will compute the
key and expand the
key to two
keys, an aes256 encryption
key and a 256 bit hmac
key.
... it returns a
key confirmation value (sha256d of the
key) and the encryption and hmac
keys.
...And 3 more matches
nsIXPConnect
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) to access the xpconnect service, use code like this: nsresult rv; nscomptr<nsixpconnect> xpconnect = do_getservice(nsixpconnect::getcid(), &rv); if (ns_succeeded(rv)) { /* use the object */ } method overview void addjsholder(in voidptr aholder, in nsscriptobjecttracerptr atracer); native code only!
... [noscript,notxpcom] void getcaller( out jscontextptr ajscontext, out jsobjectptr aobject ); parameters ajscontext missing description aobject missing description return value missing description exceptions thrown missing exception missing description native code only!getcowforobject obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
... in jscontextptr ajscontext, in jsobjectptr ascope, in nsiclassinfo aclassinfo ); parameters ajscontext missing description ascope missing description aclassinfo missing description return value missing description exceptions thrown missing exception missing description native code only!getwrapperforobject obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
...And 3 more matches
Finding the code for a feature
tags are applied using the message database property "
keyword".
... there are two
key tools that you need.
...looking that up in mxr, its underlying function uses a very strange call prevhdrfolder[toggler](messages,
key) to change the
key.
...And 3 more matches
Accessibility Inspector - Firefox Developer Tools
keyboardshortcut — any
keyboard shortcut that is available to activate the element, as specified in an access
key attribute.
...
keyboard controls the accessibility tab is fully
keyboard-accessible: you can tab between the turn off accessibility features button and left and right panels.
... when one of the panels is focused, you can move the focus up and down items using the up and down arrow
keys, and use the left and right arrow
keys to expand and collapse expandable rows (e.g., different hierarchy levels of the accessibility tree).
...And 3 more matches
Debugger.Script - Firefox Developer Tools
for a given debugger instance, spidermon
key constructs exactly one debugger.script instance for each underlying script object; debugger code can add its own properties to a script object and expect to find them later, use == to decide whether two expressions refer to the same script, and so on.
... note that spidermon
key may use the same debugger.script instances for equivalent functions or evaluated code—that is, scripts representing the same source code, at the same position in the same source file, evaluated in the same lexical environment.
...spidermon
key constructs exactly one debugger.script for each underlying webassembly module per debugger instance.
...And 3 more matches
Examine and edit HTML - Firefox Developer Tools
the breadcrumbs bar has its own
keyboard shortcuts.
...if you hold the alt
key while clicking the arrow, it expands the node and all the nodes underneath it.
... note: there are some useful
keyboard shortcuts that can be used in the html tree — see the html pane
keyboard shortcuts list.
...And 3 more matches
CacheStorage - Web APIs
use cachestorage.match() to check if a given request is a
key in any of the cache objects that the cachestorage object tracks.
...equivalent functionality to match a cache entry can be implemented by returning an array of cache names from cachestorage.
keys(), opening each cache with cachestorage.open(), and matching the one you want with cache.match().
... methods cachestorage.match() checks if a given request is a
key in any of the cache objects that the cachestorage object tracks, and returns a promise that resolves to that match.
...And 3 more matches
Encrypted Media Extensions API - Web APIs
interfaces media
keymessageevent contains the content and related data when the content decryption module (cdm) generates a message for the session.
... media
keys represents a set of
keys that an associated htmlmediaelement can use for decryption of media data during playback.
... media
keysession represents a context for message exchange with a content decryption module (cdm).
...And 3 more matches
HTMLInputElement - Web APIs
formtarget string: returns / sets the element's formtarget attribute, containing a name or
keyword indicating where to display the response that is received after submitting the form.
... access
key string: returns a string containing a single character that switches input focus to the control when pressed.
... inputmode provides a hint to browsers as to the type of virtual
keyboard configuration to use when editing this element or its contents.
...And 3 more matches
IDBDatabase.createObjectStore() - Web APIs
it includes the following properties: attribute description
keypath the
key path to be used by the new object store.
... if empty or not specified, the object store is created without a
key path and uses out-of-line
keys.
... you can also pass in an array as a
keypath.
...And 3 more matches
IDBFactory.cmp() - Web APIs
the cmp() method of the idbfactory interface compares two values as
keys to determine equality and ordering for indexeddb operations, such as storing and iterating.
... note: do not use this method for comparing arbitrary javascript values, because many javascript values are either not valid indexeddb
keys (booleans and objects, for example) or are treated as equivalent indexeddb
keys (for example, since indexeddb ignores arrays with non-numeric properties and treats them as empty arrays, so any non-numeric arrays are treated as equivalent).
... this throws an exception if either of the values is not a valid
key.
...And 3 more matches
IDBIndex.get() - Web APIs
the get() method of the idbindex interface returns an idbrequest object, and, in a separate thread, finds either the value in the referenced object store that corresponds to the given
key or the first corresponding value, if
key is set to an idb
keyrange.
... if a value is found, then a structured clone of it is created and set as the result of the request object: this returns the record the
key is associated with.
... syntax var request = myindex.get(
key); parameters
key optional a
key or idb
keyrange that identifies the record to be retrieved.
...And 3 more matches
IDBObjectStore.get() - Web APIs
the get() method of the idbobjectstore interface returns an idbrequest object, and, in a separate thread, returns the object store selected by the specified
key.
...to tell these situations apart, call the opencursor() method with the same
key.
... syntax var request = objectstore.get(
key); parameters
key the
key or
key range that identifies the record to be retrieved.
...And 3 more matches
MouseEvent - Web APIs
mouseevent.alt
key read only returns true if the alt
key was down when the mouse event was fired.
... mouseevent.ctrl
key read only returns true if the control
key was down when the mouse event was fired.
... mouseevent.meta
key read only returns true if the meta
key was down when the mouse event was fired.
...And 3 more matches
Node.setUserData() - Web APIs
syntax var prevuserdata = somenode.setuserdata(user
key, userdata, handler); parameters user
key is used as the
key by which one may subsequently obtain the stored data.
... more than one
key can be set for a given node.
...the handler will be passed five arguments: an operation type integer (e.g., 1 to indicate a clone operation), the user
key, the data on the node, the source node (null if being deleted), the destination node (the newly created node or null if none).if no handler is desired, one must specify null.
...And 3 more matches
Pbkdf2Params - Web APIs
the pbkdf2params dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.derive
key(), when using the pbkdf2 algorithm.
...unlike the input
key material passed into derive
key(), salt does not need to be kept secret.
... iterations a number representing the number of times the hash function will be executed in derive
key().
...And 3 more matches
URLSearchParams - Web APIs
an object implementing urlsearchparams can directly be used in a for...of structure, for example the following two lines are equivalent: for (const [
key, value] of mysearchparams) {} for (const [
key, value] of mysearchparams.entries()) {} note: this feature is available in web workers.
... methods urlsearchparams.append() appends a specified
key/value pair as a new search parameter.
... urlsearchparams.entries() returns an iterator allowing iteration through all
key/value pairs contained in this object.
...And 3 more matches
Writing a WebSocket server in C# - Web APIs
it is a good idea to include the namespace with the using
keyword in order to write less.
... you must: obtain the value of the "sec-websocket-
key" request header without any leading or trailing whitespace concatenate it with "258eafa5-e914-47da-95ca-c5ab0dc85b11" (a special guid specified by rfc 6455) compute sha-1 and base64 hash of the new value write the hash back as the value of "sec-websocket-accept" response header in an http response if (new system.text.regularexpressions.regex("^get").ismatch(data)) { const string eol = "...
...te[] response = encoding.utf8.getbytes("http/1.1 101 switching protocols" + eol + "connection: upgrade" + eol + "upgrade: websocket" + eol + "sec-websocket-accept: " + convert.tobase64string( system.security.cryptography.sha1.create().computehash( encoding.utf8.getbytes( new system.text.regularexpressions.regex("sec-websocket-
key: (.*)").match(data).groups[1].value.trim() + "258eafa5-e914-47da-95ca-c5ab0dc85b11" ) ) ) + eol + eol); stream.write(response, 0, response.length); } decoding messages after a successful handshake, the client will send encoded messages to the server.
...And 3 more matches
Window - Web APIs
globaleventhandlers.oninput called when the value of an <input> element changes globaleventhandlers.on
keydown called when you begin pressing any
key.
... see
keydown event.
... globaleventhandlers.on
keypress called when a
key (except shift, fn, and capslock) is in pressed position.
...And 3 more matches
ARIA: feed role - Accessibility
to ensure good user experience, avoid inserting or removing articles in the middle of a feed, load new articles before the user has reached the end of the feed, and provide
keyboard commands for moving focus among articles so that
keyboard users can navigate through your feed.
... see
keyboard interactions below.
... providing reading mode
keys that move dom focus to the next and previous articles.
...And 3 more matches
ARIA: tab role - Accessibility
associated roles and attributes aria-selected boolean aria-controls id of element with tabpanel role id content
keyboard interaction
key action tab when focus is outside of the tablist moves focus to the active tab.
... if focus is on the active tab moves focus to the next element in the
keyboard focus order, ideally the active tab's associated tabpanel.
... to accomplish the first, we listen for the
keydown event on the tablist.
...And 3 more matches
Accessibility documentation index - Accessibility
the position of each cell is significant and can be focused using
keyboard input.
... 93
keyboard-navigable javascript widgets accessibility, dom, needsupdate web applications often use javascript to mimic desktop widgets such as menus, tree views, rich text fields, and tab panels.
... these widgets are typically composed of <div> and <span> elements that do not, by nature, offer the same
keyboard functionality that their desktop counterparts do.
...And 3 more matches
Basic Shapes - CSS: Cascading Style Sheets
this argument can be a length or percentage but can also be one of the
keywords closest-side or farthest-side.
... the
keyword closest-side uses the length from the center of the shape to the closest side of the reference box.
... the
keyword farthest-side uses the length from the center of the shape to the farthest side of the reference box.
...And 3 more matches
align-self - CSS: Cascading Style Sheets
syntax /*
keyword values */ align-self: auto; align-self: normal; /* positional alignment */ /* align-self does not take left and right values */ align-self: center; /* put the item around the center */ align-self: start; /* put the item at the start */ align-self: end; /* put the item at the end */ align-self: self-start; /* align the item flush at the start */ align-self: self-end; /* align the item flush a...
... normal the effect of this
keyword is dependent of the layout mode we are in: in absolutely-positioned layouts, the
keyword behaves like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
... in static position of absolutely-positioned layouts, the
keyword behaves as stretch.
...And 3 more matches
clear - CSS: Cascading Style Sheets
#container::after { content: ""; display: block; clear: both; } syntax /*
keyword values */ clear: none; clear: left; clear: right; clear: both; clear: inline-start; clear: inline-end; /* global values */ clear: inherit; clear: initial; clear: unset; values none is a
keyword indicating that the element is not moved down to clear past floating elements.
... left is a
keyword indicating that the element is moved down to clear past left floats.
... right is a
keyword indicating that the element is moved down to clear past right floats.
...And 3 more matches
font - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: font-family font-size font-stretch font-style font-variant font-weight line-height syntax the font property may be specified as either a single
keyword, which will select a system font, or as a shorthand for various font-related properties.
... if font is specified as a system
keyword, it must be one of: caption, icon, menu, message-box, small-caption, status-bar.
...en: it must include values for: <font-size> <font-family> it may optionally include values for: <font-style> <font-variant> <font-weight> <font-stretch> <line-height> font-style, font-variant and font-weight must precede font-size font-variant may only specify the values defined in css 2.1, that is normal and small-caps font-stretch may only be a single
keyword value.
...And 3 more matches
grid-template-rows - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-template-rows: none; /* <track-list> values */ grid-template-rows: 100px 1fr; grid-template-rows: [linename] 100px; grid-template-rows: [linename1] 100px [linename2 linename3]; grid-template-rows: minmax(100px, 1fr); grid-template-rows: fit-content(40%); grid-template-rows: repeat(3, 200px); grid-template-rows: subgrid; /* <auto-track-list> values */ grid-template-rows: 200px repeat(auto-fill, 100px) 300px; grid-template-row...
...ame1] 100px [linename2] repeat(auto-fit, [linename3 linename4] 300px) 100px; grid-template-rows: [linename1 linename2] 100px repeat(auto-fit, [linename1] 300px) [linename3]; /* global values */ grid-template-rows: inherit; grid-template-rows: initial; grid-template-rows: unset; this property may be specified as: either the
keyword value none or a <track-list> value or an <auto-track-list> value.
... values none is a
keyword meaning that there is no explicit grid.
...And 3 more matches
place-items - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: align-items justify-items syntax /*
keyword values */ place-items: auto center; place-items: normal start; /* positional alignment */ place-items: center normal; place-items: start auto; place-items: end normal; place-items: self-start auto; place-items: self-end normal; place-items: flex-start auto; place-items: flex-end normal; place-items: left auto; place-items: right normal; /* baseline alignment */ place-items: baseline normal;...
... normal the effect of this
keyword is dependent of the layout mode we are in: in block-level layouts, the
keyword is a synonym of start.
... in absolutely-positioned layouts, the
keyword behaved like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
...And 3 more matches
place-self - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: align-self justify-self syntax /*
keyword values */ place-self: auto center; place-self: normal start; /* positional alignment */ place-self: center normal; place-self: start auto; place-self: end normal; place-self: self-start auto; place-self: self-end normal; place-self: flex-start auto; place-self: flex-end normal; place-self: left auto; place-self: right normal; /* baseline alignment */ place-self: baseline normal; place-self:...
... normal the effect of this
keyword is dependent of the layout mode we are in: in absolutely-positioned layouts, the
keyword behaves like start on replaced absolutely-positioned boxes, and as stretch on all other absolutely-positioned boxes.
... in static position of absolutely-positioned layouts, the
keyword behaves as stretch.
...And 3 more matches
<position> - CSS: Cascading Style Sheets
syntax the <position> data type is specified with one or two
keywords, with optional offsets.
... the
keyword values are center, top, right, bottom, and left.
... each
keyword represents either an edge of the element's box or the center line between two edges.
...And 3 more matches
repeating-radial-gradient() - CSS: Cascading Style Sheets
<extent-
keyword> a
keyword describing how big the ending shape must be.
... the possible values are:
keyword description closest-side the gradient's ending shape meets the side of the box closest to its center (for circles) or meets both the vertical and horizontal sides closest to the center (for ellipses).
... note: early implementations of this function included other
keywords (cover and contain) as synonyms of the standard farthest-corner and closest-side, respectively.
...And 3 more matches
<input type="search"> - HTML: Hypertext Markup Language
mozactionhint a string indicating the type of action that will be taken when the user presses the enter or return
key while editing the field; this is used to determine an appropriate label for that
key on a virtual
keyboard.
... if incremental is not specified, the search event is only sent when the user explicitly initiates a search (such as by pressing the enter or return
key while editing the field).
... mozactionhint a mozilla extension, supported by firefox for android, which provides a hint as to what sort of action will be taken if the user presses the enter or return
key while editing the field.
...And 3 more matches
Enumerability and ownership of properties - JavaScript
enumerable properties show up in for...in loops unless the property's
key is a symbol.
...ble nonenumerable enumerable and nonenumerable not available without extra code not available without extra code in not available without extra code retrieval enumerable nonenumerable enumerable and nonenumerable object.
keys getownpropertynames getownpropertysymbols getownpropertynames, getownpropertysymbols – filtered to exclude enumerables using propertyisenumerable getownpropertynames getownpropertysymbols not available without extra code not available without extra code iterable ...
...enumerable nonenumerable enumerable and nonenumerable object.
keys getownpropertynames getownpropertysymbols getownpropertynames, getownpropertysymbols – filtered to exclude enumerables using propertyisenumerable getownpropertynames getownpropertysymbols enumerable nonenumerable enumerable and nonenumerable for..in (excluding symbols) not available without extra code not available without extra code not available without extra code obtaining properties by enumerability/ownership note that this is not t...
...And 3 more matches
Grammar and types - JavaScript
declaring variables you can declare a variable in two ways: with the
keyword var.
... with the
keyword const or let.
... constants you can create a read-only, named constant with the const
keyword.
...And 3 more matches
Working with objects - JavaScript
an object is a collection of properties, and a property is an association between a name (or
key) and a value.
...ar myobj = new object(), str = 'mystring', rand = math.random(), obj = new object(); myobj.type = 'dot syntax'; myobj['date created'] = 'string with space'; myobj[str] = 'string value'; myobj[rand] = 'random number'; myobj[obj] = 'object'; myobj[''] = 'even an empty string'; console.log(myobj); please note that all
keys in the square bracket notation are converted to string unless they're symbols, since javascript object property names (
keys) can only be strings or symbols (at some point, private names will also be added as the class fields proposal progresses, but you won't use them with [] form).
... for example, in the above code, when the
key obj is added to the myobj, javascript will call the obj.tostring() method, and use this result string as the new
key.
...And 3 more matches
Classes - JavaScript
to declare a class, you use the class
keyword with the name of the class ("rectangle" here).
... strict mode the body of a class is executed in strict mode, i.e., code written here is subject to stricter syntax for increased performance, some otherwise silent errors will be thrown, and certain
keywords are reserved for future versions of ecmascript.
... a constructor can use the super
keyword to call the constructor of the super class.
...And 3 more matches
SyntaxError: missing : after property id - JavaScript
a colon (:) separates
keys and values for the object's properties.
... when creating objects with the object initializer syntax, a colon (:) separates
keys and values for the object's properties.
... var obj = { property
key: 'value' }; examples colons vs.
...And 3 more matches
Intl.Locale.prototype.numeric - JavaScript
examples setting the numeric value via the locale string in the unicode locale string spec, the values that numeric represents correspond to the
key kn.
...these subtags add additional data about the locale, and are added to locale identifiers by using the -u extension
key.
...to set the numeric value, first add the -u extension
key to the string.
...And 3 more matches
Symbol - JavaScript
to create symbols available across files and even across realms (each of which has its own global scope), use the methods symbol.for() and symbol.
keyfor() to set and retrieve symbols from the global symbol registry.
... static methods symbol.for(
key) searches for existing symbols with the given
key and returns it if found.
... otherwise a new symbol gets created in the global symbol registry with
key.
...And 3 more matches
in - SVG: Scalable Vector Graphics
the value can be either one of the six
keywords defined below, or a string which matches a previous result attribute value within the same <filter> element.
...>, <femergenode>, <femorphology>, <feoffset>, <fespecularlighting>, <fetile> usage notes value sourcegraphic | sourcealpha | backgroundimage | backgroundalpha | fillpaint | strokepaint | <filter-primitive-reference> default value sourcegraphic for first filter primitive, otherwise result of previous filter primitive animatable yes sourcegraphic this
keyword represents the graphics elements that were the original input into the <filter> element.
... sourcealpha this
keyword represents the graphics elements that were the original input into the <filter> element.
...And 3 more matches
indexed-db - Archive of obsolete content
var { indexeddb, idb
keyrange } = require('sdk/indexed-db'); var database = {}; database.onerror = function(e) { console.error(e.value) } function open(version) { var request = indexeddb.open("stuff", version); request.onupgradeneeded = function(e) { var db = e.target.result; e.target.transaction.onerror = database.onerror; if(db.objectstorenames.contains("items")) { db.deleteobjectstore("ite...
...ms"); } var store = db.createobjectstore("items", {
keypath: "time"}); }; request.onsuccess = function(e) { database.db = e.target.result; }; request.onerror = database.onerror; }; function additem(name) { var db = database.db; var trans = db.transaction(["items"], "readwrite"); var store = trans.objectstore("items"); var time = new date().gettime(); var request = store.put({ "name": name, "time": time }); request.onerror = database.onerror; }; function getitems(callback) { var cb = callback; var db = database.db; var trans = db.transaction(["items"], "readwrite"); var store = trans.objectstore("items"); var items = new array(); trans.oncomplete = function() { cb(items); } var
keyrange = idb
keyrange.lowerbound(0); va...
...r cursorrequest = store.opencursor(
keyrange); cursorrequest.onsuccess = function(e) { var result = e.target.result; if(!!result == false) return; items.push(result.value.name); result.continue(); }; cursorrequest.onerror = database.onerror; }; function listitems(itemlist) { console.log(itemlist); } open("1"); var add = require("sdk/ui/button/action").actionbutton({ id: "add", label: "add", icon: "./add.png", onclick: function() { additem(require("sdk/tabs").activetab.title); } }); var list = require("sdk/ui/button/action").actionbutton({ id: "list", label: "list", icon: "./list.png", onclick: function() { getitems(listitems); } }); note that to run this add-on you'll need to provide icons named "add.png" and "list.png" in the ...
...And 2 more matches
Localization - Archive of obsolete content
hello_id= <blink>hello!</blink> localizing element attributes this feature is new in firefox 39 you can localize certain attributes of elements with an l10n-id by setting its value with l10n-id.attributename in the properties file like: hello_id.access
key= h the following attributes are supported: access
key alt label title placeholder further the localization of the aria attributes aria-label, aria-valuetext and aria-moz-hint are supported with the same aliases as on firefox os: arialabel ariavaluetext ariamozhint using localized strings in javascript to reference localized strings from your main add-on code, you do this: var _ ...
...longside the identifier, describing how many items there are: var _ = require("sdk/l10n").get; console.log(_("tomato_id")); console.log(_("tomato_id", 1)); console.log(_("tomato_id", 2)); console.log(_("tomato_id", 5)); console.log(_("tomato_id", .5)); in the .properties file for each language you can define a different localization for each plural form possible in that language, using the cldr
keywords.
... so in english we could have two plural localizations (note that the "other" category does not take the cldr
keyword): # en-us translations tomato_id[one]= %d tomato tomato_id= %d tomatoes in russian we could have four plural localizations: # ru-ru translations tomato_id[one]= %d помидор tomato_id[few]= %d помидора tomato_id[many]= %d помидоров tomato_id= %d помидоры the localization module itself understands the cldr definitions for each language, enabling it to map between, for example, "2" in the code and "few" in the ru-ru.properties file.
...And 2 more matches
HTML to DOM - Archive of obsolete content
while working on don
keyfire, i discovered the iframe xul element, and it is very easy to implement it.
... <vbox hidden="false" height="0"> <iframe type="content" src="" name="don
key-browser" hidden="false" id="don
key-browser" height="0"/> </vbox> then, in your extension's "load" event handler: onload: function() { don
keybrowser = document.getelementbyid("don
key-browser"); if (don
keybrowser) { don
keybrowser.style.height = "0px"; don
keybrowser.webnavigation.allowauth = true; don
keybrowser.webnavigation.allowimages = false; don
keybrowser.webnavigation.allowjavascript = false; don
keybrowser.webnavigation.allowmetaredirects = true; don
keybrowser.webnavigation.allowplugins = fals...
...e; don
keybrowser.webnavigation.allowsubframes = false; don
keybrowser.addeventlistener("domcontentloaded", function (e) { don
keyfire.don
keybrowser_onpageload(e); }, true); } with that code, we obtain a reference to the iframe element we declared in the .xul file.
...And 2 more matches
Adding windows and dialogs - Archive of obsolete content
<dialog id="xulschoolhello-hello-dialog" title="&xulschoolhello.hellodialog.title;" buttons="accept,cancel" ondialogaccept="return xulschoolchrome.hellodialog.accept();" ondialogcancel="return xulschoolchrome.hellodialog.cancel();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> carefully read the specification of the dialog element.
... focus and tabbing moving through all input controls in a window using only the
keyboard is an accessibility requirement.
... you can do this in most firefox windows by pressing the tab
key.
...And 2 more matches
Signing an extension - Archive of obsolete content
mkdir
keystore cd
keystore nss-certutil -n -d .
...then cert8.db,
key3.db and secmod.db will be generated.
...for production, use such a code: echo "enter password for object signing:" read mypassword nss-signtool \ -d /volumes/codesign/
keystore \ -k "my company's verisign, inc.
...And 2 more matches
CSS3 - Archive of obsolete content
it also defines the currentcolor
keyword as a valid color.
... it deprecates the system-color
keywords that shouldn't be used in a production environment anymore.
... css values and units module level 3 candidate recommendation makes initial and inherit
keywords usable on any css property.
...And 2 more matches
Localizing an extension - Archive of obsolete content
string bundles are created by establishing a property file that maps
keys to string values.
...create a properties file the first thing we do is create a property file for the literal strings used by the javascript code in stockwatcher2.js: changestring=chg: openstring=open: lowstring=low: highstring=high: volumestring=vol: the stockwatcher2.properties file shown above maps five
keys (changestring, openstring, lowstring, highstring, and volumestring) to the corresponding text in english.
...we do this by creating a string bundle, using the following code: <stringbundleset id="stringbundleset"> <stringbundle id="string-bundle" src="chrome://stockwatcher2/locale/stockwatcher2.properties"/> </stringbundleset> this establishes a new string bundle, referenced by the id "string-bundle", whose
keys and values are to be loaded from the stockwatcher2.properties file we've already created.
...And 2 more matches
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
event properties differences between mozilla and internet explorer internet explorer name mozilla name description alt
key alt
key boolean property that returns whether the alt
key was pressed during the event.
... ctrl
key ctrl
key boolean property that returns whether the ctrl
key was pressed during the event.
...
keycode
keycode for
keyboard events, this is a number representing the
key that was pressed.
...And 2 more matches
Nanojit - Archive of obsolete content
both the tamarin jit and the spidermon
key jit (a.k.a.
... tracemon
key) use nanojit as their back end.
... example the following code works with spidermon
key's hacked version of nanojit.
...And 2 more matches
TraceVis - Archive of obsolete content
tracevis is a performance visualization system for tracemon
key.
... if tracemon
key is built with tracevis, and run with tracevis enabled, then tracemon
key will output a log of all its activity transitions.
...the first part lists the time tracemon
key spent in each major tracing activity.
...And 2 more matches
Event Handlers - Archive of obsolete content
mouse and
key handlers have certain additional properties that are supported by xbl.
... for both mouse and
key events, modifier
keys can be specified using the modifiers attribute.
... this attribute is a comma-separated list of modifier
keys that must be down at the time the
key or mouse event occurs in order for the handler to execute.
...And 2 more matches
eventnode - Archive of obsolete content
« xul reference home eventnode type: one of the values below indicates where
keyboard navigation events are listened to.
...thus, if this attribute is not used, the tabbox or an element inside it must have the focus for the
keyboard navigation to apply.
... parent
keyboard navigation is captured at the parent of the tabbox.
...And 2 more matches
command - Archive of obsolete content
menus can be activated by selecting them with the mouse or by pressing a shortcut
key.
... ctrl
key read only boolean true if the control
key was down when the event was fired.
... shift
key read only boolean true if the shift
key was down when the event was fired.
...And 2 more matches
findbar - Archive of obsolete content
attributes browserid, findnextaccess
key, findpreviousaccess
key, highlightaccess
key, matchcaseaccess
key properties browser, findmode methods close, onfindagaincommand, open, startfind, togglehighlight example <browser type="content-primary" flex="1" id="content" src="about:blank"/> <findbar id="findtoolbar" browserid="content"/> attributes browserid type: string the id of the browser element to wh...
... findnextaccess
key type: string the access
key for the "find next" toolbar button in the findbar.
... findpreviousaccess
key type: string the access
key for the "find previous" toolbar button in the findbar.
...And 2 more matches
Introduction to XUL - Archive of obsolete content
so a xul file will begin <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/xul.css" type="text/css"?> <!doctype window> <window xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> the html namespace is of course the standard one.
...this tie is defined within the xul: <xul:window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <broadcaster id="cangoback"/> <titledbutton src="resource:/res/toolbar/tb_back.gif" align="bottom" value="back" onclick="browserback()"> <observes element="cangoback" attribute="disabled"/> </titledbutton> </window> but it is up to the application code to locate the broadcasters within a window so it can punch them when necessary.
... <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/xul.css" type="text/css"?> <!doctype window> <window id="main-window" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <menubar> <menu label="file"> <menupopup> <menuitem label="hello world!" onclick="alert('hello world!\n');"/> </menupopup> </menu> </menubar> <html:iframe id="content-frame" src="contentframe.html" flex="100%"/> </window> the beginning of this example, down through the window tag, is the standard preamble.
...And 2 more matches
Panels - Archive of obsolete content
<?xml-stylesheet href="chrome://global/skin" type="text/css"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <button label="details" type="panel"> <panel id="search-panel"> <label control="name" value="name:"/> <textbox id="name"/> </panel> </button> </window> many panels will be associated with a button, as in this example.
... preventing panels from automatically closing a panel will be closed when a user clicks outside of the panel or when the escape
key is pressed.
... focus in panels elements within panels may be focused with the mouse, and the currently focused element may be adjusted by pressing the tab
key.
...And 2 more matches
Custom toolbar button - Archive of obsolete content
this page tells you step-by-step how to make a custom toolbar button in firefox, seamon
key 2.0, thunderbird or sunbird.
... (for seamon
key 1.x, see the page custom toolbar button:seamon
key.) you do not need any special technical skills or tools, and almost all the information you need is on this page.
... supported applications you can use the steps on this page with any or all of these mozilla applications: firefox 1.5 or a later version seamon
key 2.0 or a later version thunderbird 1.5 or a later version sunbird 0.3 or a later version pre-release versions of these (alphas, betas and release candidates) are also ok.
...And 2 more matches
Broadcasters and Observers - Archive of obsolete content
we would need to disable the back command on the menu, the back button on the toolbar, the
keyboard shortcut (alt+left for example) and any back commands on popup menus.
...below, some additional observers are defined: <broadcaster id="offline_command" label="offline" access
key="f"/> <
keyset> <
key id="goonline_
key" observes="offline_command" modifiers="accel"
key="o"/> </
keyset> <menuitem id="offline_menuitem" observes="offline_command"/> <toolbarbutton id="offline_toolbarbutton" observes="offline_command"/> in this example, both the label and the access
key will be forwarded from the broadcaster to the
key, menu item and the toolbar button.
... the
key won't use any of the received attributes for anything, but it will be disabled when the broadcaster is disabled.
...And 2 more matches
Install Scripts - Archive of obsolete content
it consists of a hierarchy of
keys and values.
...all of this information is stored in a
key (and within sub
keys) that you provide in the installation script (in step 1 mentioned above).
... this
key is structured as directory-like path of the following form: /author/package name replace the word author with your name and replace the package name with the name of the package that you are installing.
...And 2 more matches
Simple Menu Bars - Archive of obsolete content
access
key this is the
key that the user can press to activate the menu item.
...for that reason, you should specify a character that exists in the text (although the
key will still work if it doesn't).
... access
key this is the
key that the user can press to activate the menu item.
...And 2 more matches
Using Visual Studio as your XUL IDE - Archive of obsolete content
visual studio will use the schema based on the namespace, so make sure your window element uses the correct xul namespace http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul.
...all va options can be found at: h
key_current_user\software\whole tomato\visual assist x\ find the folder that represents your visual studio version ((vanet8, vanet9, etc.) and add your extensions to the corresponding registry entries extjs and extxml.
...5.3 javascript related you will get validation errors for javascript code whenever using the
keywords "const" and "let".
...And 2 more matches
XUL element attributes - Archive of obsolete content
use the sortresource attribute to specify the sort
key.
... sortresource type: uri for template-generated content, this specifies the sort
key, if you would like the content to be sorted.
... the
key should be the full uri of the rdf resource to sort by, for example 'http://home.netscape.com/nc-rdf#name'.
...And 2 more matches
command - Archive of obsolete content
for example, a clipboard paste operation can be invoked from the edit menu, a context menu and by pressing a
keyboard shortcut.
...in addition, disabling the command will automatically disable the menu items and
keyboard shortcuts.
...this occurs when a user selects a menu item or presses a
keyboard shortcut attached to the command.
...And 2 more matches
listbox - Archive of obsolete content
attributes disabled, disable
keynavigation, preference, rows, seltype, suppressonselect, tabindex, value properties accessibletype, currentindex, currentitem, disabled, disable
keynavigation, itemcount, listboxobject, selectedcount, selectedindex, selecteditem, selecteditems, seltype, suppressonselect, tabindex, value methods additemtoselection, appenditem, clearselection, ensureelementisvisible, ensureindexisvisible, g...
... disable
keynavigation type: boolean if this attribute is not used, the user can navigate to specific items within the element by pressing
keys corresponding to letters in the item's label.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
...And 2 more matches
panel - Archive of obsolete content
attributes backdrag, close, consumeoutsideclicks, fade, flip, ignore
keys, label, left, level, noautofocus, noautohide, norestorefocus, onpopuphidden, onpopuphiding, onpopupshowing, onpopupshown, position, titlebar, top, type properties accessibletype, label, popupboxobject, popup, state methods hidepopup, moveto, openpopup, openpopupatscreen, sizeto examples the following example shows how a panel may be attached to a label.
... ignore
keys type: boolean if false, the default value, the escape
key may be used to close the panel.
... if true, the escape
key cannot be used to close the panel.
...And 2 more matches
2006-11-10 - Archive of obsolete content
important dates: technical submissions: monday 19th feb 2007 technical paper notification: friday 16th march 2007 communication submissions: monday 26th march 2007 communication paper notification: friday 06th april 2007 all camera ready due: monday 16th april 2007 conference dates: monday 07th and tuesday 08th may 2007 notable
keynotes representatives from w3c, ibm, university of manchester, uk and oxford brookes university, uk.
... access
keys in firefox 2 previous versions of firefox used the <alt>
key as a modifier.
... this has been changed to alt+shift for content access
keys due to the "conflicts with ui mnemonics" according to aaron leventhal.
...And 2 more matches
Using SSH to connect to CVS - Archive of obsolete content
generating an ssh
key first, install ssh.
...the following command should generate a suitable
key pair: ssh-
keygen -t dsa this will take a moment, followed by a prompt for a passphrase.
... once you have entered a passphrase, ssh-
keygen will create two files, ~/.ssh/id_dsa and ~/.ssh/id_dsa.pub do not sendid_dsa.
...And 2 more matches
Mozilla XForms User Interface - Archive of obsolete content
currently xforms can be hosted by xhtml and xul in seamon
key and firefox.
... tabindex - defines the
keyboard navigation sequence between controls.
... access
key -
keyboard shortcut for moving focus to an xforms element.
...And 2 more matches
What is accessibility? - Learn web development
the
key lesson here is to think beyond your own computer and how you use the web, and start learning about how others use it — you are not your users.
... the way this usually affects web development work is the requirement that controls be accessible by the
keyboard — we'll discuss
keyboard accessibility in later articles in the module, but it is a good idea to try out some websites using just the
keyboard to see how you get on.
... can you use the tab
key to move between the different controls of a web form, for example?
...And 2 more matches
UI pseudo-classes - Learn web development
by being tabbed to via the
keyboard).
...while it is being clicked on, or when the return/enter
key is being pressed down in the case of a
keyboard activation).
... note: to enter an invalid/out-of-range value, you'll have to actually focus the form and type it in using the
keyboard.
...And 2 more matches
Storing the information you need — Variables - Learn web development
to do this, we type the
keyword var or let followed by the name you want to call your variable: let myname; let myage; here we're creating two variables called myname and myage.
... the difference between var and let at this point you may be thinking "why do we need two
keywords for defining variables??
...so, let was created in modern versions of javascript, a new
keyword for creating variables that works somewhat differently to var, fixing its issues in the process.
...And 2 more matches
Working with Svelte stores - Learn web development
give it the following content: import { writable } from 'svelte/store'; export const localstore = (
key, initial) => { // receives the
key of the local storage and an initial value const tostring = (value) => json.stringify(value, null, 2) // helper function const toobj = json.parse // helper function if (localstorage.getitem(
key) === null) { // item not present in local storage localstorage.setitem(
key, tostring(init...
...ial)) // initialize local storage with initial value } const saved = toobj(localstorage.getitem(
key)) // convert to object const { subscribe, set, update } = writable(saved) // create the underlying writable store return { subscribe, set: (value) => { localstorage.setitem(
key, tostring(value)) // save also to local storage as a string return set(value) }, update } } our localstore will be a function that when executed initially reads its content from web storage, and returns an object with three methods: subscribe(), set(), and update().
... when we create a new localstore, we'll have to specify the
key of the web storage and an initial value.
...And 2 more matches
Dynamic behavior in Svelte: working with variables and props - Learn web development
also, a
key expression can be provided, which will uniquely identify each item.
...in this case svelte is using the export
keyword to mark a variable declaration as a property or prop, which means it becomes accessible to consumers of the component.
...just like the export
keyword being used to declare props, this may look a little alien.
...And 2 more matches
Creating our first Vue component - Learn web development
the second way is to define props as an object, with each
key corresponding to the prop name.
... inside this object, add two properties with the
keys label and done.
... the label
key's value should be an object with 2 properties (or props, as they are called in the context of being available to the components).
...And 2 more matches
Adding a new todo form: Vue events, methods, and models - Learn web development
ponents property of the component object so that it looks like this: components: { todoitem, todoform } finally for this section, render your todoform component inside your app by adding the <to-do-form /> element inside your app's <template>, like so: <template> <div id="app"> <h1>my to-do list</h1> <to-do-form></to-do-form> <ul> <li v-for="item in todoitems" :
key="item.id"> <to-do-item :label="item.label" :done="item.done" :id="item.id"></to-do-item> </li> </ul> </div> </template> now when you view your running site, you should see the new form displayed.
... {.
key}: triggers the event handler only via the specified
key.
... mdn has a list of valid
key values; multi-word
keys just need to be converted to kebab case (e.g.
...And 2 more matches
Focus management with Vue refs - Learn web development
the last bit of functionality to look at is focus management, or put another way, how we can improve our app's
keyboard accessibility.
...this can be disorienting for
keyboard and non-visual users.
...on; editbuttonref.focus(); } next, add a call to this.focusoneditbutton() at the end of the itemedited() and editcancelled() methods: itemedited(newitemname) { this.$emit("item-edited", newitemname); this.isediting = false; this.focusoneditbutton(); }, editcancelled() { this.isediting = false; this.focusoneditbutton(); }, try editing and then saving/cancelling a to-do item via your
keyboard.
...And 2 more matches
Introduction to automated testing - Learn web development
give it the following contents: const saucelabs = require('saucelabs'); let myaccount = new saucelabs({ username: "your-sauce-username", password: "your-sauce-api-
key" }); myaccount.getaccountdetails(function (err, res) { console.log(res); myaccount.getservicestatus(function (err, res) { // status of the sauce labs services console.log(res); myaccount.getjobs(function (err, jobs) { // get a list of all your jobs for (let k in jobs) { if ( jobs.hasownproperty( k )) { myaccount.showjob(jobs[k].id, function (err, res...
...) { let str = res.id + ": status: " + res.status; if (res.error) { str += "\033[31m error: " + res.error + " \033[0m"; } console.log(str); }); } } }); }); }); you'll need to fill in your sauce labs username and api
key in the indicated places.
...give it the following contents: const request = require("request"); let bsuser = "browserstack_username"; let bs
key = "browserstack_access_
key"; let baseurl = "https://" + bsuser + ":" + bs
key + "@www.browserstack.com/automate/"; function getplandetails(){ request({uri: baseurl + "plan.json"}, function(err, res, body){ console.log(json.parse(body)); }); /* response: { automate_plan: <string>, parallel_sessions_running: <int>, team_parallel_sessions_max_allowed: ...
...And 2 more matches
Strategies for carrying out testing - Learn web development
consider the following example (see the source code, and also the example running live): test criteria for this feature could be written like so: a and b grade: button should be activatable by the user's primary control mechanism, whatever it is — this should include mouse,
keyboard, and touch.
... you might also notice that the button isn't usable using only the
keyboard — this also needs to be remedied.
... maybe we could use some javascript to implement a
keyboard control for the toggle, or use some other method entirely?
...And 2 more matches
Mozilla's Section 508 Compliance
here is a detailed list of section 508 bugs in mozilla's seamon
key application suite.
...here are the section 508 requirements and how far along mozilla seamon
key rv1.8a4 is with each one: requirement windows linux/unix mac os requirement windows linux/unix mac os (a) when software is designed to run on a system that has a
keyboard, product functions shall be executable from a
keyboard where the function itself or the result of performing a function can be discerned textually.
... caveats: 1) although sidebar cannot be customized without a mouse, all sidebar functions that come with the browser are available through other means 2) java and in-page plugins cannot be used with the
keyboard, so they must not be installed for
keyboard-only users additional features for the
keyboard: 1) find as you type allows for quick navigation to links and convenient text searching 2) browse with caret (f7
key toggles) allows users to select arbitrary content with the
keyboard and move through content as if inside a readonly editor.
...And 2 more matches
How to implement a custom autocomplete search component
there are actually two autocomplete mechanisms: an older mechanism that is part of the "xpfe" codebase and is used in older applications such as thunderbird and seamon
key.
... thunderbird 2.x and seamon
key 1.1.x support the toolkit interfaces, although they do not use the same autocomplete widget.
...the toolkit mechanism has built-in support for several autocomplete sources, including: history: search the browser's url history (firefox: 1.0+; seamon
key: 1.1+) form-history: search the values that the user has entered into form fields.
...And 2 more matches
FileUtils.jsm
to use it, you first need to import the code module into your javascript scope: components.utils.import("resource://gre/modules/fileutils.jsm"); the file constructor if you have a path to a file (or directory) you want to obtain an nsifile for, you can do so using the file constructor, like this: var f = new fileutils.file(mypath); method overview nsifile getfile(string
key, array patharray, bool followlinks); nsifile getdir(string
key, array patharray, bool shouldcreate, bool followlinks); nsifileoutputstream openfileoutputstream(nsifile file, int modeflags); nsifileoutputstream openatomicfileoutputstream(nsifile file, int modeflags); nsifileoutputstream opensafefileoutputstream(nsifile file, int modeflags); void closeat...
... perms_directory 0755 default permissions when creating directories methods getfile() gets a file at the specified hierarchy under a nsidirectoryservice
key.
... nsifile getfile( string
key, array patharray, bool followlinks ); parameters
key the nsidirectoryservice
key to start from (see getting special files for more info) patharray an array of path components to locate beneath the directory specified by
key.
...And 2 more matches
Localizing with Mercurial
localizing current versions of firefox, thunderbird and seamon
key includes working with mercurial.
... comm-central contains the files for seamon
key and thunderbird which are not already part of firefox.
...you can therefore use the one set up for developing firefox, seamon
key and thunderbird without having to pull mozilla-central a second time.
...And 2 more matches
Localization technical reviews
check for bad migration of access
keys in the past, it was common to find broken access
keys for safari and camino in browser/chrome/browser/migration/migration.dtd.
... for this review, we look at this file to make sure that the access
keys look normal.
... if they don't, we report any strange access
keys or translations that localizers might have changed during their initial translation process.
...And 2 more matches
Fonts for Mozilla 2.0's MathML engine
note: these instructions are for gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) until gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamon
key 2.27).
...this requires gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) or higher.
...in that case, you will see the correct rendering on these pages if you use gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) or greater.
...And 2 more matches
Phishing: a short definition
for example, a usb token, bluetooth device, mobile phone, or simply a
key stored on a separate device.
... public
key cryptography many services will soon support w3c web authentication, a powerful technology to evade phishing, based on public
key cryptography.
... web authentication supports millions of readily avilable fido u2f usb security
keys, and will support the more advanced fido 2.0
keys, once made available.
...And 2 more matches
PL_HashTableAdd
add a new entry with the specified
key and value to the hash table.
... syntax #include <plhash.h> plhashentry *pl_hashtableadd( plhashtable *ht, const void *
key, void *value); parameters the function has the following parameters: ht a pointer to the the hash table to which to add the entry.
...
key a pointer to the
key for the entry to be added.
...And 2 more matches
PL_HashTableLookup
looks up the entry with the specified
key and return its value.
... syntax #include <plhash.h> void *pl_hashtablelookup( plhashtable *ht, const void *
key); parameters the function has the following parameters: ht a pointer to the hash table in which to look up the entry specified by
key.
...
key a pointer to the
key for the entry to look up.
...And 2 more matches
PL_NewHashTable
syntax #include <plhash.h> plhashtable *pl_newhashtable( pruint32 numbuckets, plhashfunction
keyhash, plhashcomparator
keycompare, plhashcomparator valuecompare, const plhashallocops *allocops, void *allocpriv ); parameters the function has the following parameters: numbuckets the number of buckets in the hash table.
...
keyhash hash function.
...
keycompare function used to compare
keys of entries.
...And 2 more matches
NSS 3.12.4 release notes
new functions in the nss shared library: pk11_isinternal
keyslot (see pk11pub.h) secmod_opennewslot (see pk11pub.h) new error codes (see secerr.h): 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.
...bug 488550: crash in certutil or pp when printing cert with empty subject name bug 488992: fix lib/freebl/win_rand.c warnings bug 489010: stop exporting mktemp and dbopen (again) bug 489287: resolve a few remaining issues with nss's new revocation flags bug 489710: byteswap optimize for msvc++ bug 490154: crypto
key framework requires module to implement generate
key when they support
keypairgeneration bug 491044: remove support for vms (a.k.a., openvms) from nss bug 491174: cert_pkixverifycert reports wrong error code when ee cert is expired bug 491919: cert.h doesn't have valid functions prototypes bug 492131: a failure to import a cert from a p12 file leaves error code set to zero bug 492385: crash freeing...
...bug 495717: unable to compile nss/cmd/certutil/
keystuff.c on wince bug 496961: provide truncated hmac support for testing tool fipstest bug 497002: lab required nspr-free freebl changes.
...And 2 more matches
NSS 3.17.2 release notes
notable changes in nss 3.17.2 bug 1049435: change rsa_private
keycheck to not require p > q.
... this fixes a regression introduced in nss 3.16.2 that prevented nss from importing some rsa private
keys (such as in pkcs #12 files) generated by other crypto libraries.
... bug 1057161: check that an imported elliptic curve public
key is valid.
...And 2 more matches
NSS 3.19.2 release notes
notable changes in nss 3.19.2 bug 1172128 - in nss 3.19.1, the minimum
key sizes that the freebl cryptographic implementation (part of the softoken cryptographic module used by default by nss) was willing to generate or use was increased - for rsa
keys, to 512 bits, and for dh
keys, 1023 bits.
...applications that requested or attempted to use
keys smaller then the minimum size would fail.
... however, this change in behaviour unintentionally broke existing nss applications that need to generate or use such
keys, via apis such as sec
key_creatersaprivate
key or sec
key_createdhprivate
key.
...And 2 more matches
NSS 3.21 release notes
new types in pkcs11t.h ck_tls12_master_
key_derive_params{_ptr} - parameters {or pointer} for ckm_tls12_master_
key_derive ck_tls12_
key_mat_params{_ptr} - parameters {or pointer} for ckm_tls12_
key_and_mac_derive ck_tls_kdf_params{_ptr} - parameters {or pointer} for ckm_tls_kdf ck_tls_mac_params{_ptr} - parameters {or pointer} for ckm_tls_mac in sslt.h sslhashtype - identifies a hash function sslsignatureandhashalg - ...
...identifies a signature and hash function sslpreliminarychannelinfo - provides information about the session state prior to handshake completion new macros in nss.h nss_rsa_min_
key_size - used with nss_optionset and nss_optionget to set or get the minimum rsa
key size nss_dh_min_
key_size - used with nss_optionset and nss_optionget to set or get the minimum dh
key size nss_dsa_min_
key_size - used with nss_optionset and nss_optionget to set or get the minimum dsa
key size in pkcs11t.h ckm_tls12_master_
key_derive - derives tls 1.2 master secret ckm_tls12_
key_and_mac_derive - derives tls 1.2 traffic
key and iv ckm_tls12_master_
key_derive_dh - derives tls 1.2 master secret for dh (and ecdh) cipher suites ckm_tls12_
key_safe_derive and ckm_tls_kdf are id...
... ckm_tls_mac - computes tls finished mac in secoidt.h nss_use_alg_in_ssl_kx - policy flag indicating that
keys are used in tls
key exchange in sslerr.h ssl_error_rx_short_dtls_read - error code for failure to include a complete dtls record in a udp packet ssl_error_no_supported_signature_algorithm - error code for when no valid signature and hash algorithm is available ssl_error_unsupported_signature_algorithm - error code for when an unsupported signature and hash algorithm is configured ssl_error_missing_extended_master_secret - error code for when the extended master secret is missing after having been negotiated ssl_error_unexpected_extended_master_secret - error...
...And 2 more matches
NSS 3.39 release notes
nss will use rsa-pss
keys to authenticate in tls.
... support for these
keys is disabled by default but can be enabled using ssl_signatureschemeprefset().
... certutil added the ability to delete an orphan private
key from an nss
key database.
...And 2 more matches
NSS 3.48 release notes
the master password pbe now uses 10,000 iterations by default when using the default sql (
key4.db) storage.
... because using an iteration count higher than 1 with the legacy dbm (
key3.db) storage creates files that are incompatible with previous versions of nss, applications that wish to enable it for
key3.db are required to set environment variable nss_allow_legacy_dbm_iteration_count=1.
... bugs fixed in nss 3.48 bug 1600775 - require nspr 4.24 for nss 3.48 bug 1593401 - fix race condition in self-encrypt functions bug 1599545 - fix assertion and add test for early
key update bug 1597799 - fix a crash in nssckfwobject_getattributesize bug 1591178 - add entrust root certification authority - g4 certificate to nss bug 1590001 - prevent negotiation of versions lower than 1.3 after helloretryrequest bug 1596450 - added a simplified and unified mac implementation for hmac and cmac behind pkcs#11 bug 1522203 - remove an old pentium pro performance workaround bu...
...And 2 more matches
NSS reference
idtimes nss_cmpcertchainwcanames manipulating certificates cert_dupcertificate cert_destroycertificate sec_deletepermcertificate __cert_closepermcertdb getting certificate information cert_findcertbyname cert_getcertnicknames cert_freenicknames cert_getdefaultcertdb nss_findcertkeatype comparing secitem objects secitem_compareitem
key functions
key functions sec
key_getdefault
keydb sec
key_destroyprivate
key digital signatures this api consists of the routines used to perform signature generation and the routines used to perform signature verification.
... encryption/decryption hashing
key generation generate
keys,
key pairs, and domain parameters.
... secmod_loadusermodule secmod_unloadusermodule secmod_closeuserdb secmod_openuserdb pk11_findcertfromnickname pk11_find
keybyanycert pk11_getslotname pk11_gettokenname pk11_ishw pk11_ispresent pk11_isreadonly pk11_setpasswordfunc ssl functions based on "ssl functions" in the ssl reference and "ssl functions" and "deprecated ssl functions" in nss public functions.
...And 2 more matches
sslcrt.html
description certificate and
key structures are shared objects.
... when an application makes a copy of a particular certificate or
key structure that already exists in memory, ssl makes a shallow copy--that is, it increments the reference count for that object rather than making a whole new copy.
... when you call cert_destroycertificate or sec
key_destroyprivate
key, the function decrements the reference count and, if the reference count reaches zero as a result, both frees the memory and sets all the bits to zero.
...And 2 more matches
NSS tools : signver
-d [sql:]directory specify the database directory which contains the certificates and
keys.
... signver supports two types of databases: the legacy security databases (cert8.db,
key3.db, and secmod.db) and new sqlite databases (cert9.db,
key4.db, and pkcs11.txt).
... the last versions of these legacy databases are: o cert8.db for certificates o
key3.db for
keys o secmod.db for pkcs #11 module information berkeleydb has performance limitations, though, which prevent it from being easily used by multiple applications simultaneously.
...And 2 more matches
Future directions
this article documents future directions in functionality, design, and coding practices for spidermon
key.
... parallelism most machines that run spidermon
key have multiple cores, so parallelism is almost certainly part of our future.
... the api the spidermon
key api is c++.
...And 2 more matches
nsIAccessible
keyboard shortcuts some actions on accessibles can be performed by
keyboard shortcuts.
... following methods are used to get them nsiaccessible.default
keybinding(), nsiaccessible.get
keybindings(), nsiaccessible.
keyboardshortcut.
...layout oriented methods nsiaccessible.getchildatpoint() to get child accessible from point nsiaccessible.getaccessibletoleft(), nsiaccessible.getaccessibletoright(), nsiaccessible.getaccessibleabove() or nsiaccessible.getaccessiblebelow() to get left, right, top or below placed accessible methods get
keybindings provides array of localized string of global
keyboard accelerator for the given action index supported by accessible.
...And 2 more matches
nsIAccessibleRetrieval
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview nsiaccessible getaccessiblefor(in nsidomnode anode); nsiaccessible getaccessibleinshell(in nsidomnode anode, in nsipresshell apresshell); nsiaccessible getaccessibleinweakshell(in nsidomnode anode, in nsiweakreference apresshell); obsolete since gecko 2.0 nsiaccessible getaccessibleinwindow(in nsidomnode anode, in nsidomwindow adomwin); obsolete since gecko 2.0 nsiaccessible getapplicationaccessible(); nsiaccessible getattachedaccessiblef...
... getaccessibleinweakshell() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) return an nsiaccessible for a dom node in the given weak shell.
... getaccessibleinwindow() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) return an nsiaccessible for a dom node in present shell for this dom window.
...And 2 more matches
nsICryptoHMAC
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview acstring finish(in prbool aascii); void init(in unsigned long aalgorithm, in nsi
keyobject a
keyobject); void reset(); void update([const, array, size_is(alen)] in octet adata, in unsigned long alen); void updatefromstream(in nsiinputstream astream, in unsigned long alen); constants hashing algorithms.
...void init( in unsigned long aalgorithm, in nsi
keyobject a
keyobject ); parameters aalgorithm the algorithm type to be used.
... a
keyobject object holding a
key.
...And 2 more matches
nsIDOMNSHTMLDocument
inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3) method overview void captureevents(in long eventflags); void clear(); boolean execcommand(in domstring commandid, in boolean doshowui, in domstring value); boolean execcommandshowhelp(in domstring commandid); obsolete since gecko 14.0 domstring getselection(); nsidomdocument open(in acstring acontenttype, in boolean areplace); boolean querycommandenabled(in domstring commandid); boolean querycommandindeterm(in domstring commandid); ...
... execcommandshowhelp() obsolete since gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) this method never did anything but throw an exception, and was removed entirely in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11).
... querycommandtext() obsolete since gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) this method never did anything but throw an exception, and was removed entirely in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11).
...And 2 more matches
nsIFocusManager
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2) implemented by: @mozilla.org/focus-manager;1 as a service: var focusmanager = components.classes["@mozilla.org/focus-manager;1"] .getservice(components.interfaces.nsifocusmanager); method overview void clearfocus(in nsidomwindow awindow); void contentremoved(in nsidocument adocument, in nsicontent aelement); native code only!
... flag_by
key 0x2000 focus is changing due to a
key operation, for instance pressing the tab
key.
...this flag will be implied when movefocus() is called except when one of the other mechanisms (mouse or
key) is specified, or when the type is movefocus_root or movefocus_caret.
...And 2 more matches
nsIINIParserWriter
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10) this interface provides methods that allow writing to ini-format configuration files.
... method overview void setstring(in autf8string asection, in autf8string a
key, in autf8string avalue); void writefile([optional] in nsifile ainifile, [optional] in unsigned long aflags); constants file writing constants these constants are specified when calling writefile(), in order to change its behavior.
... methods setstring() set the value of a property string for a particular section and
key.
...And 2 more matches
nsIPluginHost
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview nsifile createtempfiletopost(in string apostdataurl); native code only!
... nsifile createtempfiletopost( in string apostdataurl ); parameters apostdataurl return value native code only!createtmpfiletopost obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
... void findproxyforurl( in string aurl, out string aresult ); parameters aurl aresult native code only!getplugin nsiplugin getplugin( in string amimetype ); parameters amimetype return value getplugincount() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void getplugincount( out unsigned long aplugincount ); parameters aplugincount native code only!getpluginfactory obsolete since gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0)this feature is obsolete.
...And 2 more matches
nsIProperties
to get an instance, use: var properties = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.interfaces.nsiproperties); method overview void get(in string prop, in nsiidref iid, [iid_is(iid),retval] out nsqiresult result); void get
keys(out pruint32 count, [array, size_is(count), retval] out string
keys); boolean has(in string prop); void set(in string prop, in nsisupports value); void undefine(in string prop); methods get() gets the xpcom object associated with a particular name.
... get
keys() returns an array of property names.
... nsmemory.h defines the macro ns_free_xpcom_allocated_pointer_array, which can be used to free a
keys when it is no longer needed.
...And 2 more matches
nsIWebBrowserPersist
inherits from: nsicancelable last changed in gecko 36.0 (firefox 36.0 / thunderbird 36.0 / seamon
key 2.33) implemented by: @mozilla.org/embedding/browser/nswebbrowser;1 and @mozilla.org/embedding/browser/nswebbrowserpersist;1.
...siwebbrowserpersist); method overview void cancelsave(); void savechannel(in nsichannel achannel, in nsisupports afile); void savedocument(in nsidomdocument adocument, in nsisupports afile, in nsisupports adatapath, in string aoutputcontenttype, in unsigned long aencodingflags, in unsigned long awrapcolumn); void saveuri(in nsiuri auri, in nsisupports acache
key, in nsiuri areferrer, in long areferrerpolicy, in nsiinputstream apostdata, in string aextraheaders, in nsisupports afile, in nsiloadcontext aprivacycontext); void saveprivacyawareuri(in nsiuri auri, in nsisupports acache
key, in nsiuri areferrer, in long areferrerpolicy, in nsiinputstream apostdata, in string aextraheaders, in nsisupports afile, in boolean aisprivate); attributes ...
... void saveuri( in nsiuri auri, in nsisupports acache
key, in nsiuri areferrer, in long areferrerpolicy, in nsiinputstream apostdata, in string aextraheaders, in nsisupports afile, in nsiloadcontext aprivacycontext ); parameters auri uri to save to file.
...And 2 more matches
nsIXULSortService
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void insertcontainernode(in nsirdfcompositedatasource db, in nsrdfsortstate sortstateptr, in nsicontent root, in nsicontent trueparent, in nsicontent container, in nsicontent node, in boolean anotify); native code only!
... obsolete since gecko 1.9 void sort(in nsidomnode anode, in astring asort
key, in astring asorthints); constants constant value description sort_comparecase 0x0001 sort_integer 0x0100 methods native code only!insertcontainernode obsolete since gecko 1.9 (firefox 3)this feature is obsolete.
...void insertcontainernode( in nsirdfcompositedatasource db, in nsrdfsortstate sortstateptr, in nsicontent root, in nsicontent trueparent, in nsicontent container, in nsicontent node, in boolean anotify ); parameters db sortstateptr root trueparent container node anotify sort() sort the contents of the widget containing anode using asort
key as the comparison
key, and asorthints as how to sort.
...And 2 more matches
Introduction to DOM Inspector - Firefox Developer Tools
the dom inspector is a mozilla extension that you can access from the tools > web development menu in seamon
key, or by selecting the dom inspector menu item from the tools menu in firefox and thunderbird, or by using ctrl/cmd+shift+i in either application.
...in seamon
key additional global menus will be available.
...in firefox and seamon
key browser, these will be the webpages you have opened in tabs.
...And 2 more matches
Style Editor - Firefox Developer Tools
it also supports a number of
keyboard shortcuts.
...
keyboard shortcuts source editor shortcuts this table lists the default shortcuts for the source editor.
... in the editor preferences section of the developer tools settings, you can choose to use vim, emacs, or sublime text
key bindings instead.
...And 2 more matches
Web Console Helpers - Firefox Developer Tools
once you select the object in the output area, you can use the arrow
keys to navigate the object.
...
keys() given an object, returns a list of the
keys (or property names) on that object.
... this is a shortcut for object.
keys.
...And 2 more matches
Cache - Web APIs
note: the
key matching algorithm depends on the vary header in the value.
... so matching a new
key requires looking at both
key and value for entries in the cache.
... cache.delete(request, options) finds the cache entry whose
key is the request, returning a promise that resolves to true if a matching cache entry is found and deleted.
...And 2 more matches
Document.cookie - Web APIs
key=value pairs).
... note that each
key and value may be surrounded by whitespace (space and tab characters): in fact, rfc 6265 mandates a single space after each semicolon, but some user agents may not abide by this.
... write a new cookie document.cookie = newcookie; in the code above, newcookie is a string of form
key=value.
...And 2 more matches
Guide to the Fullscreen API - Web APIs
presentation differences it's worth noting a
key difference here between the gecko and webkit implementations at this time: gecko automatically adds css rules to the element to stretch it to fill the screen: "width: 100%; height: 100%".
... things your users want to know you'll want to be sure to let your users know that they can press the esc
key (or f11) to exit fullscreen mode.
...pressing the return or enter
key lets the user toggle between windowed and fullscreen presentation of the video.
...And 2 more matches
HTMLElement - Web APIs
htmlelement.access
key is a domstring representing the access
key assigned to the element.
... htmlelement.access
keylabel read only returns a domstring containing the element's assigned access
key.
... htmlorforeignelement.blur() removes
keyboard focus from the currently focused element.
...And 2 more matches
HkdfParams - Web APIs
the hkdfparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.derive
key(), when using the hkdf algorithm.
...unlike the input
key material passed into derive
key(), salt does not need to be kept secret.
...this is used to bind the derived
key to an application or context, and enables you to derive different
keys for different contexts while using the same input
key material.
...And 2 more matches
IDBCursor.update() - Web APIs
be aware that you can't call update() (or idbcursor.delete()) on cursors obtained from idbindex.open
keycursor().
... invalidstateerror the cursor was created using idbindex.open
keycursor, is currently being iterated, or has iterated past its end.
... dataerror the underlying object store uses in-line
keys and the property in the value at the object store's
key path does not match the
key in this cursor's position.
...And 2 more matches
IDBDatabaseSync - Web APIs
method overview idbobjectstoresync createobjectstore (in domstring name, in domstring
keypath, in optional boolean autoincrement) raises (idbdatabaseexception); idbobjectstoresync openobjectstore (in domstring name, in optional unsigned short mode) raises (idbdatabaseexception); void removeobjectstore (in domstring storename) raises (idbdatabaseexception); void setversion (in domstring version); idbtransactionsync transaction (in optional domstring...
... idbobjectstoresync createobjectstore( in domstring name, in domstring
keypath, in optional boolean autoincrement ) raises (idbdatabaseexception); parameters name the name of a new object store.
...
keypath the
key path used by the new object store.
...And 2 more matches
IDBObjectStore.delete() - Web APIs
either a
key or an idb
keyrange can be passed, allowing one or multiple records to be deleted from a store.
... bear in mind that if you are using a idbcursor, you can use the idbcursor.delete() method to more efficiently delete the current record — without having to explicitly look up the record's
key.
... syntax var request = objectstore.delete(
key); var request = objectstore.delete(
keyrange); parameters
key the
key of the record to be deleted, or an idb
keyrange to delete all records with
keys in range.
...And 2 more matches
IDBObjectStore.getAll() - Web APIs
this method produces the same result for: a record that doesn't exist in the database a record that has an undefined value to tell these situations apart, you either call the opencursor() method with the same
key.
... the count() method with the same
key, which will return 1 if the row exists and 0 if it doesn't.
... syntax var request = objectstore.getall(); var request = objectstore.getall(query); var request = objectstore.getall(query, count); parameters query optional a
key or idb
keyrange to be queried.
...And 2 more matches
NodeList - Web APIs
nodelist.entries() returns an iterator, allowing code to go through all
key/value pairs contained in the collection.
... (in this case, the
keys are numbers starting from 0 and the values are nodes.) nodelist.foreach() executes a provided function once per nodelist element, passing the element as an argument to the function.
... nodelist.
keys() returns an iterator, allowing code to go through all the
keys of the
key/value pairs contained in the collection.
...And 2 more matches
Storage - Web APIs
methods storage.
key() when passed a number n, this method will return the name of the nth
key in the storage.
... storage.getitem() when passed a
key name, will return that
key's value.
... storage.setitem() when passed a
key name and value, will add that
key to the storage, or update that
key's value if it already exists.
...And 2 more matches
ARIA: document role - Accessibility
adding role="document" and tabindex="0" to the element containing the text within a widget enables the screen reader user to press the tab
key to place focus on the document element and read the text with the screen reader's reading cursor.
... assistive technologies should switch context back to document mode, possibly intercepting from controls rewired for the parent's dynamic context, re-enabling the standard input events, such as up or down arrow
keyboard events, to control the reading cursor.
...
keyboard interactions the element should be made focusable by setting the tabindex="0" attribute / value pair on it.
...And 2 more matches
ARIA: checkbox role - Accessibility
since a checkbox is an interactive control, it must be focusable and
keyboard accessible.
...the expected
keyboard shortcut for activating a checkbox is the space
key.
...
keyboard interactions
key function space activates the checkbox required javascript required event handlers onclick handle mouse clicks that will change the state of the checkbox by changing the value of the aria-checked attribute and the appearance of the checkbox so it appears checked or unchecked to the sighted user on
keypress handle the case where the user p...
...And 2 more matches
size - CSS: Cascading Style Sheets
size may either be defined with a "scalable"
keyword (in this case the page will fill the available dimensions) or with absolute dimensions.
... syntax /*
keyword values for scalable size */ size: auto; size: portrait; size: landscape; /* <length> values */ /* 1 value: height = width */ size: 6in; /* 2 values: width then height */ size: 4in 6in; /*
keyword values for absolute size */ size: a4; size: b5; size: jis-b4; size: letter; /* mixing size and orientation */ size: a4 portrait; values auto the user agent decides the size of the page.
... letter this
keyword is a equivalent to the dimensions of letter paper in north america i.e.
...And 2 more matches
Basic concepts of CSS Scroll Snap - CSS: Cascading Style Sheets
basics of scroll snap the
key properties of the scroll snap specification are scroll-snap-type and scroll-snap-align.
...you can also use the
keyword both to have scroll snapping work along both axes.
... you can also pass in the
keywords mandatory, or proximity.
...And 2 more matches
Introducing the CSS Cascade - CSS: Cascading Style Sheets
while the declarations contained in most at-rules — such as those in @media, @document, or @supports — participate in the cascade, declarations contained in @
keyframes don't.
... css animations and the cascade css animations, using @
keyframes at-rules, define animations between states.
...
keyframes don't cascade, meaning that at any given time css takes values from only one single @
keyframes, and never mixes multiple ones together.
...And 2 more matches
Using media queries - CSS: Cascading Style Sheets
note: in level 3, the not
keyword can't be used to negate an individual media feature expression, only an entire media query.
... combining multiple types or features the and
keyword combines a media feature with a media type or other media features.
... inverting a query's meaning the not
keyword inverts the meaning of an entire media query.
...And 2 more matches
Viewport concepts - CSS: Cascading Style Sheets
body > header { position: fixed; top: 0; } body > footer { position: fixed; bottom: 0; } we got the 800 x 533 measurement when we zoomed in using the
keyboard.
...what if a dynamic
keyboard pops open on a phone?
...when the user pinch-zooms the page, pops open a dynamic
keyboard, or when a previously hidden address bar becomes visible, the visual viewport shrinks but the layout viewport is unchanged.
...And 2 more matches
border-style - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: border-bottom-style border-left-style border-right-style border-top-style syntax /*
keyword values */ border-style: none; border-style: hidden; border-style: dotted; border-style: dashed; border-style: solid; border-style: double; border-style: groove; border-style: ridge; border-style: inset; border-style: outset; /* vertical | horizontal */ border-style: dotted solid; /* top | horizontal | bottom */ border-style: hidden double dashed; /* top | right | bottom | left */ border-st...
... each value is a
keyword chosen from the list below.
...it can have the following values: none like the hidden
keyword, displays no border.
...And 2 more matches
box-shadow - CSS: Cascading Style Sheets
syntax /*
keyword values */ box-shadow: none; /* offset-x | offset-y | color */ box-shadow: 60px -16px teal; /* offset-x | offset-y | blur-radius | color */ box-shadow: 10px 5px 5px black; /* offset-x | offset-y | blur-radius | spread-radius | color */ box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2); /* inset | offset-x | offset-y | color */ box-shadow: inset 5em 1em gold; /* any number of shadows, separat...
...ed by commas */ box-shadow: 3px 3px red, -1em 0 0.4em olive; /* global
keywords */ box-shadow: inherit; box-shadow: initial; box-shadow: unset; specify a single box-shadow using: two, three, or four <length> values.
... optionally, the inset
keyword.
...And 2 more matches
flex-basis - CSS: Cascading Style Sheets
syntax /* specify <'width'> */ flex-basis: 10em; flex-basis: 3px; flex-basis: auto; /* intrinsic sizing
keywords */ flex-basis: fill; flex-basis: max-content; flex-basis: min-content; flex-basis: fit-content; /* automatically size based on the flex item’s content */ flex-basis: content; /* global values */ flex-basis: inherit; flex-basis: initial; flex-basis: unset; the flex-basis property is specified as either the
keyword content or a <'width'>.
... values <'width'> an absolute <length>, a <percentage> of the parent flex container's main size property, or the
keyword auto.
... then, flex-basis:auto was changed to mean automatic sizing, and "main-size" was introduced as the "look at my width or height property"
keyword.
...And 2 more matches
font-variant - CSS: Cascading Style Sheets
<common-lig-values>, <discretionary-lig-values>, <historical-lig-values>, <contextual-alt-values> specifies the
keywords related to the font-variant-ligatures longhand property.
... stylistic(), historical-forms, styleset(), character-variant(), swash(), ornaments(), annotation() specifies the
keywords and functions related to the font-variant-alternates longhand property.
... small-caps, all-small-caps, petite-caps, all-petite-caps, unicase, titling-caps specifies the
keywords and functions related to the font-variant-caps longhand property.
...And 2 more matches
mask-clip - CSS: Cascading Style Sheets
/* <geometry-box> values */ mask-clip: content-box; mask-clip: padding-box; mask-clip: border-box; mask-clip: margin-box; mask-clip: fill-box; mask-clip: stroke-box; mask-clip: view-box; /*
keyword values */ mask-clip: no-clip; /* non-standard
keyword values */ -webkit-mask-clip: border; -webkit-mask-clip: padding; -webkit-mask-clip: content; -webkit-mask-clip: text; /* multiple values */ mask-clip: padding-box, no-clip; mask-clip: view-box, fill-box, border-box; /* global values */ mask-clip: inherit; mask-clip: initial; mask-clip: unset; syntax one or more of the
keyword values listed below, separated by commas.
... border this
keyword behaves the same as border-box.
... padding this
keyword behaves the same as padding-box.
...And 2 more matches
mask-size - CSS: Cascading Style Sheets
/*
keywords syntax */ mask-size: cover; mask-size: contain; /* one-value syntax */ /* the width of the image (height set to 'auto') */ mask-size: 50%; mask-size: 3em; mask-size: 12px; mask-size: auto; /* two-value syntax */ /* first value: width of the image, second value: height */ mask-size: 50% auto; mask-size: 3em 25%; mask-size: auto 6px; mask-size: auto auto; /* multiple values */ /* do not confuse this with mask-size: auto auto */ mask-size: auto, auto; mask-size: 50%, 25%, 25%; mask-size: 6px, auto, contain; /* global values */ mask-size: inherit; mask-size: initial; mask-size: unset; note: if the value of this...
... a <bg-size> can be specified in one of three ways: using the
keyword contain using the
keyword cover using width and height values to specify a size using width and height, you can supply one or two values: if only one value is given it sets the width, with the height set to auto.
... auto a
keyword that scales the mask image in the corresponding directions in order to maintain its intrinsic proportion.
...And 2 more matches
overflow - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: overflow-x overflow-y syntax /*
keyword values */ overflow: visible; overflow: hidden; overflow: clip; overflow: scroll; overflow: auto; overflow: hidden visible; /* global values */ overflow: inherit; overflow: initial; overflow: unset; the overflow property is specified as one or two
keywords chosen from the list of values below.
... if two
keywords are specified, the first applies to overflow-x and the second to overflow-y.
...the difference between clip and hidden is that the clip
keyword also forbids all scrolling, including programmatic scrolling.
...And 2 more matches
text-underline-position - CSS: Cascading Style Sheets
syntax /* single
keyword */ text-underline-position: auto; text-underline-position: under; text-underline-position: left; text-underline-position: right; /* multiple
keywords */ text-underline-position: under left; text-underline-position: right under; /* global values */ text-underline-position: inherit; text-underline-position: initial; text-underline-position: unset; syntax values auto the user agent uses its ...
... left in vertical writing-modes, this
keyword forces the line to be placed on the left side of the text.
... right in vertical writing-modes, this
keyword forces the line to be placed on the right side of the text.
...And 2 more matches
unicode-bidi - CSS: Cascading Style Sheets
/*
keyword values */ unicode-bidi: normal; unicode-bidi: embed; unicode-bidi: isolate; unicode-bidi: bidi-override; unicode-bidi: isolate-override; unicode-bidi: plaintext; /* global values */ unicode-bidi: inherit; unicode-bidi: initial; unicode-bidi: unset; syntax values normal the element does not offer an additional level of embedding with respect to the bidirectional algorithm.
... isolate this
keyword indicates that the element's container directionality should be calculated without considering the content of this element.
... isolate-override this
keyword applies the isolation behavior of the isolate
keyword to the surrounding content and the override behavior of the bidi-override
keyword to the inner content.
...And 2 more matches
will-change - CSS: Cascading Style Sheets
/*
keyword values */ will-change: auto; will-change: scroll-position; will-change: contents; will-change: transform; /* example of <custom-ident> */ will-change: opacity; /* example of <custom-ident> */ will-change: left, top; /* example of two <animateable-feature> */ /* global values */ will-change: inherit; will-change: initial; will-change: unset; proper usage of this prope...
... syntax values auto this
keyword expresses no particular intent; the user agent should apply whatever heuristics and optimizations it normally does.
... via stylesheet it may be appropriate to include will-change in your style sheet for an application that does page flips on
key presses like an album or a slide deck presentation where the pages are large and complex.
...And 2 more matches
<input type="button"> - HTML: Hypertext Markup Language
adding
keyboard shortcuts to buttons
keyboard shortcuts, also known as access
keys and
keyboard equivalents, let the user trigger a button using a
key or combination of
keys on the
keyboard.
... to add a
keyboard shortcut to a button — just as you would with any <input> for which it makes sense — you use the access
key global attribute.
... in this example, s is specified as the access
key (you'll need to press s plus the particular modifier
keys for your browser/os combination; see access
key for a useful list of those).
...And 2 more matches
<input type="image"> - HTML: Hypertext Markup Language
formtarget a string which specifies a name or
keyword that indicates where to display the response received after submitting the form.
... in addition to the actual names of tabs, windows, or inline frames, there are a few special
keywords that can be used: _self loads the response into the same browsing context as the one that contains the form.
... formtarget html5 a name or
keyword indicating where to display the response that is received after submitting the form.
...And 2 more matches
<input type="text"> - HTML: Hypertext Markup Language
mozactionhint a string indicating the type of action that will be taken when the user presses the enter or return
key while editing the field; this is used to determine an appropriate label for that
key on a virtual
keyboard.
... mozactionhint a mozilla extension, supported by firefox for android, which provides a hint as to what sort of action will be taken if the user presses the enter or return
key while editing the field.
... this information is used to decide what kind of label to use on the enter
key on the virtual
keyboard.
...And 2 more matches
<input type="url"> - HTML: Hypertext Markup Language
mozactionhint a string indicating the type of action that will be taken when the user presses the enter or return
key while editing the field; this is used to determine an appropriate label for that
key on a virtual
keyboard.
... mozactionhint a mozilla extension, supported by firefox for android, which provides a hint as to what sort of action will be taken if the user presses the enter or return
key while editing the field.
... this information is used to decide what kind of label to use on the enter
key on the virtual
keyboard.
...And 2 more matches
CSP: sandbox - HTTP
if this
keyword is not used, this operation is not allowed.
...if this
keyword is not used, that functionality will silently fail.
...if this
keyword is not used, the embedded content is treated as being from a unique origin.
...And 2 more matches
Inheritance and the prototype chain - JavaScript
javascript is a bit confusing for developers experienced in class-based languages (like java or c++), as it is dynamic and does not provide a class implementation per se (the class
keyword is introduced in es2015, but is syntactical sugar, javascript remains prototype-based).
...for the best learning experience, it is highly recommended that you open a console, navigate to the "console" tab, copy-and-paste in the below javascript code, and run it by pressing the enter/return
key.
...rototype chain) delete a.a; console.log(a.a); // print undefined console.log(b.a); // print undefined the new operator has a shorter chain in this example: function graph() { this.vertices = [4,4]; } var g = new graph(); console.log(g.vertices); // print [4,4] g.vertices = 25; console.log(g.vertices); // print 25 delete g.vertices; console.log(g.vertices); // print undefined with the class
keyword ecmascript 2015 introduced a new set of
keywords implementing classes.
...And 2 more matches
Array - JavaScript
const fruits = [] fruits.push('banana', 'apple', 'peach') console.log(fruits.length) // 3 when setting a property on a javascript array when the property is a valid array index and that index is outside the current bounds of the array, the engine will update the array's length property accordingly: fruits[5] = 'mango' console.log(fruits[5]) // 'mango' console.log(object.
keys(fruits)) // ['0', '1', '2', '5'] console.log(fruits.length) // 6 increasing the length.
... fruits.length = 10 console.log(fruits) // ['banana', 'apple', 'peach', empty x 2, 'mango', empty x 4] console.log(object.
keys(fruits)) // ['0', '1', '2', '5'] console.log(fruits.length) // 10 console.log(fruits[8]) // undefined decreasing the length property does, however, delete elements.
... fruits.length = 2 console.log(object.
keys(fruits)) // ['0', '1'] console.log(fruits.length) // 2 this is explained further on the array.length page.
...And 2 more matches
Intl.Collator() constructor - JavaScript
the following unicode extension
keys are allowed: co variant collations for certain locales.
...this option can be set through an options property or through a unicode extension
key; if both are provided, the options property takes precedence.
...this option can be set through an options property or through a unicode extension
key; if both are provided, the options property takes precedence.
...And 2 more matches
Intl.Locale.prototype.calendar - JavaScript
the following table shows all the valid unicode calendar
key strings, along with a description of the calendar era they represent.
... unicode calendar
keys unicode calendar
keys calendar
key (name) description buddhist thai buddhist calendar chinese traditional chinese calendar coptic coptic calendar dangi traditional korean calendar ethioaa ethiopic calendar, amete alem (epoch approx.
...ar, tabular (intercalary years [2,5,7,10,13,16,18,21,24,26,29] - civil epoch) islamic-rgsa islamic calendar, saudi arabia sighting iso8601 iso calendar (gregorian calendar using the iso 8601 calendar week rules) japanese japanese imperial calendar persian persian calendar roc republic of china calendar the islamicc calendar
key has been deprecated.
...And 2 more matches
Set - JavaScript
see "
key equality for -0 and 0" in the browser compatibility table for details.
... set.prototype.
keys() returns a new iterator object that yields the values for each element in the set object in insertion order.
...(for sets, this is the same as the
keys() method.) set.prototype.entries() returns a new iterator object that contains an array of [value, value] for each element in the set object, in insertion order.
...And 2 more matches
async function - JavaScript
an async function is a function declared with the async
keyword.
... async functions are instances of the asyncfunction constructor, and the await
keyword is permitted within them.
... the async and await
keywords enable asynchronous, promise-based behavior to be written in a cleaner style, avoiding the need to explicitly configure promise chains.
...And 2 more matches
Authoring MathML - MathML
prior to gecko 31.0 (firefox 31.0 / thunderbird 31.0 / seamon
key 2.28), it was a bit tedious to setup math fonts, see the font instructions for mozilla 2.0.
... for gecko 31.0 (firefox 31.0 / thunderbird 31.0 / seamon
key 2.28), this is much simpler and is compatible with any web rendering engine with mathml support.
...moreover, a latex-to-mathml input box has also been integrated into seamon
key since version 2.28 and into thunderbird since version 31.
...And 2 more matches
Private Properties - Archive of obsolete content
weakmaps were introduced to javascript in ecmascript 2015 and have recently been implemented in spidermon
key.
...first, it's not possible to use objects as
keys.
... when an object is used as a
key, it's converted to a string using its tostring method.
...a weakmap is very similar to an ordinary hash map, but differs from it in two crucial ways: it can use ordinary objects as
keys it does not maintain a strong reference to its values to understand how weakmaps are used in practice, the following rewrites the thumbnail cache using a weakmap: let thumbnails = new weakmap(); function getthumbnail(image) { let thumbnail = thumbnails.get(image); if (!thumbnail) { thumbnail = createthumbnail(image); thumbnails.set(image, thumbnail); } return...
lang/functional - Archive of obsolete content
if passed an optional hashfunction, it will be used to compute the hash
key for storing the result, based on the arguments to the original function.
... the default hashfunction just uses the first argument to the memoized function as the
key.
... hasher : function an optional function that takes the memoized function's parameter and returns a hash
key for storing the result.
...this could be useful, for example, if we are checking the user's
keyboard input, and want to wait until they've paused in their typing before we do so.
ui/button/action - Archive of obsolete content
you can specify this in one of three ways: as a resource:// url pointing at an icon file in your add-on's "data" directory, typically constructed using self.data.url(iconfile) as a relative path: a string in the form "./iconfile", where "iconfile" is a relative path to the icon file beginning in your add-on's "data" directory as an object, or dictionary of
key-value pairs.
...each
key-value pair specifies an icon: each value specifies an image file as a resource:// url or relative path.
... each
key must be a numeric string such as "16", or "32", which represents the size in pixels of the corresponding image.
... icon the button's icon or icons, as a url, relative path, or object containing a set of
key-value pairs.
ui/button/toggle - Archive of obsolete content
you can specify this in one of three ways: as a resource:// url pointing at an icon file in your add-on's "data" directory, typically constructed using self.data.url(iconfile) as a relative path: a string in the form "./iconfile", where "iconfile" is a relative path to the icon file beginning in your add-on's "data" directory as an object, or dictionary of
key-value pairs.
...each
key-value pair specifies an icon: each value specifies an image file as a resource:// url or relative path.
... each
key must be a numeric string such as "16", or "32", which represents the size in pixels of the corresponding image.
... icon the button's icon or icons, as a url, relative path, or object containing a set of
key-value pairs.
JavaScript Daemons Management - Archive of obsolete content
rsals = 2;alert('changed');">two reversals</button> <button onclick="orecompose.makeloop();alert('changed');">makeloop</button> <button onclick="orecompose.unmakeloop();alert('changed');">unmakeloop</button> <button onclick="orecompose.close();">close</button> <button onclick="orecompose.reclose();">reclose</button><br /> frame rate: <input type="text" id="vello" value="33" style="width: 40px;" on
keypress="return event.charcode===0||/\d/.test(string.fromcharcode(event.charcode));" on
keyup="if(isfinite(this.value)&&number(this.value)>0){orecompose.setrate(this.value);}" /></p> </body> </html> example #2: a practical instantiation – daemon.buildaround() <!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>daemon.buildaround(…)<...
...ounhide.reversals = 2;alert('changed');">two reversals</button> <button onclick="ounhide.makeloop();alert('changed');">makeloop</button> <button onclick="ounhide.unmakeloop();alert('changed');">unmakeloop</button> <button onclick="ounhide.close();">close</button> <button onclick="ounhide.reclose();">reclose</button><br /> frame rate: <input type="text" id="vello" value="33" style="width: 40px;" on
keypress="return event.charcode===0||/\d/.test(string.fromcharcode(event.charcode));" on
keyup="if(isfinite(this.value)&&number(this.value)>0){ounhide.setrate(this.value);}" /></p> </body> </html> example #3: a safe (without setinterval) instantiation – new daemon.safe() <!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>new daemon.safe(&h...
...rsals = 2;alert('changed');">two reversals</button> <button onclick="orecompose.makeloop();alert('changed');">makeloop</button> <button onclick="orecompose.unmakeloop();alert('changed');">unmakeloop</button> <button onclick="orecompose.close();">close</button> <button onclick="orecompose.reclose();">reclose</button><br /> frame rate: <input type="text" id="vello" value="33" style="width: 40px;" on
keypress="return event.charcode===0||/\d/.test(string.fromcharcode(event.charcode));" on
keyup="if(isfinite(this.value)&&number(this.value)>0){orecompose.setrate(this.value);}" /></p> </body> </html> example #4: a practical and safe (without setinterval) instantiation – daemon.safe.buildaround() <!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> ...
...ounhide.reversals = 2;alert('changed');">two reversals</button> <button onclick="ounhide.makeloop();alert('changed');">makeloop</button> <button onclick="ounhide.unmakeloop();alert('changed');">unmakeloop</button> <button onclick="ounhide.close();">close</button> <button onclick="ounhide.reclose();">reclose</button><br /> frame rate: <input type="text" id="vello" value="33" style="width: 40px;" on
keypress="return event.charcode===0||/\d/.test(string.fromcharcode(event.charcode));" on
keyup="if(isfinite(this.value)&&number(this.value)>0){ounhide.setrate(this.value);}" /></p> </body> </html> ...
Setting up an extension development environment - Archive of obsolete content
these details apply to firefox, thunderbird, and seamon
key (version 2.0 and above).
...ions of linux/unix: /usr/local/bin/firefox -no-remote -p dev on macos mavericks (10.9) and newer: /applications/firefox.app/contents/macos/firefox-bin -no-remote -p dev & on windows: start -> run "%programfiles%\mozilla firefox\firefox.exe" -no-remote -p dev on windows 64 bit: start -> run "%programfiles(x86)%\mozilla firefox\firefox.exe" -no-remote -p dev to start thunderbird or seamon
key instead of firefox, substitute thunderbird, or seamon
key for the firefox used in our examples.
... accessing firefox development preferences to change preference settings in firefox or seamon
key, type about:config in the location bar.
...for example, rather than having content myextension jar:chrome/myextension.jar!/content/ use content myextension chrome/content/ preventing the first launch extension selector requires gecko 8.0(firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) starting in firefox 8, on the first launch of a new version of firefox, it presents user interface letting users select which third party add-ons to keep.
XUL user interfaces - Archive of obsolete content
copy and paste the content from here, making sure that you scroll to get all of it: <?xml version="1.0"?> <?xml-stylesheet type="text/css" href="style7.css"?> <!doctype window> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="css getting started - xul demonstration" onload="init();"> <script type="application/javascript" src="script7.js"/> <label class="head-1" value="xul demonstration"/> <vbox> <groupbox class="demo-group"> <caption label="day of week calculator"/> <grid> <columns> <column/> <column/> </columns> <rows> ...
... <row> <label class="text-prompt" value="date:" access
key="d" control="date-text"/> <textbox id="date-text" type="timed" timeout="750" oncommand="refresh();"/> </row> <row> <label value="day:"/> <hbox id="day-box"> <label class="day" value="sunday" disabled="true"/> <label class="day" value="monday" disabled="true"/> <label class="day" value="tuesday" disabled="true"/> <label class="day" value="wednesday" disabled="true"/> <label class="day" value="thursday" disabled="true"/> <label class="day" value="friday" disabled="true"/> <label class="day" value="saturday" disabled="true"/> </hbox> </row> ...
...</rows> </grid> <hbox class="buttons"> <button id="clear" label="clear" access
key="c" oncommand="cleardate();"/> <button id="today" label="today" access
key="t" oncommand="settoday();"/> </hbox> </groupbox> <statusbar> <statusbarpanel id="status"/> </statusbar> </vbox> </window> make a new css file, style7.css.
... using this knowledge, add a rule to the stylesheet that makes the background of the date box pale blue when it has
keyboard focus (but white when
keyboard focus is somewhere else).
Download Manager preferences - Archive of obsolete content
in firefox,thunderbird and seamon
key the default value is false.
... in firefox and seamon
key the default value is 2.
... in thunderbird and seamon
key the default is false.
...in firefox 3.5 and seamon
key, the default is 1 on all platforms.
Code snippets - Archive of obsolete content
b(url); } } partially corrupt a server components.utils.import("resource://services-sync/main.js"); components.utils.import("resource://services-sync/resource.js"); function deletepath(path) { let resource = new resource(weave.service.storageurl + path); resource.setheader("x-confirm-delete", "1"); return resource.delete(); } // delete meta/global: deletepath("meta/global"); // delete
keys: deletepath("crypto/
keys"); // delete server: deletepath(""); corrupt a single engine on the server let engine = "bookmarks"; components.utils.import("resource://services-sync/main.js"); components.utils.import("resource://services-sync/resource.js"); components.utils.import("resource://services-sync/util.js"); let r = new resource(weave.service.storageurl + "meta/global"); let g = r.get(); le...
...envelope.payload = json.stringify(payload); r.put(json.stringify(envelope)); generate new
keys // clients always wipe the server when they generate new
keys.
... components.utils.import("resource://services-sync/main.js"); weave.service._freshstart(); // if you want to do it without wiping the server (which will cause corruption!): weave.service.generatenewsymmetric
keys(); print out a list of large bookmark records // change '1000' as appropriate.
... components.utils.import("resource://services-sync/engines.js"); components.utils.import("resource://services-sync/engines/bookmarks.js"); let bme = weave.service.enginemanager.get("bookmarks"); let ids = object.
keys(bme._store.getallids()); for each (let id in ids) { let record = bme._store.createrecord(id, "bookmarks"); let len = record.tostring().length; if (len > 1000) { console.log("id: " + id + ", len = " + len + ", " + record.title); } } print an alphabetically sorted list of members of a collection components.utils.import("resource://services-sync/main.js"); components.utils.import("resource://services-sync/resource.js"); let ids = json.parse(new resource(weave.service.storageurl + "bookmarks").get()); for each (let id in ids.sort()) { console.log(" " + id); } get a...
Mac stub installer - Archive of obsolete content
the mac stub installer project resides at: <http://lxr.mozilla.org/seamon
key/sou...ll/wizard/mac/> the mac stub installer source code resides at: <http://lxr.mozilla.org/seamon
key/sou...izard/mac/src/> how do we get setup to debug the mac installer?
...to do this, in addition to the above steps to set up the mac installer to debug you will need to do the following: create a file named xpcom.xpi with the shared libraries in the structure described under the [xpcom] section in: <http://lxr.mozilla.org/seamon
key/sou...ackages-mac#33> note that if you are using the debug target of the installer binary all shared libraries are expected to have the name format <libname>debug.shlb now set a break point at xpi_init() in the mac installer code and step into xpistub and eventually the xpinstall engine will load including symbols so you can set a break point in the xpinstall engine itself.
...checkin the <component>.jst to the: <http://lxr.mozilla.org/seamon
key/sou.../packager/mac/> directory.
... add a [componentx] section to the config.ini template file named config.ini_tmpl found at: <http://lxr.mozilla.org/seamon
key/sou...onfig.ini_tmpl>.
Unix stub installer - Archive of obsolete content
the unix stub installer project resides at: <http://lxr.mozilla.org/seamon
key/sou...ard/unix/src2/> how do we get setup to debug the unix stub installer?
...checkin the <component>.jst to the: <http://lxr.mozilla.org/seamon
key/sou.../packager/unix> directory.
... add a [componentx] section to the config.ini template file named config.it found at: <http://lxr.mozilla.org/seamon
key/sou...unix/config.it>.
... finally add a call to generate the xpi at package time by adding a makexpifile("<component>"); call at: <http://lxr.mozilla.org/seamon
key/sou.../makeall.pl#75> you can test it by changing your current working directory to mozilla/xpinstall/packager/unix and running "perl deliver.pl" on the shell prompt.
Windows stub installer - Archive of obsolete content
the windows stub installer project resides at: <http://lxr.mozilla.org/seamon
key/sou...windows/setup/> how do we get setup to debug the windows stub installer?
...checkin the <component>.jst to the: <http://lxr.mozilla.org/seamon
key/sou...ckager/windows> directory.
... add a [component <component>]</component> section to the config.ini template file named config.it found at: <http://lxr.mozilla.org/seamon
key/sou...dows/config.it>.
... finally add <component> to the component list array @gcomponentlist at: <http://lxr.mozilla.org/seamon
key/sou...makeall.pl#125> you can test it by changing your current working directory to mozilla/xpinstall/wizard/windows/builder and running "perl build.pl" on the shell prompt.
Windows Install - Archive of obsolete content
ired) { logcomment("insufficient disk space: " + dirpath); logcomment(" required : " + spacerequired + " k"); logcomment(" available: " + spaceavailable + " k"); return(false); } return(true); } function updatewinreg4ren8dot3() { var fprogram = getfolder("program"); var ftemp = getfolder("temporary"); //notes: // can't use a double backslash before sub
key // - windows already puts it in.
... // sub
keys have to exist before values can be put in.
... var sub
key; // the name of the sub
key you are poking around in var valname; // the name of the value you want to look at var value; // the data in the value you want to look at.
... winreg.setroot
key(winreg.h
key_current_user) ;// current_user sub
key = "software\\microsoft\\windows\\currentversion\\runonce" ; winreg.create
key(sub
key,""); valname = "ren8dot3"; value = fprogram + "ren8dot3.exe " + ftemp + "ren8dot3.ini"; err = winreg.setvaluestring(sub
key, valname, value); } } function prepareren8dot3(listlongfilepaths) { var ftemp = getfolder("temporary"); var fprogram = getfolder("program"); var fren8dot3ini = getwinprofile(ftemp, "ren8dot3.ini"); var binicreated = false; var flongfilepath; var sshortfilepath; if(fren8dot3ini != null) { for(i = 0; i < listlongfilepaths.length; i++) { flongfilep...
getString - Archive of obsolete content
method of winprofile object syntax string getstring ( string section, string
key); parameters the method has the following parameters: section section in the file, such as "boot" or "drivers".
...
key the
key in that section whose value to return.
... returns the value of the
key or an empty string if none was found.
...unlike that function, this method does not support using a null
key to return a list of
keys in a section.
valueExists - Archive of obsolete content
valueexists returns whether a value for the given
key exists.
... method of winreg object syntax boolean valueexists ( string
key, string value ); parameters the method has the following parameters:
key a string representing the path to the
key.
... returns boolean value: true if the
key exists and the user has read access to it, otherwise false.
... example winreg = getwinregistry(); if ( winreg != null ) { winreg.setroot
key( winreg.h
key_local_machine); if(winreg.valueexists("software\\mozilla", "value name")) { //valueexists returned true } else { //valueexists returned false } } ...
reserved - Archive of obsolete content
this means that, to execute these commands,
key events won't be passed to content, and event listeners registered for them in content will not be executed.
... currently, the content still receives these
key events, even though it can't override them.
... example here, the command to open a new browser window is reserved: <command id="cmd_newnavigator" oncommand="openbrowserwindow()" reserved="true"/> if the
keyboard shortcut for that is accel-t, then this code will not work as expected, as compared to when it is run from web content: document.addeventlistener("
keydown", handle
key, true); function handle
key(event) { // listen for the "new tab" shortcut if (event.meta
key && (event.
key == "t")) { // log a message console.log("intercepted accel-t"); // prevent the default browser action event.preventdefault(); event.stoppropagation(); } } currently, this event handler as coded above runs and logs the message, but the default be...
...in future releases, the event handler will never be called for the given
keyboard shortcut.
appendNotification - Archive of obsolete content
each description is an object with the following properties: access
key - the access
key to appear on the button callback - function to be called when the button is activated.
... notification box events requires gecko 9.0(firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) if you specify the eventcallback parameter, it should be a javascript function that gets called when interesting things happen related to the notification box.
...onbutton2callback(thenotification, buttoninfo, eventtarget) { window.alert("button 2 pressed"); //do not prevent notification from closing: }; function testnotificationcallback(reason) { window.alert("reason is: " + reason); }; let notifybox = gbrowser.getnotificationbox(); let buttons = []; let button1 = { isdefault: false, access
key: "1", label: "button 1", callback: testnotificationbutton1callback, type: "", // if a popup, then must be: "menu-button" or "menu".
... popup: null }; buttons.push(button1); let button2 = { isdefault: true, access
key: "2", label: "button 2", callback: testnotificationbutton2callback, type: "", // if a popup, then must be: "menu-button" or "menu".
ContextMenus - Archive of obsolete content
on macintosh systems with only one mouse button, a context menu may be opened by either holding down the mouse button or by pressing the control
key and clicking the mouse button.
... on windows, the context menu can also be opened by pressing the menu
key on the
keyboard (the
key on many
keyboards next to control with a menu image) or by pressing shift+f10.
...when using the
keyboard, the context is the element in the window that is currently focused.
...however, even when using the
keyboard, there will still be a node (the context) that the menu applies to, which will be the element that is currently focused.
Sorting Results - Archive of obsolete content
you can specify multiple sort
keys to further define how a sort should be handled in the case where the values for the first sort
key are the same.
... to do this, just add another
key after the first separated by a space, as in the following: sort="?name ?gender" in this example, results will be sorted by name, followed by gender for those with identical names.
... you may add as many sort
keys as desired.
...the arguments to the sort method specify the root node (the listbox), the sort
key and the sort direction.
Adding Buttons - Archive of obsolete content
syntax of buttons the button tag has the following syntax: <button id="identifier" class="dialog" label="ok" image="images/image.jpg" disabled="true" access
key="t"/> the attributes are as follows, all of which are optional: id a unique identifier so that you can identify the button with.
... access
key this should be set to a letter that is used as a shortcut
key.
...when the user presses alt (or a similar
key that varies on each platform) and the access
key, the button will be focused from anywhere in the window.
...the code to add is shown in red below: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <button id="find-button" label="find"/> <button id="cancel-button" label="cancel"/> </window> you'll notice that the cancel button was added also.
Trees - Archive of obsolete content
to modify the appearance of a tree cell, the view must instead associate a set of
keywords for a row and cell.
... a special css syntax is used which styles components of the tree body with those
keywords.
... the user can select the treeitems by clicking on them with the mouse, or by highlighting them with the
keyboard.
... the user can select multiple items by holding down the shift or control
keys and clicking additional rows.
button - Archive of obsolete content
event handlers can be used to trap mouse,
keyboard and other events.
... attributes access
key, autocheck, checkstate, checked, command, crop, dir, disabled, dlgtype, group, icon, image, label, open, orient, tabindex, type properties access
key, accessibletype, autocheck, checkstate, checked, command, crop, dir, disabled, dlgtype, group, image, label, open, orient, tabindex, type examples <button label="press me" oncommand="alert('you pressed me!');"/> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
listitem - Archive of obsolete content
attributes access
key, checked, command, crop, current, disabled, image, label, preference, selected, tabindex, type, value properties access
key, accessible, checked, control, crop, current, disabled, image, label, selected, tabindex, value style classes listitem-iconic examples <listbox id="thelist"> <listitem label="ruby"/> <listitem label="emerald"/> <listitem label="sapphire" selected="true"/>...
... <listitem label="diamond"/> </listbox> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
menu - Archive of obsolete content
attributes acceltext, access
key, allowevents, command, crop, disabled, image, label, menuactive, open, sizetopopup, tabindex, value properties accessibletype, access
key, command, control, crop, disabled, image, itemcount, label, labelelement, menupopup, open, parentcontainer, selected, tabindex, value methods appenditem, getindexofitem, getitematindex, insertitemat, removeitemat style classes menu-iconic example <menubar id="sampl...
...menuitem label="save"/> <menuseparator/> <menuitem label="exit"/> </menupopup> </menu> <menu id="edit-menu" label="edit"> <menupopup id="edit-popup"> <menuitem label="undo"/> <menuitem label="redo"/> </menupopup> </menu> </menubar> attributes acceltext type: string text that appears beside the menu label to indicate the shortcut
key (accelerator
key) to use to invoke the command.
... if this value is set, it overrides an assigned
key set in the
key attribute.
... access
key type: character this should be set to a character that is used as a shortcut
key.
menulist - Archive of obsolete content
attributes access
key, crop, disableautoselect, disabled, editable, focused, image, label, oncommand, open, preference, readonly, sizetopopup, tabindex, value properties accessibletype, crop, description, disableautoselect, disabled, editable, editor, image, inputfield, itemcount, label, menuboxobject, menupopup, open, selectedindex, selecteditem, tabindex, value methods appenditem, contains, getindexofitem,...
... getitematindex, insertitemat, removeallitems, removeitemat, select examples <menulist> <menupopup> <menuitem label="option 1" value="1"/> <menuitem label="option 2" value="2"/> <menuitem label="option 3" value="3"/> <menuitem label="option 4" value="4"/> </menupopup> </menulist> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...this occurs when a user selects a menu item or presses a
keyboard shortcut attached to the command.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
prefwindow - Archive of obsolete content
losure, ondialoghelp, onload, onunload, title, type properties buttons, currentpane, defaultbutton, lastselected, preferencepanes, type methods acceptdialog, addpane, canceldialog, centerwindowonscreen, getbutton, opensubdialog, openwindow, showpane examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <prefwindow xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <prefpane id="saveoptions" label="backups"> <preferences> <preference id="pref-backup" name="myapp.mybackups" type="bool"/> <preference id="pref-backupduration" name="myapp.mybackups.duration" type="int"/> </preferences> <checkbox label="automatically save backups" preference="pref-backup"/> <textbox label="duration:" preference="...
...typically, this means that the button will be activated when the enter
key is pressed.
...typically, this means that the button will be activated when the enter
key is pressed.
... <prefwindow xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" id="my-config-dialog" title="my application: configuration" onunload="onunload(event.target)"> </prefwindow> function onunload(prefwindow) { // do actions there like saving values, password setting (that is not handled as a preference), etc.
radio - Archive of obsolete content
the user can switch which radio button is turned on by selecting it with the mouse or
keyboard.
... attributes access
key, command, crop, disabled, focused, group, image, label, selected, tabindex, value properties access
key, accessibletype, control, crop, disabled, image, label, radiogroup, selected, tabindex, value examples <radiogroup> <radio id="orange" label="red" access
key="r"/> <radio id="violet" label="green" access
key="g" selected="true"/> <radio id="yellow" label="blue" access
key="b" disabled="true"/> </radiogroup> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
scale - Archive of obsolete content
the user may use the arrow
keys to increment and decrement the value by one unit, or the page up and page down
keys to increment and decrement the value by one page, as specified by the pageincrement attribute.
... the home and end
keys set the scale's value to the minimum and maximum values, respectively.
... pageincrement type: integer the amount by which the value of the curpos or value attribute changes when the tray of the scroll bar (the area in which the scroll bar thumb moves) is clicked, or when the page up or page down
keys are pressed.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
stringbundle - Archive of obsolete content
a property file is a list of property
key-value pairs each on a separate line.
... the
key and value is separated with an equals sign.
... methods getformattedstring(
key, strarray ) return type: string looks up the format string for the given
key name in the string bundle and returns a formatted copy where each occurrence of %s (uppercase) is replaced by each successive element in the supplied array.
... getstring(
key ) return type: string returns the string with the given
key name from the string bundle.
tab - Archive of obsolete content
attributes access
key, afterselected, beforeselected, command, crop, disabled, first-tab, image, label, last-tab, linkedpanel, oncommand, pending, pinned, selected, tabindex, unread, validate, value properties access
key, accessibletype, command, control, crop, disabled, image, label, linkedpanel, selected, tabindex, value examples (example needed) attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...this occurs when a user selects a menu item or presses a
keyboard shortcut attached to the command.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
2006-12-01 - Archive of obsolete content
server side spidermon
key juicescript is an open source version of a server side javascript.
...http://www.juicescript.org/ discussions deleting objects in spidermon
key a user asks if there's a method of manually deleting an object in spidermon
key before garbage collector deletes it.
... peter wilson's reply was to add a method that does the deleting with a native implementation that releases the resources held by the object as seen in this database interface: var mydbase = new pgsqlconnection; mydbase.connect("database"); mydbase.exec("select * from mytable where ..."); // use the result data - (native implementation function) mydbase.close() spidermon
key for server side inquiry about why javascript hasn't caught on for general server-side scripting.
... peter wilson lists some important comparisons between spidermon
key and php.
JS-Engine FAQ - Archive of obsolete content
spidermon
key how long are private pointers?
...check the jsval macros at the top of js/src/jsapi.h can an embedded spidermon
key js engine use domparser extension of mozilla?
... spidermon
key library loading mechanism?
... to write wrappers in pure javascript to interface with any c library on the system there are mechanisms such as xpcshell, wxjs, jsdb, jsni coding spidermon
key in c check out this tutorial how to compile tamarin on linux/x86 there is a patch that allows you to compile it.
Scratchpad - Archive of obsolete content
keyboard shortcuts command windows macos linux open the scratchpad shift + f4 shift + f4 shift + f4 run scratchpad code ctrl + r cmd + r ctrl + r run scratchpad code, display the result in the object inspector ctrl + i cmd + i ctrl + i run scratchpad code, insert the result as a comment ctrl + l cmd + l ctrl + ...
... in the editor preferences section of the developer tools settings, you can choose to use vim, emacs, or sublime text
key bindings instead.
... to select these, visit about:config, select the setting devtools.editor.
keymap, and assign "vim" or "emacs", or "sublime" to that setting.
... from firefox 33 onwards, the
key binding preference is exposed in the editor preferences section of the developer tools settings, and you can set it there instead of about:config.
Iterator - Archive of obsolete content
the iterator function is a spidermon
key-specific feature, and will be removed at some point.
... syntax iterator(object, [
keyonly]) parameters object object to iterate over properties.
...
keyonly if
keyonly is truthy value, iterator.prototype.next returns property_name only.
...iterator instance returns [property_name, property_value] array for each iteration if
keyonly is falsy, otherwise, if
keyonly is truthy, it returns property_name for each iteration.
Old Proxy API - Archive of obsolete content
warning: the spidermon
key proxy implementation is a prototype and the proxy api and semantics specifications are unstable.
... the spidermon
key implementation may not reflect the latest specification draft.
... object.
keys(proxy)
keys: function() -> string array function() { return this.getownpropertynames().filter( function (name) { return this.getownpropertydescriptor(name).enumerable } ); } invariants even though proxies provide a lot of power to users, some operations are not trapped in order to keep the language consistent: the triple equal (===) operator is n...
...name) { return object.prototype.hasownproperty.call(obj, name); }, get: function(receiver, name) { return obj[name]; }, set: function(receiver, name, val) { obj[name] = val; return true; }, // bad behavior when set fails in non-strict mode enumerate: function() { var result = []; for (name in obj) { result.push(name); }; return result; },
keys: function() { return object.
keys(obj) } }; } // ...
Server-Side JavaScript - Archive of obsolete content
today with computing cycles having increased more than 10-fold and mozilla's work on rhino (javascript interpreter in java) and spidermon
key (javascript interpreter in c) and javascript itself, we have very solid foundations for javascript to be extraordinarily useful and applicable on the server-side again -- with performance in the same range as popular server-side environments like php and ruby on rails.
... now, with tracemon
key available, javascript (both client side and server-side) can see 20x to 40x speed improvements according to brendan eich, mozilla cto and creator of javascript.
... server-side javascript is another way in which, as this article quotes eich, "mozilla wants to 'get people thinking about javascript as a more general-purpose language' and show them that 'it really is a platform for writing full applications.'" many vendors today are embedding mozilla rhino or mozilla spidermon
key into web server environments.
... some, like aptana with the open source jaxer server actually embed the entire mozilla firefox browser engine (including spidermon
key) within a web server to enable server-side ajax and server-side dom access in addition to server-side execution of javascript.
XForms Label Element - Archive of obsolete content
ui behavior access
key support - if the access
key attribute is specified on labeled xforms controls or on the label element itself then the label text for the control will contain an indicator as to what the access
key is in a standard way.
... usually by underlining the access
key character in the label text.
... focus behavior - when a label element is clicked or its access
key is activated then the form control that contains the label will be given the focus.
... attributes ui common access
key - used to specify the
keyboard shortcut for focusing the parent form control.
RDF in Mozilla FAQ - Archive of obsolete content
statements about the same rdf resource can then be intermingled: for example, the "last visit date" of a particular website comes from the "browser global history" datasource, and the "shortcut
keyword" that you can type to reach that website comes from the "browser bookmarks" datasource.
... both datasources refer to "website" by url: this is the "
key" that allows the datasources to be "merged" effectively.
...the table is
keyed by the datasource's "uri", which is either the url of an rdf/xml file, or a "special" uri starting with rdf: that refers to a built-in datasource.
... <window xmlns="http://www.mozilla.org/
keymaster/gat...re.is.only.xul"> ...
Gecko FAQ - Gecko Redirect 1
gecko is used in multiple browsers, including mozilla firefox, seamon
key, and others.
... mozilla.org assembles the necessary components into its applications, such as firefox, thunderbird, seamon
key, which are available for free download from mozilla.org.
... layout component tracks content layout bugs that may be related to a variety of specifications html 4.0 elements, form controls, frames, tables, and form submission bug reports marked with the html4
keyword "meta bug" for tracking outstanding issues with html 4.01 compliance css: style system component (see also bug reports marked with the css1, css2, and css3
keywords) dom: see dom0, dom1, dom2 and event handling components xml rdf core javascript language interpreter (javascript engine) http 1.1 compliance bugs should generally be found on the networking, networking - general, an...
... gecko includes the following components: document parser (handles html and xml) layout engine with content model style system (handles css, etc.) javascript runtime (spidermon
key) image library networking library (necko) platform-specific graphics rendering and widget sets for win32, x, and mac user preferences library mozilla plug-in api (npapi) to support the navigator plug-in interface open java interface (oji), with sun java 1.2 jvm rdf back end font library security library (nss) original document information author(s): angus other contributors: ekroc...
Signature (functions) - MDN Web Docs Glossary: Definitions of Web-related terms
a signature can include: parameters and their types a return value and type exceptions that might be thrown or passed back information about the availability of the method in an object-oriented program (such as the
keywords public, static, or prototype).
... public static void main(string[] args) the public
keyword is an access modifier and indicates that this method can be called by any object.
... the static
keyword indicates that this method is a class method as opposed to being an instance method.
... the void
keyword indicates that this method has no return value.
What is a URL? - Learn web development
summary with hypertext and http, url is one of the
key concepts of the web.
...let's see the most important parts using the following url: http://www.example.com:80/path/to/myfile.html?
key1=value1&
key2=value2#somewhereinthedocument http is the protocol.
... ?
key1=value1&
key2=value2 are extra parameters provided to the web server.
... those parameters are a list of
key/value pairs separated with the & symbol.
Use JavaScript within a webpage - Learn web development
make all functionality accessible from the
keyboard.
... if you use pointer events (like mouse events or touch events), duplicate the functionality with
keyboard events.
... test your site using a
keyboard only.
...it takes extra time to navigate with the
keyboard or hear content read out.
A first splash into JavaScript - Learn web development
you create a variable with the
keyword let (or var) followed by a name for your variable (you'll read more about the difference between the
keywords in a future article).
... constants are used to store values that are immutable or can't be changed and are created with the
keyword const.
...here we have defined a function by using the
keyword function, followed by a name, with parentheses put after it.
...the simplest form of conditional block starts with the
keyword if, then some parentheses, then some curly braces.
Arrays - Learn web development
subarray[1]);\n total += price;\n let itemtext = name + \' — $\' + price;\n\n let listitem = document.createelement(\'li\');\n listitem.textcontent = itemtext;\n list.appendchild(listitem);\n}\n\ntotalbox.textcontent = \'total: $\' + total.tofixed(2);'; let solutionentry = jssolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).
...0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; html { font-family: sans-serif; } h2 { font-size: 16px; } .a11y-label { margin: 0; ...
...temtext = myhistory[i];\n const listitem = document.createelement(\'li\');\n listitem.textcontent = itemtext;\n list.appendchild(listitem);\n }\n\n if(myhistory.length >= 5) {\n myhistory.pop();\n }\n\n searchinput.value = \'\';\n searchinput.focus();\n }\n}'; let solutionentry = jssolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).s...
...0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; test your skills!
Inheritance in JavaScript - Learn web development
these are fairly easy to spot — in your own custom code, they are the members defined inside a constructor using the this.x = x type lines; in built in browser code, they are the members only available to object instances (usually created by calling a constructor using the new
keyword, e.g.
...for example, object.
keys().
... to create a subclass we use the extends
keyword to tell javascript the class we want to base our class on, class teacher extends person { constructor(subject, grade) { this.subject = subject; this.grade = grade; } } but there's a little catch.
... unlike old-school constructor functions where the new operator does the initialization of this to a newly-allocated object, this isn't automatically initialized for a class defined by the extends
keyword, i.e the sub-classes.
Accessibility API cross-reference
grid a composite widget containing a collection of one or more rows with one or more cells where some or all cells in the grid are focusable by using methods of two-dimensional navigation, such as directional arrow
keys, e.g.
...<h> is also available but its use is not recommended because of lack of suitable tools - and the heading level is undefined click on this thing and then click on the item for tooltip style help helpballoon n/a n/a n/a editable field that allows user to assign a
key combination hot
keyfield n/a n/a n/a graphic that indicates something, such as an arrow indicator n/a n/a n/a abstract role - a generic type of widget that allows user input.
...supported for anything that's not a menu is poor n/a n/a aria-haspopup the item can get the
keyboard focus focusable focusable focusable tabindex attribute with value of 0 or more the item has focus for text input.
... for other kinds of
keyboard operation, e.g.
Mozilla accessibility architecture
the hash
keys are the pointers to the dom node for each accessible.
...when we get the child id back, we can recreate the hash
key needed to retrieve the accessible.
...the weak pres shell is used to create a hash
key to get the doc accessible from gglobaldocaccessiblecache.
... the dom node pointer is used to create the new hash
key and add the nsiaccessnode* into the document accessible's maccessnodecache.
Chrome registration
firefox 2, thunderbird 2, and seamon
key 1.1 will not find the chrome when packagename is mixed case.
...firefox 3, thunderbird 3, and seamon
key 2 support mixed case.
.../locale/necko/ content xbl-marquee jar:comm.jar!/content/xbl-marquee/ content pipnss jar:pipnss.jar!/content/pipnss/ locale pipnss en-us jar:en-us.jar!/locale/pipnss/ # firefox-only overlay chrome://browser/content/pageinfo.xul chrome://pippki/content/pageinfooverlay.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} # seamon
key-only overlay chrome://navigator/content/pageinfo.xul chrome://pippki/content/pageinfooverlay.xul application={92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a} overlay chrome://communicator/content/pref/preftree.xul chrome://pippki/content/prefoverlay.xul content pippki jar:pippki.jar!/content/pippki/ locale pippki en-us jar:en-us.jar!/locale/pippki/ content ...
...this format is deprecated; however, seamon
key versions before version 2 do not support the plaintext manifest format yet, so contents.rdf manifests are required for extensions that wish to maintain backwards compatibility with firefox 1.0 or the suite.
HTTP logging
on all newer versions of windows, you can hold down the windows
key and press "r".
...press the enter
key after each one.: for 64-bit windows: set moz_log=timestamp,rotate:200,nshttp:5,cache2:5,nssockettransport:5,nshostresolver:5,cookie:5 set moz_log_file=%temp%\log.txt "c:\program files\mozilla firefox\firefox.exe" for 32-bit windows: set moz_log=timestamp,rotate:200,nshttp:5,cache2:5,nssockettransport:5,nshostresolver:5,cookie:5 set moz_log_file=%temp%\log.txt "c:\program files (x86)\mozilla firefox\firefox.exe" (these instructions assume that you installed firefox to the default location, and that drive c: is your windows startup disk.
... copy and paste the following commands into the terminal window, hitting the return
key after each line.
...on all newer versions of windows, you can hold down the windows
key and press "r".
Using the Browser API
when you tap the url bar, you can enter a url using the built-in firefox os
keyboard (although note that we haven't implemented anything sophisticated in this app, like autofilling the http://, etc.).
... when you press the
keyboard's return button, the 'submit' event is fired, which we handle like this: urlform.addeventlistener('submit',function(e) { e.preventdefault(); browser.src = urlbar.value; urlbar.blur(); }); we first call preventdefault() to stop the form just submitting and reloading the page — which is really not what we want.
...finally, we call blur() on the url bar to stop focusing it, so the
keyboard moves off the screen, allowing us to get our full screen view back.
... that when it is submitted, the htmliframeelement.findall() method is used to do a search for the string entered into the search input element (searchbar) within the text of the current page (the second parameter can be changed to 'case-insensitive' if you want a case-insensitive search.) we then enable the previous and next buttons, set searchactive to true, and blur() the search bar to make the
keyboard disappear and stop taking up our screen once the search is submitted.
Gecko versions and application versions
gecko version applications based on it gecko 55 firefox 55, seamon
key 2.52 gecko 52 firefox 52, seamon
key 2.49 gecko 49 firefox 49, seamon
key 2.46 gecko 43 firefox 43, seamon
key 2.40 gecko 42 firefox 42, seamon
key 2.39 gecko 41 firefox 41, seamon
key 2.38 gecko 38 firefox 38, seamon
key 2.35 gecko 36 firefox 36, seamon
key 2.33 gecko 35 firefox 35, seamon
key 2.32 gecko 34 firefox 34, seamon
key 2.31 geck...
...o 33 firefox 33, seamon
key 2.30 gecko 32 firefox 32, seamon
key 2.29 gecko 29 firefox 29, seamon
key 2.26 gecko 28 firefox 28, seamon
key 2.25 gecko 27 firefox 27, seamon
key 2.24 gecko 26 firefox 26, seamon
key 2.23 gecko 25 firefox 25, seamon
key 2.22 gecko 24 firefox 24, thunderbird 24, seamon
key 2.21 gecko 23 firefox 23, seamon
key 2.20 gecko 22 firefox 22, seamon
key 2.19 gecko 21 firefox 21, seamon
key 2.18 gecko 20 firefox 20, seamon
key 2.17 gecko 19 firefox 19, seamon
key 2.16 gecko 18 firefox 18, firefox os 1.0, seamon
key 2.15 gecko 17 firefox 17, thunderbird 17, seamon
key 2.14 gecko 16 firefox 16, thunderbird 16,...
... seamon
key 2.13 gecko 15 firefox 15, thunderbird 15, seamon
key 2.12 gecko 14 firefox 14, thunderbird 14, seamon
key 2.11 gecko 13 firefox 13, thunderbird 13, seamon
key 2.10 gecko 12 firefox 12, thunderbird 12, seamon
key 2.9 gecko 11 firefox 11, thunderbird 11, seamon
key 2.8 gecko 10 firefox 10, thunderbird 10, seamon
key 2.7 gecko 9 firefox 9, thunderbird 9, seamon
key 2.6 gecko 8 firefox 8, thunderbird 8, seamon
key 2.5 gecko 7 firefox 7, thunderbird 7, seamon
key 2.4 gecko 6 firefox 6, thunderbird 6, seamon
key 2.3 gecko 5 firefox 5, thunderbird 5, seamon
key 2.2 gecko 2 firefox 4, thunderbird 3.3, seamon
key 2.1 gecko 1.9.2 firefox 3.6, thunder...
...bird 3.1 gecko 1.9.1 firefox 3.5, thunderbird 3, seamon
key 2.0 gecko 1.9 firefox 3 gecko 1.8.1 firefox 2, thunderbird 2, seamon
key 1.1 gecko 1.8 firefox 1.5, thunderbird 1.5, seamon
key 1.0 gecko 1.7 firefox 1.0, thunderbird 1.0, nvu 1.0, mozilla suite 1.7 older versions of gecko match the mozilla suite versions ...
L10n Checks
ab-cd browser chrome/browser browser.dtd +backforwardmenu.tooltip +fullzoomenlargecmd.command
key3 +fullzoomreducecmd.command
key2 +fullzoomresetcmd.command
key2 +organizebookmarks.label -showallbookmarkscmd2.label migration/migration.dtd -importfromfile.access
key -importfromfile.label +importfromhtmlfile.access
key +importfromhtmlfile.label you can assume changed strings when you see entities removed and adde...
...the output closes with a summary, giving the total counts of missing and obsolete strings and some statistics on how many strings are changed or not, excluding access and command
keys.
..."seamon
key" with its extensions), e.g.: check-l10n-completeness -f suite/locales/l10n.ini ../l10n/ de test the reference locale in the source mode you can tell l10n checks to also check the reference locale, by setting the -e parameter (requires the -a parameter to be set too), e.g.: check-l10n-completeness -a 1 -e suite/locales/l10n.ini ../l10n/ de turbo mode in the source mode you can tell l10n checks t...
...o look only for missing and obsolete entities and files, by setting the -t parameter, e.g.: check-l10n-completeness -t suite/locales/l10n.ini ../l10n/ de check access
keys in all modes you can tell l10n checks to check if the access
keys are set properly, by setting the -a parameter, e.g.: check-l10n-completeness -a 1 suite/locales/l10n.ini ../l10n/ de there are three modes available: 1: show just errors 2: show errors and important warnings 3: show all errors and warnings spell checking in all modes you can tell l10n checks to search for spelling errors, by setting the -c parameter, e.g.: check-l10n-completeness -c suite/locales/l10n.ini ../l10n/ de spell checking requires enchant and pyenchant to be installed on the system.
AsyncTestUtils extended framework
addtag(atag
key) adds the given tag to all the messages in the set.
... the tag
key must correspond to an existing tag.
... the tag
key is not the label, but what is actually stored on the imap server.
... removetag(atag
key) removes the given tag from all the messages in the set.
PLHashEntry
an entry has a
key and a value, represented by the following fields in the plhashentry structure.
... const void *
key; void *value; the
key field is a pointer to an opaque
key.
...if the
key of an entry is an integral value that can fit into a void * pointer, you can just cast the
key itself to void * and store it in the
key field.
... warning: there are other fields in the plhashentry structure besides
key and value.
PL_HashTableRemove
removes the entry with the specified
key from the hash table.
... syntax #include <plhash.h> prbool pl_hashtableremove( plhashtable *ht, const void *
key); parameters the function has the following parameters: ht a pointer to the hash table from which to remove the entry.
...
key a pointer to the
key for the entry to be removed.
... description if there is no entry in the table with the specified
key, pl_hashtableremove returns pr_false.
4.3.1 Release Notes
release date: 2009-12-02 introduction network security services for java (jss) 4.3.1 is a minor release with the following new features: support for ssl3 & tls renegotiation vulnerablity support to explicitly set the
key usage for the generated private
key jss 4.3.1 is tri-licensed under mpl 1.1/gpl 2.0/lgpl 2.1.
...sslsocket.ssl_renegotiate_requires_xtn - not yet implemented explicitly set the
key usage for the generated private
key in pkcs #11, each
keypair can be marked with the operations it will be used to perform.
... some tokens require that a
key be marked for an operation before the
key can be used to perform that operation; other tokens don't care.
... see generateec
keypairwithopflags see generatersa
keypairwithopflags see generatedsa
keypairwithopflags distribution information jss is checked into mozilla/security/jss/.
NSS_3.12.1_release_notes.html
cert_encodesubject
keyid (see cert.h) encode certificate skid (subject
key id) extension.
... bug 67890: create self-signed cert with existing
key that signed csr bug 129303: nss needs to expose interfaces to deal with multiple token sources of certs.
...03543: pkix: need a way to enable/disable aia cert fetching bug 408847: pkix_ocspchecker_check does not support specified responder (and given signercert) bug 414003: crash [[@ cert_decodecertpackage] sometimes with this testcase bug 415167: memory leak in certutil bug 417399: arena allocation results are not checked in pkix_pl_infoaccess_parselocation bug 420644: improve ssl tracing of
key derivation bug 426886: use const char* in pk11_importcertfor
key bug 428103: cert_encodesubject
keyid is not defined in any public header file bug 429716: debug builds of libpkix unconditionally dump socket traffic to stdout bug 430368: vfychain -t option is undocumented bug 430369: vfychain -o succeeds even if -pp is not specified bug 430399: vfychain -pp crashes bug 430405: error lo...
... bug 439123: assertion failure in libpkix at shutdown bug 440062: incorrect list element count in pkix_list_appenditem function bug 442618: eliminate dead function cert_certpackagetype bug 443755: extra semicolon in pkm_tls
keyandmacderive makes conditional code unconditional bug 443760: extra semicolon in seqdatabase makes static analysis tool suspicious bug 448323: certutil -k doesn't report the token and slot names for found
keys bug 448324: ocsp checker returns incorrect error code on request with invalid signing cert bug 449146: remove dead libsec function declarations bug 453227: installation of pem-enco...
NSS 3.12.5 release_notes
deprecated headers the header file
key.h is deprecated.
... please use
keyhi.h instead.
... additional documentation in pk11pub.h: the caller of pk11_derencodepublic
key should free the returned secitem with a secitem_freeitem(..., pr_true) call.
...rs (4th component of version number) to nssutil.h bug 511227: firefox 3.0.13 fails to compile on freebsd/powerpc bug 511312: nss fails to load softoken, looking for sqlite3.dll bug 511781: add new tls 1.2 cipher suites implemented in windows 7 to ssltap bug 516101: if pk11_importcert fails, it leaves the certificate undiscoverable by cert_pkixverifycert bug 518443: pk11_importandreturnprivate
key leaks an arena bug 518446: pk11_derencodepublic
key leaks a certsubjectpublic
keyinfo bug 518457: sec
key_encodedersubjectpublic
keyinfo and pk11_derencodepublic
key are duplicate bug 522510: add deprecated comments to
key.h and pk11func.h bug 522580: nss uses port_memcmp for comparing secret data.
NSS 3.16.2.3 release notes
notable changes in nss 3.16.2.3 bug 1057161: check that an imported elliptic curve public
key is valid.
... previously nss would only validate the peer's public
key before performing ecdh
key agreement.
... now ec public
keys are validated at import time.
... bugs fixed in nss 3.16.2.3 bug 1057161 - nss hangs with 100% cpu on invalid ec
key bug 1036735 - add support for draft-ietf-tls-downgrade-scsv to nss compatibility nss 3.16.2.3 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.17 release notes
nss 3.17 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_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.
... the ssl_reuse_server_ecdhe_
key option defaults to pr_true, which means the server's ephemeral ecdh
key is reused for multiple handshakes.
... this option does not affect the tls client code, which always generates a fresh ephemeral ecdh
key for each handshake.
... new macros in ssl.h ssl_reuse_server_ecdhe_
key notable changes in nss 3.17 the manual pages for the certutil and pp tools have been updated to document the new parameters that had been added in nss 3.16.2.
NSS 3.28.3 release notes
that size increase caused crashes or malfunctioning with applications that use that data structure directly, or indirectly through ecpublic
key, ecprivate
key, nsslow
keypublic
key, nsslow
keyprivate
key, or potentially other data structures that reference ecparams.
... sec
keyecpublic
key had been extended with a new attribute, named "encoding".
... if an application passed type sec
keyecpublic
key to nss (as part of sec
keypublic
key), the nss library read the uninitialized attribute.
... with this nss release sec
keyecpublic
key.encoding is deprecated.
NSS 3.29.1 release notes
that size increase caused crashes or malfunctioning with applications that use that data structure directly, or indirectly through ecpublic
key, ecprivate
key, nsslow
keypublic
key, nsslow
keyprivate
key, or potentially other data structures that reference ecparams.
... sec
keyecpublic
key had been extended with a new attribute, named "encoding".
... if an application passed type sec
keyecpublic
key to nss (as part of sec
keypublic
key), the nss library read the uninitialized attribute.
... with this nss release sec
keyecpublic
key.encoding is deprecated.
NSS Config Options
nss config options format the specified ciphers will be allowed by policy, but an application may allow more by policy explicitly: config="allow=curve1:curve2:hash1:hash2:rsa-1024..." only the specified hashes and curves will be allowed: config="disallow=all allow=sha1:sha256:secp256r1:secp384r1" only the specified hashes and curves will be allowed, and rsa
keys of 2048 or more will be accepted, and dh
key exchange with 1024-bit primes or more: config="disallow=all allow=sha1:sha256:secp256r1:secp384r1:min-rsa=2048:min-dh=1024" a policy that enables the aes ciphersuites and the secp256/384 curves: config="allow=aes128-cbc:aes128-gcm::hmac-sha1:sha1:sha256:sha384:rsa:ecdhe-rsa:secp256r1:secp384r1" turn off md5 config="disallow=md5" turn off md5 and sha1 only for ssl con...
... future
key words (not yet implemented): enable: turn on ciphersuites by default.
...r1 sect409k1 sect409r1 sect571k1 sect571r1 hashes md2 md4 md5 sha1 sha224 sha256 sha384 sha512 macs hmac-sha1 hmac-sha224 hmac-sha256 hmac-sha384 hmac-sha512 hmac-md5 ciphers aes128-cbc aes192-cbc aes256-cbc aes128-gcm aes192-gcm aes256-gcm camellia128-cbc camellia192-cbc camellia256-cbc seed-cbc des-ede3-cbc des-40-cbc des-cbc null-cipher rc2 rc4 idea ssl
key exchanges rsa rsa-export dhe-rsa dhe-dss dh-rsa dh-dss ecdhe-ecdsa ecdhe-rsa ecdh-ecdsa ecdh-rsa restrictions for asymmetric
keys (integers) rsa-min dh-min dsa-min constraints on ssl protocols versions (integers) tls-version-min tls-version-max constraints on dtls protocols versions (integers) dtls-version-min dtls-version-max policy flags for algorithms ssl ssl-
key-exchang...
...e
key-exchange cert-signature signature all none ...
nss tech note4
server's cert handle don't forget to clean up the cert handle when you're done with it void cert_destroycertificate(certcertificate *cert); some info is readily available cert->subjectname (char*) cert->issuername (char*) cert->emailaddr (char*) or char *cert_getcertificateemailaddress(certcertificate *cert); cert->
keyusage (unsigned int) to break the issuer and subject names into components pass &(cert->issuer) or &(cert->subject) to the following functions char *cert_getcommonname(certname *name); char *cert_getcertemailaddress(certname *name); char *cert_getcountryname(certname *name); char *cert_getlocalityname(certname *name); char *cert_getstatename...
...tem *value); get the value of an extension with the given oid secstatus cert_findcertextensionbyoid (certcertificate *cert, secitem *oid, secitem *value); get the decoded value of the "basic constraints" extension secstatus cert_findbasicconstraintexten (certcertificate *cert, certbasicconstraints *value); get value of the
keyusage extension.
... secstatus cert_find
keyusageextension (certcertificate *cert, secitem *value); get decoded value of the subject
keyid extension.
... secstatus cert_findsubject
keyidexten (certcertificate *cert, secitem *retitem); for more information browse through the nss source code online at http://lxr.mozilla.org/mozilla/source/security/nss/ and http://lxr.mozilla.org/security/ documentation on some cert funcs http://www.mozilla.org/projects/security/pki/nss/ref/ssl/sslcrt.html ...
FIPS mode of operation
ctions fc_getslotlist fc_getslotinfo fc_gettokeninfo fc_waitforslotevent fc_getmechanismlist fc_getmechanisminfo fc_inittoken fc_initpin fc_setpin session management functions fc_opensession fc_closesession fc_closeallsessions fc_getsessioninfo fc_getoperationstate fc_setoperationstate fc_login fc_logout object management functions these functions manage certificates and
keys.
... fc_digestinit fc_digest fc_digestupdate fc_digest
key fc_digestfinal signature and mac generation functions these functions support dsa, rsa, ecdsa, and hmac.
... fc_verifyinit fc_verify fc_verifyupdate fc_verifyfinal fc_verifyrecoverinit fc_verifyrecover dual-function cryptographic functions fc_digestencryptupdate fc_decryptdigestupdate fc_signencryptupdate fc_decryptverifyupdate
key management functions fc_generate
key: dsa domain parameters (pqg) fc_generate
keypair: dsa, rsa, and ecdsa.
... fc_wrap
key: rsa
key wrapping fc_unwrap
key: rsa
key wrapping fc_derive
key: diffie-hellman, ec diffie-hellman random number generation functions fc_seedrandom fc_generaterandom: performs continuous random number generator test.
NSS tools : cmsutil
-d dbdir specify the
key/certificate database directory (default is ".") -e envfile specify a file containing an enveloped message for a set of recipients to which you would like to send an encrypted message.
...-p password use password as
key database password.
...-y ekprefnick specify an encryption
key preference by nickname.
...authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
NSS tools : ssltab
type = 12 (server_
key_exchange) length = 202 (0x0000ca) 0: 0e 00 00 00 |....
... type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { 0: 16 03 00 00 44 |....d type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { 0: 10 00 00 40 |...@ type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
...97 (0x3e5) handshake { type = 2 (server_hello) length = 70 (0x000046) serverhello { server_version = {3, 0} random = {...} session id = { length = 32 contents = {..} } cipher_suite = (0x0003) ssl3/rsa/rc4-40/md5 } type = 11 (certificate) length = 709 (0x0002c5) certificatechain { chainlength = 706 (0x02c2) certificate { size = 703 (0x02bf) data = { saved in file 'cert.001' } } } type = 12 (server_
key_exchange) length = 202 (0x0000ca) type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } } } ] --> [ sslrecord { type = 20 (change_cipher_spec) version = { 3,0 } length = 1 (0x1) } sslrecord { type = 22 (handshake)...
...authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
NSS tools : ssltap
type = 12 (server_
key_exchange) length = 202 (0x0000ca) 0: 0e 00 00 00 |....
... type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { 0: 16 03 00 00 44 |....d type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { 0: 10 00 00 40 |...@ type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
...97 (0x3e5) handshake { type = 2 (server_hello) length = 70 (0x000046) serverhello { server_version = {3, 0} random = {...} session id = { length = 32 contents = {..} } cipher_suite = (0x0003) ssl3/rsa/rc4-40/md5 } type = 11 (certificate) length = 709 (0x0002c5) certificatechain { chainlength = 706 (0x02c2) certificate { size = 703 (0x02bf) data = { saved in file 'cert.001' } } } type = 12 (server_
key_exchange) length = 202 (0x0000ca) type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } } } ] --> [ sslrecord { type = 20 (change_cipher_spec) version = { 3,0 } length = 1 (0x1) } sslrecord { type = 22 (handshake)...
...authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
S/MIME functions
function name/documentation source code nss versions nss_cmscontentinfo_getbulk
key mxr 3.2 and later nss_cmscontentinfo_getbulk
keysize mxr 3.2 and later nss_cmscontentinfo_getcontent mxr 3.2 and later nss_cmscontentinfo_getcontentencalgtag mxr 3.2 and later nss_cmscontentinfo_getcontenttypetag mxr 3.2 and later nss_cmscontentinfo_setbulk
key...
...ge_isencrypted mxr 3.4.1 and later nss_cmsmessage_issigned mxr 3.4 and later nss_cmsrecipientinfo_create mxr 3.2 and later nss_cmsrecipientinfo_createfromder mxr 3.8 and later nss_cmsrecipientinfo_createnew mxr 3.8 and later nss_cmsrecipientinfo_createwithsubj
keyid mxr 3.7 and later nss_cmsrecipientinfo_createwithsubj
keyidfromcert mxr 3.7 and later nss_cmsrecipientinfo_destroy mxr 3.2 and later nss_cmsrecipientinfo_encode mxr 3.8 and later nss_cmsrecipientinfo_getcertand
key mxr 3.8 and later nss_cmsrecipientinfo_unwra...
...pbulk
key mxr 3.7.2 and later nss_cmsrecipientinfo_wrapbulk
key mxr 3.7.2 and later nss_cmssigneddata_addcertchain mxr 3.2 and later nss_cmssigneddata_addcertlist mxr 3.2 and later nss_cmssigneddata_addcertificate mxr 3.2 and later nss_cmssigneddata_adddigest mxr 3.2 and later nss_cmssigneddata_addsignerinfo mxr 3.2 and later nss_cmssigneddata_create mxr 3.2 and later nss_cmssigneddata_createcertsonly mxr 3.2 and later nss_cmssigneddata_destroy mxr 3.2 and later nss_cmssigneddata_getcontentinfo mxr 3.2 and l...
...ts mxr 3.2 and later nss_cmssigneddata_setdigestvalue mxr 3.4 and later nss_cmssigneddata_signerinfocount mxr 3.2 and later nss_cmssigneddata_verifycertsonly mxr 3.2 and later nss_cmssigneddata_verifysignerinfo mxr 3.2 and later nss_cmssignerinfo_addmssmimeenc
keyprefs mxr 3.6 and later nss_cmssignerinfo_addsmimecaps mxr 3.2 and later nss_cmssignerinfo_addsmimeenc
keyprefs mxr 3.2 and later nss_cmssignerinfo_addsigningtime mxr 3.2 and later nss_cmssignerinfo_create mxr 3.2 and later nss_cmssignerinfo_createwithsubj
keyid...
NSS tools : cmsutil
-d dbdir specify the
key/certificate database directory (default is ".") -e envfile specify a file containing an enveloped message for a set of recipients to which you would like to send an encrypted message.
... -p password use password as
key database password.
... -y ekprefnick specify an encryption
key preference by nickname.
... authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
NSS tools : ssltap
type = 12 (server_
key_exchange) length = 202 (0x0000ca) 0: 0e 00 00 00 |....
... type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { 0: 16 03 00 00 44 |....d type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { 0: 10 00 00 40 |...@ type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
... cipher_suite = (0x0003) ssl3/rsa/rc4-40/md5 } type = 11 (certificate) length = 709 (0x0002c5) certificatechain { chainlength = 706 (0x02c2) certificate { size = 703 (0x02bf) data = { saved in file 'cert.001' } } } type = 12 (server_
key_exchange) length = 202 (0x0000ca) type = 14 (server_hello_done) length = 0 (0x000000) } } ] --> [ sslrecord { type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } }...
... authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
Creating JavaScript jstest reftests
this directory contains tests of spidermon
key conformance to ecmascript as well as spidermon
key non-standard extenstions to ecmascript.
... non262 tests the directory js/src/tests/non262/ should contain all tests of the following type: regressions of spidermon
key non-standard spidermon
key extensions to the javascript language test of "implementation-defined" details of the ecmascript standard for example, the exact definition of pi or some details of array sorting.
... performance tests or stress tests tests of spidermon
key's comformance to the ecmascript standard a brief history: in 2017, spidermon
key started comsuming test262, a comprehensive tests suite for ecmascript implementations.
... before using test262, spidermon
key had a fair number of internal tests of conformance to ecmascript, and many of those tests remain in the js/src/non262 directory as regressions.
Property cache
spidermon
key's property cache is an internal data structure used to speed up property accesses in the interpreter and to communicate between the interpreter and jit.
...spidermon
key mainly uses type inference to determine which properties are being accessed; in cases where type inference does not find the exact shape of the object being accessed, spidermon
key uses a pic (polymorphic inline caches) to store the result of the lookup.
... the hash table entries are
key-value pairs.
... the
keys describe the context in which a property lookup occurs.
JSNative
full documentation of how to define a jsnative (or a jsfastnative, the equivalent typedef which preceded it) is available in the api header "js/callargs.h" added in spidermon
key 24.
... this header is new, but the semantics it describes are applicable to all recent spidermon
key releases.
... the behavior of a jsnative is implemented using a js::callargs structure added in spidermon
key 17.
... (this structure is now provided in "js/callargs.h" added in spidermon
key 24 as well as through "jsapi.h".) this structure encapsulates access to the callee function, this, the function call's arguments, and the eventual return value.
JS_AlreadyHasOwnProperty
this article covers features introduced in spidermon
key 1.8 determine whether a property is already physically present on a jsobject.
...ty(jscontext *cx, js::handleobject obj, const char *name, bool *foundp); boo js_alreadyhasownucproperty(jscontext *cx, js::handleobject obj, const char16_t *name, size_t namelen, bool *foundp); boo js_alreadyhasownpropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, bool *foundp); // added in spidermon
key 1.8.1 boo js_alreadyhasownelement(jscontext *cx, js::handleobject obj, uint32_t index, bool *foundp); name type description cx jscontext * pointer to a js context.
...for native objects—objects whose properties are stored in the default data structure provided by spidermon
key—these functions simply check that data structure to see if the specified field is present.
...(such properties are an implementation detail of spidermon
key.
JS_CStringsAreUTF8
these functions have been removed in spidermon
key 19.
... syntax jsbool js_cstringsareutf8(void); void js_setcstringsareutf8(void); // added in spidermon
key 1.8 description by default, all c/c++ strings passed into the jsapi are treated as iso/iec 8859-1, also known as iso-latin-1.
...however, spidermon
key can optionally interpret these strings as utf-8.
... there are two ways to enable this: at compile time, by building spidermon
key with js_c_strings_are_utf8 defined; or at run time, by calling js_setcstringsareutf8 before the first call to js_newruntime.
JS_GetClassObject
syntax bool js_getclassobject(jscontext *cx, jsproto
key key, js::mutablehandle<jsobject*> objp); name type description cx jscontext * a context.
...
key jsproto
key the
key of the prototype.
... description js_getclassobject gets the builtin class costructor for the specified prototype
key.
... see also mxr id search for js_getclassobject js_getclassprototype jsproto
key ...
JS_GetClassPrototype
syntax bool js_getclassprototype(jscontext *cx, jsproto
key key, js::mutablehandle<jsobject*> objp); name type description cx jscontext * a context.
...
key jsproto
key the
key of the prototype.
... description js_getclassprototype gets the builtin class costructor for the specified prototype
key.
... see also mxr id search for js_getclassprototype js_getclassobject jsproto
key ...
JS_GetGCParameter
syntax uint32_t js_getgcparameter(jsruntime *rt, jsgcparam
key key); void js_setgcparameter(jsruntime *rt, jsgcparam
key key, uint32_t value); uint32_t js_getgcparameterforthread(jscontext *cx, jsgcparam
key key); // added in spidermon
keysidebar 17 void js_setgcparameterforthread(jscontext *cx, jsgcparam
key key, uint32_t value); // added in spidermon
keysidebar 17 name type description rt jsruntime * the runtime to configure.
...
key jsgcparam
key specifies which garbage collection parameter to get or set.
... typedef enum jsgcparam
key { jsgc_max_bytes, jsgc_max_malloc_bytes, jsgc_max_nursery_bytes, jsgc_bytes, jsgc_number, jsgc_mode, jsgc_unused_chunks, jsgc_total_chunks, jsgc_slice_time_budget, jsgc_mark_stack_limit, jsgc_high_frequency_time_limit, jsgc_high_frequency_low_limit, jsgc_high_frequency_high_limit, jsgc_high_frequency_heap_growth_max, jsgc_high_frequency_heap_growth_min, jsgc_low_frequency_heap_growth, jsgc_dynamic_heap_growth, jsgc_dynamic_mark_slice, jsgc_allocation_threshold, jsgc_min_empty_chunk_count, jsgc_max_empty_chunk_count, jsgc_compaction_enabled, jsgc_allocation_threshold_factor, ...
... jsgc_allocation_threshold_factor_avoid_interrupt, jsgc_nursery_free_threshold_for_idle_collection, jsgc_pretenure_threshold, jsgc_pretenure_group_threshold, jsgc_nursery_free_threshold_for_idle_collection_percent, jsgc_min_nursery_bytes, jsgc_min_last_ditch_gc_period, } jsgcparam
key; value (c++/js shell) description jsgc_max_bytes / "maxbytes" maximum nominal heap before last ditch gc.
JS_NewObject
syntax // added in spidermon
key 45 jsobject * js_newobject(jscontext *cx, const jsclass *clasp); bool js_newobjectwithgivenproto(jscontext *cx, const jsclass *clasp, js::handle<jsobject*> proto); // obsolete since spidermon
key 38 jsobject * js_newobject(jscontext *cx, const jsclass *clasp, js::handle<jsobject*> proto, js::handle<jsobject*> parent); jsobject * js_newobjectwithgivenproto(jscontext *cx, const jsclass *clasp, js::handle<jsobject*> proto, js::handle<jsobject*> parent); // added in spidermon
key 1.8 name type description cx jscontext * the context in which to create the new object.
... added in spidermon
key 1.8.1 clasp->flags must not have the jsclass_global_flags bits set (use js_newglobalobject instead).
... added in spidermon
key 1.8 js_newobjectwithgivenproto creates a new object with the specified prototype.
... starting with gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5), you can create a new object in a specific compartment using the components.utils.createobjectin() method.
JS_SetNativeStackQuota
this article covers features introduced in spidermon
key 17 enable or disable checks to avoid overflowing the c stack.
...added in spidermon
key 31 untrustedscriptstacksize size_t the desired stack quota setting, in bytes for untrusted script.
...added in spidermon
key 31 description js_setnativestackquota sets the size of the native stack that should not be exceeded.
... spidermon
key allows for a distinction between system code (such as gcs, which may incidentally be triggered by script but are not strictly performed on behalf of such script), trusted script (as determined by js_settrustedprincipals), and untrusted script.
JS_THREADSAFE
the recommended technique in spidermon
key 1.8 and later is to periodically call js_yieldrequest from an operation callback.
... sharing native functions and private data among threads in a js_threadsafe build, spidermon
key's internal data structures that represent javascript values are single-thread-only.
... however, spidermon
key does not protect the application's data structures.
... further info note: spidermon
key internals: thread safety is mostly obsolete.
JS_ValueToId
syntax bool js_valuetoid(jscontext *cx, js::handlevalue v, js::mutablehandleid idp); bool js_stringtoid(jscontext *cx, js::handlestring s, js::mutablehandleid idp); // added in spidermon
key 38 bool js_indextoid(jscontext *cx, uint32_t index, js::mutablehandleid idp); // added in spidermon
key 17 bool js_charstoid(jscontext* cx, js::twobytechars chars, js::mutablehandleid idp); // added in spidermon
key 24 void js::proto
keytoid(jscontext *cx, jsproto
key key, js::mutablehandleid idp); // added in spidermon
key 38 name type description cx jscontext * a context.
...
key jsproto
key the prototype
key to convert.
... js::proto
keytoid converts a specified prototype
key to a jsid.
... mxr id search for js_valuetoid see also mxr id search for js_idtovalue mxr id search for js_stringtoid mxr id search for js_indextoid mxr id search for js_charstoid mxr id search for js::proto
keytoid js_valuetoid bug 698495 - added js_indextoid bug 830500 - added js_charstoid bug 959787 - added js_stringtoid bug 987669 - added js::proto
keytoid ...
TPS Bookmark Lists
a bookmark asset list is an object with one or more
key-value pairs.
... each
key is the full path for the array of contents specified in the
key's value.
...
keyword: the
keyword for the bookmark.
...the properties for this object include the uri, title, loadinsidebar, description, tags,
keyword properties above, plus two additional properties: location: the full path of the folder that the bookmark should be moved to position: the title of the existing bookmark item, in the current folder, where this bookmark should be moved to (i.e., this bookmark would be inserted into the bookmark list at the position of the named bookmark, causing that bookmark to be positioned below the curren...
XForms Accessibility
build it yourself if you would like to build firefox/seamon
key yourself then please ensure your .mozconfig file has the following option: ac_add_options --enable-extensions=default,xforms,schema-validation how to test there are two approaches to test xforms accessibility.
...or you may be guided by toolkit checklist to check
keyboard navigation for xforms controls.
... you can try the following link to test xforms accessibility: visual xforms elements in xhtml document at bugzilla.mozilla.org visual xforms elements in xul document at bugzilla.mozilla.org you can see xforms sample tests at mozilla xforms project there are set of tests at beaufour.dk w3c's xforms test at w3.org
keyboard navigation issues navigation sequence though xforms spec declares navindex attribute to define the navigation sequence (see 1.0 specs or 1.1 specs) but rich schwerdtfeger (distinguished engineer, swg accessibility architect/strategist chair, ibm accessibility architecture review board) gave some clarification about navindex.
... input a
key xforms element to show and change the instance data to which it is bound (see the spec, the docs).
Querying Places
cending = 1 const unsigned short sort_by_title_descending = 2 const unsigned short sort_by_date_ascending = 3 const unsigned short sort_by_date_descending = 4 const unsigned short sort_by_uri_ascending = 5 const unsigned short sort_by_uri_descending = 6 const unsigned short sort_by_visitcount_ascending = 7 const unsigned short sort_by_visitcount_descending = 8 const unsigned short sort_by_
keyword_ascending = 9 const unsigned short sort_by_
keyword_descending = 10 const unsigned short sort_by_dateadded_ascending = 11 const unsigned short sort_by_dateadded_descending = 12 const unsigned short sort_by_lastmodified_ascending = 13 const unsigned short sort_by_lastmodified_descending = 14 const unsigned short sort_by_annotation_ascending = 15 const unsigned short sort_by_annotation_de...
...rs and from mozilla.org var query2 = placesutils.history.getnewquery(); query2.begintimereference = query2.time_relative_now; query2.begintime = -24 * 60 * 60 * 1000000; // 24 hours ago in microseconds query2.endtimereference = query2.time_relative_now; query2.endtime = 0; // now query2.domain = "mozilla.org"; var result = placesutils.history.executequeries([query1, query2], 2, options); note:
keyword searching doesn't work correctly across or queries.
... the current behavior does the normal query and then selects
keywords from the first query and filters all the results.
... (in other words, the
keywords from the first query are anded with all queries.)
keywords from subsequent query objects are ignored.
Mozilla internal string guide
used for http headers and for size-optimized storage in text node and spidermon
key strings.
... idl c++ interface nsifoo : nsisupports { attribute astring utf16string; autf8string getvalue(in acstring
key); }; class nsifoo : public nsisupports { ns_imethod getutf16string(nsastring& aresult) = 0; ns_imethod setutf16string(const nsastring& avalue) = 0; ns_imethod getvalue(const nsacstring& a
key, nsacstring& aresult) = 0; }; in the above example, utf16string is treated as a ut...
... in getvalue(), the first parameter, a
key, is treated as a raw sequence of 8-bit values.
... any non-ascii characters in a
key will be preserved when crossing xpconnect boundaries.
nsIRegistry
try { st.first(); do { var data = st.currentitem(); if( data instanceof ci.nsiregistrynode ) print("nsiregistrynode: " + data.nameutf8 + " (" + data.
key + ")"); st.next(); } while( components.lastresult == 0 ); } catch(e) {} now, the output is something like: profiles (344) profiles/default (530) profiles/foo (1046) profiles/bar (1518) the number inside the parenthesis is the "
key." you can use this
key with the rest of the nsiregistry api (see mxr).
... now, i know from visual inspection that there's a
key called "directory" for each profile.
... i don't know how to get the other
keys' names automatically, but i do know how to look up the directory for a particular profile.
... js> rs.getstringutf8(530, "directory") // 530:
key corresponding with profiles/default the output is something like: /home/lion/.mozilla/default/awp83kud.slt boo-yah!
nsICache
if a cache entry is waiting to be validated by another cache descriptor (so no new cache descriptors for that
key can be created), opencacheentry() will return ns_error_cache_wait_for_validation in non-blocking mode.
...if the cache entry was doomed, then a descriptor will be created for a new cache entry for the
key.
...in blocking mode, it will wait until the cache entry for the
key has been validated or doomed.
...if the cache entry was doomed, then a descriptor will be created for a new cache entry for the
key.
nsICrashReporter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void annotatecrashreport(in acstring
key, in acstring data); void appendappnotestocrashreport(in acstring data); void appendobjcexceptioninfotoappnotes(in voidptr aexception); native code only!
...void annotatecrashreport( in acstring
key, in acstring data ); parameters
key name of the data to be added.
... exceptions thrown ns_error_invalid_arg if
key or data contain invalid characters.
... invalid characters for
key are '=' and '\n'.
nsIDOMSimpleGestureEvent
1.0 66 introduced gecko 1.9.1 inherits from: nsidommouseevent last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) the nsidomsimplegestureevent interface is the datatype for all mozilla-specific simple gesture events in the document object model.
... method overview void initsimplegestureevent(in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in unsigned long directionarg, in double deltaarg); attributes attribute type description delta double the delta value indicating how far the gesture moved.
... void initsimplegestureevent( in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in unsigned long directionarg, in double deltaarg ); parameters typearg canbubblearg cancelablearg viewarg detailarg screenxarg screenyarg clientxarg clientyarg ctrl
keyarg alt
keyarg shift
keyarg ...
... meta
keyarg buttonarg relatedtargetarg directionarg the value to assign to the direction attribute.
nsIDOMXULLabeledControlElement
inherits from: nsidomxulcontrolelement last changed in gecko 1.7 attributes attribute type description access
key domstring this should be set to a character that is used as a shortcut
key.
...when the user presses the appropriate modifier and the access
key, the element will be focused and/or activated from anywhere in the window.
... on non-macintosh platforms, the character on the element's label matching the access
key is underlined.
... note: the access
key is copied to any associated label element.
nsIDataSignatureVerifier
security/manager/ssl/public/nsidatasignatureverifier.idlscriptable an interface for verifying that a given string of data was signed by the private
key matching the given public
key.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview boolean verifydata(in acstring adata, in acstring asignature, in acstring apublic
key); methods verifydata() verifies that the data matches the data that was used to generate the signature.
... boolean verifydata( in acstring adata, in acstring asignature, in acstring apublic
key ); parameters adata the data to be tested.
...apublic
key the public part of the
key used for signing, der encoded then base64 encoded.
nsIDocShell
inherits from: nsisupports last changed in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9) implemented by @mozilla.org/docshell;1.
... app_type_mail 1 this is the value of the apptype attribute used by thunderbird and seamon
key to indicate that email messages are displayed in this window.
... app_type_editor 2 this is the value of the apptype attribute used by thunderbird and seamon
key to indicate that email messages or web pages are composed in this window.
... native code only!fireunloadnotification obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0)this feature is obsolete.
nsIEditorSpellCheck
inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) implemented by: @mozilla.org/editor/editorspellchecker;1.
... savedefaultdictionary() obsolete since gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6)this feature is obsolete.
... note: this method was removed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6).
...remarks prior to gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6), this method took one parameter, a reference to the nsieditor for which to update the spell checker.
nsIHttpChannel
warning: calling setrequestheader(), setreferrerwithpolicy() or setemptyrequestheader() while visiting request headers has undefined behavior until gecko 47 (firefox 47.0 / thunderbird 47.0 / seamon
key 2.44).
... starting from gecko 48 (firefox 48.0 / thunderbird 48.0 / seamon
key 2.45) they will return a ns_error_failure.
... warning: calling setresponseheader() while visiting response headers has undefined behavior until gecko 48 (firefox 48.0 / thunderbird 48.0 / seamon
key 2.45).
... starting from gecko 49 (firefox 49.0 / thunderbird 49.0 / seamon
key 2.46) it will return a ns_error_failure.
nsIMenuBoxObject
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) to get access to the box object for a given menu, use code like this: var boxobject = xulmenu.boxobject.queryinterface(components.interfaces.nsimenuboxobject); method overview boolean handle
keypress(in nsidom
keyevent
keyevent); void openmenu(in boolean openflag); attributes attribute type description activechild nsidomelement the currently active menu or menuitem child of the menu box.
... openedwith
key boolean true if the menubar was opened using the
keyboard; otherwise false.
... note: for gecko 2.0, the openedwith
key attribute exists on the nsimenuboxobject_mozilla_2_0_branch interface.
...methods handle
keypress() boolean handle
keypress( in nsidom
keyevent
keyevent ); parameters
keyevent the
key event to handle for the menu.
nsIMsgThread
inherits from: nsisupports method overview void addchild(in nsimsgdbhdr child, in nsimsgdbhdr inreplyto, in boolean threadinthread, in nsidbchangeannouncer announcer); nsimsgdbhdr getchildat(in long index); nsmsg
key getchild
keyat(in long index); nsimsgdbhdr getchild(in nsmsg
key msg
key); nsimsgdbhdr getchildhdrat(in long index); nsimsgdbhdr getroothdr(out long index); void removechildat(in long index); void removechildhdr(in nsimsgdbhdr child, in nsidbchangeannouncer announcer); void markchildread(in boolean bread); nsimsgdbhdr getfirstunreadchild(); nsisimpleenumerator enumeratemessages(in nsmsg
key parent); ...
... attributes attribute type description thread
key nsmsg
key unsigned long
key designating this thread.
... nsimsgdbhdr getchildat(in long index); parameters index the index to get the message from getchild
keyat() nsmsg
key getchild
keyat(in long index); parameters index the index to get the
key from getchild() nsimsgdbhdr getchild(in nsmsg
key msg
key); parameters msg
key the index to get the
key from getchildhdrat() nsimsgdbhdr getchildhdrat(in long index); parameters index the index to get the message from.
... getfirstunreadchild() nsimsgdbhdr getfirstunreadchild(); enumeratemessages() nsisimpleenumerator enumeratemessages(in nsmsg
key parent); parameters parent a
key representing the message to start enumerating with.
nsIPlacesImportExportService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) in the past, this interface also offered methods for importing places data, but those methods are now part of the bookmarkhtmlutils.jsm javascript code module.
... importhtmlfromfile() obsolete since gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) note: this method has been removed; use the bookmarkhtmlutils.jsm javascript code module instead.
... importhtmlfromfiletofolder() obsolete since gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11) note: this method has been removed; use the bookmarkhtmlutils.jsm javascript code module instead.loads the given bookmarks.html file and puts it in the given folder.
... importhtmlfromuri() obsolete since gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11)this feature is obsolete.
Component; nsIPrefBranch
inherits from: nsisupports last changed in gecko 58 (firefox 58 / thunderbird 58 / seamon
key 2.55) this object is created with a "root" value which describes the base point in the preferences "tree" from which this "branch" stems.
... getstringpref() requires gecko 58 (firefox 58 / thunderbird 58 / seamon
key 2.55) called to get the state of an individual utf-8 string preference.
... (to call from javascript use children = nsiprefbranch.getchildlist("",obj), which will fill in obj.value with the count and return an array of
keys!
... setstringpref() requires gecko 58 (firefox 58 / thunderbird 58 / seamon
key 2.55) called to set the state of an individual utf-8 string preference.
nsIPropertyBag2
ouble getpropertyasdouble(in astring prop); print32 getpropertyasint32(in astring prop); print64 getpropertyasint64(in astring prop); void getpropertyasinterface(in astring prop, in nsiidref iid, [iid_is(iid), retval] out nsqiresult result); pruint32 getpropertyasuint32(in astring prop); pruint64 getpropertyasuint64(in astring prop); prbool has
key(in astring prop); methods get() this method returns null if the value does not exist, or exists but is null.
...has
key() check for the existence of a
key.
... prbool has
key( in astring prop ); parameters prop property to check for
key existence.
... return value true if a
key for the property exists, false if it does not.
nsISHEntry
inherits from: nsihistoryentry last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3) implemented by: @mozilla.org/browser/session-history-entry;1.
...ntry;1"] .createinstance(components.interfaces.nsishentry); method overview void addchildshell(in nsidocshelltreeitem shell); nsidocshelltreeitem childshellat(in long index); void clearchildshells(); nsishentry clone(); void create(in nsiuri uri, in astring title, in nsiinputstream inputstream, in nsilayouthistorystate layouthistorystate, in nsisupports cache
key, in acstring contenttype, in nsisupports owner, in unsigned long long docshellid, in boolean dynamiccreation); native code only!
... void syncpresentationstate(); attributes attribute type description cache
key nsisupports set and get the cache
key for the entry.
...void create( in nsiuri uri, in astring title, in nsiinputstream inputstream, in nsilayouthistorystate layouthistorystate, in nsisupports cache
key, in acstring contenttype, in nsisupports owner, in unsigned long long docshellid, in boolean dynamiccreation ); parameters uri title inputstream layouthistorystate cache
key contenttype owner docshellid dynamiccreation violates the xpcom interface guidelines forgeteditordata() gets the owning pointer to the editor data assosicated with this shistory entry.
nsISelectionController
inherits from: nsiselectiondisplay last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void characterextendforbackspace(); native code only!
...this method is used internally for handling backspace
key only when we're after utf-16 surrogates.
...this method is used internally for handling delete
key.
... setcaretwidth() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) set the carets width.
nsITreeColumns
last changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview nsitreecolumn getcolumnat(in long index); nsitreecolumn getcolumnfor(in nsidomelement element); nsitreecolumn getfirstcolumn(); nsitreecolumn get
keycolumn(); nsitreecolumn getlastcolumn(); nsitreecolumn getnamedcolumn(in astring id); nsitreecolumn getprimarycolumn(); nsitreecolumn getsortedcolumn(); void invalidatecolumns(); void restorenaturalorder(); attributes attribute type description count long the number of columns.
...get
keycolumn() get the
key column.
... nsitreecolumn get
keycolumn(); parameters none.
... return value the
key nsitreecolumn.
nsIURIFixupInfo
the input is an invalid uri and fixup_flag_allow_
keyword_lookup is not passed).
... fixeduri nsiuri the fixed-up original input, *never* using a
keyword search.
...
keywordprovidername astring the
keyword search provider name expected to provide a
keyword search; empty string if no
keyword search is performed.
...
keywordassent astring the
keyword used for the search (post trimming etc.); empty string if no
keyword search is performed.
nsIMsgCloudFileProvider
inherits from: nsisupports method overview void init(in string aaccount
key); void uploadfile(in nsilocalfile afile, in nsirequestobserver acallback); acstring urlforfile(in nsilocalfile afile); void cancelfileupload(in nsilocalfile afile); void refreshuserinfo(in boolean awithui, in nsirequestobserver acallback); void deletefile(in nsilocalfile afile, in nsirequestobserver acallback); void createnewaccount(in acstring aemailaddress, in acstring apassword, in acstring afirstname, in acstring alastname, in nsirequestobserver acallback); void createexistingaccount(in nsir...
... account
key acstring readonly: the unique identifier for the account associated with an instance of an nsimsgcloudfileprovider.
... void init(in string aaccount
key); parameters uploadfile() starts a file upload for this account.
... aaccount
key the account
key that this instance of the nsimsgcloudfileprovider should be associated with.
Using popup notifications
then you can create the popup notification at the appropriate time like this: popupnotifications.show(gbrowser.selectedbrowser, "sample-popup", "this is a sample popup notification.", null, /* anchor id */ { label: "do something", access
key: "d", callback: function() { alert("doing something awesome!"); } }, null /* secondary action */ ); in this case, we aren't providing any secondary actions; that is, actions provided to the user through the drop-down menu.
... in place, the result is the look we want: adding secondary options to provide options in the drop-down menu, add an array of notification actions to the call to the show() method, like this: popupnotifications.show(gbrowser.selectedbrowser, "sample-popup", "this is a sample popup notification.", null, /* anchor id */ { label: "do something", access
key: "d", callback: function() { alert("doing something awesome!"); } }, [ { label: "first secondary option", access
key: "1", callback: function() { alert("first secondary option selected."); } }, { label: "second secondary option", access...
...
key: "2", callback: function() { alert("second secondary option selected."); } } ] ); when this notification is presented, and the user clicks on the menu button in the panel, the display looks like this: when the user chooses one of your secondary actions from the drop-down menu, the corresponding callback is invoked.
... new popupnotifications(gbrowser, document.getelementbyid("notification-popup"), document.getelementbyid("notification-popup-box")); var notification = notify.show( // browser gbrowser.selectedbrowser, // popup id "pdes-popup", // message "hi, there!, i'm gonna show you something today!!", // anchor id null, // main action { label: "click here", access
key: "d", callback: function() { // you can call your function here } }, // secondary action null, // options { // alternative way to set the popup icon popupiconurl: "chrome://popupnotifications/skin/mozlogo.png" } ); settimeout(function(){ notification.remove(); }, 900); // time in milliseconds to disappear the door-hanger popup.
Waterfall - Firefox Developer Tools
garbage collection red markers in the waterfall represent garbage collection (gc) events, in which spidermon
key (the javascript engine in firefox) walks the heap looking for memory that's no longer reachable and subsequently releasing it.
... to help reduce the length of pauses, spidermon
key implements incremental gc: this means that it can perform garbage collection in fairly small increments, letting the program run in between.
...spidermon
key uses a complex set of heuristics to determine when gc is needed, and when non-incremental gc in particular is needed.
... in general, though: gc is needed when a lot of memory is being allocated non-incremental gc is usually needed when the memory allocation rate is high enough that spidermon
key may run out of memory during incremental gc when the waterfall records a gc marker it indicates: whether the gc was incremental or not the reason the gc was performed if the gc was non-incremental, the reason it was non-incremental starting in firefox 46, if the gc event was caused by allocation pressure, a link appears, labeled "show allocation triggers".
The JavaScript input interpreter - Firefox Developer Tools
accessing variables you can access variables defined in the page, both built-in variables like window and variables added by javascript libraries like jquery: autocomplete the editor has autocomplete: enter the first few letters and a popup appears with possible completions: press enter, tab, or the right arrow
key to accept the suggestion, use the up/down arrows to move to a different suggestion, or just keep typing if you don't like any of the suggestions.
...
keys() given an object, returns a list of the
keys (or property names) on that object.
... this is a shortcut for object.
keys.
... values() given an object, returns a list of the values on that object; serves as a companion to
keys().
AesCtrParams - Web APIs
the aesctrparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.encrypt(), subtlecrypto.decrypt(), subtlecrypto.wrap
key(), or subtlecrypto.unwrap
key(), when using the aes-ctr algorithm.
... a given counter block value must never be used more than once with the same
key: given a message n blocks long, a different counter block must be used for every block.
... if the same
key is used to encrypt more than one message, a different counter block must be used for all blocks across all messages.
...nonces don't have to be secret, but they must not be reused with the same
key.
AnimationEffect.getComputedTiming() - Web APIs
return value a computedeffecttiming dictionary object, which contains the following properties: endtime the end time of the animation in milliseconds from the animation's start (if the
keyframeeffect is associated with an animation).
...if the
keyframeeffect is not associated with an animation, its value is null.
...returns null if the animation is not running or its
keyframeeffect isn't associated with an animation.
...returns null if the animation is not running or its
keyframeeffect isn't associated with an animation.
AuthenticatorAssertionResponse.signature - Web APIs
it provides the proof that an authenticator does possess the private
key which was used for the credential's generation.
... note: an authenticatorassertionresponse instance is available on public
keycredential.response after calling navigator.credentials.get().
... syntax signature = authenticatorassertionresponse.signature value an arraybuffer object which the signature of the authenticator (using its private
key) for both authenticatorassertionresponse.authenticatordata and a sha-256 hash given by the client for its data (the challenge, the origin, etc.
... examples var options = { challenge: new uint8array(26), // will be another value, provided by the relying party server timeout: 60000 }; navigator.credentials.get({ public
key: options }) .then(function (assertionpkcred) { var signature = assertionpkcred.response.signature; // send response and client extensions to the server so that it can // go on with the authentication }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'signature' in that specification.
AuthenticatorAttestationResponse - Web APIs
the authenticatorattestationresponse interface of the web authentication api is returned by credentialscontainer.create() when a public
keycredential is passed, and provides a cryptographic root of trust for the new
key pair that has been generated.
... authenticatorattestationresponse.attestationobject secure contextread only an arraybuffer containing authenticator data and an attestation statement for a newly-created
key pair.
... examples var public
key = { challenge: /* from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { id: new uint8array(16), name: "jdoe@example.com", displayname: "john doe" }, pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; navigator.credentials.create({ public
key }) .then(function (newcredentialinfo) { var response = newcredentialinfo.response; // do something with the response // (sending it back to the relying party se...
...rver maybe?) }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'authenticatorattestationresponse interface' in that specification.
AuthenticatorResponse - Web APIs
the authenticatorresponse interface of the web authentication api is the base interface for interfaces that provide a cryptographic root of trust for a
key pair.
... the child interfaces include information from the browser such as the challenge origin and either may be returned from public
keycredential.response.
... examples getting an authenticatorassertionresponse var options = { challenge: new uint8array([/* bytes sent from the server */]) }; navigator.credentials.get({ "public
key": options }) .then(function (credentialinfoassertion) { var assertionresponse = credentialinfoassertion.response; // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); getting an authenticatorattestationresponse var public
key = { challenge: /* from the server */, rp: { name:...
... "example corp", id : "login.example.com" }, user: { id: new uint8array(16), name: "jdoe@example.com", displayname: "john doe" }, pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; navigator.credentials.create({ public
key }) .then(function (newcredentialinfo) { var attestationresponse = newcredentialinfo.response; }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'authenticatorresponse interface' in that specification.
CredentialsContainer.create() - Web APIs
it must include one of the options "password", "federated", or "public
key".
... name: optional usvstring tbd iconurl: optional usvstring tbd provider: (required) usvstring tbd protocol: optional usvstring tbd public
key: optional an public
keycredentialcreationoptions object that describes the options for creating a webauthn credential.
... returns a promise that resolves with a credential instance, such as passwordcredential, federatedcredential, or public
keycredential.
... web authentication: an api for accessing public
key credentials level 1 recommendation initial definition.
FormData.getAll() - Web APIs
the getall() method of the formdata interface returns all the values associated with a given
key from within a formdata object.
... syntax formdata.getall(name); parameters name a usvstring representing the name of the
key you want to retrieve.
... returns an array of formdataentryvalues whose
key matches the value passed in the name parameter.
... if the
key doesn't exist, the method returns an empty list.
Fullscreen API - Web APIs
usage notes users can choose to exit full-screen mode simply by pressing the esc (or f11)
key, rather than waiting for the site or app to programmatically do so.
...pressing the return or enter
key lets the user toggle between windowed and full-screen presentation of the video.
... view live examples watching for the enter
key when the page is loaded, this code is run to set up an event listener to watch for the enter
key.
... document.addeventlistener("
keypress", function(e) { if (e.
keycode === 13) { togglefullscreen(); } }, false); toggling full-screen mode this code is called by the event handler above when the user hits the enter
key.
HTMLAnchorElement - Web APIs
element.access
key is a domstring representing a single character that switches input focus to the hyperlink.
... htmlelement.blur() removes the
keyboard focus from the current element.
... htmlelement.focus() gives the
keyboard focus to the current element.
... recommendation the methods blur() and focus(), as well as the properties tabindex and access
key, are now defined on htmlelement.
HTMLOrForeignElement.dataset - Web APIs
name conversion dash-style to camelcase conversion a custom data attribute name is transformed to a
key for the domstringmap entry with the following rules the prefix data- is removed (including the dash); for any dash (u+002d) followed by an ascii lowercase letter a to z, the dash is removed, and the letter is transformed into its uppercase counterpart; other characters (including other dashes) are left unchanged.
... camelcase to dash-style conversion the opposite transformation, which maps a
key to an attribute name, uses the following rules: restriction: before the transformation, a dash must not be immediately followed by an ascii lowercase letter a to z; the prefix data- is added; any ascii uppercase letter a to z is transformed into a dash, followed by its lowercase counterpart; other characters are left unchanged.
... for example, the attribute named data-abc-def corresponds to the
key abcdef.
... accessing values attributes can be set and read by using the camelcase name (the
key) like an object property of the dataset, as in element.dataset.
keyname attributes can also be set and read using the bracket syntax, as in element.dataset[
keyname] the in operator can be used to check whether a given attribute exists.
Working with the History API - Web APIs
note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) through gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2), the passed object is serialized using json.
... starting in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3), the object is serialized using the structured clone algorithm.
... note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) through gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2), the passed object is serialized using json.
... starting in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3), the object is serialized using the structured clone algorithm.
HmacImportParams - Web APIs
the hmacimportparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.import
key() or subtlecrypto.unwrap
key(), when generating a
key for the hmac algorithm.
... length optional a number representing the length in bits of the
key.
... if this is omitted the length of the
key is equal to the length of the digest generated by the digest function you have chosen.
... examples see the examples for subtlecrypto.import
key().
IDBIndex.count() - Web APIs
the count() method of the idbindex interface returns an idbrequest object, and in a separate thread, returns the number of records within a
key range.
... syntax var request = myindex.count(); var request = myindex.count(
key); parameters
key optional the
key or
key range that identifies the record to be counted.
... dataerror the
key or
key range provided contains an invalid
key.
...we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBIndex.multiEntry - Web APIs
the multientry read-only property of the idbindex interface returns a boolean value that affects how the index behaves when the result of evaluating the index's
key path yields an array.
... syntax var ismultientry = myindex.multientry; value a boolean: value effect true there is one record in the index for each item in an array of
keys.
... false there is one record for each
key that is an array.
...we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBIndex.unique - Web APIs
the unique read-only property returns a boolean that states whether the index allows duplicate
keys.
... syntax var isunique = idbindex.unique; value a boolean: value effect true the current index does not allow duplicate values for a
key.
... false the current index allows duplicate
key values.
...we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBObjectStore.openCursor() - Web APIs
syntax var request = objectstore.opencursor(); var request = objectstore.opencursor(query); var request = objectstore.opencursor(query, direction); parameters query optional a
key or idb
keyrange to be queried.
... if a single valid
key is passed, this will default to a range containing only that
key.
... if nothing is passed, this will default to a
key range that selects all the records in this object store.
... dataerror the specified
key or
key range is invalid.
MouseEvent() - Web APIs
"ctrl
key", optional and defaulting to false, of type boolean, that indicates if the ctrl
key was simultaneously pressed.
... "shift
key", optional and defaulting to false, of type boolean, that indicates if the shift
key was simultaneously pressed.
... "alt
key", optional and defaulting to false, of type boolean, that indicates if the alt
key was simultaneously pressed.
... "meta
key", optional and defaulting to false, of type boolean, that indicates if the meta
key was simultaneously pressed.
MouseEvent.getModifierState() - Web APIs
the mouseevent.getmodifierstate() method returns the current state of the specified modifier
key: true if the modifier is active (i.e., the modifier
key is pressed or locked), otherwise, false.
... see the document of
keyboardevent.getmodifierstate() for details.
... syntax var active = event.getmodifierstate(
keyarg); returns a boolean parameters
keyarg a modifier
key value.
... the value must be one of the
keyboardevent.
key values which represent modifier
keys or "accel".
PushManager.subscribe() - Web APIs
applicationserver
key: a base64-encoded domstring or arraybuffer containing an ecdsa p-256 public
key that the push server will use to authenticate your application server.
... if specified, all messages from your application server must use the vapid authentication scheme, and include a jwt signed with the corresponding private
key.
... this
key is not the same ecdh
key that you use to encrypt the data.
...} navigator.serviceworker.register('serviceworker.js'); // use serviceworker.ready to ensure that you can subscribe for push navigator.serviceworker.ready.then( function(serviceworkerregistration) { var options = { uservisibleonly: true, applicationserver
key: applicationserver
key }; serviceworkerregistration.pushmanager.subscribe(options).then( function(pushsubscription) { console.log(pushsubscription.endpoint); // the push subscription details needed by the application // server are now available, and can be sent to it using, // for example, an xmlhttprequest.
RTCRemoteOutboundRtpStreamStats.localId - Web APIs
let's create a utility function to help us look up the value of a
key in the paired statistics object.
... the findreportentry() function shown below examines an rtcstatsreport, returning the rtcstats-based statistics record which contains the specified
key — and for which the
key has the specified value.
... if no match is found (or the statistics report has no record corresponding to the statistics category indicated by
key.
... function findreportentry(report,
key, value) { for (const stats of report.values()) { if (stats[
key] === value) { return stats; } } return null; } since the rtcstatsreport is a javascript map, we can iterate over the map's values() to examine each of the rtcstats-based statistics records in the report until we find one that has the
key property with the specified value.
Selection - Web APIs
election.collapsetoend() selection.extend() selection.selectallchildren() selection.addrange() selection.setbaseandextent() and when the range is modified using the following methods: range.setstart() range.setend() range.setstartbefore() range.setstartafter() range.setendbefore() range.setendafter() range.collapse() range.selectnode() range.selectnodecontents() glossary other
key terms used in this section.
...as the user changes the selection using the mouse or the
keyboard, the anchor does not move.
...as the user changes the selection using the mouse or the
keyboard, the focus is the end of the selection that moves.
...a user will normally only select a single range at a time, but it's possible for a user to select multiple ranges (e.g., by using the control
key).
Storage.getItem() - Web APIs
the getitem() method of the storage interface, when passed a
key name, will return that
key's value, or null if the
key does not exist, in the given storage object.
... syntax var avalue = storage.getitem(
keyname); parameters
keyname a domstring containing the name of the
key you want to retrieve the value of.
... return value a domstring containing the value of the
key.
... if the
key does not exist, null is returned.
TouchEvent() - Web APIs
"ctrl
key", optional and defaulting to false, of type boolean, that indicates if the ctrl
key was simultaneously pressed.
... "shift
key", optional and defaulting to false, of type boolean, that indicates if the shift
key was simultaneously pressed.
... "alt
key", optional and defaulting to false, of type boolean, that indicates if the alt
key was simultaneously pressed.
... "meta
key", optional and defaulting to false, of type boolean, that indicates if the meta
key was simultaneously pressed.
TouchEvent - Web APIs
touchevent.alt
key read only a boolean value indicating whether or not the alt
key was down when the touch event was fired.
... touchevent.ctrl
key read only a boolean value indicating whether or not the control
key was down when the touch event was fired.
... touchevent.meta
key read only a boolean value indicating whether or not the meta
key was down when the touch event was fired.
... touchevent.shift
key read only a boolean value indicating whether or not the shift
key was down when the touch event was fired.
URLSearchParams.sort() - Web APIs
the urlsearchparams.sort() method sorts all
key/value pairs contained in this object in place and returns undefined.
... the sort order is according to unicode code points of the
keys.
...the relative order between
key/value pairs with equal
keys will be preserved).
... examples // create a test urlsearchparams object var searchparams = new urlsearchparams("c=4&a=2&b=3&a=1"); // sort the
key/value pairs searchparams.sort(); // display the sorted query string console.log(searchparams.tostring()); the result is: a=2&a=1&b=3&c=4 specifications specification status comment urlthe definition of 'sort()' in that specification.
URL API - Web APIs
the url standard also defines concepts such as domains, hosts, and ip addresses, and also attempts to describe in a standard way the legacy application/x-www-form-urlencoded mime type used to submit web forms' contents as a set of
key/value pairs.
... other functions within urlsearchparams let you change the value of
keys, add and delete
keys and their values, and even sort the list of parameters.
...rows are added to the table, one for each
key found in the parameters, with the first column containing the
key's name, and the second column having the value.
... function filltablewithparameters(tbl) { let url = new url(document.location.href); url.searchparams.sort(); let
keys = url.searchparams.
keys(); for (let
key of
keys) { let val = url.searchparams.get(
key); let row = document.createelement("tr"); let cell = document.createelement("td"); cell.innertext =
key; row.appendchild(cell); cell = document.createelement("td"); cell.innertext = val; row.appendchild(cell); tbl.appendchild(row); }; } a working version of this example can be found on glitch.
UserDataHandler - Web APIs
obsolete since gecko 26 (firefox 26 / thunderbird 26 / seamon
key 2.23 / firefox os 1.2)this feature is obsolete.
... summary when associating user data with a
key on a node, node.setuserdata() can also accept, in its third argument, a handler which will be called when the object is cloned, imported, deleted, renamed, or adopted.
... methods handle (operation,
key, data, src, dst) (no return value) this method is a callback which will be called if a node is being cloned, imported, renamed and as well, if deleted or adopted.
...
key (domstring) is the user
key.
Writing a WebSocket server in Java - Web APIs
you must, obtain the value of sec-websocket-
key request header without any leading and trailing whitespace link it with "258eafa5-e914-47da-95ca-c5ab0dc85b11" compute sha-1 and base64 code of it write it back as value of sec-websocket-accept response header as part of a http response.
... if (get.find()) { matcher match = pattern.compile("sec-websocket-
key: (.*)").matcher(data); match.find(); byte[] response = ("http/1.1 101 switching protocols\r\n" + "connection: upgrade\r\n" + "upgrade: websocket\r\n" + "sec-websocket-accept: " + base64.getencoder().encodetostring(messagedigest.getinstance("sha-1").digest((match.group(1) + "258eafa5-e914-47da-95ca-c5ab0dc85b11").getbytes("utf-8"))) + "\r\n\r\n").getbytes("utf-8"); out.write(response, 0, response.length); decoding messages after a successful handshake, client can send messages to the server, but now these are encoded.
... - 167, 225, 225 and 210 are the bytes of the
key to decode.
... decoding algorithm decoded byte = encoded byte xor (position of encoded byte bitwise and 0x3)th byte of
key example in java: byte[] decoded = new byte[6]; byte[] encoded = new byte[] { (byte) 198, (byte) 131, (byte) 130, (byte) 182, (byte) 194, (byte) 135 }; byte[]
key = new byte[] { (byte) 167, (byte) 225, (byte) 225, (byte) 210 }; for (int i = 0; i < encoded.length; i++) { decoded[i] = (byte) (encoded[i] ^
key[i & 0x3]); } } } finally { s.close(); } } finally { server.close(); } } } related writing websocket servers ...
Web Video Text Tracks Format (WebVTT) - Web APIs
following interface can be used to expose webvtt cues in dom api: enum auto
keyword { "auto" }; enum directionsetting { "" /* horizontal */, "rl", "lr" }; enum linealignsetting { "start", "center", "end" }; enum positionalignsetting { "line-left", "center", "line-right", "auto" }; enum alignsetting { "start", "center", "end", "left", "right" }; [constructor(double starttime, double endtime, domstring text)] interface vttcue : texttrackcue { attribute vttregion?
... region; attribute directionsetting vertical; attribute boolean snaptolines; attribute (double or auto
keyword) line; attribute linealignsetting linealign; attribute (double or auto
keyword) 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.
... the new
keyword can be used for defining a new vttregion object which can then be used for containing the multiple cues.
... auto
keyword.
Web Animations API Concepts - Web APIs
animation objects accept media in the form of animation effects, specifically
keyframe effects (we’ll get to those in a moment).
... animation effect if animation objects are dvd players, we can think of animation effects, or
keyframe effects, as dvds.
...
keyframe effects are a bundle of information including at the bare minimum a set of
keys and the duration they need to be animated over.
... we currently have only one animation effect type available:
keyframeeffect.
Using XMLHttpRequest - Web APIs
note: starting with gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamon
key 2.27), synchronous requests on the main thread have been deprecated due to the negative effects to the user experience.
... note: the non-standard sendasbinary method is considered deprecated as of gecko 31 (firefox 31 / thunderbird 31 / seamon
key 2.28) and will be removed soon.
... using formdata objects the formdata constructor lets you compile a set of
key/value pairs to send using xmlhttprequest.
... its primary use is in sending form data, but can also be used independently from a form in order to transmit user
keyed data.
Using the link role - Accessibility
native <a> elements also support
keyboard and focus requirements by default, without need for additional customization.
...this includes javascript to grab the location and handle navigating to the new location using window.open() via clicking, and using
keyboard, css to give the desired visuals of a link, the tabindex="0" attribute to make it
keyboard-focussable, and role="link" to make it recognised as a link by assistive technology.
... id="link1" role="link" class="link"> fake accessible link created using a span </span> <p><a href="https://mozilla.org" target="_blank">actual real link</a></p> css span[role="link"] { color: blue; text-decoration: underline; cursor: pointer; } span[role="link"]:focus { outline: 1px dotted black; } javascript const spanelem = document.queryselector('span'); //handles clicks and
keydowns on the link function navigatelink(e) { if (e.type === 'click' || e.
key === 'enter') { let ref = e.target != null ?
... e.target : e.srcelement; if (ref) { window.open(ref.getattribute('data-href'), '_blank'); } } } spanelem.addeventlistener('click', navigatelink); spanelem.addeventlistener('
keydown', navigatelink); result notes if pressing the link triggers an action but does not change browser focus or navigate to a new page, you might wish to consider using the button role instead of the link role.
ARIA: timer role - Accessibility
keyboard interactions
keyboard interaction is xxx.
... the tab , space and enter
keys, as well as escape , must be handled by the application.
... required javascript features
keypress used to handle
keyboard input and control the focus click, touch handle as appropriate for your widget as well changing attribute values aria-activedescendant is used to manage the focus inside the application container.
... set in response to
keyboard or other application events that change focus or point of interaction.
Perceivable - Accessibility
guideline 1.1 — providing text alternatives for non-text content the
key here is that text can be converted to other forms that people with disabilities can use.
...an alternative should be provided, such as a
keyboard shortcut or button that can be activated by
keyboard or other means.
... use native <button>s to provide accessible
keyboard controls, as shown in video player styling basics.
... times the font size spacing following paragraphs to at least 2 times the font size letter spacing (tracking) to at least 0.12 times the font size word spacing to at least 0.16 times the font size understanding text spacing 1.4.13 content on hover or focus (aa) added in 2.1 while additional content may appear and disappear in coordination with hover and
keyboard focus, this success criterion specifies three conditions that must be met: dismissable (can be closed/removed) hoverable (the additional content does not disappear when the pointer is over it) persistent (the additional content does not disappear without user action) understanding content on hover or focus note: also see the wcag description for guid...
-moz-user-focus - CSS: Cascading Style Sheets
/*
keyword values */ -moz-user-focus: normal; -moz-user-focus: ignore; /* global values */ -moz-user-focus: inherit; -moz-user-focus: initial; -moz-user-focus: unset; by setting its value to ignore, you can disable focusing the element, which means that the user will not be able to activate the element.
...you can stop the textbox from taking
keyboard focus by setting its tab index to -1, and from taking mouse focus by preventing the default action of mousedown events.
... syntax values ignore the element does not accept the
keyboard focus and will be skipped in the tab order.
... normal the element can accept the
keyboard focus.
:focus-visible - CSS: Cascading Style Sheets
keyboard).
...compare what happens when you click on the different controls with a mouse, versus when you tab through them using a
keyboard.
...only"><br> <button class="focus-visible-only">:focus-visible only</button> input, button { margin: 10px; } .focus-only:focus { outline: 2px solid black; } .focus-visible-only:focus-visible { outline: 4px dashed darkorange; } selectively showing the focus indicator a custom control, such as a custom element button, can use :focus-visible to selectively apply a focus indicator only on
keyboard-focus.
...stom-button:focus { /* provide a fallback style for browsers that don't support :focus-visible */ outline: none; background: lightgrey; } custom-button:focus:not(:focus-visible) { /* remove the focus indicator on mouse-focus for browsers that do support :focus-visible */ background: transparent; } custom-button:focus-visible { /* draw a very noticeable focus style for
keyboard-focus on browsers that do support :focus-visible */ outline: 4px dashed darkorange; background: transparent; } polyfill you can polyfill :focus-visible using focus-visible.js.
CSS Animations tips and tricks - CSS: Cascading Style Sheets
.runbutton { cursor: pointer; width: 300px; border: 1px solid black; font-size: 16px; text-align: center; margin-top: 12px; padding-top: 2px; padding-bottom: 4px; color: white; background-color: darkgreen; font: 14px "open sans", "arial", sans-serif; } @
keyframes colorchange { 0% { background: yellow } 100% { background: blue } } .box { width: 100px; height: 100px; border: 1px solid black; } .changing { animation: colorchange 2s; } there are two classes here.
...the animation details are included in the "changing" class, which says that the @
keyframes named "colorchange" should be used over the course of two seconds to animate the box.
...instead you should explicitly write a
keyframe animation that goes through the full animation in one forward repetition.
... the following demo shows how you'd achieve the aforementioned javascript technique: .slidein { animation-duration: 5s; animation-name: slidein; animation-iteration-count: infinite; } .stopped { animation-name: none; } @
keyframes slidein { 0% { margin-left: 0%; } 50% { margin-left: 50%; } 100% { margin-left: 0%; } } <h1 id="watchme">click me to stop</h1> let watchme = document.getelementbyid('watchme') watchme.classname = 'slidein' const listener = (e) => { watchme.classname = 'slidein stopped' } watchme.addeventlistener('click', () => watchme.addeventlistener('animationiteration', listener, false) ) demo https://jsfiddle.net/morenoh149/5ty5a4oy/ ...
Ordering Flex Items - CSS: Cascading Style Sheets
flexbox and the
keyboard navigation disconnect html source order vs css display order the responsive order conflict for
keyboard focus use cases for order there are sometimes places where the fact that the logical and therefore reading order of flex items is separate from the visual order, is helpful.
...the heading of the news item is the
key thing to highlight and would be the element that a user might jump to if they were tabbing between headings to find content they wanted to read.
...when doing so take care that you are not reordering items that could be accessed by the
keyboard as a user is tabbing around.
... especially when using newer layout methods you should ensure that your browser testing includes testing the site using
keyboard only, rather than a mouse or touchscreen.
Realizing common layouts using CSS Grid Layout - CSS: Cascading Style Sheets
2 row tracks.</div> <div class="item3">start row 2 column line 2, span 2 column tracks.</div> <div class="item4">start at column line 3, span to the end of the grid (-1).</div> </div> i can then place these on the grid using the named lines, and also the span
keyword.
... rather than setting the end line number, i have chosen to say how many tracks this element should span, using the span
keyword.
... there are some
key differences with how a grid layout works over the grid systems you may have used previously.
... .listing li { border: 1px solid #ffe066; border-radius: 5px; display: flex; flex-direction: column; } .listing .cta { margin-top: auto; border-top: 1px solid #ffe066; padding: 10px; text-align: center; } .listing .body { padding: 10px; } this is really one of the
key reasons i would use flexbox rather than grid, if i am just aligning or distributing something in a single dimension, that’s a flexbox use case.
animation-fill-mode - CSS: Cascading Style Sheets
forwards the target will retain the computed values set by the last
keyframe encountered during execution.
... the last
keyframe depends on the value of animation-direction and animation-iteration-count: animation-direction animation-iteration-count last
keyframe encountered normal even or odd 100% or to reverse even or odd 0% or from alternate even 0% or from alternate odd 100% or to alternate-reverse even 100% or to alternate-reverse odd 0% or from backwards the animation will apply the values defined in the first relevant
keyframe as soon as it is applied to the target, and retain this during the animation-delay period.
... the first relevant
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.
... html <p>move your mouse over the gray box!</p> <div class="demo"> <div class="growsandstays">this grows and stays big.</div> <div class="grows">this just grows.</div> </div> css .demo { border-top: 100px solid #ccc; height: 300px; } @
keyframes grow { 0% { font-size: 0; } 100% { font-size: 40px; } } .demo:hover .grows { animation-name: grow; animation-duration: 3s; } .demo:hover .growsandstays { animation-name: grow; animation-duration: 3s; animation-fill-mode: forwards; } see css animations for more examples.
background-attachment - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-attachment: scroll; background-attachment: fixed; background-attachment: local; /* global values */ background-attachment: inherit; background-attachment: initial; background-attachment: unset; the background-attachment property is specified as one of the
keyword values from the list below.
... suddenly she came upon a little three-legged table, all made of solid glass; there was nothing on it except a tiny golden
key, and alice's first thought was that it might belong to one of the doors of the hall; but, alas!
... either the locks were too large, or the
key was too small, but at any rate it would not open any of them.
... however, on the second time round, she came upon a low curtain she had not noticed before, and behind it was a little door about fifteen inches high: she tried the little golden
key in the lock, and to her great delight it fitted!
border-image-slice - CSS: Cascading Style Sheets
it is discarded by default, but is used like a background image if the
keyword fill is set.
... syntax /* all sides */ border-image-slice: 30%; /* vertical | horizontal */ border-image-slice: 10% 30%; /* top | horizontal | bottom */ border-image-slice: 30 30% 45; /* top | right | bottom | left */ border-image-slice: 7 12 14 5; /* using the `fill`
keyword */ border-image-slice: 10% fill 7 12; /* global values */ border-image-slice: inherit; border-image-slice: initial; border-image-slice: unset; the border-image-slice property may be specified using one to four <number-percentage> values to represent the position of each image slice.
...it also applies to ::first-letter.inheritednopercentagesrefer to the size of the border imagecomputed valueone to four percentage(s) (as specified) or absolute length(s), plus the
keyword fill if specifiedanimation typeby computed value type formal syntax <number-percentage>{1,4} && fill?where <number-percentage> = <number> | <percentage> examples adjustable border width and slice the folowing example shows a simple <div> with a border image set on it.
...however, we have also provided two sliders to allow you to dynamically change the values of the above two properties, allowing you to appreciate the effect they have: border-image-slice changes the size of the image slice sampled for use in each border and border corner (and the content area, if the fill
keyword is used) — varying this away from 30 causes the border to look somewhat irregular, but can have some interesting effects.
font-variant-alternates - CSS: Cascading Style Sheets
/*
keyword values */ font-variant-alternates: normal; font-variant-alternates: historical-forms; /* functional notation values */ font-variant-alternates: stylistic(user-defined-ident); font-variant-alternates: styleset(user-defined-ident); font-variant-alternates: character-variant(user-defined-ident); font-variant-alternates: swash(user-defined-ident); font-variant-alternates: ornaments(user-defined-ident); font-variant-alternates: annotation(user-defined-ident); font-variant-alternates: swash(ident1) annotation(ident2); /* global values */ font-variant-alternates: initial; font-variant-alternates: inherit; font-v...
... syntax this property may take one of two forms: either the
keyword normal or one or more of the other
keywords and functions listed below, space-separated, in any order.
... values normal this
keyword deactivates alternate glyphs.
... historical-forms this
keyword enables historical forms — glyphs that were common in the past but not today.
font-variant-east-asian - CSS: Cascading Style Sheets
l; /* <east-asian-variant-values> */ font-variant-east-asian: full-width; /* <east-asian-width-values> */ font-variant-east-asian: proportional-width; /* <east-asian-width-values> */ font-variant-east-asian: ruby full-width jis83; /* global values */ font-variant-east-asian: inherit; font-variant-east-asian: initial; font-variant-east-asian: unset; syntax values normal this
keyword leads to the deactivation of the use of such alternate glyphs.
... ruby this
keyword forces the use of special glyphs for ruby characters.
...this
keyword corresponds to the opentype values ruby.
...possible values are:
keyword standard defining the glyphs opentype equivalent jis78 jis x 0208:1978 jp78 jis83 jis x 0208:1983 jp83 jis90 jis x 0208:1990 jp90 jis04 jis x 0213:2004 jp04 simplified none, use the simplified chinese glyphs smpl traditional none, use the traditional chinese glyphs trad <east-asian-width-values> these values control the sizing of figures used for east asian characters.
font-variant-numeric - CSS: Cascading Style Sheets
umeric-spacing-values> */ font-variant-numeric: diagonal-fractions; /* <numeric-fraction-values> */ font-variant-numeric: stacked-fractions; /* <numeric-fraction-values> */ font-variant-numeric: oldstyle-nums stacked-fractions; /* global values */ font-variant-numeric: inherit; font-variant-numeric: initial; font-variant-numeric: unset; this property can take one of two forms: either the
keyword value normal or one or more of the other values listed below, space-separated, in any order.
... values normal this
keyword leads to the deactivation of the use of such alternate glyphs.
... ordinal this
keyword forces the use of special glyphs for the ordinal markers, like 1st, 2nd, 3rd, 4th in english or a 1a in italian.
... slashed-zero this
keyword forces the use of a 0 with a slash; this is useful when a clear distinction between o and 0 is needed.
grid-auto-columns - CSS: Cascading Style Sheets
syntax /*
keyword values */ grid-auto-columns: min-content; grid-auto-columns: max-content; grid-auto-columns: auto; /* <length> values */ grid-auto-columns: 100px; grid-auto-columns: 20cm; grid-auto-columns: 50vmax; /* <percentage> values */ grid-auto-columns: 10%; grid-auto-columns: 33.3%; /* <flex> values */ grid-auto-columns: 0.5fr; grid-auto-columns: 3fr; /* minmax() values */ grid-auto-columns: minma...
... max-content is a
keyword representing the largest maximal content contribution of the grid items occupying the grid track.
... min-content is a
keyword representing the largest minimal content contribution of the grid items occupying the grid track.
... auto is a
keyword that is identical to maximal content if it's a maximum.
grid-auto-rows - CSS: Cascading Style Sheets
syntax /*
keyword values */ grid-auto-rows: min-content; grid-auto-rows: max-content; 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: m...
... max-content is a
keyword representing the largest maximal content contribution of the grid items occupying the grid track.
... min-content is a
keyword representing the largest minimal content contribution of the grid items occupying the grid track.
... auto is a
keyword that is identical to maximal content if it's a maximum.
grid-template-columns - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-template-columns: none; /* <track-list> values */ grid-template-columns: 100px 1fr; grid-template-columns: [linename] 100px; grid-template-columns: [linename1] 100px [linename2 linename3]; grid-template-columns: minmax(100px, 1fr); grid-template-columns: fit-content(40%); grid-template-columns: repeat(3, 200px); grid-template-columns: subgrid; /* <auto-track-list> values */ grid-template-columns: 200px repeat(auto-fill...
... max-content is a
keyword representing the largest maximal content contribution of the grid items occupying the grid track.
... min-content is a
keyword representing the largest minimal content contribution of the grid items occupying the grid track.
... auto is a
keyword that is identical to maximal content if it's a maximum.
mask-type - CSS: Cascading Style Sheets
/*
keyword values */ mask-type: luminance; mask-type: alpha; /* global values */ mask-type: inherit; mask-type: initial; mask-type: unset; this property may be overridden by the mask-mode property, which has the same effect but applies to the element where the mask is used.
... syntax the mask-type property is specified as one of the
keyword values listed below.
... values luminance is a
keyword indicating that the associated mask image is a luminance mask, i.e., that its relative luminance values must be used when applying it.
... alpha is a
keyword indicating that the associated mask image is an alpha mask, i.e., that its alpha channel values must be used when applying it.
offset-position - CSS: Cascading Style Sheets
syntax /*
keyword values */ offset-position: auto; offset-position: top; offset-position: bottom; offset-position: left; offset-position: right; offset-position: center; /* <percentage> values */ offset-position: 25% 75%; /* <length> values */ offset-position: 0 0; offset-position: 1cm 2cm; offset-position: 10ch 8em; /* edge offsets values */ offset-position: bottom 10px right 20px; offset-position: right 3em bottom 10px; offset-position: bottom 10px right; offset-position: top right 10px; /* global values */ offset-position: inherit; offset-position: initial; offset-position: unset; values auto the initial position is the position of the box specified by the position property.
...if two non-
keyword values are used, the first value represents the horizontal position and the second represents the vertical position.
...if three or four values are used, the length-percentage values are offsets for the preceding
keyword value(s).
...ngth-percentage> ] && [ [ top | bottom ] <length-percentage> ] ]where <length-percentage> = <length> | <percentage> examples setting initial offset position <div id="motion-demo"></div> #motion-demo { offset-path: path('m20,20 c20,100 200,0 200,100'); offset-position: left top; animation: move 3000ms infinite alternate ease-in-out; width: 40px; height: 40px; background: cyan; } @
keyframes move { 0% { offset-distance: 0%; } 100% { offset-distance: 100%; } } specifications specification status comment motion path module level 1the definition of 'offset-position' in that specification.
outline-color - CSS: Cascading Style Sheets
syntax /* <color> values */ outline-color: #f92525; outline-color: rgb(30,222,121); outline-color: blue; /*
keyword value */ outline-color: invert; /* global values */ outline-color: inherit; outline-color: initial; outline-color: unset; the outline-color property is specified as any one of the values listed below.
...note that browsers are not required to support this value; if they don't, this
keyword is considered invalid.
... webaim: color contrast checker mdn understanding wcag, guideline 1.4 explanations understanding success criterion 1.4.3 | w3c understanding wcag 2.0 formal definition initial valueinvert, for browsers supporting it, currentcolor for the otherapplies toall elementsinheritednocomputed valuefor the
keyword invert, the computed value is invert.
...the transparent
keyword maps to rgba(0,0,0,0).animation typea color formal syntax <color> | invertwhere <color> = <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>where <rgb()> = rgb( <percentage>{3} [ / <alpha-value> ]?
radial-gradient() - CSS: Cascading Style Sheets
<extent-
keyword> a
keyword describing how big the ending shape must be.
... the possible values are:
keyword description closest-side the gradient's ending shape meets the side of the box closest to its center (for circles) or meets both the vertical and horizontal sides closest to the center (for ellipses).
... note: early implementations of this function included other
keywords (cover and contain) as synonyms of the standard farthest-corner and closest-side, respectively.
... use the standard
keywords only, as some implementations have already dropped those older variants.
revert - CSS: Cascading Style Sheets
the revert css
keyword reverts the cascaded value of the property from its current value to the value the property would have had if no changes had been made by the current style origin to the current element.
... if used within the user agent's default styles, this
keyword is functionally equivalent to unset.
... the revert
keyword works exactly the same as unset in many cases.
... the revert
keyword is different from and should not be confused with initial, which uses the initial value defined on a per-property basis by the css specifications.
ruby-align - CSS: Cascading Style Sheets
/*
keyword values */ ruby-align: start; ruby-align: center; ruby-align: space-between; ruby-align: space-around; /* global values */ ruby-align: inherit; ruby-align: initial; ruby-align: unset; syntax values start is a
keyword indicating that the ruby will be aligned with the start of the base text.
... center is a
keyword indicating that the ruby will be aligned at the middle of the base text.
... space-between is a
keyword indicating that the extra space will be distributed between the elements of the ruby.
... space-around is a
keyword indicating that the extra space will be distributed between the elements of the ruby, and around it.
text-overflow - CSS: Cascading Style Sheets
each value is specified as one of: one of the
keyword values: clip, ellipsis, fade the function fade(), which is passed a <length> or a <percentage> to control the fade distance a <string>.
...this
keyword value will truncate the text at the limit of the content area, therefore the truncation can happen in the middle of a character.
... ellipsis this
keyword value will display an ellipsis ('…', u+2026 horizontal ellipsis) to represent clipped text.
... fade this
keyword clips the overflowing inline content and applies a fade-out effect near the edge of the line box with complete transparency at the edge.
Applying color to HTML elements using CSS - HTML: Hypertext Markup Language
keywords a set of standard color names have been defined, letting you use these
keywords instead of numeric representations of colors if you choose to do so and there's a
keyword representing the exact color you want to use.
... color
keywords include the standard primary and secondary colors (such as red, blue, or orange), shades of gray (from black to white, including colors like darkgray and lightgrey), and a variety of other blended colors including lightseagreen, cornflowerblue, and rebeccapurple.
... see color
keywords in <color> for a list of all available color
keywords.
...note the use of the darkred
keyword when specifying the color.
<b>: The Bring Attention To element - HTML: Hypertext Markup Language
usage notes use the <b> for cases like
keywords in a summary, product names in a review, or other spans of text whose typical presentation would be boldfaced (but not including any special importance).
... examples <p> this article describes several <b class="
keywords">text-level</b> elements.
... it explains their usage in an <b class="
keywords">html</b> document.
... </p>
keywords are displayed with the default style of the <b>element, likely in bold.</b> result specifications specification status comment html living standardthe definition of '<b>' in that specification.
<input type="password"> - HTML: Hypertext Markup Language
specifics of how the entry process works may vary from browser to browser; mobile devices, for example, often display the typed character for a moment before obscuring it, to allow the user to be sure they pressed the
key they meant to press; this is helpful given the small size of
keys and the ease with which the wrong one can be pressed, especially on virtual
keyboards.
... <label for="userpassword">password: </label> <input id="userpassword" type="password" required> <input type="submit" value="submit"> specifying an input mode if your recommended (or required) password syntax rules would benefit from an alternate text entry interface than the standard
keyboard, you can use the inputmode attribute to request a specific one.
...mobile devices with virtual
keyboards, for example, may opt to switch to a numeric
keypad layout instead of a full
keyboard, to make entering the password easier.
... the inputmode is set to numeric to encourage devices with virtual
keyboards to switch to a numeric
keypad layout for easier entry.
<input type="reset"> - HTML: Hypertext Markup Language
adding a reset
keyboard shortcut to add a
keyboard shortcut to a submit button — just as you would with any <input> for which it makes sense — you use the access
key global attribute.
... in this example, r is specified as the access
key (you'll need to press r plus the particular modifier
keys for your browser/os combination; see access
key for a useful list of those).
... <form> <div> <label for="example">type in some sample text</label> <input id="example" type="text"> </div> <div> <input type="reset" value="reset the form" access
key="r"> </div> </form> the problem with the above example is that there's no way for the user to know what the access
key is!
...when building a site, be sure to provide this information in a way that doesn't interfere with the site design (for example by providing an easily accessible link that points to information on what the site access
keys are).
HTML elements reference - HTML: Hypertext Markup Language
common uses for this element are to implement a glossary or to display metadata (a list of
key-value pairs).
... <kbd> the html
keyboard input element (<kbd>) represents a span of inline text denoting textual user input from a
keyboard, voice input, or any other text entry device.
... <
keygen> the html <
keygen> element exists to facilitate generation of
key material, and submission of the public
key as part of an html form.
...it is expected that the <
keygen> element will be used in an html form along with other information needed to construct a certificate request, and that the result of the process will be a signed certificate.
Browser detection using the user agent - HTTP
do you actually want to detect firefox, as opposed to seamon
key, or chrome as opposed to chromium?
...so to detect safari you have to check for the safari string and the absence of the chrome string, chromium often reports itself as chrome too or seamon
key sometimes reports itself as firefox.
... also, pay attention not to use a simple regular expression on the browsername, user agents also contain strings outside the
keyword/value syntax.
... must contain must not contain firefox firefox/xyz seamon
key/xyz seamon
key seamon
key/xyz chrome chrome/xyz chromium/xyz chromium chromium/xyz safari safari/xyz chrome/xyz or chromium/xyz safari gives two version numbers: one technical in the safari/xyz token, and one user-friendly in a version/xyz token opera opr/xyz [1] opera/xyz [1] opera 15+ (blink-based engine) [2] opera 12- (presto-based engine) internet explorer ; msie xyz; [1] trident/7.0; .*rv:xyz [2] [1] internet explorer 10- [2] internet explorer 11 of course, ...
Configuring servers for Ogg media - HTTP
include regular
key frames when the browser seeks through ogg media to a specified time, it has to seek to the nearest
key frame before the seek target, then download and decode the video from there until the requested target time.
... the farther apart your
key frames are, the longer this takes, so it's helpful to include
key frames at regular intervals.
... by default, ffmpeg2theora uses one
key frame every 64 frames (or about every 2 seconds at 30 frames per second), which works pretty well.
... note: of course, the more
key frames you use, the larger your video file is, so you may need to experiment a bit to get the right balance between file size and seek performance.
Feature-Policy - HTTP
when this policy is disabled, the promise returned by navigator.requestmedia
keysystemaccess() will reject with a domexception.
... public
key-credentials-get controls whether the current document is allowed to use the web authentication api to retreive already stored public-
key credentials, i.e.
... via navigator.credentials.get({public
key: ..., ...}).
...it can do so by delivering the following http response header to define a feature policy: feature-policy: microphone 'none'; geolocation 'none' by specifying the 'none'
keyword for the origin list, the specified features will be disabled for all browsing contexts (this includes all iframes), regardless of their origin.
Index - HTTP
when this policy is enabled, the promise returned by navigator.requestmedia
keysystemaccess() will reject with a domexception.
... 91 public-
key-pins hpkp, http, reference, security, header the http public-
key-pins response header associates a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates.
... if one or several
keys are pinned and none of them are used by the server, the browser will not accept the response as legitimate, and will not display it.
... 92 public-
key-pins-report-only hpkp, http, security, header the http public-
key-pins-report-only response header sends reports of pinning violation to the report-uri specified in the header but, unlike public-
key-pins still allows browsers to connect to the server if the pinning is violated.
HTTP headers - HTTP
http public
key pinning (hpkp) http public
key pinning has been deprecated and removed in favor of certificate transparency and expect-ct.
... public-
key-pins associates a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates.
... public-
key-pins-report-only sends reports to the report-uri specified in the header and does still allow clients to connect to the server even if the pinning is violated.
... websockets sec-websocket-
key ...
Network Error Logging - HTTP
the following object
keys can be specified in the nel header: report_to the reporting api group to send network error reports to (see below).
...defaults to 0, so that no successful network requests will be reported if the
key is not present in the json payload.
...defaults to 1, so that all failed network requests will be reported if the
key is not present in the json payload.
...the top-level "body"
key contains the network error report.
About JavaScript - JavaScript
this engine, code named spidermon
key, is implemented in c/c++.
...like spidermon
key, rhino is ecma-262 edition 5 compliant.
... several major runtime optimizations such as tracemon
key (firefox 3.5), jägermon
key (firefox 4) and ionmon
key were added to the spidermon
key javascript engine over time.
... javascript resources spidermon
key information specific to mozilla's implementation of javascript in c/c++ engine (aka spidermon
key), including how to embed it in applications.
Arrow function expressions - JavaScript
an arrow function expression is a syntactically compact alternative to a regular function expression, although without its own bindings to the this, arguments, super, or new.target
keywords.
... two factors influenced the introduction of arrow functions: the need for shorter functions and the behavior of the this
keyword.
... var foo = () => {}; console.log(foo.prototype); // undefined use of the yield
keyword the yield
keyword may not be used in an arrow function's body (except when permitted within functions further nested within it).
...foo is treated like a label, not a
key in an object literal).
Functions - JavaScript
in the case of a constructor called with the new
keyword, the default value is the value of its this parameter.
... */ console.log(mycar.brand); the this
keyword does not refer to the currently executing function, so you must refer to function objects by name, even within the function body.
... as we can see, both examples do not start with the function
keyword.
...however, in the spidermon
key javascript engine, the serialized form of the function shows as if it has the name "anonymous".
Array.prototype[@@unscopables] - JavaScript
description the default array properties that are excluded from with bindings are: copywithin() entries() fill() find() findindex() includes()
keys() values() see symbol.unscopables for how to set unscopables for your own objects.
...however, in ecmascript 2015 and later, the array.prototype.
keys() method was introduced.
... that means that inside with environments, "
keys" would now be the method and not the variable.
... var
keys = []; with (array.prototype) {
keys.push('something'); } object.
keys(array.prototype[symbol.unscopables]); // ["copywithin", "entries", "fill", "find", "findindex", // "includes", "
keys", "values"] specifications specification ecmascript (ecma-262)the definition of 'array.prototype[@@unscopables]' in that specification.
Intl.Locale.prototype.caseFirst - JavaScript
examples setting the casefirst value via the locale string in the unicode locale string spec, the values that casefirst represents correspond to the
key kf.
...these subtags add additional data about the locale, and are added to locale identifiers by using the -u extension
key.
...to add the casefirst value, first add the -u extension
key to the string.
... next, add the -kf extension
key to indicate that you are adding a value for casefirst.
Intl.Locale.prototype.numberingSystem - JavaScript
igits tirh tirhuta digits tibt tibetan digits traditio traditional numerals — may be algorithmic vaii vai digits wara warang citi digits wcho wancho digits examples setting the numberingsystem value via the locale string in the unicode locale string spec, the values that numberingsystem represents correspond to the
key nu.
...these subtags add additional data about the locale, and are added to locale identifiers by first adding the -u
key.
... to set the numberingsystem value via the string argument to the locale constructor, first add the -u extension
key.
... next, add the -nu extension
key to indicate that you are adding a value for numberingsystem.
JSON.parse() - JavaScript
var j; function walk(holder,
key) { // the walk method is used to recursively walk the resulting structure so // that modifications can be made.
... var k; var v; var value = holder[
key]; if (value && typeof value === "object") { for (k in value) { if (object.prototype.hasownproperty.call(value, k)) { v = walk(value, k); if (v !== undefined) { value[k] = v; } else { delete value[k]; } } } } return reviver.call(holder,
key, value); } // parsing happens in four stages.
... json.parse('{"p": 5}', (
key, value) => typeof value === 'number' ?
... value * 2 // return value * 2 for numbers : value // return everything else unchanged ); // { p: 10 } json.parse('{"1": 1, "2": 2, "3": {"4": 4, "5": {"6": 6}}}', (
key, value) => { console.log(
key); // log the current property name, the last is "".
Object.fromEntries() - JavaScript
the object.fromentries() method transforms a list of
key-value pairs into an object.
... description the object.fromentries() method takes a list of
key-value pairs and returns a new object whose properties are given by those entries.
... the iterable argument is expected to be an object that implements an @@iterator method, that returns an iterator object, that produces a two element array-like object, whose first element is a value that will be used as a property
key, and whose second element is the value to associate with that property
key.
...['0', 'a'], ['1', 'b'], ['2', 'c'] ]; const obj = object.fromentries(arr); console.log(obj); // { 0: "a", 1: "b", 2: "c" } object transformations with object.fromentries, its reverse method object.entries(), and array manipulation methods, you are able to transform objects like this: const object1 = { a: 1, b: 2, c: 3 }; const object2 = object.fromentries( object.entries(object1) .map(([
key, val ]) => [
key, val * 2 ]) ); console.log(object2); // { a: 2, b: 4, c: 6 } please do not add polyfills on mdn pages.
Object.getOwnPropertyNames() - JavaScript
the ordering of the enumerable properties in the array is consistent with the ordering exposed by a for...in loop (or by object.
keys()) over the properties of the object.
... array) { console.log(val + ' -> ' + obj[val]); } ); // logs // 0 -> a // 1 -> b // 2 -> c // non-enumerable property var my_obj = object.create({}, { getfoo: { value: function() { return this.foo; }, enumerable: false } }); my_obj.foo = 1; console.log(object.getownpropertynames(my_obj).sort()); // logs ["foo", "getfoo"] if you want only the enumerable properties, see object.
keys() or use a for...in loop (note that this will also return enumerable properties found along the prototype chain for the object unless the latter is filtered with hasownproperty()).
...edmethod = function() {}; function childclass() { this.prop = 5; this.method = function() {}; } childclass.prototype = new parentclass; childclass.prototype.prototypemethod = function() {}; console.log( object.getownpropertynames( new childclass() // ["prop", "method"] ) ); get non-enumerable properties only this uses the array.prototype.filter() function to remove the enumerable
keys (obtained with object.
keys()) from a list of all
keys (obtained with object.getownpropertynames()) thus giving only the non-enumerable
keys as output.
... var target = myobject; var enum_and_nonenum = object.getownpropertynames(target); var enum_only = object.
keys(target); var nonenum_only = enum_and_nonenum.filter(function(
key) { var indexinenum = enum_only.indexof(
key); if (indexinenum == -1) { // not found in enum_only
keys, // meaning that the
key is non-enumerable, // so return true so we keep this in the filter return true; } else { return false; } }); console.log(nonenum_only); specifications specification ecmascript (ecma-262)the definition of 'object.getownpropertynames' in that specification.
Object - JavaScript
it is used to store various
keyed collections and more complex entities.
... object.entries() returns an array containing all of the [
key, value] pairs of a given object's own enumerable string properties.
... object.fromentries() returns a new object from an iterable of [
key, value] pairs.
... object.
keys() returns an array containing the names of all of the given object's own enumerable string properties.
Proxy - JavaScript
let products = new proxy([ { name: 'firefox', type: 'browser' }, { name: 'seamon
key', type: 'browser' }, { name: 'thunderbird', type: 'mailer' } ], { get: function(obj, prop) { // the default behavior to return the value; prop is usually an integer if (prop in obj) { return obj[prop]; } // get the number of products; an alias of products.length if (prop === 'number') { return obj.length; } let result, types = {}; for (let produc...
...= product; } if (types[product.type]) { types[product.type].push(product); } else { types[product.type] = [product]; } } // get a product by name if (result) { return result; } // get products by type if (prop in types) { return types[prop]; } // get product types if (prop === 'types') { return object.
keys(types); } return undefined; } }); console.log(products[0]); // { name: 'firefox', type: 'browser' } console.log(products['firefox']); // { name: 'firefox', type: 'browser' } console.log(products['chrome']); // undefined console.log(products.browser); // [{ name: 'firefox', type: 'browser' }, { name: 'seamon
key', type: 'browser' }] console.log(products.types); //...
...get the "doccookies" object here: https://developer.mozilla.org/docs/dom/document.cookie#a_little_framework.3a_a_complete_cookies_reader.2fwriter_with_full_unicode_support */ var doccookies = new proxy(doccookies, { get: function (otarget, s
key) { return otarget[s
key] || otarget.getitem(s
key) || undefined; }, set: function (otarget, s
key, vvalue) { if (s
key in otarget) { return false; } return otarget.setitem(s
key, vvalue); }, deleteproperty: function (otarget, s
key) { if (s
key in otarget) { return false; } return otarget.removeitem(s
key); }, enumerate: function (otarget, s
key) { return otarget.
keys()...
...; }, own
keys: function (otarget, s
key) { return otarget.
keys(); }, has: function (otarget, s
key) { return s
key in otarget || otarget.hasitem(s
key); }, defineproperty: function (otarget, s
key, odesc) { if (odesc && 'value' in odesc) { otarget.setitem(s
key, odesc.value); } return otarget; }, getownpropertydescriptor: function (otarget, s
key) { var vvalue = otarget.getitem(s
key); return vvalue ?
WeakMap.prototype.get() - JavaScript
syntax wm.get(
key); parameters
key required.
... the
key of the element to return from the weakmap object.
... return value the element associated with the specified
key in the weakmap object.
... if the
key can't be found, undefined is returned.
WeakMap.prototype.has() - JavaScript
the has() method returns a boolean indicating whether an element with the specified
key exists in the weakmap object or not.
... syntax wm.has(
key); parameters
key required.
... the
key of the element to test for presence in the weakmap object.
... return value boolean returns true if an element with the specified
key exists in the weakmap object; otherwise false.
Lexical grammar - JavaScript
ecmascript also defines certain
keywords and literals and has rules for automatic insertion of semicolons to end statements.
...
keywords reserved
keywords as of ecmascript 2015 break case catch class const continue debugger default delete do else export extends finally for function if import in instanceof new return super switch this throw try typeof var void while with yield future reserved
keywords the following are reserved as future
keywords by the ecmascript specification.
... these are always reserved: enum the following are only reserved when they are found in strict mode code: implements interface let package private protected public static the following are only reserved when they are found in module code: await future reserved
keywords in older standards the following are reserved as future
keywords by older ecmascript specifications (ecmascript 1 till 3).
... identifiers with special meanings a few identifiers have a special meaning in some contexts without being
keywords of any kind.
Object initializer - JavaScript
you simply notate a list of
key: value pairs delimited by commas.
... the following code creates an object with three properties and the
keys are "foo", "age" and "baz".
... the values of these
keys are a string "bar", the number 42, and another object.
... let o = { property: function (parameters) {}, get property() {}, set property(value) {} } in ecmascript 2015, a shorthand notation is available, so that the
keyword "function" is no longer necessary.
yield - JavaScript
the yield
keyword is used to pause and resume a generator function (function* or legacy generator function).
... description the yield
keyword pauses generator function execution and the value of the expression following the yield
keyword is returned to the generator's caller.
... it can be thought of as a generator-based version of the return
keyword.
... the yield
keyword causes the call to the generator's next() method to return an iteratorresult object with two properties: value and done.
Web video codec guide - Web media technologies
this plays a
key role in the final size of the video.
... to resolve this, and to improve seek time through the video data, periodic
key frames (also known as intra-frames or i-frames) are placed into the video file.
... the
key frames are full frames, which are used to repair any damage or artifact residue that's currently visible.
...these are due to the mathematics involved in the coding of the residual frames, and can be easily noticed before being repaired by the next
key frame.
Performance fundamentals - Web Performance
memory usage memory usage is another
key metric.
...speaking: the first is the application first paint — the point at which sufficient application resources have been loaded to paint an initial frame the second is when the application becomes interactive — for example, users are able to tap a button and the application responds the final event is full load — for example when all the user's albums have been listed in a music player the
key to fast startup is to keep two things in mind: upp is all that matters, and there's a "critical path" to each user-perceived event above.
... css animations give you very granular control over your effects using
keyframes, and you can even watch events fired during the animation process in order to handle other tasks that need to be performed at set points in the animation process.
... make events immediate as old-school, accessibility-aware web developers we love click events since they also support
keyboard input.
transform-origin - SVG: Scalable Vector Graphics
if two or more values are defined and either no value is a
keyword, or the only used
keyword is center, then the first value represents the horizontal offset and the second represents the vertical offset.
... one-value syntax: the value must be a <length>, a <percentage>, or one of the
keywords left, center, right, top, and bottom.
... two-value syntax: one value must be a <length>, a <percentage>, or one of the
keywords left, center, and right.
... the other value must be a <length>, a <percentage>, or one of the
keywords top, center, and bottom.
xChannelSelector - SVG: Scalable Vector Graphics
aphic" scale="30" xchannelselector="b"/> </filter> <text x="10" y="60" font-size="50" filter="url(#displacementfilter)">some displaced text</text> <text x="10" y="120" font-size="50" filter="url(#displacementfilter2)">some displaced text</text> </svg> usage notes value r | g | b | a default value a animatable yes r this
keyword specifies that the red color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the x-axis.
... g this
keyword specifies that the green color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the x-axis.
... b this
keyword specifies that the blue color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the x-axis.
... a this
keyword specifies that the alpha channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the x-axis.
yChannelSelector - SVG: Scalable Vector Graphics
aphic" scale="30" ychannelselector="b"/> </filter> <text x="10" y="60" font-size="50" filter="url(#displacementfilter)">some displaced text</text> <text x="10" y="120" font-size="50" filter="url(#displacementfilter2)">some displaced text</text> </svg> usage notes value r | g | b | a default value a animatable yes r this
keyword specifies that the red color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the y-axis.
... g this
keyword specifies that the green color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the y-axis.
... b this
keyword specifies that the blue color channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the y-axis.
... a this
keyword specifies that the alpha channel of the input image defined in in2 will be used to displace the pixels of the input image defined in in along the y-axis.
Content type - SVG: Scalable Vector Graphics
a <color> is either a
keyword or a numerical rgb specification.
... in addition to these color
keywords, users may specify
keywords that correspond to the colors used by objects in the user's environment.
... the normative definition of these
keywords is found in user preferences for colors (css2, section 18.2).
... | "rgb("integer, integer, integer")" | "rgb("integer "%", integer "%", integer "%)" | color-
keyword hexdigit ::= [0-9a-fa-f] where color-
keyword matches (case insensitively) one of the color
keywords listed in css color module level 3, or one of the system color
keywords listed in user preferences for colors (css2, section 18.2).
SVG documentation index - SVG: Scalable Vector Graphics
119
keypoints svg, svg attribute the
keypoints attribute indicates the simple duration of an animation.
... 120
keysplines svg, svg attribute the
keysplines attribute defines a set of bézier curve control points associated with the
keytimes list, defining a cubic bézier function that controls interval pacing.
... if there are any errors in the
keysplines specification (bad values, too many or too few values), the animation will not occur.
... 121
keytimes svg, svg attribute the
keytimes attribute represents a list of time values used to control the pacing of the animation.
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
> element depending on whether it is a valid link implementation status unknown aria state and property attributes animatable implementation status unknown styling change notes contentstyletype attribute removed implementation status unknown linkstyle on svgstyleelement implemented (bug 1239128 (firefox 46.0 / thunderbird 46.0 / seamon
key 2.43)) inner <svg>s and <foreignobjects>s not overflow: hidden; in ua style sheet implementation status unknown overflow: hidden; on <hatch> in ua style sheet implementation status unknown 0 0 as default value of transform-origin except root <svg> and <svg> children of <foreign> implementation status unknown use of white-space instead of deprecated xml...
...nknown auto value of width and height computes to 0 but 100% on <svg> not implemented coordinate systems, transformations and units change notes exception for bad values on svgmatrix.skewx() and svgmatrix.skewy() implementation status unknown bounding box for element with no position at (0, 0) implementation status unknown defer
keyword removed from preserveaspectratio attribute removed (bug 1280425) added non-scaling-size, non-rotation and fixed-position
keywords for vector-effect property not implemented yet (bug 1318208) vector-effect has no effect within 3d rendering context implementation status unknown consider clip and overflow on svg document referenced by <image> implementation...
... <source> implementation status unknown <track> implementation status unknown painting change notes paint-order implemented (bug 828805) will-change instead of buffered-rendering implementation status unknown context-fill and context-stroke paint values implemented (bug 719286 (firefox 18.0 / thunderbird 18.0 / seamon
key 2.15) and bug 798843 (firefox 26.0 / thunderbird 26.0 / seamon
key 2.23)) child
keyword for <paint> values and marker properties implementation status unknown vector-effect property only none and non-scaling-stroke values are supported (bug 528332 (firefox 15 / thunderbird 15 / seamon
key 2.12), bug 1318208) arcs value for stroke-linejoin not implemented (bug 123...
...g 620002) only structurally external elements and outermost <svg> element fire load events implementation status unknown resize and scroll instead of svgresize and svgscroll implementation status unknown domactivate removed implementation status unknown focusin and focusout instead of domfocusin and domfocusout implementation status unknown
keyboard events implementation status unknown mutation events removed implementation status unknown svgzoomevent removed implementation status unknown <cursor> element deprecated implementation status unknown linking change notes link svg resources with fragment identifiers implementation status unknown xlink:type, xl...
Understanding WebAssembly text format - WebAssembly
let's start by doing this — first, we'll add a name preceded by a dollar sign, just after the func
keyword: (func $add … ) now we need to add an export declaration — this looks like so: (export "add" (func $add)) here, add is the name the function will be identified by in javascript whereas $add picks out which webassembly function inside the module is being exported.
... our github repo; also see global.html for a live javascript example): (module (global $g (import "js" "global") (mut i32)) (func (export "getglobal") (result i32) (global.get $g)) (func (export "incglobal") (global.set $g (i32.add (global.get $g) (i32.const 1)))) ) this looks similar to what we've seen before, except that we specify a global value using the
keyword global, and we also specify the
keyword mut along with the value's datatype if we want it to be mutable.
... the
key is that javascript can create webassembly linear memory instances via the webassembly.memory() interface, and access an existing memory instance (currently you can only have one per module instance) using the associated instance methods.
...initialization object now has a shared property, which when set to true will create a shared memory: let memory = new webassembly.memory({initial:10, maximum:100, shared:true}); the memory's buffer property will now return a sharedarraybuffer, instead of the usual arraybuffer: memory.buffer // returns sharedarraybuffer over in the text format, you can create a shared memory using the shared
keyword, like this: (memory 1 2 shared) unlike unshared memories, shared memories must specify a "maximum" size, in both the javascript api constructor and wasm text format.
2015 MDN Fellowship Program - Archive of obsolete content
in 2015, mdn will expand the impact of this content by developing kits of
key learning materials, including such elements as code samples, videos and other elements being finalized.
... activities and deliverables act as lead curator for technical curriculum addressing a
key web technology, developing code samples, videos, interactive exercises and other components to be determined.
... required skills and experience experienced web developer with expertise in javascript, css, html and/or other
key technologies.
page-worker - Archive of obsolete content
allow object an object with
keys to configure the permissions on the page worker.
... the boolean
key script controls if scripts from the page are allowed to run.
...it contains a single
key named script whose value is a boolean that indicates whether or not to execute script in the content.
simple-prefs - Archive of obsolete content
the values of the "label" attributes prefixed with "{name}_options.", where {name} is the name of the preference, are used as localization
keys.
... the values of the "label" attributes prefixed with "{name}_options.", where {name} is the name of the preference, are used as localization
keys.
...you can change the sub-branch of extensions using the preferences-branch
key in your add-on's package.json file.
widget - Archive of obsolete content
it should contain a single
key named script whose value is a boolean that indicates whether or not to execute script in the content.
...it contains a single
key named script whose value is a boolean that indicates whether or not to execute script in the content.
...it contains a single
key named script whose value is a boolean that indicates whether or not to execute script in the content.
Add a Context Menu Item - Archive of obsolete content
({ label: "log selection", context: contextmenu.selectioncontext(), contentscript: 'self.on("click", function () {' + ' var text = window.getselection().tostring();' + ' self.postmessage(text);' + '});', image: self.data.url("icon-16.png"), onmessage: function (selectiontext) { console.log(selectiontext); } }); adding an access
key new in firefox 35.
... from firefox 35 you can specify an access
key using the access
key option.
...pressing the
key selects the option when the context menu is open: var contextmenu = require("sdk/context-menu"); var menuitem = contextmenu.item({ label: "log selection", context: contextmenu.selectioncontext(), contentscript: 'self.on("click", function () {' + ' var text = window.getselection().tostring();' + ' self.postmessage(text);' + '});', access
key: "l", onmessage: function (selectiontext) { console.log(selectiontext); } }); learning more to learn more about the context-menu module, see the context-menu api reference.
Creating annotations - Archive of obsolete content
annotation editor content script in the corresponding content script we do two things: handle a message from the add-on code by giving the text area focus listen for the return
key and when it is pressed, send the contents of the text area to the add-on.
... here's the code: var textarea = document.getelementbyid('annotation-box'); textarea.on
keyup = function(event) { if (event.
keycode == 13) { self.postmessage(textarea.value); textarea.value = ''; } }; self.on('message', function() { var textarea = document.getelementbyid('annotation-box'); textarea.value = ''; textarea.focus(); }); save this inside data/editor as annotation-editor.js.
...you should see a panel with a text area for a note: enter the note and press the return
key: you should see console output like this: info: http://blog.mozilla.com/addons/2011/02/04/overview-amo-review-process/, post-2249,when you submit a new add-on, you will have to choose between 2 review tracks: full review and preliminary review.
Chapter 1: Introduction to Extensions - Archive of obsolete content
greasemon
key userchrome.js both of these provide an environment for running user scripts (javascript) in firefox itself, where the scripts can target specific websites.
... user scripts (change appearance and functionality through javascript) yes; you can use the greasemon
key extension or "bookmarklets." yes; you can change userchrome.js to add functionality through javascript.
...users have flexible customization options, using css in user style sheets and javascript/dom in user scripts (these depend on stylish, greasemon
key, and userchrome.js).
Adding Toolbars and Toolbar Buttons - Archive of obsolete content
<overlay id="xulschoolhello-browser-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <toolbarpalette id="browsertoolbarpalette"> <toolbarbutton id="xulschoolhello-hello-world-button" class="toolbarbutton-1 chromeclass-toolbar-additional" label="&xulschoolhello.helloworld.label;" tooltiptext="&xulschoolhello.helloworld.tooltip;" oncommand="xulschoolchrome.browseroverlay.dosomething(event);" /> <!-- more buttons...
... <window id="main-window"> <toolbox id="navigator-toolbox"> <toolbar id="xulschoolhello-toolbar" toolbarname="&xulschoolhello.toolbarname.label;" access
key="&xulschoolhello.toolbar.access
key;" customizable="true" mode="icons" context="toolbar-context-menu" defaultset="xulschoolhello-hello-world-button" insertbefore="personaltoolbar" /> </toolbox> </window> (note for mac os x: <window id="main-window"> and </window> are not required) our toolbar is added as a child of the toolbox element in the main browser window.
... here are the
key similarities and differences between the 3 themes: all systems use small icons that are 16x16 pixels.
Custom XUL Elements with XBL - Archive of obsolete content
<bindings xmlns="http://www.mozilla.org/xbl" xmlns:xbl="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> the bindings element is the root of the document, and it's a container for binding elements.
... <content> <xul:hbox> <xul:image class="xulshoolhello-person-image" xbl:inherits="src=image" /> <xul:vbox flex="1"> <xul:label xbl:inherits="value=name" /> <xul:description xbl:inherits="value=greeting" /> </xul:vbox> <xul:vbox> <xul:button label="&xulshoolhello.remove.label;" access
key="&xulshoolhello.remove.access
key;" oncommand="document.getbindingparent(this).remove(event);" /> </xul:vbox> </xul:hbox> </content> our element is very simple, displaying an image, a couple of text lines and a button.
...you can also have a return value using the return
keyword, just like on regular js code.
JavaScript Object Management - Archive of obsolete content
a clear example of this is the fact that there are no private or public
keywords that allow you to protect object members.
...we only need to define them when we're making windows of our own, or when we're working with code outside of the chrome (or porting your code to seamon
key, which doesn't have those constants declared in the main window).
...using the function
keyword to define a class is odd, but this is just the javascript way: functions are also objects.
Setting Up a Development Environment - Archive of obsolete content
signature_dir := signature # the signing
key /certificate file.
... signature_extra_files := $(build_dir)/meta-inf/manifest.mf \ $(build_dir)/meta-inf/zigbert.sf # the signing
key /certificate file.
... signature_rsa_file = $(build_dir)/meta-inf/zigbert.rsa# the signing
key /certificate file.
Security best practices in extensions - Archive of obsolete content
this is written from the perspective of a firefox extension, but most items apply to extensions for other mozilla-based applications such as thunderbird or seamon
key.
...the usefulness of it and power of how it works is best illustrated by the popular greasemon
key extension, which works on the premise of scripts being downloaded and stored locally, to be injected into the web content context via the sandbox.
... many extensions use the greasemon
key compiler to bundle it in their extension for convenience.
Tabbed browser - Archive of obsolete content
: "current" current tab (if there aren't any browser windows, then in a new window instead) "tab" new tab (if there aren't any browser windows, then in a new window instead) "tabshifted" same as "tab" but in background if default is to select new tabs, and vice versa "window" new window "save" save to disk (with no filename hint!) openuilink( url, e, ignorebutton, ignorealt, allow
keywordfixup, postdata, referrerurl ) the following code will open a url in a new tab, an existing tab, or an existing window based on which mouse button was pressed and which hot
keys (ex: ctrl) are being held.
... notification when a tab's attributes change requires gecko 2.0(firefox 4 / thunderbird 3.3 / seamon
key 2.1) starting in gecko 2.0, you can detect when a tab's attributes change by listening for the tabattrmodified event.
...can check what's changed on the tab } // during initialization var container = gbrowser.tabcontainer; container.addeventlistener("tabattrmodified", exampletabattrmodified, false); // when no longer needed container.removeeventlistener("tabattrmodified", exampletabattrmodified, false); notification when a tab is pinned or unpinned requires gecko 2.0(firefox 4 / thunderbird 3.3 / seamon
key 2.1) starting in gecko 2.0, tabs can be "pinned"; that is, they become special application tabs ("app tabs"), which are pinned to the beginning of the tab bar, and show only the favicon.
Adding preferences to an extension - Archive of obsolete content
<?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <prefwindow id="stockwatcher2-prefs" title="stockwatcher 2 options" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <prefpane id="sw2-stock-pane" label="stock settings"> <preferences> <preference id="pref_symbol" name="extensions.stockwatcher2.symbol" type="string"/> </preferences> <hbox align="center"> <label control="symbol" value="stock to watch: "/> <textbox preference="pref_symbol" id="symbol" maxlength="4"/> </hbox> </prefpane> </prefwindow> t...
... alternative method: inline options requires gecko 7(firefox 7 / thunderbird 7 / seamon
key 2.4) you could use inline options for this preference.
...your options.xul file would look like this: <?xml version="1.0" ?> <vbox xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <setting pref="extensions.stockwatcher2.symbol" type="string" title="stock to watch" /> </vbox> adding the context menu adding the contextual menu is easy; all the work that needs doing is done in the stockwatcher2.xul file.
Creating a status bar extension - Archive of obsolete content
/docs/creating_a_status_bar_extension</em:homepageurl> <!-- describe the firefox versions we support --> <em:targetapplication> <description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minversion>1.5</em:minversion> <em:maxversion>2.0.0.*</em:maxversion> </description> </em:targetapplication> </description> </rdf> let's take a look at some
key parts of the manifest.
...our overlay file, status-bar-sample-1.xul, looks like this: <?xml version="1.0" encoding="utf-8"?> <!doctype overlay > <overlay id="status-bar-sample-1-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <!-- firefox --> <statusbar id="status-bar"> <statusbarpanel id="status-bar-sample-1" label="hello world" tooltiptext="sample status bar item" /> </statusbar> </overlay> the first order of business in the status-bar-sample-1.xul file is to establish that this is in fact a xul file, and to set up a unique id for the overlay.
... this is accomplished by the following line of xml: <overlay id="status-bar-sample-1-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> once that's accomplished, we can describe our user interface.
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
abstract this document is a concrete example of a centralized auto-configuration of mozilla apps, that are; firefox, thunderbird, mozilla suite 1.x.x, seamon
key and for the record, old netscape 4.x.
...ref: bug 690370 available functions are (see prefcalls.js file for details): function getprefbranch() function pref(prefname, value) function defaultpref(prefname, value) function lockpref(prefname, value) function unlockpref(prefname) function getpref(prefname) function getldapattributes(host, base, filter, attribs) function getldapvalue(str,
key) function displayerror(funcname, message) function getenv(name) configure autoconfig two directives ask thunderbird to use autoconfig at startup: # cat /usr/lib/thunderbird/defaults/pref/tb-autoconf.js // 20100526 - modification autoconfig jehan.
...to fix, add the following: start_pos += search_
key.length; //start start_pos +=1; //end to function getldapvalue() in autoconfig/preffcalls.js.
FAQ - Archive of obsolete content
what is an access
key?
... an access
key is a
keyboard shortcut to access something.
... in the case of skins the access
key that you are defining is accessible by going to edit->preferences, appearance->themes, and then pressing a letter.
Installing Dehydra - Archive of obsolete content
spidermon
key provides scripting capabilities for dehydra.
... building spidermon
key it is recommended that you use spidermon
key revision aurora_base_20110705 when building dehydra.
...mkdir gcc-objdir mkdir gcc-dist cd gcc-objdir ../gcc-4.5.3/configure --disable-bootstrap --enable-languages=c,c++ --prefix=$pwd/../gcc-dist make make install building dehydra and treehydra building dehydra requires spidermon
key development headers from the previous step.
GRE Registration - Archive of obsolete content
windows on windows, gre registration information is kept in the win32 registry under the h
key_local_machine/software/mozilla.org/gre and h
key_current_user/software/mozilla.org/gre
keys.
... each sub
key is searched for gre registration information: hklm/software/mozilla.org/gre/1.8_1 version=1.8 grehome=c:\path\to\installed-dir feature=value feature2=value2 hklm/software/mozilla.org/gre/1.8_2 version=1.8 grehome=c:\path\to\second-installation when installing a gre via the mozilla suite gre installer, the installer will blindly overwrite any previous gre information in hklm/software/mozilla.org/gre/<version>.
... when installing a gre via the command line <tt>xulrunner.exe -register-global</tt>, xulrunner will detect that there is already an installation at hklm/software/mozilla.org/gre/<version> and will try alternate
keys <version>_1 _2 until an available
key is found.
File object - Archive of obsolete content
warning: this section describes the file component of the spidermon
key javascript interpreter.
... getting started in order to use the file object from your javascript programs, you must enable it by setting the make variable js_has_file_object during the compilation of your spidermon
key engine.
... if you are building a standalone version of spidermon
key (see: spidermon
key build documentation), this variable can be added on the make command line, like so: cd mozilla/js/src make -f makefile.ref js_has_file_object=1 alternatively, if you are building a larger product (such as a browser) and want to include the file object, you may need to perform minor makefile surgery.
writeString - Archive of obsolete content
method of winprofile object syntax boolean writestring ( string section, string
key, string value); parameters the method has the following parameters: section section in the file, such as "boot" or "drivers".
...
key the
key in that section whose value to change.
...unlike the writeprivateprofilestring function, this method does not support using a null
key to delete an entire section.
getValue - Archive of obsolete content
retrieves the value of an arbitrary
key.
... method of winreg object syntax winregvalue getvalue ( string sub
key, string valname); parameters the getvalue method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
...description the getvalue method retrieves the value of an arbitraty
key.
getValueNumber - Archive of obsolete content
getvaluenumber gets the value of a
key when that value is a number.
... method of winreg object syntax number getvaluenumber ( string sub
key, string valname); parameters the getvaluestring method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
... returns number value of the specified
key or null if there's an error, the value is not found, or the value is not a string.
setValue - Archive of obsolete content
sets the value of an arbitrary
key.
... method of winreg object syntax string setvalue ( string sub
key, string valname, winregvalue value); parameters the setvalue method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
...description the setvalue method sets the value of an arbitrary
key.
setValueNumber - Archive of obsolete content
summary sets the value of a
key, when that value is a number.
... method of winreg object syntax int setvaluenumber ( string sub
key, string valname, number value ); parameters the method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
... description the setvaluenumber method sets the value of a
key when that value is a number.
setValueString - Archive of obsolete content
setvaluestring sets the value of a
key, when that value is a string.
... method of winreg object syntax int setvaluestring ( string sub
key, string valname, string value); parameters the method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
...description the setvaluestring method sets the value of a
key when that value is a string.
handleCtrlTab - Archive of obsolete content
« xul reference home handlectrltab type: boolean if set to true or omitted, the tabbox will switch to the next tab when the control and tab
keys are pressed.
... if the shift
key is also held down, the previous tab will be displayed.
... if this attribute is set to false, these
keys do not navigate between tabs.
oninput - Archive of obsolete content
this event is only called when the text displayed would change, thus it is not called when the user presses non-displayable
keys.
... example <!-- this sets the label's text to the textbox value on each
keystroke.
... --> <script language="javascript"> function setlabel(txtbox){ document.getelementbyid('lbl').value = txtbox.value; } </script> <label id="lbl"/> <textbox oninput="setlabel(this);"/> this is similar to the on
keypress event used in html documents.
sortResource - Archive of obsolete content
« xul reference home sortresource type: uri for template-generated content, this specifies the sort
key, if you would like the content to be sorted.
... the
key should be the full uri of the rdf resource to sort by, for example 'http://home.netscape.com/nc-rdf#name'.
...use sortresource2 to specify a secondary sort
key.
textbox.onblur - Archive of obsolete content
« xul reference home onblur type: script code this event is sent when a textbox loses
keyboard focus.
...from gecko 1.9 to gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9), the script code would actually execute twice, once in the context of the anonymous html <input> element and once in the context of the <textbox> element itself.
... as of gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10), the script code only runs in the context of the <textbox> element, matching the behavior of all other event handlers.
textbox.onfocus - Archive of obsolete content
« xul reference home onfocus type: script code this event is sent when a textbox receives
keyboard focus.
...from gecko 1.9 to gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9), the script code would actually execute twice, once in the context of the anonymous html <input> element and once in the context of the <textbox> element itself.
... as of gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10), the script code only runs in the context of the <textbox> element, matching the behavior of all other event handlers.
textbox.type - Archive of obsolete content
for more information about autocomplete textboxes, see the autocomplete documentation (xpfe [thunderbird/seamon
key]) (firefox) number a textbox that only allows the user to enter numbers.
...if the searchbutton attribute is set to true, the command event is only fired if the user presses the search button or presses the enter
key.
...the command event will fire if the user presses the enter
key.
Attribute (XUL) - Archive of obsolete content
« xul reference home acceltext accessible access
key activetitlebarcolor afterselected align allowevents allownegativeassertions alternatingbackground alwaysopenpopup attribute autocheck autocompleteenabled autocompletepopup autocompletesearch autocompletesearchparam autofill autofillaftermatch autoscroll beforeselected buttonaccess
keyaccept buttonaccess
keycancel buttonaccess
keydisclosure buttonaccess
keyextra1 buttonaccess
keyextra2 buttonaccess
keyhelp buttonalign buttondir buttondisabledaccept buttonlabelaccept buttonlabelcancel buttonlabeldisclosure buttonlabelextra1 buttonlabelextra2 buttonlabelhelp buttonorient buttonpack buttons checked checkstate clicktoscroll class closebutton closemenu coalesceduplicatearcs collapse collapsed c...
...olor cols command commandupdater completedefaultindex container containment contentcontextmenu contenttooltip context contextmenu control crop curpos current currentset customindex customizable cycler datasources decimalplaces default defaultbutton defaultset description dir disableautocomplete disableautoselect disableclose disabled disablehistory disable
keynavigation disablesecurity dlgtype dragging editable editortype element empty emptytext deprecated since gecko 2 enablecolumndrag enablehistory equalsize eventnode events expr firstdayofweek firstpage first-tab fixed flags flex focused forcecomplete grippyhidden grippytooltiptext group handlectrltab height helpuri hidden hidechrome hidecolumnpicker hideheader hideseconds hi...
...despinbuttons highlightnonmatches homepage href icon id ignoreblurwhilesearching ignorecase ignoreincolumnpicker ignore
keys image 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...
Code Samples - Archive of obsolete content
the samples here are designed to work in firefox, thunderbird, sunbird and seamon
key, except where the text says otherwise.
...const path = "c:\\windows\\charmap.exe" var file = components .classes["@mozilla.org/file/local;1"] .createinstance(components.interfaces.nsilocalfile) file.initwithpath(path) file.launch() open a web page if your button is in firefox or seamon
key, use code like this to open a web page.
...toolkit:passwordmanager" const uri = chrome://messenger/content/preferenc...wpasswords.xul" mail & newsgroups const name = "mail:3pane" const uri = "chrome://messenger/content/" sunbird passwords* const name = "toolkit:passwordmanager" const uri = "chrome://passwordmgr/content/passwordmanager.xul" seamon
key navigator const name = "navigator:browser" const uri = "chrome://navigator/content/" mail & newsgroups const name = "mail:3pane" const uri = "chrome://messenger/content/" composer const name = "composer:html" const uri = "chrome://editor/content/" address book const name = "m...
Box Objects - Archive of obsolete content
for instance, the
key element doesn't have any layout objects since it isn't displayed in any way.
...some of these subtypes, such as the stack or listbox are needed for more complex layouts than the basic box, while others such as the button are used only to add extra mouse and
key event handling.
...this may be a bit confusing, but, the
key is to remember that the width and height properties on an element return the size that was set in the xul while the width and height properties of the box object return the current size.
Creating Dialogs - Archive of obsolete content
example dialog source view <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="donothing" title="dialog example" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" buttons="accept,cancel" ondialogaccept="return dook();" ondialogcancel="return docancel();"> <script> function dook(){ alert("you pressed ok!"); return true; } function docancel(){ alert("you pressed cancel!"); return true; } </script> <description value="select a button"/> </dialog> you may place any elements that you wish...
... amongst other useful attributes are buttonlabelaccept - label to appear on the accept button egsave buttonaccess
keyaccept - access
key to use for the accept button egs defaultbutton - button is activated when the enter
key is pressed note: the label attributes are required by remote sites and are probably missing in the above examples due to bug 224996.
... example dialog with more features <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> <dialog id="mydialog" title="my dialog" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" onload="window.sizetocontent();" buttons="accept,cancel" buttonlabelaccept="set favourite" buttonaccess
keyaccept="s" ondialogaccept="return dosave();" buttonlabelcancel="cancel" buttonaccess
keycancel="n" ondialogcancel="return docancel();"> <script> function dosave(){ //dosomething() return true; } function docancel(){ return true; } </script> <dialogheader title="my dialog" description="example dialog"/> <groupbox flex="1"> <caption label="select favourite fruit"/> <radi...
Creating a Window - Archive of obsolete content
the simplest xul file has the following structure: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <!-- other elements go here --> </window> this window will not do anything since it doesn't contain any ui elements.
... xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> this line declares the namespace for xul, which you should put on the window element to indicate that all of its children are xul.
...choose tools – error console, type a line of javascript, and press the evaluate button, or the return or enter
key.
More Menu Features - Archive of obsolete content
<toolbox> <menubar id="findfiles-menubar"> <menu id="file-menu" label="file" access
key="f"> <menupopup id="file-popup"> <menuitem label="open search..." access
key="o"/> <menuitem label="save search..." access
key="s"/> <menuseparator/> <menuitem label="close" access
key="c"/> </menupopup> </menu> <menu id="edit-menu" label="edit" access
key="e"> <menupopup id="edit-popup"> <menuitem label="cut" access
key="t"/> <menuitem label="copy" ...
...access
key="c"/> <menuitem label="paste" access
key="p" disabled="true"/> </menupopup> </menu> </menubar> <toolbar id="findfiles-toolbar> here we have added two menus with various commands on them.
...access
keys have been added for each menu and menu item.
Popup Menus - Archive of obsolete content
on the macintosh for example, the user can either press the control
key and click the mouse button, or hold the mouse button down for a moment.
... also note that it is possible to open context menus without using the mouse, for example by pressing the menu
key on a
keyboard.
...let's have the popup appear when clicking over the first tab panel: <popupset> <menupopup id="editpopup"> <menuitem label="cut" access
key="t"/> <menuitem label="copy" access
key="c"/> <menuitem label="paste" access
key="p" disabled="true"/> </menupopup> </popupset> <vbox flex="1"> .
XBL Inheritance - Archive of obsolete content
for example, the following binding creates a textbox which adds the text 'http://www' to the beginning of its value when the f4
key is pressed.
... example 1 : source <binding id="textboxwithhttp" extends="chrome://global/content/bindings/textbox.xml#textbox"> <handlers> <handler event="
keypress"
keycode="vk_f4"> this.value="http://www"+value; </handler> </handlers> </binding> the xbl here extends from the xul textbox element.
...in addition, we add a handler which responds to the
keypress event.
XUL Questions and Answers - Archive of obsolete content
the following is the code they wrote: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="test-window" title="check list test" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/
keymaster/gat...re.is.only.xul"> <listbox rows="4"> <listhead> <listheader label="multi-column"/> </listhead> <listcols> <listcol flex="1"/> </listcols> <listitem> <listcell type="checkbox" value="1" label="vghkvghk"/> </listitem> <listitem> <listcell type="checkbox" value="2" label="vghjkvk" checked="true"/> </listitem> <listitem> <listcell type="checkbox" value...
... this problem can be solved by capturing the focus events and giving the focus to another xul element or capturing and canceling the
keypress events.
... use directory service the
key to the folder where application.ini resides is "resource:app".
XUL accessibility tool - Archive of obsolete content
it probably also works on seamon
key, but i haven't verified this.
... future work the following things have been suggested or are planned for a future version of the tool: new tests: (aaronlev) warning: hardcoded color and pixel sizings (aaronlev) error: duplicate access
key in a dialog (already have this for menus) (aaronlev) error: form control without access
key (aaronlev) warning: access
key as lowercase letter with descender (underlined g,j,y,q,p are hard to read, not recommended) (aaronandy) list of things to check manually, such as a list oftrees in the document (make sure they have accessible column picker equivs) or a list of toolbarbuttons (make sure they ...
... known bugs: test for lowercase i or l as access
key (sometimes?) flags upppercase i and l too.
caption - Archive of obsolete content
attributes access
key, crop, image, label, tabindex properties access
key, crop, image, label, tabindex examples <groupbox> <caption label="my groupbox"/> </groupbox> <groupbox flex="1"> <caption> <checkbox label="a checked groupbox"/> </caption> </groupbox> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
checkbox - Archive of obsolete content
attributes access
key, checked, command, crop, disabled, src, label, preference, tabindex properties access
key, accessibletype, checked, command, crop, disabled, src, label, tabindex examples <checkbox label="enable javascript" checked="true"/> <checkbox label="enable java" checked="false"/> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
colorpicker - Archive of obsolete content
a change event is fired in different ways for different xul input elements as listed below: onchange type: script code textbox when enter
key is pressed radio/check box when the state is changed select list when the selected item is changed what is accessible the script context at this point can only access the following things: global values/functions i.e.
... window, document, or any of the functions/objects/variables bound to the window object event object example <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> <textbox id="find-text" onchange="return myfunction(event);"/> </window> preference type: id connects the element to a corresponding preference.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
label - Archive of obsolete content
attributes access
key, control, crop, disabled, href, value properties access
key, accessibletype, control, crop, disabled, value style classes header, indent, monospace, plain, small-margin, text-link examples <label value="email address" control="email"/> <textbox id="email"/> attributes access
key type: character this should be set to a character that is used as a shortcut
key.
... properties access
key type: character gets and sets the value of the access
key attribute.
... text-link labels with this class may be focused and the click handler run or the address in the href attribute opened on a mouse click or enter
key press.
menupopup - Archive of obsolete content
a context menu may be opened by right-clicking the element, or by pressing the menu
key on the
keyboard.
... attributes ignore
keys, left, onpopuphidden, onpopuphiding, onpopupshowing, onpopupshown, position, top properties accessibletype, anchornode, popupboxobject, position, state, triggernode methods hidepopup, moveto, openpopup, openpopupatscreen, setconsumerollupevent, showpopup, sizeto examples the following example shows how a menupopup may be attached to a menulist.
... <menupopup id="clipmenu"> <menuitem label="cut"/> <menuitem label="copy"/> <menuitem label="paste"/> </menupopup> <label value="right click for popup" context="clipmenu"/> attributes ignore
keys type: boolean if true,
keyboard navigation between items in the popup is disabled.
preference - Archive of obsolete content
a change event is fired in different ways for different xul input elements as listed below: onchange type: script code textbox when enter
key is pressed radio/check box when the state is changed select list when the selected item is changed what is accessible the script context at this point can only access the following things: global values/functions i.e.
... window, document, or any of the functions/objects/variables bound to the window object event object example <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> <textbox id="find-text" onchange="return myfunction(event);"/> </window> readonly type: boolean if set to true, then the user cannot change the value of the element.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
window - Archive of obsolete content
--> <window id="rootwnd" title="register online!" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <vbox> <hbox> <image src="application_form.png"/> <description>register online!</description> </hbox> <groupbox align="start"> <caption label="your information"/> <radiogroup> <vbox> <hbox> <label control="your-fname" value="enter first name:"/> <textbox id="your-fname" value="joha...
...a filename following the system
keyword in a doctype declaration may silently fail to load and the only error message will be an undefined entity error on the next xul element.
... <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <!-- icon from chrome --> <html:link rel="icon" href="chrome://myextension/content/path/to/favicon.png"/> <!-- from a remote site --> <html:link rel="icon" href="http://www.mozilla.org/favicon.ico"/> since firefox 3.6 the above listed code does not work correctly - it produces the following message: "warning: xul box for box element contained an inline link ...
Dialogs in XULRunner - Archive of obsolete content
here is an example xul dialog: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="mydialog" title="my dialog" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" onload="window.sizetocontent();" buttons="accept,cancel" buttonlabelaccept="set favorite" buttonaccess
keyaccept="s" ondialogaccept="return dosave();" buttonlabelcancel="cancel" buttonaccess
keycancel="n" ondialogcancel="return docancel();"> <script> function dosave(){ //dosomething() ...
... the developer just declares the need for the button, the button's caption, and the access
key for the button, as well as the javascript function to call if the button is pressed.
... buttonaccess
keyaccept access
key for the accept button; similar attributes exist for the other button types.
Extentsions FAQ - Archive of obsolete content
use wm_copydata how to creating an extension that can replace html code on a specific page that does not use greasemon
key?
...the list of "known" properties is: junkscore junkscoreorigin label priority
keywords.
...
keywords - in the gui they are called tags.
2006-11-17 - Archive of obsolete content
special characters inquiry of how to use special characters in spidermon
key.
... recycle array objects a user trying to overcome the need of using huge number of arrays (as vectors) asks if its possible to reuse unreferenced array objects instead of create new ones in spidermon
key.
... mike shaver's response was that resurrecting objects is not possible and that objects in spidermon
key are not reference counted.
TCP/IP Security - Archive of obsolete content
this is accomplished by encrypting data using a cryptographic algorithm and a secret
key—a value known only to the two parties exchanging data.
... the data can only be decrypted by someone who has the secret
key.
... the integrity of data can be assured by generating a message authentication code (mac) value, which is a
keyed cryptographic checksum of the data.
Browser Detection and Cross Browser Support - Archive of obsolete content
mmendations, please see the gecko compatibility handbook gecko although many web developers are aware of firefox, mozilla, and netscape browsers, far fewer are aware that these browsers are members of an entire family of user agents based upon the gecko layout engine which includes the commercial browser compuserve 7, and open source browsers such as epiphany, galeon, camino, kmeleon, and seamon
key.
...browser detection is
key to accomplishing this task.
...many sites
keyed off of the existence of the string netscape6 in the user agent and used tests similar to: if (navigator.useragent.indexof('netscape6') != -1) { // netscape 6 code } note how this type of detection misses any other gecko based browser.
ECMAScript 2015 support in Mozilla - Archive of obsolete content
it defines the standard for the javascript implementation in spidermon
key, the engine used in firefox and other mozilla applications.
... standard library additions to the array object array iteration with for...of (firefox 13) array.from() (firefox 32) array.of() (firefox 25) array.prototype.fill() (firefox 31) array.prototype.find(), array.prototype.findindex() (firefox 25) array.prototype.entries(), array.prototype.
keys() (firefox 28), array.prototype.values() array.prototype.copywithin() (firefox 32) get array[@@species] (firefox 48) new map and set objects, and their weak counterparts map (firefox 13) map iteration with for...of (firefox 17) map.prototype.foreach() (firefox 25) map.prototype.entries() (firefox 20) map.prototype.
keys() (firefox 20) map.prototype.values() construc...
...tor argument: new map(null) (firefox 37) mon
key-patched set() in constructor (firefox 37) get map[@@species] (firefox 41) set (firefox 13) set iteration with for...of (firefox 17) set.prototype.foreach() (firefox 25) set.prototype.entries(), set.prototype.
keys(), set.prototype.values() (firefox 24) constructor argument: new set(null) (firefox 37) mon
key-patched add() in constructor (firefox 37) get set[@@species] (firefox 41) weakmap (firefox 6) weakmap.clear() (firefox 20) optional iterable argument in weakmap constructor (firefox 36) constructor argument: new weakmap(null) (firefox 37) mon
key-patched set() in constructor (firefox 37) weakset (firefox 34) constructor argument: new weakset(null) (firefox 37) mon
key-p...
Using the DOM File API in chrome code - Extensions
you can do so like this: var dsfile = components.classes["@mozilla.org/file/directory_service;1"] .getservice(components.interfaces.nsiproperties) .get("profd", components.interfaces.nsifile); dsfile.append("myfilename.txt"); var file = file.createfromnsifile(dsfile); this uses the directory service to locate the profile directory (with the location
key "profd", see below for more details), then appends the name of the file we want to work with by calling nsifile.append().
... other such
keys as the "profd"
key are available, check the known locations.
... notes starting in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5), you can also do this in component code.
2D collision detection - Game development
} rect code <div id="cr-stage"></div> <p>move the rectangle with arrow
keys.
... green means collision, blue means no collision.</p> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/crafty/0.5.4/crafty-min.js"></script> crafty.init(200, 200); var dim1 = {x: 5, y: 5, w: 50, h: 50} var dim2 = {x: 20, y: 10, w: 60, h: 40} var rect1 = crafty.e("2d, canvas, color").attr(dim1).color("red"); var rect2 = crafty.e("2d, canvas, color,
keyboard, fourway").fourway(2).attr(dim2).color("blue"); rect2.bind("enterframe", function () { if (rect1.x < rect2.x + rect2.w && rect1.x + rect1.w > rect2.x && rect1.y < rect2.y + rect2.h && rect1.h + rect1.y > rect2.y) { // collision detected!
... playable code <div id="cr-stage"></div> <p>move the circle with arrow
keys.
Implementing game control mechanisms - Game development
in this series of articles we will show you how you can approach building a game that can be played using touchscreen smartphones, mouse and
keyboard, and also less common mechanisms such as gamepads.
... in the following articles we will show how to implement various different control mechanisms for captain rogers to support different platforms — from touch on mobile, through
keyboard/mouse/gamepad on desktop, to more unconventional ones like tv remote, shouting to or waving your hand in front of the laptop, or squeezing bananas.
... desktop mouse and
keyboard controls — when playing on a desktop/laptop computer, providing
keyboard and mouse controls is essential to provide an acceptable level of accessibility for the game.
Mouse controls - Game development
we have already added
keyboard controls, but we could easily add mouse controls too.
... listening for mouse movement listening for mouse movement is even easier than listening for
key presses: all we need is the listener for the mousemove event.
... add the following line in the same place as the other event listeners, just below the
keyup event: document.addeventlistener("mousemove", mousemovehandler, false); anchoring the paddle movement to the mouse movement we can update the paddle position based on the pointer coordinates — the following handler function will do exactly that.
2D maze game with device orientation - Game development
now we will add the ability to control the ball with the
keyboard on the desktop devices, and then we will move to the implementation of the device orientation api.
... let’s focus on the
keyboard first by adding the following to the create() function : this.
keys = this.game.input.
keyboard.createcursor
keys(); as you can see there’s a special phaser function called createcursor
keys(), which will give us an object with event handlers for the four arrow
keys to play with: up, down, left and right.
...the this.
keys object will be checked against player input, so the ball can react accordingly with the predefined force: if(this.
keys.left.isdown) { this.ball.body.velocity.x -= this.movementforce; } else if(this.
keys.right.isdown) { this.ball.body.velocity.x += this.movementforce; } if(this.
keys.up.isdown) { this.ball.body.velocity.y -= this.movementforce; } else if(this.
keys.down.isdown) { this.ball.body.velocity.y += this.movementforce; } that way we can check which
key is pressed at the given frame and apply the defined force to the ball, thus increase the velocity in the proper direction.
Visual typescript game engine - Game development
*/ private networkdeeplogs: boolean = false; /** * masterserver
key is channel access id used to connect * multimedia server channel.
... */ private masterserver
key: string = "multi-platformer-sever1.maximum"; /** * rtcserverport port used to connect multimedia server.
... this.networkdeeplogs = false; this.rtcserverport = 12034; this.rtc3serverport = 12034; this.connectorport = 1234; this.domain = "192.168.0.14"; this.masterserver
key = "multi-platformer-sever1.maximum"; this.protocol = "http"; this.issecure = false; this.appuseaccountssystem = true; this.appusevideochat = true; this.databasename = "masterdatabase"; this.databaseroot = "mongodb://localhost:27017"; - the running server is easy : npm run rtc with this cmd: npm run rtc we run server.js and connector.ts websocket.
Cipher - MDN Web Docs Glossary: Definitions of Web-related terms
they also are classified according to how their
keys are handled: symmetric
key algorithms use the same
key to encode and decode a message.
... the
key also must be sent securely if the message is to stay confidential.
... asymmetric
key algorithms use a different
key for encryption and decryption.
Decryption - MDN Web Docs Glossary: Definitions of Web-related terms
like encryption, decryption in modern ciphers is performed using a specific algorithm and a secret, called the
key.
... since the algorithm is often public, the
key must stay secret if the encryption stays secure.
... decryption is the reverse of encryption and if the
key stays secret, decryption without knowing the specific secret, decryption is mathematically hard to perform.
Symbol - MDN Web Docs Glossary: Definitions of Web-related terms
these symbols let you configure how js treats an object, by using them as property
keys.
...the methods that access the registry are symbol.for() and symbol.
keyfor(); these mediate between the global symbol table (or "registry") and the run-time environment.
... the method symbol.for(tokenstring) returns a symbol value from the registry, and symbol.
keyfor(symbolvalue) returns a token string from the registry; each is the other's inverse, so the following is true: symbol.
keyfor(symbol.for("tokenstring")) === "tokenstring" // true learn more general knowledge symbol (programming) on wikipedia javascript data types and data structures symbols in ecmascript 6 symbol in the mdn js reference object.getownpropertysymbols() ...
TOFU - MDN Web Docs Glossary: Definitions of Web-related terms
to do that, clients will look for identifiers (for example public
keys) stored locally.
... tofu is used in the ssh protocol, in http public
key pinning (hpkp) where the browsers will accept the first public
key returned by the server, and in strict-transport-security (hsts) where a browser will obey the redirection rule.
... learn more http public
key pinning (hpkp) public-
key-pins wikipedia: tofu ...
MDN Web Docs Glossary: Definitions of Web-related terms
formation architecture inheritance input method editor instance internationalization internet intrinsic size ip address ipv4 ipv6 irc iso isp itu j jank java javascript jpeg jquery json k
key keyword l latency layout viewport lazy load lgpl ligature local scope local variable locale localization long task loop lossless compression lossy compression ltr (left to right) m main axis main thread ma...
...esto primitive privileged privileged code progressive enhancement progressive web apps promise property property (css) property (javascript) protocol prototype prototype-based programming proxy server pseudo-class pseudo-element pseudocode public-
key cryptography python q quality values quaternion quic r rail random number generator raster image rdf real user monitoring (rum) recursion reference reflow regular expression rendering engine repo reporting directive ...
...lication) specification speculative parsing speed index sql sql injection sri stacking context state machine statement static method static typing strict mode string stun style origin stylesheet svg svn symbol symmetric-
key cryptography synchronous syntax syntax error synthetic monitoring t tag tcp tcp handshake tcp slow start telnet texel thread three js time to first byte time to interactive tld tofu transmission control protocol (tcp) tra...
Accessible multimedia - Learn web development
images, videos, <canvas> elements, flash movies, etc., aren't as easily understood by screenreaders or navigated by the
keyboard, and we need to give them a helping hand.
...it looks like so in firefox and chrome: however, there are problems with these controls: they are not
keyboard accessible in most browsers, i.e.
... you can however make sure that such an app has good enough color contrast and clear presentation so it is perceivable to those with low vision/color blindness, and also make it
keyboard accessible.
The box model - Learn web development
previous overview: building blocks next everything in css has a box around it, and understanding these boxes is
key to being able to create layouts with css, or to align items with other items.
... you will encounter things like flex layout later in these lessons; the
key thing to remember for now is that changing the value of the display property can change whether the outer display type of a box is block or inline, which changes the way it displays alongside other elements in the layout.
... margin collapsing a
key thing to understand about margins is the concept of margin collapsing.
Beginner's guide to media queries - Learn web development
media queries are a
key part of responsive web design, as they allow you to create different layouts depending on the size of the viewport, but they can also be used to detect other things about the environment your site is running on, for example whether the user is using a touchscreen rather than a mouse.
...this feature means you can test if the user has the ability to hover over an element, which essentially means they are using some kind of pointing device; touchscreen and
keyboard navigation does not hover.
...the value none means the user has no pointing device; perhaps they are navigating with the
keyboard only or with voice commands.
Using your new knowledge - Learn web development
make the level one heading pink, using the css color
keyword hotpink.
... give the heading a 10px dotted border-bottom which uses the css color
keyword purple.
...in the next module, css building blocks, we will go on to look at a number of
key areas in depth.
What HTML features promote accessibility? - Learn web development
<a href="inept.html" title="why i'm rubbish at writing link text: an explanation and an apology.">click here</a> to find out more.</p> access
keys access
keys provide easier navigation by assigning a
keyboard shortcut to a link, which will usually gain focus when the user presses alt or ctrl + the access
key.
... the exact
key combination varies by platform.
... <a href="somepage.html" access
key="s">some page</a> skip links to aid tabbing, you can supply links that allow users to jump over chunks of your web page.
What is accessibility? - Learn web development
keyboard capacity let the user tab into/out of a video, play it, and pause it without being trapped in it.
... make sure all users can operate graphical interfaces (like unfolding menus) solely with a
keyboard (e.g., with tab and the return
key).
... make sure that a user can navigate to all widgets on a page solely with the
keyboard, without getting trapped.
Your first form - Learn web development
it also causes a more appropriate
keyboard layout for entering email addresses (e.g.
... with an @ symbol by default) to appear on devices with dynamic
keyboards, like smartphones.
... on the server side, the script at the url "/my-handling-form-page" will receive the data as a list of 3
key/value items contained in the http request.
What’s in the head? Metadata in HTML - Learn web development
it contains information such as the page <title>, links to css (if you choose to style your html content with css), links to custom favicons, and other metadata (data about the html, such as the author, and important
keywords that describe the document.) in this article we'll cover all of the above and more, in order to give you a good basis for working with markup.
... specifying a description that includes
keywords relating to the content of your page is useful as it has the potential to make your page appear higher in relevant searches performed in search engines (such activities are termed search engine optimization, or seo.) active learning: the description's use in search engines the description is also used on search engine result pages.
...for example, the
keyword <meta> element (<meta name="
keywords" content="fill, in, your,
keywords, here">) — which is supposed to provide
keywords for search engines to determine relevance of that page for different search terms — is ignored by search engines, because spammers were just filling the
keyword list with hundreds of
keywords, biasing results.
Introduction to events - Learn web development
the user chooses a
key on the
keyboard.
... window.on
keypress, window.on
keydown, window.on
keyup — the color changes when a
key is pressed on the
keyboard.
... the
keypress event refers to a general press (button down and then up), while
keydown and
keyup refer to just the
key down and
key up parts of the
keystroke, respectively.
Adding features to our bouncing balls demo - Learn web development
setcontrols() this method will add an on
keydown event listener to the window object so that when certain
keyboard
keys are pressed, we can move the evil circle around.
... the following code block should be put inside the method definition: let _this = this; window.on
keydown = function(e) { if (e.
key === 'a') { _this.x -= _this.velx; } else if (e.
key === 'd') { _this.x += _this.velx; } else if (e.
key === 'w') { _this.y -= _this.vely; } else if (e.
key === 's') { _this.y += _this.vely; } } so when a
key is pressed, the event object's
keycode property is consulted to see which
key is pressed.
... if it is one of the four represented by the specified
keycodes, then the evil circle will move left/right/up/down.
Componentizing our Svelte app - Learn web development
the editing ui (the upper half) will contain an <input> field and two buttons to cancel or save the changes: <div class="stack-small"> {#if editing} <form on:submit|preventdefault={onsave} class="stack-small" on:
keydown={e => e.
key === 'escape' && oncancel()}> <div class="form-group"> <label for="todo-{todo.id}" class="todo-label">new name for '{todo.name}'</label> <input bind:value={name} type="text" id="todo-{todo.id}" autocomplete="off" class="todo-text" /> </div> <div class="btn-group"> <button class="btn todo-cancel" on:click={oncancel} type="button"> cancel<span cl...
... we also disable the save button when the <input> is empty, using the disabled={!name} attribute, and allow the user to cancel the edit using the escape
key, like this: on:
keydown={e => e.
key === 'escape' && oncancel()}.
...update yours now: <div class="stack-small"> {#if editing} <!-- markup for editing todo: label, input text, cancel and save button --> <form on:submit|preventdefault={onsave} class="stack-small" on:
keydown={e => e.
key === 'escape' && oncancel()}> <div class="form-group"> <label for="todo-{todo.id}" class="todo-label">new name for '{todo.name}'</label> <input bind:value={name} type="text" id="todo-{todo.id}" autocomplete="off" class="todo-text" /> </div> <div class="btn-group"> <button class="btn todo-cancel" on:click={oncancel} type="button"> cancel<span class="visually-hidden">renaming {...
Getting started with Vue - Learn web development
use the arrow
keys and enter to select the "manually select features" option.
...if they are not, use the arrow
keys and the space bar to toggle them on.
...you can use the arrow
keys to select which one you prefer.
Information for External Developers Dealing with Accessibility
in addition, here is a list of official
keyboard ui guidelines for each desktop: windows
keys: guidelines on
keyboard ui design and on implementing
keyboard shortcuts: an excellent resource from microsoft.
... mac
keys:
keyboard shortcuts quick reference for mac os x complete reference on
keyboard for mac os x: this document list all functions of specified
keys, known
keyboard shortcuts, explains how to create
keyboard shortcuts, explains appropriate use for the arrow
keys, how to move the insertion point with
keys, how to extent text selection with
keys, functions of function
keys, what are reserved
keyboard shortcuts, how to create your own
keyboard shortcuts,
keyboard focus and navigation, type-ahead and
key-repeat, etc.
... gnome
keys:
keyboard documentation for gnome 2.2: still seeking developer guidelines for
keyboard.
Information for users
> help contents f1 > accessibility features) which describe any special features and
keyboard shortcuts designed to help users with disabilities.
...features include assistive technology support on windows (like window-eyes, jaws, etc.), firefox
keyboard support, available accessibility extensions like fire vox and other extensions.
... assistive technology compatibility this is a wiki page which users can edit to provide up to date information on any issues related to compatibility with assistive technologies such as screen readers, screen magnifiers, voice input software and on screen
keyboards.
Adding a new event
a dom event which represents a native event like a user action such as
keyboard or mouse input.
... textevents.h this header file should be used for defining input events from
keyboard or ime and also other text edit related events like querying focused content information.
...for example,
keyboardevent which is defined in dom level 3 events should be implemented as mozilla::dom::
keyboardevent.
Adding a new CSS property
(note that when the longhand property css_property_parse_value_list, the shorthand property parser would be assumed to be reusing the longhand parser once per item, not for a whole list, as for properties like background-image or transform-timing-function.) if the property takes a list of
keywords other than inherit/initial/etc., auto, none, or normal (which can be expressed using the variant_* flags), you should use variant_
keyword and add a
keyword table to the nscssprops class.
... the name of this
keyword table needs to go in the nscssproplist entry; otherwise that
keyword table should be null.
... if you need a
keyword table, you should include auto, normal, or none (if needed) in that table rather than combining variant_
keyword with variant_auto, variant_normal, or variant_none.
A bird's-eye view of the Mozilla framework
the code samples in the article are based on mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.9a1) gecko/20051104 seamon
key/1.1a from a new source tree checked out 11/04/05.
...thehelp viewer files referenced in the article are located in /seamon
key/extensions/help/ this article also assumes you are familiar with the javascript and c++ programming languages, object-oriented programming (oop) terminology and design concepts, the microsoft® component object model (com), and the corba omg interface definition language (idl).
... organization this article first covers some conceptual groundwork, then walks through a user scenario to illustrate how
key mozilla architectural components work together to support a simplehelp viewer ui action.
Cookies Preferences in Mozilla
these preferences apply to most mozilla products (including firefox and seamon
key), however they are application-specific, so not all of them may apply to you.
... network.cookie.cookiebehavior default value: 0 0 = accept all cookies by default 1 = only accept from the originating site (block third party cookies) 2 = block all cookies by default 3 = use p3p settings (note: this is only applicable to older mozilla suite and seamon
key versions.) 4 = storage access policy: block cookies from trackers network.cookie.lifetimepolicy default value: 0 0 = accept cookies normally 1 = prompt for each cookie (prompting was removed in firefox 44) 2 = accept for current session only 3 = accept for n days network.cookie.lifetime.days default value: 90 only used if network.cookie.lifetimepolicy is set to 3 sets the number of days that the lifetime of cookies should be limited to.
...efault value: 50 configures the maximum amount of cookies to be stored per host valid range is from 0-65535, rfc 2109 and 2965 require this to be at least 20 network.cookie.disablecookieformailnews default value: true true = do not accept any cookies from within mailnews or from mail-style uris false = allow cookies in these situations this preference is applicable to all versions of seamon
key.
The Firefox codebase: CSS Guidelines
is there an alternative to using the variable like inheriting or using the currentcolor
keyword?
...se platforms can contain many different configurations: windows 7, 8 and 10 default theme aero basic (windows 7, 8) windows classic (windows 7) high contrast (all versions) linux macos file structure the browser/ directory contains styles specific to firefox the toolkit/ directory contains styles that are shared across all toolkit applications (thunderbird and seamon
key) under each of those two directories, there is a themes directory containing 4 sub-directories: shared linux osx windows the shared directories contain styles shared across all 3 platforms, while the other 3 directories contain styles respective to their platform.
... using the currentcolor
keyword or inheriting is also good practice, because sometimes the needed value is already in the color or on the parent element.
overflow-clip-box-block
/*
keyword values */ overflow-clip-box-block: padding-box; overflow-clip-box-block: content-box; /* global values */ overflow-clip-box-block: inherited; overflow-clip-box-block: initial; overflow-clip-box-block: unset; note: on gecko, by default, padding-box is used everywhere, but <input type="text"> and similar use the value content-box.
... syntax values padding-box this
keyword makes the clipping be related to the padding box.
... content-box this
keyword makes the clipping be related to the content box.
overflow-clip-box-inline
/*
keyword values */ overflow-clip-box-inline: padding-box; overflow-clip-box-inline: content-box; /* global values */ overflow-clip-box-inline: inherited; overflow-clip-box-inline: initial; overflow-clip-box-inline: unset; note: on gecko, by default, padding-box is used everywhere, but <input type="text"> and similar use the value content-box.
... syntax values padding-box this
keyword makes the clipping be related to the padding box.
... content-box this
keyword makes the clipping be related to the content box.
overflow-clip-box
/*
keyword values */ overflow-clip-box: padding-box; overflow-clip-box: content-box; /* two values */ overflow-clip-box: padding-box content-box; overflow-clip-box: content-box content-box; /* global values */ overflow-clip-box: inherit; overflow-clip-box: initial; overflow-clip-box: unset; note: on gecko, by default, padding-box is used everywhere, but <input type="text"> and similar use the value...
... initial valuepadding-boxapplies toall elementsinheritednomediavisualcomputed valueas specifiedanimation typediscretecanonical orderthe unique non-ambiguous order defined by the formal grammar syntax values padding-box this
keyword makes the clipping be related to the padding box.
... content-box this
keyword makes the clipping be related to the content box.
IPDL Tutorial
three
keywords serve as direction specifiers; child was introduced above.
... when creating a plugin instance, the browser should block until instance creation is finished, and needs some information returned from the plugin: sync protocol pplugininstance { child: sync init() returns (bool windowless, bool ok); }; we added two new
keywords to the plugin protocol, sync and returns.
...the returns
keyword marks the beginning of the list of values that are returned in the reply to the message.
Introduction to Layout in Mozilla
overview basic data flow
key data structures detailed walk-through incrementalism future tech-talks wrap-up, q&a basic data flow source document arrives via network apis incrementally “pumped” through the single-threaded layout engine parse, compute style, render; repeat css used for rendering all content content theoretically separate from “presentation”
key data structures content node elements, attributes, leaves dom frame rectangular formatting primitive geometric information [0..n] per content node 2nd thru nth are “continuations” style context non-geometric information may be shared by adjacent frames reference counted, owned by frame ...
... view clipping, z-order, transparency [0..1] per frame, owned by frame widget native window [0..1] per view, owned by view
key data structures the document owns the content model, and one or more presentations exposed programmatically via dom apis the presentation owns the frame hierarchy frames own the style contexts, views, widgets presentation has media type, dimensions, etc.
...invalid content) - harishd events - saari, joki block-and-line reflow - waterson, dbaron table reflow - karnaze form controls - rods, bryner style resolution and rule tree - dbaron views, widgets, and painting - roc, kmcclusk editor - kin, jfrancis xul and box layout - hewitt, ben xbl - hewitt, ben conclusion data flow
key data structures detailed walk-through incrementalism q & a?
AddonUpdateChecker
techecker.jsm"); method overview updateinfo getcompatibilityupdate(in updateinfo updates[], in string version, in boolean ignorecompatibility, in string appversion, in string platformversion) updateinfo getnewestcompatibleupdate(in updateinfo updates[], in string appversion, in string platformversion) void checkforupdates(in string id, in string type, in string update
key, string url, in updatechecklistener listener) constants constant description error_timeout the update check timed out.
... error_security_error the update information was not signed by the update
key used for retrieval.
... void checkforupdates( in string id, in string type, in string update
key, string url, in updatechecklistener listener ) parameters id the id of the add-on being checked for updates type the type of add-on being checked for updates update
key an optional update
key for the add-on url the url of the add-on's update manifest listener an observer to notify of results ...
Http.jsm
headers or post data are given as an array of arrays, for each inner array the first value is the
key and the second is the value.
... for example: [["
key1", "value1"], ["
key2", "value2"]].
...in case an array of parameters is given, it will be treated as an array of
key-value pairs.
Log.jsm
class overview appender(); length: 1
keys of prototype: append(); doappend(); level: 0 basicformatter(); length: 1
keys of prototype: format(); boundedfileappender(); length: 2
keys of prototype: doappend(); reset(); ...
... consoleappender(); length: 1
keys of prototype: doappend(); dumpappender(); length: 1
keys of prototype: doappend(); fileappender(); length: 2
keys of prototype: doappend(); reset(); formatter(); length: 0
keys of prototype: format(); logmessage(); length: 4
keys of prototype: leveldesc logger(); length: 2
keys of prototype: addappender(); level logstructured(); ...
... name parent removeappender(); updateappenders(); and the methods mentioned below: logger methods loggerrepository(); length: 0
keys of prototype: getlogger(); rootlogger storagestreamappender(); length: 1
keys of prototype: doappend(); getinputstream(); newoutputstream(); outputstream reset(); structuredformatter(); length: 0
keys of prototype: format(); method overview enumerateinterfaces...
source-editor.jsm
constant value sourceeditor.defaults.contextmenu "sourceeditorcontextmenu" sourceeditor.defaults.expandtab true sourceeditor.defaults.highlightcurrentline true sourceeditor.defaults.initialtext "" sourceeditor.defaults.
keys null sourceeditor.defaults.mode sourceeditor.modes.text sourceeditor.defaults.readonly false sourceeditor.defaults.showannotationruler false sourceeditor.defaults.showlinenumbers false sourceeditor.defaults.showoverviewruler false sourceeditor.defaults.tabsize 4 sourceeditor.defaults.theme sourceeditor.theme...
... getindentationstring returns a string containing the character or characters that are inserted when the user presses the tab
key.
...
keys array an array of objects defining custom
keyboard bindings.
Localizing with Mozilla Translator
getting started with mozillatranslator mt uses products as groups of localization files with a common root directory (for instance, you may have a product for thunderbird, other for seamon
key, other for dom, other for toolkit, etc.) you update your repository copy using your favorite repository tool, and then update the product(s) in mt.
...this jar structure is now used just by seamon
key 1.1.x.
... mt could be changed for a mt product to have a list of ''root'' directories instead of just one, and maybe someday it will do, but it will probably won't happen before seamon
key 1.1.x dies (and seamon
key 2.0 finally conquers the web, if i may add).
Installing JSHydra
prerequisites for building spidermon
key spidermon
key is part of the build process, but since jshydra will get the code if required, you do not need to worry about obtaining the right version of spidermon
key.
... building jshydra jshydra requires, as part of its build process, spidermon
key.
... by default, the configure script will obtain a known working copy of spidermon
key; it is possible via the --moz-src and --moz-obj configure arguments to tell jshydra to use existing copies of the source and build.
PL_HashString
syntax #include <plhash.h> plhashnumber pl_hashstring(const void *
key); parameter the function has the following parameter:
key a pointer to a character string.
... returns the hash number for the specified
key.
... description pl_hashstring can be used as the
key hash function for a hash table if the
key is a character string.
NSS_3.11.10_release_notes.html
bug 291384: certutil -k behavior doesn't match usage bug 374247: modutil -disable command not disabling modules' slots bug 384459: certification path validation fails when authority
key identifier extension contains
key identifier bug 385946: can't import certificate into cert database in fips mode (certutil).
... bug 387892: add entrust root ca certificate(s) to nss bug 396999: pk11_authenticate bug 397478: lock from ssl_initsymwrap
keyslock not freed on selfserv shutdown.
...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_generate
keypair for ecc
keys on the 3.11 branch bug 444850: nss misbehaves badly in the presence of a disabled pkcs#11 slot bug 462948: lint warnings for source files that include
keythi.h documentation for a list of the primary nss documentation pages on mozilla.org, see nss documentation.
NSS 3.14 release notes
introduction the nss team has released network security services (nss) 3.14, which is a minor release with the following new features: support for tls 1.1 (rfc 4346) experimental support for dtls 1.0 (rfc 4347) and dtls-srtp (rfc 5764) support for aes-ctr, aes-cts, and aes-gcm support for
keying material exporters for tls (rfc 5705) in addition to the above new features, the following major changes have been introduced: support for certificate signatures using the md5 hash algorithm is now disabled by default.
...func (in certt.h) cert_pi_chainverifycallback, a new option for certvalparamintype (in certt.h) a new error code: sec_error_application_callback_error (in secerr.h) new for pkcs #11 pkcs #11 mechanisms: ckm_aes_cts ckm_aes_ctr ckm_aes_gcm (see warnings against using c_encryptupdate/c_decryptupdate above) ckm_sha224_
key_derivation ckm_sha256_
key_derivation ckm_sha384_
key_derivation ckm_sha512_
key_derivation changes in nss 3.14 bug 333601 - performance enhancements for intel macs when building for intel macs, nss will now take advantage of optimized assembly code for common operations.
... maximum
key sizes for rsa and diffie-hellman
keys have been increased to 16k bits.
NSS 3.16.2.2 release notes
notable changes in nss 3.16.2.2 bug 1049435: change rsa_private
keycheck to not require p > q.
... this fixes a regression introduced in nss 3.16.2 that prevented nss from importing some rsa private
keys (such as in pkcs #12 files) generated by other crypto libraries.
... bugs fixed in nss 3.16.2.2 bug 1049435 - importing an rsa private
key fails if p < q compatibility nss 3.16.2.2 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.16.6 release notes
notable changes in nss 3.16.6 bug 1049435: change rsa_private
keycheck to not require p > q.
... this fixes a regression introduced in nss 3.16.2 that prevented nss from importing some rsa private
keys (such as in pkcs #12 files) generated by other crypto libraries.
... bugs fixed in nss 3.16.6 bug 1049435 - importing an rsa private
key fails if p < q compatibility nss 3.16.6 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.22 release notes
nss 3.22 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_22_rtm/src/ new in nss 3.22 new functionality rsa-pss signatures are now supported (bug 1215295) new functions pk11_signwithmechanism() and pk11_signwithmechanism() are provided to allow rsa
keys to be used with pss.
... these functions take an explicit mechanism and parameters as arguments rather than inferring it from the
key type using pk11_mapsign
keytype().
... new macros in nss.h nss_rsa_min_
key_size nss_dh_min_
key_size nss_dsa_min_
key_size nss_tls_version_min_policy nss_tls_version_max_policy nss_dtls_version_min_policy nss_dtls_version_max_policy in pkcs11t.h ckp_pkcs5_pbkd2_hmac_gostr3411 - prf based on hmac with gostr3411 for pbkdf (not supported) ckp_pkcs5_pbkd2_hmac_sha224 - prf based on hmac with sha-224 for pbkdf ckp_pkcs5_pbkd2_hmac_sha256 - p...
NSS 3.30 release notes
in ssl.h ssl_alertreceivedcallback - register a callback function, that will be called whenever an ssl/tls alert is received ssl_alertsentcallback - register a callback function, that will be called whenever an ssl/tls alert is sent ssl_setsessionticket
keypair - configures an asymmetric
key pair, for use in wrapping session ticket
keys, used by the server.
... this function currently only accepts an rsa public/private
key pair.
... rsa-pss signatures produced by
key pairs with a modulus bit length that is not a multiple of 8 are now supported.
NSS 3.34 release notes
ssl
keylogfile is now supported with tls 1.3, see bug 1287711 for details.
... sslchannelinfo has two new fields (bug 1396525) sslnamedgroup originalkeagroup holds the
key exchange group of the original handshake, when the session was resumed.
... certificates with rsa-pss or rsa-pkcs#1v1.5
keys can be used to create an rsa-pss signature on a certificate, using the --pss-sign argument to certutil.
NSS 3.38 release notes
when creating a certificate request (csr) using certutil -r, an existing orphan private
key can be reused.
... parameter -k may be used to specify the id of an existing orphan
key.
... the available orphan
key ids can be displayed using command certutil -k.
NSS 3.45 release notes
note: in 3.45 the sslchannelinfo is left unmodified, while an upcoming change in 3.46 will set sslchannelinfo.auth
keybits to that of the delegated credential for better policy enforcement.
... certificate authority changes the following ca certificates were removed: bug 1552374 - cn = certinomis - root ca sha-256 fingerprint: 2a99f5bc1174b73cbb1d620884e01c34e51ccb3978da125f0e33268883bf4158 bugs fixed in nss 3.45 bug 1540541 - don't unnecessarily strip leading 0's from
key material during pkcs11 import (cve-2019-11719) bug 1515342 - more thorough input checking (cve-2019-11729) bug 1552208 - prohibit use of rsassa-pkcs1-v1_5 algorithms in tls 1.3 (cve-2019-11727) bug 1227090 - fix a potential divide-by-zero in makepfromqandseed from lib/freebl/pqg.c (static analysis) bug 1227096 - fix a potential divide-by-zero in pqg_verifyparams from lib/freebl/pqg.c (s...
...x builds using gcc < 4.3 on big-endian architectures bug 1554659 - add versioning to openbsd builds to fix link time errors using nss bug 1553443 - send session ticket only after handshake is marked as finished bug 1550708 - fix gyp scripts on solaris sparc so that libfreebl_64fpu_3.so builds bug 1554336 - optimize away unneeded loop in mpi.c bug 1559906 - fipstest: use ckm_tls12_master_
key_derive instead of vendor specific mechanism bug 1558126 - tls_aes_256_gcm_sha384 should be marked as fips compatible bug 1555207 - helloretryrequestcallback return code for rejecting 0-rtt bug 1556591 - eliminate races in uses of pk11_setwrap
key bug 1558681 - stop using a global for anti-replay of tls 1.3 early data bug 1561510 - fix a bug where removing -arch xxx args from cc didn't work b...
NSS 3.54 release notes
notable changes in nss 3.54 support for tls 1.3 external pre-shared
keys (bug 1603042).
... bug 1643123 - support ssl_exportearly
keyingmaterial with external psks.
... bug 1644774 - ssl gtests to use clearservercache when resetting self-encrypt
keys.
FC_EncryptInit
syntax ck_rv fc_encryptinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession[in] handle to the session.
...h
key[in] handle of the encryption
key.
... description fc_encryptinit initializes an encryption operation with the mechanism and
key to be used.
FC_SetOperationState
syntax ck_rv fc_setoperationstate( ck_session_handle hsession, ck_byte_ptr poperationstate, ck_ulong uloperationstatelen, ck_object_handle hencryption
key, ck_object_handle hauthentication
key ); parameters hsession [in] handle of the open session.
...hencryption
key [in] handle of the encryption or decryption
key to be used in in a stored session or zero if no
key is needed.
... hauthentication
key [in] handle of the authentication
key to be used in the stored session or zero if none is needed.
NSS_Initialize
syntax secstatus nss_initialize(const char *configdir, const char *certprefix, const char *
keyprefix, const char *secmodname, pruint32 flags); parameters nss_initialize has five parameters: configdir [in] the directory where the certificate,
key, and module databases live.
...
keyprefix [in] prefix added to the beginning of the
key database, for example, "https-server1-".
...nss_init_nocertdb - don't open the cert db and
key db's, just initialize the volatile certdb.
NSS environment variables
see nss tracing 3.12 nss_use_decoded_cka_ec_point boolean (any value to enable) tells nss to send ec
key points across the pkcs#11 interface in the non-standard unencoded format that was used by default before nss 3.12.3.
... 3.11 ssl
keylogfile string (file name)
key log file.
... before 3.0 nss_allow_ssl
keylogfile boolean (1 to enable) enable nss support in optimized builds for logging ssl/tls
key material to a logfile if the ssl
keylogfile environment variable.
NSS tools : vfychain
this tool can also create certificate,
key, and module security database files.
... the tasks associated with security module database management are part of a process that typically also involves managing
key databases and certificate databases.
...authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
sslintro.html
you should use only the ssl apis (and related certificate,
key, and pkcs #11 apis) that are described in this document, the ssl reference.
...numerous functions provided by the nss libraries are useful for such application callback functions, including these: cert_checkcertvalidtimes cert_getdefaultcertdb cert_destroycertificate cert_dupcertificate cert_findcertbyname cert_freenicknames cert_getcertnicknames cert_verifycertname cert_verifycertnow pk11_findcertfromnickname pk11_find
keybyanycert pk11_setpasswordfunc pl_strcpy pl_strdup pl_strfree pl_strlen ssl_peercertificate ssl_revealurl ssl_revealpinarg cleanup this portion of an ssl-enabled application consists primarily of closing the socket and freeing memory.
... after these tasks have been performed, call nss_shutdown to close the certificate and
key databases opened by nss_init, and pr_cleanup to coordinate a graceful shutdown of nspr.
TLS Cipher Suite Discovery
in order to communicate securely, an tls client and tls server must agree on the cryptographic algorithms and
keys that they will both use on the secured connection.
... they must agree on these items:
key establishment algorithm (such as rsa, dh, or ecdh) peer authentication algorithm (such as rsa, dsa, ecdsa) bulk data encryption algorithm (such as rc4, des, aes) and
key size digest algorithm for message authentication checking (sha1, sha256) there are numerous available choices for each of those categories, and the number of possible combinations of all those choices is large.
... sslciphersuiteinfo structure contains this information, declared in "sslt.h": typedef struct sslciphersuiteinfostr { pruint16 length; pruint16 ciphersuite; /* cipher suite name */ const char * ciphersuitename; /* server authentication info */ const char * authalgorithmname; sslauthtype authalgorithm; /*
key exchange algorithm info */ const char * keatypename; sslkeatype keatype; /* symmetric encryption info */ const char * symciphername; sslcipheralgorithm symcipher; pruint16 sym
keybits; pruint16 sym
keyspace; pruint16 effective
keybits; /* mac info */ const char * macalgorithmna...
Utility functions
3.11.1 and later sec_asn1lengthlength mxr 3.2 and later sec_dupcrl mxr 3.9 and later sec_getsignaturealgorithmoidtag mxr 3.10 and later sec_getregisteredhttpclient mxr 3.12 and later sec_pkcs5getcryptoalgorithm mxr 3.2 and later sec_pkcs5get
keylength mxr 3.2 and later sec_pkcs5getpbealgorithm mxr 3.2 and later sec_pkcs5isalgorithmpbealg mxr 3.2 and later sec_pkcs5isalgorithmpbealgtag mxr 3.12 and later sec_registerdefaulthttpclient mxr 3.11.1 and later sec_signdata mxr 3.2 and later ...
... secitem_compareitem mxr 3.2 and later secitem_copyitem mxr 3.2 and later secitem_dupitem mxr 3.2 and later secitem_freeitem mxr 3.2 and later secitem_itemsareequal mxr 3.8 and later secitem_zfreeitem mxr 3.2 and later sec
key_copyencryptedprivate
keyinfo mxr 3.2 and later sec
key_copyprivate
keyinfo mxr 3.2 and later sec
key_creatersaprivate
key mxr 3.2 and later sec
key_destroyencryptedprivate
keyinfo mxr 3.2 and later sec
key_destroyprivate
keyinfo mxr 3.2 and later sec
key_destroypublick...
...ey mxr 3.2 and later sec
key_public
keystrength mxr 3.2 and later sec
key_updatecertpqg mxr 3.2 and later secmod_addnewmodule mxr 3.3 and later secmod_addnewmoduleex mxr 3.4 and later secmod_deletemoduleex mxr 3.12 and later secmod_cancelwait mxr 3.9.3 and later secmod_candeleteinternalmodule mxr 3.5 and later secmod_createmodule mxr 3.4 and later secmod_deletemodule mxr 3.4 and later secmod_findmodule mxr 3.4 and later secmod_findslot mxr 3.4 and later secmod_freem...
NSS Tools cmsutil
-d dbdir specify the
key/certificate database directory (default is ".") -e envfile specify a file containing an enveloped message for a set of recipients to which you would like to send an encrypted message.
... -p password use password as
key database password.
... <-y ekprefnick specify an encryption
key preference by nickname.
NSS Tools ssltap
type = 12 (server_
key_exchange) length = 202 (0x0000ca) 0: 0e 00 00 00 |....
... type = 14 (server_hello_done) length = 0 (0x000000) }}]--> [sslrecord { 0: 16 03 00 00 44 |....d type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { 0: 10 00 00 40 |...@ type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } }}]--> [sslrecord { 0: 14 03 00 00 01 |.....
...{..} } cipher_suite = (0x0003) ssl3/rsa/rc4-40/md5 } type = 11 (certificate) length = 709 (0x0002c5) certificatechain { chainlength = 706 (0x02c2) certificate { size = 703 (0x02bf) data = { saved in file 'cert.001' } } } type = 12 (server_
key_exchange) length = 202 (0x0000ca) type = 14 (server_hello_done) length = 0 (0x000000) }}]--> [sslrecord { type = 22 (handshake) version = { 3,0 } length = 68 (0x44) handshake { type = 16 (client_
key_exchange) length = 64 (0x000040) client
keyexchange { message = {...} } }}]--> [sslrecord { type = 20 (c...
NSS tools : vfychain
this tool can also create certificate,
key, and module security database files.
... the tasks associated with security module database management are part of a process that typically also involves managing
key databases and certificate databases.
... authors: elio maldonado <emaldona@redhat.com>, deon lac
key <dlac
key@redhat.com>.
Creating JavaScript tests
there are two large spidermon
key test suites: jstests (in js/src/tests) and jit-tests (in js/src/jit-test).
...instead, ask a spidermon
key peer how to proceed.
...ask a spidermon
key peer for details.
64-bit Compatibility
this article focuses on hacking tracemon
key code generation (jstracer.cpp, jsregex.cpp) in ways that will work on both 32-bit and 64-bit jit backends.
...tracemon
key uses this to decide whether arbitrary constants in lir are pointers or doubles.
...rsh i64, i32 i64 qcmov i32, i64, i64 i32 qior i64, i64 i64 qixor i64, i64 i64 qiaddp i64, i64 i64 qeq - quge i64, i64 i32 qcall n/a i64 extending or truncating native integers sometimes it is necessary to reduce a native integer to a 32-bit integer (for example, array or string lengths in tracemon
key) or extend a 32-bit integer to a native integer.
INT_TO_JSVAL
please use js::int32value instead in spidermon
key 45 or later.
... before spidermon
key 1.8.5, not all integers can be stored in a jsval; use int_fits_in_jsval to test.
... starting in spidermon
key 1.8.5, jsval can store a full 32-bit integer, so this check isn't needed any longer for 32-bit integers.") }} if i does not fit into a jsval (see int_fits_in_jsval), the behavior is undefined.
JS::CallArgs
this article covers features introduced in spidermon
key 17 helper class encapsulating access to the callee, this value, arguments, and argument count for a function call.
...(if you're compiling against a debug build of spidermon
key, these methods will assert to aid debugging.) if the method you're implementing succeeds by returning true, you *must* set this.
... (spidermon
key doesn't currently assert this, but it will do so eventually.) you don't need to use or change this if your method fails.
JS::Evaluate
this article covers features introduced in spidermon
key 17 compile and execute a script.
... syntax // added in spidermon
key 45 bool js::evaluate(jscontext *cx, const js::readonlycompileoptions &options, js::sourcebufferholder &srcbuf, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, const js::readonlycompileoptions &options, const char16_t *chars, size_t length, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, const js::readonlycompileoptions &options, const char *bytes, size_t length, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, const js::readonlycompileoptions &options, const char *filename, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, js::autoobjectvector &scopechain, const readonlycompileopti...
...ons &options, const char16_t *chars, size_t length, js::mutablehandlevalue rval); // added in spidermon
key 17 bool js::evaluate(jscontext *cx, js::autoobjectvector &scopechain, const js::readonlycompileoptions &options, js::sourcebufferholder &srcbuf, js::mutablehandlevalue rval); // obsolete since jsapi 39 bool js::evaluate(jscontext *cx, js::handleobject obj, const js::readonlycompileoptions &options, js::sourcebufferholder &srcbuf, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, js::handleobject obj, const js::readonlycompileoptions &options, const char16_t *chars, size_t length, js::mutablehandlevalue rval); bool js::evaluate(jscontext *cx, js::handleobject obj, con...
JS::SetLargeAllocationFailureCallback
this article covers features introduced in spidermon
key 31 specify a new callback function for large memory allocation failure.
...added in spidermon
key 38 callback syntax typedef void (* js::largeallocationfailurecallback)(void *data); name type description data void * data parameter passed to js::setlargeallocationfailurecallback.
... added in spidermon
key 38 description if a large allocation fails when calling pod_{calloc,realloc}cangc, the js engine may call the large-allocation- failure callback, if set, to allow the embedding to flush caches, possibly perform shrinking gcs, etc.
JS::SetOutOfMemoryCallback
this article covers features introduced in spidermon
key 31 specify a new callback function for out of memory error.
...added in spidermon
key 38 callback syntax typedef void (* outofmemorycallback)(jscontext *cx, void *data); name type description data void * data parameter passed to js::setoutofmemorycallback.
... added in spidermon
key 38 description unlike the error reporter, which is only called if the exception for an oom bubbles up and is not caught, the js::outofmemorycallback is called immediately at the oom site to allow the embedding to capture the current state of heap allocation before anything is freed.
JSExtendedClass
syntax struct jsextendedclass { jsclass base; jsequalityop equality; jsobjectop outerobject; jsobjectop innerobject; jsiteratorop iteratorobject;// added in spidermon
key 1.8 jsobjectop wrappedobject; // added in spidermon
key 1.8 ...and additional reserved fields.
... iteratorobject jsiteratorop added in spidermon
key 1.8 optional.
... wrappedobject jsobjectop added in spidermon
key 1.8 optional.
JSFastNative
this article covers features introduced in spidermon
key 1.8 jsfastnative is the type of fast native functions in the jsapi.
... added in spidermon
key 1.8.1 jsfastnative has been renamed to jsnative.
...it also means that applications that use spidermon
key's security features, particularly those that implement jscheckaccessop or jscheckaccessidop in terms of apis such as js_frameiterator and js_stackframeprincipals, must take extra care, as the native function's principals will be missing from the stack.
JSIteratorOp
this article covers features introduced in spidermon
key 1.8 callback for creating iterators.
... syntax typedef jsobject * (*jsiteratorop)(jscontext *cx, jsobject *obj, jsbool
keysonly); name type description cx jscontext * pointer to the js context in which the iterator creation should take place.
...
keysonly jsbool if true, the iterator should yield
keys only, not [
key, value] pairs.
JSMarkOp
jsmarkop is the type of the jsclass.mark callback in spidermon
key 1.7 and earlier.
... in spidermon
key 1.8, jsmarkop will be deprecated.
... all new code using spidermon
key 1.8 or later should use a jstraceop instead to ensure that the tracing apis work properly.
JSPropertyOp
syntax typedef bool (* jspropertyop)(jscontext *cx, js::handleobject obj, js::handleid id, js::mutablehandlevalue vp); typedef bool (* jsstrictpropertyop)(jscontext *cx, js::handleobject obj, js::handleid id, bool strict, js::mutablehandlevalue vp); // added in spidermon
key 1.9.3 name type description cx jscontext * the context in which the property access is taking place.
... as of spidermon
key 1.7, the value of a property assignment expression, like (a.length = x), is the value of *vp after the setter is called.
...this incompatibility will be fixed in spidermon
key 1.8; see bug 312354.
JS_AddFinalizeCallback
this article covers features introduced in spidermon
key 17 add/remove callback function for finalization.
... syntax bool js_addfinalizecallback(jsruntime *rt, jsfinalizecallback cb, void *data); // added in spidermon
key 38 (jsapi 32) void js_removefinalizecallback(jsruntime *rt, jsfinalizecallback cb); // added in spidermon
key 38 (jsapi 32) void js_setfinalizecallback(jsruntime *rt, jsfinalizecallback cb); // obsolete since jsapi 32 name type description rt jsruntime * the jsruntime for which to set the finalization callback.
...added in spidermon
key 38 name description jsfinalize_group_start called when preparing to sweep a group of compartments, before anything has been swept.
JS_ConstructObject
as of spidermon
key 1.8.8, js_constructobject and js_constructobjectwitharguments have been removed from the jsapi.
... a less-preferred short-term solution might be to use this reimplementation of the method, but note that this reimplementation is not guaranteed to continue working across spidermon
key releases.
... neither of these functions is quite like the javascript new
keyword.
JS_GET_CLASS
this macro was removed in spidermon
key 1.8.8 when the signature of js_getclass() was changed to take only an object pointer.
... note: in spidermon
key versions prior to spidermon
key 1.8.8, js_getclass took both a jscontext* and a jsobject* as arguments in thread-safe builds, and in non-thread-safe builds it took only a jsobject*.
... as of spidermon
key 1.8.8 it no longer exists, because js_getclass's signature is the same in all build environments.
JS_GetParent
an object created by a script via the new
keyword has the same parent as the constructor.
... an object's parent serves two purposes in spidermon
key: for some functions, it is used to implement lexical scoping (but this is an implementation detail).
... applications that use spidermon
key's custom security features can use the parent during security checks, as a convenient way to determine the security domain of an object being accessed.
JS_GetSecurityCallbacks
this article covers features introduced in spidermon
key 1.8.1 configure spidermon
key security hooks.
... syntax /* added in spidermon
key 17 */ void js_setsecuritycallbacks(jsruntime *rt, const jssecuritycallbacks *callbacks); const jssecuritycallbacks * js_getsecuritycallbacks(jsruntime *rt); /* obsolete since jsapi 13 */ jssecuritycallbacks * js_setcontextsecuritycallbacks(jscontext *cx, jssecuritycallbacks *callbacks); jssecuritycallbacks * js_getruntimesecuritycallbacks(jsruntime *rt); jssecuritycallbacks * js_setruntimesecuritycallbacks(jsruntime *rt, jssecuritycallbacks *callbacks); name type description rt jsruntime * a runtime to get/set the security callbacks.
... callback structure struct jssecuritycallbacks { jscspevalchecker contentsecuritypolicyallows; // added in spidermon
key 1.8.5 jssubsumesop subsumes; // added in spidermon
key 31 jscheckaccessop checkobjectaccess; // obsolete since jsapi 29 jsprincipalstranscoder principalstranscoder; // obsolete since jsapi 13 jsobjectprincipalsfinder findobjectprincipals; // obsolete since jsapi 13 }; name type description contentsecuritypolicyallows jscspevalchecker a pointer to the function which checks if a csp instance wants to disable eval() and friends.
JS_Init
this article covers features introduced in spidermon
key 31 initializes the js engine so that further operations can be performed.
... syntax #include "js/initialization.h" // previously "jsapi.h" bool js_init(void); description initialize spidermon
key, returning true only if initialization succeeded.
... it is currently not possible to initialize spidermon
key multiple times (that is, calling js_init, jsapi methods, then js_shutdown in that order, then doing so again).
JS_InstanceOf
syntax bool js_instanceof(jscontext *cx, js::handle<jsobject*> obj, const jsclass *clasp, js::callargs *args); // added in spidermon
key 38 bool js_instanceof(jscontext *cx, js::handle<jsobject*> obj, const jsclass *clasp, jsval *argv); // obsolete since jsapi 32 name type description cx jscontext * pointer to a js context from which to derive runtime information.
...added in spidermon
key 38 argv jsval * optional argument vector.
... note that js_instanceof is not the equivalent of the javascript instanceof
keyword, which examines constructor properties along the prototype chain.
JS_IsConstructing_PossiblyWithGivenThisObject
this article covers features introduced in spidermon
key 1.8.5 determine if a special this object was supplied to the constructor.
... vp const jsval * maybethis jsobject ** description in the case of a constructor called from js_constructobject and js_initclass where the class has the jsclass_construct_prototype flag set, spidermon
key passes the constructor a non-standard this object.
... jsbool foo_native(jscontext *cx, unsigned int argc, jsval *vp) { jsobject *maybethis; if (js_isconstructing_possiblywithgiventhisobject(cx, vp, &maybethis)) { // native called as a constructor if (maybethis) // native called as a constructor with maybethis as 'this' } else { // native called as function, maybethis is still uninitialized } } note: a spidermon
key embedding does not need to use this query unless the embedding uses js_constructobject(), js_initclass() and jsclass_construct_prototype as described above.
JS_LookupProperty
leobject obj, const char *name, js::mutablehandlevalue vp); bool js_lookupucproperty(jscontext *cx, js::handleobject obj, const char16_t *name, size_t namelen, js::mutablehandlevalue vp); bool js_lookuppropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::mutablehandlevalue vp); // added in spidermon
key 1.8.1 bool js_lookupelement(jscontext *cx, js::handleobject obj, uint32_t index, js::mutablehandlevalue vp); // ---- obsolete since spidermon
key 31 ---- bool js_lookuppropertywithflags(jscontext *cx, js::handleobject obj, const char *name, unsigned flags, js::mutablehandlevalue vp); bool js_lookuppropertywithflagsbyid(jscontext *cx, js::handleobject...
... obj, js::handleid id, unsigned flags, js::mutablehandleobject objp, js::mutablehandlevalue vp); // added in spidermon
key 1.8.1 name type description cx jscontext * pointer to a js context from which to derive runtime information.
...when executing javascript code that uses properties, spidermon
key looks up properties using slightly different rules depending on the syntactic context in which the property name appears.
JS_NewGlobalObject
this article covers features introduced in spidermon
key 17 create a new javascript object for use as a global object.
... hookoption js::onnewglobalhookoption see debugger api hook added in spidermon
key 31 options const js::compartmentoptions & the option for new compartment (passed to jscompartment constructor).
... added in spidermon
key 31 description js_newglobalobject creates a new global object based on the specified class.
JS_PSGS
this article covers features introduced in spidermon
key 17 macros for describing properties, for use with js_defineproperties and js_initclass.
...// added in spidermon
key 31 #define js_self_hosted_getset(name, gettername, settername, flags) ...
... // added in spidermon
key 31 #define js_ps_end ...
JS_PreventExtensions
syntax // added in spidermon
key 45 bool js_preventextensions(jscontext *cx, js::handleobject obj, js::objectopresult &result); // obsolete since jsapi 39 bool js_preventextensions(jscontext *cx, js::handleobject obj, bool *succeeded); name type description cx jscontext * the context.
...added in spidermon
key 45 succeeded bool * outparam indicating, on jsapi success, whether the object is now non-extensible.
... the failure-mode information below is new as of spidermon
key 36.
JS_ShutDown
syntax void js_shutdown(void); description destroys all free-standing resources allocated by spidermon
key, not associated with any jsruntime, jscontext, or other structure.
...it is currently not possible to initialize spidermon
key multiple times (that is, calling js_init, then other jsapi methods, then js_shutdown in that order, then doing so again).
...exact details about what this method cleans up will vary depending upon the version of spidermon
key in use.
Places Developer Guide
for bookmarks: nsiuri getbookmarkuri(aitemid) - returns the uri of a bookmark item string get
keywordforbookmark(aitemid) - returns a bookmark's
keyword, or null for folders: int64 getchildfolder(afolderid, asubfoldertitle) - returns the id of the first subfolder matching the given title.
... set
keywordforbookmark(aitemid, a
keyword) - set the
keyword for a bookmark.
... note: the method importhtmlfromfiletofolder() method was removed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamon
key 2.11).
Building the WebLock UI
the "shell" for the xul file, then, looks like this: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="weblock_ui" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="web lock manager" persist="screenx screeny" screenx="24" screeny="24"> </dialog> note that this part of the xul file also contains a stylesheet declaration, which imports css rules and applies them to particular parts of the interface.
... weblock.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <dialog id="weblock_mgg" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="web lock manager" style="width: 30em;" persist="screenx screeny" screenx="24" screeny="24"> <script src="chrome://weblock/content/weblock.js"/> <hbox> <separator orient="vertical" class="thin"/> <vbox flex="1"> <separator class="thin"/> <hbox align="center"> <textbox id="dialog.input" flex="1"/> ...
...here is that xul file in its entirety: the weblock overlay <?xml version="1.0"?> <?xml-stylesheet href="chrome://navigator/content/weblock.css" type="text/css"?> <overlay id="weblockoverlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://weblock/content/weblock.js"/> <statusbar id="status-bar"> <statusbarpanel class="statusbarpanel-iconic" id="weblock-status" insertbefore="offline-status" oncommand="loadweblock();" status="none"/> </statusbar...
imgILoader
inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) implemented by @mozilla.org/image/loader;1 as a service: var imgiloader = components.classes["@mozilla.org/image/loader;1"] .getservice(components.interfaces.imgiloader); method overview imgirequest loadimage(in nsiuri auri, in nsiuri ainitialdocumenturl, in nsiuri areferreruri, in nsiprincipal aloadingprincipal, in nsiloadgroup aloadgroup, in imgidecoderobserver aobserver, in nsisupports acx, in nsloadflags aloadflags, in nsisupports cache
key, in imgirequest arequest, in nsichannelpolicy channelpolicy); imgirequest loadimagewithchannel(in nsichannel achannel, in imgideco...
...imgirequest loadimage( in nsiuri auri, in nsiuri ainitialdocumenturl, in nsiuri areferreruri, in nsiprincipal aloadingprincipal, in nsiloadgroup aloadgroup, in imgidecoderobserver aobserver, in nsisupports acx, in nsloadflags aloadflags, in nsisupports cache
key, in imgirequest arequest, in nsichannelpolicy channelpolicy ); parameters auri the uri to load.
...cache
key arequest a newly created, unused imgirequest object or null for one to be created for you.
mozIStorageService
inherits from: nsisupports last changed in gecko 1.9 (firefox 3) see mozistorageconnection method overview nsifile backupdatabasefile(in nsifile adbfile, in astring abackupfilename, [optional] in nsifile abackupparentdirectory); mozistorageconnection opendatabase(in nsifile adatabasefile); mozistorageconnection openspecialdatabase(in string astorage
key); mozistorageconnection openunshareddatabase(in nsifile adatabasefile); methods backupdatabasefile() this method makes a backup of the specified file.
...mozistorageconnection openspecialdatabase( in string astorage
key ); parameters astorage
key a string
key identifying the type of storage requested.
...exceptions thrown ns_error_invalid_arg if astorage
key is invalid.
mozIVisitInfoCallback
toolkit/components/places/public/moziasynchistory.idlscriptable this interface provides callback handling functionality for moziasynchistory.updateplaces() 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) method overview void handleerror(in nsresult aresultcode, in moziplaceinfo aplaceinfo); void handleresult(in moziplaceinfo aplaceinfo); void oncomplete(in nsresult aresultcode, in moziplaceinfo aplaceinfo);obsolete since gecko 8.0 methods handleerror() called when a moziplaceinfo couldn't be processed.
... oncomplete() obsolete since gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) called for each visit added, title change, or guid change when passed to moziasynchistory.updateplaces().
... notes this method was replaced by the separate handleresult() and handleerror() methods in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5).
nsIAccessibleDocument
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) you can queryinterface to nsiaccessibledocument from the nsiaccessible or nsiaccessnode for the root node of a document.
... methods getaccessibleinparentchain() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) returns the first accessible parent of a dom node.
... native code only!getcachedaccessnode obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
nsIAccessibleEvent
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) attributes attribute type description accessible nsiaccessible the nsiaccessible associated with the event.
... event_focus 0x8005 0x0008 0x0005 an object has received the
keyboard focus.
... event_accelerator_change 0x0011 0x000e an object's
keyboard shortcut has changed.
nsIAccessibleRole
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) constants constant value description role_nothing 0 used when accessible has no strong defined role.
... role_hot
keyfield 50 represents a hot-
key field that allows the user to enter a combination or sequence of
keystrokes.
... role_ime 110 an object which is used to allow input of characters not found on a
keyboard, such as the input of chinese characters on a western
keyboard.
nsICRLManager
m: nsisupports last changed in gecko 1.7 method overview wstring computenextautoupdatetime(in nsicrlinfo info, in unsigned long autoupdatetype, in double noofdays); void deletecrl(in unsigned long crlindex); nsiarray getcrls(); void importcrl([array, size_is(length)] in octet data, in unsigned long length, in nsiuri uri, in unsigned long type, in boolean dosilentdownload, in wstring crl
key); void reschedulecrlautoupdate(); boolean updatecrlfromurl(in wstring url, in wstring
key); constants constant value description type_autoupdate_time_based 1 type_autoupdate_freq_based 2 methods computenextautoupdatetime() wstring computenextautoupdatetime( in nsicrlinfo info, in unsigned long autoupdatetype, in double noofdays ); parameters info autoupdatetype noof...
...void importcrl( [array, size_is(length)] in octet data, in unsigned long length, in nsiuri uri, in unsigned long type, in boolean dosilentdownload, in wstring crl
key ); parameters data length uri type dosilentdownload crl
key reschedulecrlautoupdate() this would reschedule the autoupdate of crls with auto update enable.
...boolean updatecrlfromurl( in wstring url, in wstring
key ); parameters url
key return value ...
nsICacheMetaDataVisitor
inherits from: nsisupports last changed in gecko 1.7 method overview boolean visitmetadataelement(in string
key, in string value); methods visitmetadataelement() this method is called for each
key/value pair in the meta data for a cache entry.
... boolean visitmetadataelement( in string
key, in string value ); parameters
key the
key for visiting the meta data for a cache entry.
... return value returns true if the provided
key/value finds a cache entry, otherwise returns false.
nsICacheService
66 introduced gecko 1.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) this interface is no longer supported and planned to be removed soon: use nsicachestorageservice instead.
... init() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) initialize the cache service.
... exceptions thrown missing exception missing description shutdown() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) shutdown() the cache service.
nsIClipboard
inherits from: nsisupports last changed in gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamon
key 2.27) method overview void emptyclipboard(in long awhichclipboard); void forcedatatoclipboard(in long awhichclipboard); obsolete since gecko 1.8 void getdata(in nsitransferable atransferable, in long awhichclipboard); boolean hasdatamatchingflavors([array, size_is(alength)] in string aflavorlist, in unsigned long alength, in long awhichclipboard); void setdata(in nsitransferable atransferable, in nsiclipboardowner anowner, in long awhichclipboard); boolean support...
...sselectionclipboard(); boolean supportsfindclipboard(); constants most clipboard operations in firefox use kglobalclipboard, which is the one also used by the typical control-c/control-v
keyboard shortcuts.
... forcedatatoclipboard() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) some platforms support deferred notification for putting data on the clipboard this method forces the data onto the clipboard in its various formats this may be used if the application going away.
nsIDNSService
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) implemented by: @mozilla.org/network/dns-service;1.
... init() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) called to initialize the dns service.
... shutdown() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) called to shutdown the dns service.
nsIDOMMozTouchEvent
last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) inherits from: nsidommouseevent method overview void initmoztouchevent(in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, ...
... in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in unsigned long streamidarg); attributes attribute type description streamid unsigned long a unique identifier for each finger, so that each finger's movement can be tracked separately.
...void initsimplegestureevent( in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in nsidomabstractview viewarg, in long detailarg, in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrl
keyarg, in boolean alt
keyarg, in boolean shift
keyarg, in boolean meta
keyarg, in unsigned short buttonarg, in nsidomeventtarget relatedtargetarg, in unsigned long streamidarg ); parameters streamidarg the value to assign to the streamid attribute; this uniquely identifies the finger generating the touch events.
nsIDOMStorageEventObsolete
obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) this feature is obsolete.
... 1.0 66 introduced gecko 1.8 obsolete gecko 2.0 inherits from: nsidomevent last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) when a dom storage event is received, the recipient can check its domain attribute to determine which domain's data store has changed.
... method overview void initstorageevent(in domstring typearg, in boolean canbubblearg, in boolean cancelablearg, in domstring
keyarg, in domstring oldvaluearg, in domstring newvaluearg, in domstring urlarg, in nsidomstorage storageareaarg); attributes attribute type description domain domstring the domain of the storage area which changed, or "#session" if the event represents a change to session storage.
nsIDOMUserDataHandler
1.0 66 introduced gecko 1.5 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void handle(in unsigned short operation, in domstring
key, in nsivariant data, in nsidomnode src, in nsidomnode dst); constants constant value description node_cloned 1 the node was cloned.
...void handle( in unsigned short operation, in domstring
key, in nsivariant data, in nsidomnode src, in nsidomnode dst ); parameters operation one of the node_* operation type constants from the above table.
...
key the
key that was used to set the user data.
nsIDownloadProgressListener
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) to use simply implement this interface in your code, then call nsidownloadmanager.addlistener() to start listening.
... onlocationchange() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) void onlocationchange( in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri alocation, in nsidownload adownload ); parameters awebprogress the nsiwebprogress instance used by the download manager to monitor downloads.
... onstatuschange() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) called when the status of a download request has changed.
nsIIdleService
widget/nsiidleservice.idlscriptable the idle service lets you monitor how long the user has been 'idle', that is they have not used their mouse or
keyboard.
... 1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last changed in gecko 16 (firefox 16 / thunderbird 16 / seamon
key 2.13) you can get the idle time directly, but in most cases you will want to register an observer for a predefined interval.
... example example 1 var idleservice = components.classes["@mozilla.org/widget/idleservice;1"] .getservice(components.interfaces.nsiidleservice) settimeout(function() { alert(idleservice.idletime) }, 1000) // if you don't use the mouse or the
keyboard after running this snippet, // you'll see a number around 1000 alerted.
nsIJSON
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) note: this interface may only be used from javascript code, with the exception of the legacydecodetojsval() method.
...deprecated since gecko 2.0 methods decode() obsolete since gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) decodes a json string, returning the javascript object it represents.
... encode() obsolete since gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) encodes a javascript object into a json string.
nsIMacDockSupport
1.0 66 introduced gecko 2.0 inherits from: nsimacdocksupport last changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamon
key 2.8) implemented by: @mozilla.org/cookie-monster;1.
...this can be done like this: var docksupport = cc['@mozilla.org/widget/macdocksupport;1'].getservice(ci.nsimacdocksupport); console.log('docksupport:', docksupport); var win = services.wm.getmostrecentwindow('navigator:browser'); var macmenu = win.document.createelementns('http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul', 'menupopup'); macmenu.setattribute('id', 'mymacmenu'); var macmenuitem = win.document.createelementns('http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul', 'menuitem'); macmenuitem.setattribute('label', 'show most recent window'); macmenuitem.setattribute('id', 'mymacmenuitem'); macmenuitem.addeventlistener('command', function(){ var docksupport =...
...var macmenuitem = services.appshell.hiddendomwindow.document.createelementns('http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul', 'menuitem'); macmenuitem.setattribute('label', 'show most recent window'); macmenuitem.setattribute('id', 'mymacmenuitem'); macmenuitem.addeventlistener('command', function(){ var docksupport = cc['@mozilla.org/widget/macdocksupport;1'].getservice(ci.nsimacdocksupport); docksupport.activateapplication(true); services.wm.getmostrecentwindow(null).focus() ...
nsIMemoryReporter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) any piece of code that wishes to allow its memory use to be monitored may create an nsimemoryreporter object and then register it by calling nsimemoryreportermanager.registerreporter().
... note: this attribute was called memoryused prior to gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4), and its type was long long.
... unit type constants requires gecko 7.0(firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) the amount reported by a memory reporter may use one of the following units.
nsIMsgDBViewCommandUpdater
orts in thunderbird this is implemented for different windows in several different places: nsmsgdbviewcommandupdater (for the standalone message window) nsmsgdbviewcommandupdater (for the threadpane message window) nsmsgsearchcommandupdater (for search dialogs) method overview void updatecommandstatus(); void displaymessagechanged(in nsimsgfolder afolder, in astring asubject, in acstring a
keywords); void updatenextmessageafterdelete(); methods updatecommandstatus() called when the number of selected items changes.
... void displaymessagechanged(in nsimsgfolder afolder, in astring asubject, in acstring a
keywords ); parameters afolder the folder containing selected message.
...a
keywords
keywords associated with the selected message.
nsIMsgIncomingServer
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) method overview void clearallvalues(); void cleartemporaryreturnreceiptsfilter(); void closecachedconnections(); void configuretemporaryfilters(in nsimsgfilterlist filterlist); void configuretemporaryreturnreceiptsfilter(in nsimsgfilterlist filterlist); obsolete since gecko 1.8 void displayofflinemsg(in nsimsgwindow awindow); boolean equals(in nsimsgincomingserver server); void forgetpassword(); void forgetsessionpassword(); astring generateprettynameformigration(); boolean getboolattribute(in string name); boolean getboolvalue(in st...
...
key acstring internal pref
key - guaranteed to be unique across all servers.
...void configuretemporaryfilters( in nsimsgfilterlist filterlist ); parameters filterlist missing description exceptions thrown missing exception missing description configuretemporaryreturnreceiptsfilter() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) if we have set up to filter return receipts into our sent folder, this utility method creates a filter to do that, and adds it to our filterlist if it doesn't exist.
nsIMsgMessageService
inherits from: nsisupports method overview void copymessage(in string asrcuri, in nsistreamlistener acopylistener, in boolean amovemessage, in nsiurllistener aurllistener, in nsimsgwindow amsgwindow, out nsiuri aurl); [noscript] void copymessages(in nsmsg
keyarrayptr
keys, in nsimsgfolder srcfolder, in nsistreamlistener acopylistener, in boolean amovemessage, in nsiurllistener aurllistener, in nsimsgwindow amsgwindow, out nsiuri aurl); void displaymessage(in string amessageuri, in nsisupports adisplayconsumer, in nsimsgwindow amsgwindow, in nsiurllistener aurllistener, in string acharsetoverride, out nsiuri aurl); void openattachment...
...see copymessage [noscript] void copymessages(in nsmsg
keyarrayptr
keys, in nsimsgfolder srcfolder, in nsistreamlistener acopylistener, in boolean amovemessage, in nsiurllistener aurllistener, in nsimsgwindow amsgwindow, out nsiuri aurl); parameters
keys an array of messa...
...ge
keys to be copied.
nsINavHistoryObserver
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamon
key 2.18) warning: if you are in the middle of a batch transaction, there may be a database transaction active.
... methods onbeforedeleteuri() obsolete since gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamon
key 2.18) note: this method was removed in gecko 21.0 as part of bug 826409.
... onpageexpired() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) note: this method was removed in gecko 2.0.
nsINavHistoryQueryOptions
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10) method overview nsinavhistoryqueryoptions clone(); attributes attribute type description applyoptionstocontainers boolean if true, the query options are only applied to the containers.
... sort_by_
keyword_ascending 9 sort by the ascending
keyword order.
... sort_by_
keyword_descending 10 sort by the descending
keyword order.
nsIPrincipal
inherits from: nsiserializable last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) for details on principals, how they work, and how to get the appropriate one, see security check basics.
... note: prior to gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1), this was not available to scripts.
... note: prior to gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1), this was not available to scripts.
nsIPromptService
inherits from: nsisupports last changed in gecko 1.7.5 you can define access
keys (or
keyboard shortcuts) for buttons by including an ampersand ("&") in front of the character that should be the access
key for that button.
...it is equivalent to pressing the escape
key (or cmd+.
...a delay can be useful not only to give the user more time to think before acting, but also as a countermeasure against malicious web sites that intentionally create a race condition whereby the user intends to click or type a
key responding, for example, to the web site's prompt but the security dialog pops up unexpectedly and its button is unintentionally activated.
nsIScriptableIO
files are located by starting at a known directory, specified using a location
key string.
... for example, if the location
key is specified as "desk" and the file name is specified as "foo.txt", the file reference generated will refer to a file named "foo.txt" on the user's desktop.
... nsifile getfile( in astring alocation, in astring afilename ); parameters alocation a location
key identifying a known standard directory.
nsISelectionPrivate
inherits from: nsisupports last changed in gecko 35 (firefox 35 / thunderbird 35 / seamon
key 2.32) warning: the content of this article may be out of date.
... native code only!getrangesforintervalcomarray obsolete since gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9)this feature is obsolete.
... this method became obsolete in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9).
nsISmsRequestManager
nsismsrequestmanager dom/sms/interfaces/nsismsrequestmanager.idlscriptable used to manage sms related requests and notifications for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) implemented by: @mozilla.org/sms/smsrequestmanager;1.
... notifymarkedmessageread() requires gecko 15.0(firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) void notifymarkedmessageread( in long arequestid in bool aread ); parameters arequestid a number representing the id of the request.
... notifymarkmessagereadfailed() requires gecko 15.0(firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) void notifymarkmessagereadfailed( in long arequestid in long aerror ); parameters arequestid a number representing the id of the request.
XPCOM Interface Reference
treamnsiasyncoutputstreamnsiasyncstreamcopiernsiasyncverifyredirectcallbacknsiauthinformationnsiauthmodulensiauthpromptnsiauthprompt2nsiauthpromptadapterfactorynsiauthpromptcallbacknsiauthpromptprovidernsiauthpromptwrappernsiautocompletecontrollernsiautocompleteinputnsiautocompleteitemnsiautocompletelistenernsiautocompleteobservernsiautocompleteresultnsiautocompletesearchnsibadcertlistener2nsibidi
keyboardnsibinaryinputstreamnsibinaryoutputstreamnsiblocklistpromptnsiblocklistservicensiboxobjectnsibrowserboxobjectnsibrowserhistorynsibrowsersearchservicensicrlinfonsicrlmanagernsicachensicachedeviceinfonsicacheentrydescriptornsicacheentryinfonsicachelistenernsicachemetadatavisitornsicacheservicensicachesessionnsicachevisitornsicachingchannelnsicancelablensicategorymanagernsichannelnsichannelevent...
...ndnsiwebbrowserfindinframesnsiwebbrowserpersistnsiwebcontenthandlerregistrarnsiwebnavigationnsiwebnavigationinfonsiwebpagedescriptornsiwebprogressnsiwebprogresslistenernsiwebprogresslistener2nsiwebsocketchannelnsiwebsocketlistenernsiwebappssupportnsiwifiaccesspointnsiwifilistenernsiwifimonitornsiwinaccessnodensiwinapphelpernsiwintaskbarnsiwindowcreatornsiwindowmediatornsiwindowwatchernsiwindowsreg
keynsiwindowsshellservicensiworkernsiworkerfactorynsiworkerglobalscopensiworkermessageeventnsiworkermessageportnsiworkerscopensiwritablepropertybagnsiwritablepropertybag2nsixformsmodelelementnsixformsnsinstanceelementnsixformsnsmodelelementnsixmlhttprequestnsixmlhttprequesteventtargetnsixmlhttprequestuploadnsixpcexceptionnsixpcscriptablensixpconnectnsixsltexceptionnsixsltprocessornsixsltprocessorobso...
...letensixulappinfonsixulbrowserwindownsixulbuilderlistenernsixulruntimensixulsortservicensixultemplatebuildernsixultemplatequeryprocessornsixultemplateresultnsixulwindownsixmlrpcclientnsixmlrpcfaultnsizipentrynsizipreadernsizipreadercachensizipwriternsmsgfilterfileattribvaluensmsgfolderflagtypensmsgjunkstatusnsmsg
keynsmsglabelvaluensmsgpriorityvaluensmsgruleactiontypensmsgsearchattribnsmsgsearchopnsmsgsearchscopensmsgsearchtermnsmsgsearchtypevaluensmsgsearchvaluensmsgsearchwidgetvaluenspipromptservice see also interfaces grouped by function ...
Plug-in Basics - Plugins
with the plug-in api, you can create dynamically loaded plug-ins that can: register one or more mime types draw into a part of a browser window receive
keyboard and mouse events obtain data from the network using urls post data to urls add hyperlinks or hotspots that link to new urls draw into sections on an html page communicate with javascript/dom from native code you can see which plug-ins are installed on your system and have been properly associated with the browser by consulting the installed plug-ins page.
... directories pointed to by h
key_current_user\software\mozillaplugins\*\path registry value, where * can be replaced by any name.
... directories pointed to by h
key_local_machine\software\mozillaplugins\*\path registry value, where * can be replaced by any name.
Browser Console - Firefox Developer Tools
from the
keyboard: press ctrl+shift+j (or cmd+shift+j on a mac).
... like the web console, the command line interpreter enables you to evaluate javascript expressions in real time:also like the web console's command line interpreter, this command line supports autocomplete, history, and various
keyboard shortcuts and helper commands.
...on windows, the following code will add a new item to the browser's main menu: var parent = window.document.getelementbyid("appmenuprimarypane"); var makethetea = gbrowser.ownerdocument.defaultview.document.createelementns("http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul", "menuitem"); makethetea.setattribute("label", "a nice cup of tea?"); parent.appendchild(makethetea); on macos, this similar code will add a new item to the "tools" menu: var parent = window.document.getelementbyid("menu_toolspopup"); var makethetea = gbrowser.ownerdocument.defaultview.document.createelementns("http://www.mozilla.org/
keymaster/gatekeeper/ther...
Set event listener breakpoints - Firefox Developer Tools
now when a
keydown,
keyup,
keypress, or input event occurs, execution will pause as soon as it enters the listener code.
... so if we choose to log
keyboard events, for example, the code no longer pauses as each event is fired: instead, we can then switch to the console, and whenever we press a
key we are given a log of where related events were fired.
... there's an issue here — the console is showing that the
keypress event is being fired somewhere inside jquery.
Network request list - Firefox Developer Tools
filtering by properties the search box recognizes specific
keywords, which can be used to filter the requests by specific request properties.
... those
keywords are followed by a colon and a related filter value.
...
keyword meaning examples status-code shows resources that have the specific http status code.
Allocations - Firefox Developer Tools
to reduce the impact on responsiveness, spidermon
key (the javascript engine in firefox) can perform gc in small increments, letting the program run in between.
...spidermon
key uses a complex set of heuristics to decide when to do what sort of garbage collection.
... in general, though: allocation pressure - allocating a lot of memory, or allocating memory at a high rate - makes spidermon
key more likely to run garbage collection, and more likely to run full, non-incremental garbage collection.
IndexedDB - Firefox Developer Tools
key — the
keypath property of the object store.
... auto increment — is automatic incrementation of the
keys enabled?
...all items have a
key and a value associated with them.
Storage Inspector - Firefox Developer Tools
opening the storage inspector you can open the storage inspector by selecting "storage inspector" from the web developer submenu in the firefox menu panel (or tools menu if you display the menu bar or are on macos), or by pressing its shift + f9
keyboard shortcut.
... a string containing a
key separated value, like "1~2~3~4" or "1=2=3=4" is shown like an array: [1, 2, 3, 4].
... a string containing
key-value pairs, like "id=1234:foo=bar" is shown as json: {id:1234, foo: "bar"}.
AesGcmParams - Web APIs
the aesgcmparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.encrypt(), subtlecrypto.decrypt(), subtlecrypto.wrap
key(), or subtlecrypto.unwrap
key(), when using the aes-gcm algorithm.
...this must be unique for every encryption operation carried out with a given
key.
... put another way: never reuse an iv with the same
key.
Animation.startTime - Web APIs
an animation’s start time is the time value of its documenttimeline when its target
keyframeeffect is scheduled to begin playback.
... examples in the running on web animations api example, the we can sync all new animated cats by giving them all the same starttime as the original running cat: var catrunning = document.getelementbyid ("withwaapi").animate(
keyframes, timing); /* a function that makes new cats.
... */ function addcat(){ var newcat = document.createelement("div"); newcat.classlist.add("cat"); return newcat; } /* this is the function that adds a cat to the waapi column */ function animatenewcatwithwaapi() { // make a new cat var newcat = addcat(); // animate said cat with the waapi's "animate" function var newanimationplayer = newcat.animate(
keyframes, timing); // set the animation's start time to be the same as the original .cat#withwaapi newanimationplayer.starttime = catrunning.starttime; // add the cat to the pile.
Attr - Web APIs
y="1" width="75" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="303.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">attr</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} warning: starting in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4), a number of deprecated properties and methods output warning messages to the console.
... gecko outputs a deprecation note starting from gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4).
... this note was removed again in gecko 49.0 (firefox 49.0 / thunderbird 49.0 / seamon
key 2.46).
AuthenticatorAssertionResponse.authenticatorData - Web APIs
credentialpublic
key (variable length) - a cose encoded public
key.
... this public
key will be stored on the server associated with a user's account and be used for future authentications.
... examples var options = { challenge: new uint8array(26), // will be another value, provided by the relying party server timeout: 60000 }; navigator.credentials.get({ public
key: options }) .then(function (assertionpkcred) { var authenticatordata = assertionpkcred.response.authenticatordata; // maybe try to convert the authenticatordata to see what's inside // send response and client extensions to the server so that it can // go on with the authentication }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'authenticatordata' in that s...
AuthenticatorAssertionResponse.userHandle - Web APIs
the same value may be found on the id property of the options.user object (used for the creation of the public
keycredential instance).
... note: an authenticatorassertionresponse instance is available on public
keycredential.response after calling navigator.credentials.get().
...username, e-mail, phone number, etc.) examples var options = { challenge: new uint8array(26), // will be another value, provided by the relying party server timeout: 60000 }; navigator.credentials.get({ public
key: options }) .then(function (assertionpkcred) { var userhandle = assertionpkcred.response.userhandle; // send response and client extensions to the server so that it can // go on with the authentication }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key c...
AuthenticatorAssertionResponse - Web APIs
the authenticatorassertionresponse interface of the web authentication api is returned by credentialscontainer.get() when a public
keycredential is passed, and provides proof to a service that it has a
key pair and that the authentication request is valid and approved.
...the assertion signature is created with the private
key of
keypair that was created during the navigator.credentials.create() call and verified using the public
key of that same
keypair.
... examples var options = { challenge: new uint8array([/* bytes sent from the server */]) }; navigator.credentials.get({ "public
key": options }) .then(function (credentialinfoassertion) { var assertionresponse = credentialinfoassertion.response; // do something specific with the response // send assertion response back to the server // to proceed with the control of the credential }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'authenticatorassertionresponse inte...
AuthenticatorAttestationResponse.getTransports() - Web APIs
note: an authenticatorattestationresponse instance is available on public
keycredential.response after calling navigator.credentials.create().
... examples var public
key = { challenge: /* from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { id: new uint8array(16), name: "jdoe@example.com", displayname: "john doe" }, pub
keycredparams: [ { type: "public-
key", alg: -7 } ] }; navigator.credentials.create({ public
key }) .then(function (newcredentialinfo) { var transports = new...
...credentialinfo.response.gettransports(); console.table(transports); // may be something like ["internal", "nfc", "usb"] }).catch(function (err) { console.error(err); }); specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'gettransports()' in that specification.
AuthenticatorResponse.clientDataJSON - Web APIs
the original value is passed via public
keycredentialrequestoptions.challenge or public
keycredentialcreationoptions.challenge.
... examples function arraybuffertostr(buf) { return string.fromcharcode.apply(null, new uint8array(buf)); } // pk is a public
keycredential that is the result of a create() or get() promise var clientdatastr = arraybuffertostr(pk.clientdatajson); var clientdataobj = json.parse(clientdatastr); console.log(clientdataobj.type); // "webauthn.create" or "webauthn.get" console.log(clientdataobj.challenge); // base64 encoded string containing the original challenge console.log(clientdataobj.origin); // the window.origin ...
... specifications specification status comment web authentication: an api for accessing public
key credentials level 1the definition of 'clientdatajson' in that specification.
CSSUnparsedValue.entries() - Web APIs
the cssunparsedvalue.entries() method returns an array of a given object's own enumerable property [
key, value] pairs in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... syntax cssunparsedvalue.entries(obj) parameters obj the cssunparsedvalue whose enumerable own property [
key, value] pairs are to be returned.
... return value an array of the given cssunparsedvalue object's own enumerable property [
key, value] pairs.
Credential Management API - Web APIs
the credential management api lets a website store and retrieve user, federated, and public
key credentials.
... public
keycredential provides a credential for logging in using an un-phishable and data-breach resistant asymmetric
key pair instead of a password.
... web authentication: an api for accessing public
key credentials level 1 recommendation initial definition.
DOMTokenList - Web APIs
domtokenlist.entries() returns an iterator, allowing you to go through all
key/value pairs contained in this object.
... domtokenlist.
keys() returns an iterator, allowing you to go through all
keys of the
key/value pairs contained in this object.
... domtokenlist.values() returns an iterator, allowing you to go through all values of the
key/value pairs contained in this object.
Detecting device orientation - Web APIs
ationincludinggravity, those axes correspond to the following: x: represents the axis from west to east y: represents the axis from south to north z: represents the axis perpendicular to the ground for rotationrate, the situation is a bit different; the information corresponds to the following in each case: alpha: represents a rotation rate along the axis perpendicular to the screen (or
keyboard for desktop).
... beta: represents a rotation rate along the axis going from left to right of the plane of the screen (or
keyboard for desktop).
... gamma: represents a rotation rate along the axis going from bottom to top of the plane of the screen (or
keyboard for desktop).
EffectTiming.direction - Web APIs
the direction property of the web animations api dictionary effecttiming indicates an animation's playback direction along its timeline, as well as its behavior when it reaches the end of an iteration element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including direction.
... the value of direction corresponds directly to animationeffecttimingreadonly.direction in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
... examples in the forgotten
key example, alice waves her arm up and down by passing her an alternate value for her direction property: // get alice's arm, and wave it up and down document.getelementbyid("alice_arm").animate([ { transform: 'rotate(10deg)' }, { transform: 'rotate(-40deg)' } ], { easing: 'steps(2, end)', iterations: infinity, direction: 'alternate', duration: 600 }); specifications specifi...
EffectTiming.easing - Web APIs
element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including easing.
... the value of easing corresponds directly to animationeffecttimingreadonly.easing in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
... examples in the red queen's race example, we animate alice and the red queen by passing an easing of steps(7, end) to animate(): // define the
key frames var spriteframes = [ { transform: 'translatey(0)' }, { transform: 'translatey(-100%)' } ]; // get the element that represents alice and the red queen var redqueen_alice_sprite = document.getelementbyid('red-queen_and_alice_sprite'); // animate alice and the red queen using steps() var redqueen_alice = redqueen_alice_sprite.animate( spriteframes, { easing: 'steps(7, end)', dire...
EffectTiming.iterations - Web APIs
element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including iterations.
... the value of iterations corresponds directly to animationeffecttimingreadonly.iterations in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
... examples in the forgotten
key example, alice waves her arm up and down the entire time the page is open by passing infinity as the value for her iterations property: // get alice's arm, and wave it up and down document.getelementbyid("alice_arm").animate([ { transform: 'rotate(10deg)' }, { transform: 'rotate(-40deg)' } ], { easing: 'steps(2, end)', iterations: infinity, direction: 'alternate', duration: 600 }); ...
Event.preventDefault() - Web APIs
<code>preventdefault()</code> won't let you check this!<br>"; event.preventdefault(); }, false); html <p>please click on the checkbox control.</p> <form> <label for="id-checkbox">checkbox:</label> <input type="checkbox" id="id-checkbox"/> </form> <div id="output-box"></div> result stopping
keystrokes from reaching an edit field the following example demonstrates how invalid text input can be stopped from reaching the input field with preventdefault().
... html here's the form: <div class="container"> <p>please enter your name using lowercase letters only.</p> <form> <input type="text" id="my-textbox"> </form> </div> css we use a little bit of css for the warning box we'll draw when the user presses an invalid
key: .warning { border: 2px solid #f39389; border-radius: 2px; padding: 10px; position: absolute; background-color: #fbd8d4; color: #3b3c40; } javascript and here's the javascript code that does the job.
... first, listen for
keypress events: var mytextbox = document.getelementbyid('my-textbox'); mytextbox.addeventlistener('
keypress', checkname, false); the checkname() function, which looks at the pressed
key and decides whether to allow it: function checkname(evt) { var charcode = evt.charcode; if (charcode != 0) { if (charcode < 97 || charcode > 122) { evt.preventdefault(); displaywarning( "please use lowercase letters only." + "\n" + "charcode: " + charcode + "\n" ); } } } the displaywarning() function presents a notification of a problem.
FormData.append() - Web APIs
the append() method of the formdata interface appends a new value onto an existing
key inside a formdata object, or adds the
key if it does not already exist.
... the difference between formdata.set and append() is that if the specified
key already exists, formdata.set will overwrite all existing values with the new one, whereas append() will append the new value onto the end of the existing set of values.
... example the following line creates an empty formdata object: var formdata = new formdata(); // currently empty you can add
key/value pairs to this using formdata.append: formdata.append('username', 'chris'); formdata.append('userpic', myfileinput.files[0], 'chris.jpg'); as with regular form data, you can append multiple values with the same name.
FormData.delete() - Web APIs
the delete() method of the formdata interface deletes a
key and its value(s) from a formdata object.
... syntax formdata.delete(name); parameters name the name of the
key you want to delete.
... example the following line creates an empty formdata object and prepopulates it with
key/value pairs from a form: var formdata = new formdata(myform); you can delete
keys and their values using delete(): formdata.delete('username'); specifications specification status comment xmlhttprequestthe definition of 'delete()' in that specification.
FormData.entries() - Web APIs
the formdata.entries() method returns an iterator allowing to go through all
key/value pairs contained in this object.
... the
key of each pair is a usvstring object; the value either a usvstring, or a blob.
... example // create a test formdata object var formdata = new formdata(); formdata.append('
key1', 'value1'); formdata.append('
key2', 'value2'); // display the
key/value pairs for(var pair of formdata.entries()) { console.log(pair[0]+ ', '+ pair[1]); } the result is:
key1, value1
key2, value2 specifications specification status comment xmlhttprequestthe definition of 'entries() (as iterator<>)' in that specification.
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.
... syntax formdata.get(name); parameters name a usvstring representing the name of the
key you want to retrieve.
...if the
key doesn't exist, the method returns null.
FormData.set() - Web APIs
the set() method of the formdata interface sets a new value for an existing
key inside a formdata object, or adds the
key/value if it does not already exist.
... the difference between set() and formdata.append is that if the specified
key does already exist, set() will overwrite all existing values with the new one, whereas formdata.append will append the new value onto the end of the existing set of values.
... example the following line creates an empty formdata object: var formdata = new formdata(); // currently empty you can set
key/value pairs on this using formdata.set: formdata.set('username', 'chris'); formdata.set('userpic', myfileinput.files[0], 'chris.jpg'); if the sent value is different than string or blob it will be automatically converted to string: formdata.set('name', 72); formdata.get('name'); // "72" specifications specification status comment xmlhttprequestthe definition of 'set()...
GlobalEventHandlers.onanimationend - Web APIs
first, the "slideanimation" class, which establishes the animation that will cause the box to move over the course of five seconds, one time, using the "slidebox"
keyframe set.
... the
keyframes are defined next; they describe an animation which causes the box to migrate from the top-left corner of the container to the bottom-right corner.
... .slideanimation { animation: 5s ease-in-out 0s 1 slidebox; } @
keyframes slidebox { from { left:0; top:0; } to { left:calc(100% - var(--boxwidth)); top:calc(100% - var(--boxwidth)) } } since the css describes the animation but doesn't connect it to the box, we'll need some javascript code to do that.
GlobalEventHandlers.onanimationstart - Web APIs
first, the "slideanimation" class, which establishes the animation that will cause the box to move over the course of five seconds, one time, using the "slidebox"
keyframe set.
... the
keyframes are defined next; they describe an animation which causes the box to migrate from the top-left corner of the container to the bottom-right corner.
... .slideanimation { animation: 5s ease-in-out 0s 1 slidebox; } @
keyframes slidebox { from { left:0; top:0; } to { left:calc(100% - var(--boxwidth)); top:calc(100% - var(--boxwidth)) } } since the css describes the animation but doesn't connect it to the box, we'll need some javascript code to do that.
GlobalEventHandlers - Web APIs
globaleventhandlers.on
keydown is an eventhandler representing the code to be called when the
keydown event is raised.
... globaleventhandlers.on
keypress is an eventhandler representing the code to be called when the
keypress event is raised.
... globaleventhandlers.on
keyup is an eventhandler representing the code to be called when the
keyup event is raised.
HTMLButtonElement - Web APIs
htmlbuttonelement.access
key is a domstring indicating the single-character
keyboard
key to give access to the button.
... htmlbuttonelement.formtarget is a domstring reflecting a name or
keyword indicating where to display the response that is received after submitting the form.
... recommendation the attributes tabindex and access
key, are now defined on htmlelement.
Drag Operations - Web APIs
instead, the user must hold down the alt
key to select text with the mouse, or use the
keyboard.
...the user can modify the desired effect by pressing modifier
keys.
... although the exact
keys used vary by platform, typically the shift and control
keys would be used to switch between copying, moving, and linking.
HTML Drag and Drop API - Web APIs
dragend ondragend …a drag operation ends (such as releasing a mouse button or hitting the esc
key; see finishing a drag.) dragenter ondragenter …a dragged item enters a valid drop target.
... a
key difference between the datatransfer and datatransferitem interfaces is that the former uses the synchronous getdata() method to access a drag item's data, but the latter instead uses the asynchronous getasstring() method.
...additionally, application semantics may differ depending on the value of the dropeffect and/or the state of modifier
keys.
Headers.entries() - Web APIs
the headers.entries() method returns an iterator allowing to go through all
key/value pairs contained in this object.
... the both the
key and value of each pairs are bytestring objects.
... example // create a test headers object var myheaders = new headers(); myheaders.append('content-type', 'text/xml'); myheaders.append('vary', 'accept-language'); // display the
key/value pairs for (var pair of myheaders.entries()) { console.log(pair[0]+ ': '+ pair[1]); } the result is: content-type: text/xml vary: accept-language ...
Headers - Web APIs
headers.entries() returns an iterator allowing to go through all
key/value pairs contained in this object.
... headers.
keys() returns an iterator allowing you to go through all
keys of the
key/value pairs contained in this object.
... headers.values() returns an iterator allowing you to go through all values of the
key/value pairs contained in this object.
IDBCursor.delete() - Web APIs
be aware that you can't call delete() (or idbcursor.update()) on cursors obtained from idbindex.open
keycursor().
... invalidstateerror the cursor was created using idbindex.open
keycursor, is currently being iterated, or has iterated past its end.
... the cursor does not require us to select the data based on a
key; we can just grab all of it.
IDBCursor.direction - Web APIs
for every
key with duplicate values, only the first record is yielded.
...for every
key with duplicate values, only the first record is yielded.
... the cursor does not require us to select the data based on a
key; we can just grab all of it.
IDBIndex.getAll() - Web APIs
if you are just interested in looking at each of the
keys, for instance, it is more efficient to use a cursor.
... syntax var getall
keysrequest = idbindex.getall(); var getall
keysrequest = idbindex.getall(query); var getall
keysrequest = idbindex.getall(query, count); parameters query optional a
key or an idb
keyrange identifying the records to retrieve.
... if this value is null or missing, the browser will use an unbound
key range.
IDBObjectStore.count() - Web APIs
the count() method of the idbobjectstore interface returns an idbrequest object, and, in a separate thread, returns the total number of records that match the provided
key or idb
keyrange.
... syntax var request = objectstore.count(); var request = objectstore.count(query); parameters query optional a
key or idb
keyrange object that specifies a range of records you want to count.
... dataerror the specified
key or
key range is invalid.
IDBTransaction: abort event - Web APIs
bubbles yes cancelable no interface event event handler property onabort this can happen for any of the following reasons: bad requests, (for example, trying to add the same
key twice, or put the same index
key when the
key has a uniqueness constraint), an explicit abort() call an uncaught exception in the request's success/error handler, an i/o error (an actual failure to write to disk, for example disk detached, or other os/hardware failure) quota exceeded.
... // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
...example, but assigning the event handler to the onabort property: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
MediaDevices.getUserMedia() - Web APIs
to require a capability, use the
keywords min, max, or exact (a.k.a.
... the reason for the difference in behaviour is that the
keywords min, max, and exact are inherently mandatory.
... whereas plain values and a
keyword called ideal are not.
message - Web APIs
the media
keymessageevent.message read-only property returns an arraybuffer with a message from the content decryption module.
... messages vary by
key system.
... syntax var messagetype = media
keymessageevent.messagetype; specifications specification status comment encrypted media extensionsthe definition of 'message' in that specification.
load() - Web APIs
the media
keysession.load() method returns a promise that resolves to a boolean value after loading data for a specified session object.
... syntax media
keysession.load(sessionid).then(function(booleanvalue) { ...
... }); parameter sessionid a unique string generated by the content decription module for the current media object and its associated
keys or licenses.
Node.cloneNode() - Web APIs
*note: in the dom4 specification (since gecko 13.0 (firefox 13 / thunderbird 13 / seamon
key 2.10)), the optional deep argument defaults to true.
... with gecko 28.0 (firefox 28 / thunderbird 28 / seamon
key 2.25 / firefox os 1.3)), the console warned developers not to omit the argument.
... starting with gecko 29.0 (firefox 29 / thunderbird 29 / seamon
key 2.26)), a shallow clone is defaulted instead of a deep clone.
Node.getUserData() - Web APIs
syntax userdata = somenode.getuserdata(user
key); parameters user
key is the
key to choose the specific data sought for the given node.
... more than one
key may have been assigned on a given node, containing its own value.
... example var d = document.setuserdata('
key', 15, null); console.log(document.getuserdata('
key')); // 15 specifications specification status comment document object model (dom) level 3 core specificationthe definition of 'node.getuserdata()' in that specification.
performance.mark() - Web APIs
performance.mark("squirrel"); performance.mark("squirrel"); performance.mark("mon
key"); performance.mark("mon
key"); performance.mark("dog"); performance.mark("dog"); // get all of the performancemark entries.
... const allentries = performance.getentriesbytype("mark"); console.log(allentries.length); // 6 // get all of the "mon
key" performancemark entries.
... const mon
keyentries = performance.getentriesbyname("mon
key"); console.log(mon
keyentries.length); // 2 // clear out all of the marks.
RTCConfiguration.certificates - Web APIs
although a given dtls connection only uses a single certificate, providing multiple options in the certificates list may improve the odds of establishing a connection by increasing the chances a mutually-compatible encryption algorithm and
key size may be found.
...one obvious benefit to providing your own is identity
key continuity—if you use the same certificate for subsequent calls, the remote peer can tell you're the same caller.
... this also avoids the cost of generating new
keys.
RTCDTMFSender.toneBuffer - Web APIs
dtmf tone characters the digits 0-9 these characters represent the digit
keys on a telephone
keypad.
... the letters a-d these characters represent the "a" through "d"
keys which are part of the dtmf standard but not included on most telephones.
... the pound/hash sign ("#") and the asterisk ("*") these correspond to the similarly-labeled
keys which are typically on the bottom row of the telephone
keypad.
RTCDTMFToneChangeEvent.RTCDTMFToneChangeEvent() - Web APIs
tone characters the digits 0-9 these characters represent the digit
keys on a telephone
keypad.
... the letters a-d these characters represent the "a" through "d"
keys which are part of the dtmf standard but not included on most telephones.
... the pound/hash sign ("#") and the asterisk ("*") these correspond to the similarly-labeled
keys which are typically on the bottom row of the telephone
keypad.
Storage.removeItem() - Web APIs
the removeitem() method of the storage interface, when passed a
key name, will remove that
key from the given storage object if it exists.
... if there is no item associated with the given
key, this method will do nothing.
... syntax storage.removeitem(
keyname); parameters
keyname a domstring containing the name of the
key you want to remove.
Storage.setItem() - Web APIs
the setitem() method of the storage interface, when passed a
key name and value, will add that
key to the given storage object, or update that
key's value if it already exists.
... syntax storage.setitem(
keyname,
keyvalue); parameters
keyname a domstring containing the name of the
key you want to create/update.
...
keyvalue a domstring containing the value you want to give the
key you are creating/updating.
Using Touch Events - Web APIs
today, most web content is designed for
keyboard and mouse input.
...this interface's attributes include the state of several modifier
keys (for example the shift
key) and the following touch lists: touches - a list of all of the touch points currently on the screen.
... the introduction of new input mechanisms results in increased application complexity to handle various input events, such as
key events, mouse events, pen/stylus events, and touch events.
UIEvent - Web APIs
several interfaces are direct or indirect descendants of this one: mouseevent, touchevent, focusevent,
keyboardevent, wheelevent, inputevent, and compositionevent.
... uievent.ischar read only returns a boolean indicating whether the event produced a
key character or not.
... uievent.which read only returns the numeric
keycode of the
key pressed, or the character code (charcode) for an alphanumeric
key pressed.
URLSearchParams.entries() - Web APIs
the entries() method of the urlsearchparams interface returns an iterator allowing iteration through all
key/value pairs contained in this object.
... the
key and value of each pair are usvstring objects.
... examples // create a test urlsearchparams object var searchparams = new urlsearchparams("
key1=value1&
key2=value2"); // display the
key/value pairs for(var pair of searchparams.entries()) { console.log(pair[0]+ ', '+ pair[1]); } the result is:
key1, value1
key2, value2 specifications specification status comment urlthe definition of 'entries() (see "iterable")' in that specification.
WebXR Device API - Web APIs
to accomplish these things, the webxr device api provides the following
key capabilities: find compatible vr or ar output devices render a 3d scene to the device at an appropriate frame rate (optionally) mirror the output to a 2d display create vectors representing the movements of input controls at the most basic level, a scene is presented in 3d by computing the perspective to apply to the scene in order to render it from the viewpoint of each of the user's eye...
...other input devices such as
keyboards, mice, and gamepads are not presented as xrinputsource instances.
... making it interactive movement, orientation, and motion: a webxr example in this example and tutorial, we use information learned throughout the webxr documentation to create a scene containing a rotating cube which the user can move around using both vr headset and
keyboard and mouse.
Web Animations API - Web APIs
can take an object created with the
keyframeeffect() constructor.
...
keyframeeffect describes sets of animatable properties and values, called
keyframes and their timing options.
... effecttiming element.animate(),
keyframeeffectreadonly.
keyframeeffectreadonly(), and
keyframeeffect.
keyframeeffect() all accept an optional dictionary object of timing properties.
Web Audio API - Web APIs
audioparammap provides a maplike interface to a group of audioparam interfaces, which means it provides the methods foreach(), get(), has(),
keys(), and values(), as well as a size property.
...rk, 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.
... the
keyboard allows you to switch among the standard waveforms as well as one custom waveform, and you can control the master gain using a volume slider beneath the
keyboard.
ARIA: Region role - Accessibility
screen readers use landmark roles to provide
keyboard navigation to important sections of a page.
...
keyboard interactions none.
...this is done to allow
keyboard-only users to scroll regions with overflow text.
ARIA - Accessibility
for instance, native elements have built-in
keyboard accessibility, roles and states.
... aria for scripted widgets writing
keyboard-navigable javascript widgets built-in elements like <input>, <button> etc have built-in
keyboard accessibility.
... if you 'fake' these with <div>s and aria, you must ensure your widgets are
keyboard accessible.
Cognitive accessibility - Accessibility
if the tab order jumps around, especially in a way that does not match the visual order when navigating with a
keyboard, users can become disoriented.
... focused elements should be visibly focused when a user navigates using a
keyboard, the ui should make it obvious which element currently has focus.
...some users may experience great difficulty in recognizing written words yet they understand extremely complex and sophisticated documents when the text is read aloud, or when
key processes and ideas are illustrated visually.
Accessibility Information for Web Authors - Accessibility
how-to's
key-navigable custom dhtml widgets in mozilla & ie this document discusses how to use tabindex, element.focus() and on
keypress to make custom dhtml widgets such as menus or tree views
keyboard accessible.
...these widgets are usually not even
keyboard focusable.
... this document tackles such difficulties and shows several interactive desktop-style widgets such as tree views, menu bars and spreadsheets which are accessible both with the
keyboard and assistive technologies such as screen readers, screen magnifiers and alternative input devices.
Accessibility
when the web meets this goal, it is accessible to people with a diverse range of hearing, movement, sight, and cognitive ability." (w3c - accessibility)
key tutorials the mdn accessibility learning area contains modern, up-to-date tutorials covering accessibility essentials: what is accessibility?
...
keyboard-navigable javascript widgets until now, web developers who want to make their styled <div> and <span> based widgets accessible have lacked the proper techniques.
...
keyboard accessibility is part of the minimum accessibility requirements which a developer should be aware of.
system - CSS: Cascading Style Sheets
syntax /*
keyword values */ system: cyclic; system: numeric; system: alphabetic; system: symbolic; system: additive; system: fixed; /* combined values */ system: fixed 3; system: extends decimal; this may take one of three forms: one of the
keyword values cyclic, numeric, alphabetic, symbolic, additive, or fixed.
... the
keyword value fixed along with an integer.
... the
keyword value or extends along with a @counter-style name.
font-stretch - CSS: Cascading Style Sheets
in earlier versions of the font-stretch specification, the property accepts only the nine
keyword values.
...
keyword to numeric mapping the table below shows the mapping between
keyword values and numeric percentages:
keyword percentage ultra-condensed 50% extra-condensed 62.5% condensed 75% semi-condensed 87.5% normal 100% semi-expanded 112.5% expanded 125% extra-expanded 150% ultra-ex...
...panded 200% variable fonts most fonts have a particular width which corresponds to one of the
keyterm values.
-ms-high-contrast - CSS: Cascading Style Sheets
the available color
keywords are: windowtext: controls the color of text content.
... because high contrast mode themes are dynamic, use these color
keywords in place of other css color values.
... content if at all possible, prefer updating html markup over modifying content using css2 system color
keywords.
orientation - CSS: Cascading Style Sheets
opening the soft
keyboard on many devices in portrait orientation will cause the viewport to become wider than it is tall, thereby causing the browser to use landscape styles instead of portrait.
... syntax the orientation feature is specified as a
keyword value chosen from the list below.
...
keyword values portrait the viewport is in a portrait orientation, i.e., the height is greater than or equal to the width.
CSS Animations - CSS: Cascading Style Sheets
css animations is a module of css that lets you animate the values of css properties over time, using
keyframes.
... the behavior of these
keyframe animations can be controlled by specifying their timing function, duration, their number of repetitions, and other attributes.
... reference css properties animation animation-delay animation-direction animation-duration animation-fill-mode animation-iteration-count animation-name animation-play-state animation-timing-function css at-rules @
keyframes guides detecting css animation support describes a technique for detecting if a browser supports css animations.
Variable fonts guide - CSS: Cascading Style Sheets
for a long time in css there has existed the ability to specify this via the font-weight property, which takes numeric values ranging from 100 to 900 in increments of 100, and
keywords like normal or bold, which are simply aliases for their corresponding numeric values (400 and 700 in this case).
... it should be noted that at this point there is no way in the @font-face declaration to 'map' a specific point on the variation axis of a variable font to the
keyword bold (or any other
keyword).
... note: the deg
keyword is not used when utilizing font-variation-settings.
CSS Grid Layout and Accessibility - CSS: Cascading Style Sheets
this means that someone navigating using the
keyboard could be tabbing through links on your site and suddenly find themselves jumping from the top to the bottom of the document due to a reordered item being next in line.
...the
key here is to keep testing, a very simple test is to tab around the document.
... as a way to start thinking about these issues, as you use css grid layout i would suggest reading flexbox & the
keyboard navigation disconnect from léonie watson.
Layout using named grid lines - CSS: Cascading Style Sheets
you might choose to name just some
key lines for your layout.
...to place our item from the first line named col-start to the 5th, we can use: .item1 { grid-column: col-start / col-start 5 } you can also use the span
keyword here.
... .wrapper { grid-template-columns: [col-start] 1fr [col-end col-start] 1fr [col-end col-start] 1fr [col-end col-start] 1fr [col-end]; } if you have used a track list then you can use the span
keyword not just to span a number of lines but also to span a number of lines of a certain name.
Logical properties for sizing - CSS: Cascading Style Sheets
logical
keywords for resize the resize property sets whether or not an item can be resized and has physical values of horizontal and vertical.
... the resize property also has logical
keyword values.
... the
keyword value of both for the resize property works whether you are thinking physically or logically.
CSS reference - CSS: Cascading Style Sheets
you can also browse
key css concepts and a list of selectors organized by type.
...
keyword index note: the property names in this index do not include the javascript names where they differ from the css standard names.
...zhanging-punctuationheightheight (@viewport)@historical-forms:hoverhsl()hsla()hue-rotate()hyphensi<ident><image>image()image-orientationimage-renderingimage-set()@importin:in-range:indeterminateinheritinitialinline-sizeinsetinset()inset-blockinset-block-endinset-block-startinset-inlineinset-inline-endinset-inline-start<integer>:invalidinvert()isolationjjustify-contentjustify-itemsjustify-selfkkhz@
keyframesl:lang:last-child:last-of-typeleader():leftleft@left-bottom<length><length-percentage>letter-spacingline-breakline-heightlinear-gradient():linklist-stylelist-style-imagelist-style-positionlist-style-typelocal()mmarginmargin-blockmargin-block-endmargin-block-startmargin-bottommargin-inlinemargin-inline-endmargin-inline-startmargin-leftmargin-rightmargin-top::markermarks (@page)maskmask-border...
Shorthand properties - CSS: Cascading Style Sheets
the
keyword inherit can be applied to a property, but only as a whole, not as a
keyword for one value or another.
... that means that the only way to make some specific value to be inherited is to use the longhand property with the
keyword inherit.
... see also css
key concepts: css syntax, at-rule, comments, specificity and inheritance, the box, layout modes and visual formatting models, and margin collapsing, or the initial, computed, resolved, specified, used, and actual values.
align-content - CSS: Cascading Style Sheets
safe used alongside an alignment
keyword.
... if the chosen
keyword means that the item overflows the alignment container causing data loss, the item is instead aligned as if the alignment mode were start.
... unsafe used alongside an alignment
keyword.
animation-name - CSS: Cascading Style Sheets
the animation-name css property specifies the names of one or more @
keyframes at-rules describing the animation or animations to apply to the element.
... syntax /* single animation */ animation-name: none; animation-name: test_05; animation-name: -specific; animation-name: sliding-vertically; /* multiple animations */ animation-name: test1, animation4; animation-name: none, -moz-specific, sliding; /* global values */ animation-name: initial animation-name: inherit animation-name: unset values none a special
keyword denoting no
keyframes.
... formal definition initial valuenoneapplies toall elements, ::before and ::after pseudo-elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax [ none | <
keyframes-name> ]#where <
keyframes-name> = <custom-ident> | <string> examples see css animations for examples.
appearance (-moz-appearance, -webkit-appearance) - CSS: Cascading Style Sheets
in older browsers, even the
keyword none does not have the same effect on all form elements across different browsers, and some do not support it at all.
...ppearance: square-button; appearance: menulist; appearance: listbox; appearance: meter; appearance: progress-bar; /* partial list of available values in gecko */ -moz-appearance: scrollbarbutton-up; -moz-appearance: button-bevel; /* partial list of available values in webkit/blink (as well as gecko and edge) */ -webkit-appearance: media-mute-button; -webkit-appearance: caret; values standard
keywords value demo browser description none div{ color: black; -moz-appearance:none; -webkit-appearance:none; appearance:none; } <div>lorem</div> firefox chrome safari edge no special styling is applied.
...rem</div> chrome safari edge square-button div{ color: black; -moz-appearance: square-button; -webkit-appearance: square-button; } <div>lorem</div> chrome safari edge textarea div{ color: black; -webkit-appearance: textarea; } <div>lorem</div> firefox chrome safari edge non-standard
keywords the following values are implemented only for one or both of the prefixed properties, but not on the standard appearance property.
attr() - CSS: Cascading Style Sheets
<type-or-unit> is a
keyword representing either the type of the attribute's value, or its unit, as in html some attributes have implicit units.
...the list of valid values are:
keyword associated type comment default value string <string> the attribute value is treated as a css <string>.
... color <color> the attribute value is parsed as a hash (3- or 6-value hash) or a
keyword.
background-color - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-color: red; background-color: indigo; /* hexadecimal value */ background-color: #bbff00; /* fully opaque */ background-color: #bf0; /* fully opaque shorthand */ background-color: #11ffee00; /* fully transparent */ background-color: #1fe0; /* fully transparent shorthand */ background-color: #11ffeeff; /* fully opaque */ background-color: #1fef; /* fully opaque shorthand */ /* rgb value */ background-color: rgb(255, 255, 128); ...
... /* fully opaque */ background-color: rgba(117, 190, 218, 0.5); /* 50% transparent */ /* hsl value */ background-color: hsl(50, 33%, 25%); /* fully opaque */ background-color: hsla(50, 33%, 25%, 0.75); /* 75% transparent */ /* special
keyword values */ background-color: currentcolor; background-color: transparent; /* global values */ background-color: inherit; background-color: initial; background-color: unset; the background-color property is specified as a single <color> value.
... though technically removing the transparent
keyword, this doesn't change anything as it has been incorporated as a true <color> backgrounds level 3 github issues css level 2 (revision 1)the definition of 'background-color' in that specification.
background-repeat - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-repeat: repeat-x; background-repeat: repeat-y; background-repeat: repeat; background-repeat: space; background-repeat: round; background-repeat: no-repeat; /* two-value syntax: horizontal | vertical */ background-repeat: repeat space; background-repeat: repeat repeat; background-repeat: round space; background-repeat: no-repeat round; /* global values */ background-repe...
...it also applies to ::first-letter and ::first-line.inheritednocomputed valuea list, each item consisting of two
keywords, one per dimensionanimation typediscrete formal syntax <repeat-style>#where <repeat-style> = repeat-x | repeat-y | [ repeat | space | round | 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=...
... candidate recommendation adds support for multiple background images, the two-value syntax allowing distinct repetition behavior for the horizontal and vertical directions, the space and round
keywords, and for backgrounds on inline-level elements by precisely defining the background painting area.
<basic-shape> - CSS: Cascading Style Sheets
if both shapes are the same type, that type is ellipse() or circle(), and none of the radii use the closest-side or farthest-side
keywords, interpolate between each value in the shape functions.
... examples animated polygon in this example, we use the @
keyframes at-rule to animate a clip path between two polygons.
... html <div></div> css div { width: 300px; height: 300px; background: repeating-linear-gradient(red, orange 50px); clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%); animation: 4s poly infinite alternate ease-in-out; margin: 10px auto; } @
keyframes poly { from { clip-path: polygon(50% 0%, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0% 50%, 40% 40%); } to { clip-path: polygon(50% 30%, 100% 0%, 70% 50%, 100% 100%, 50% 70%, 0% 100%, 30% 50%, 0% 0%); } } result specifications specification status comment css shapes module level 1the definition of '<basic-shape>' in that specification.
border-width - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: border-bottom-width border-left-width border-right-width border-top-width syntax /*
keyword values */ border-width: thin; border-width: medium; border-width: thick; /* <length> values */ border-width: 4px; border-width: 1.2rem; /* vertical | horizontal */ border-width: 2px 1.5em; /* top | horizontal | bottom */ border-width: 1px 2em 1.5cm; /* top | right | bottom | left */ border-width: 1px 2em 0 4rem; /* global
keywords */ border-width: inherit; border-width: initial; border-w...
... values <line-width> defines the width of the border, either as an explicit nonnegative <length> or a
keyword.
... if it's a
keyword, it must be one of the following values: thin a thin border medium a medium border thick a thick border note: because the specification doesn't define the exact thickness denoted by each
keyword, the precise result when using one of them is implementation-specific.
break-after - CSS: Cascading Style Sheets
syntax the break-after property is specified as one of the
keyword values from the list below.
... candidate recommendation adds the recto and verso
keywords.
...adds the avoid-region and region
keywords.
break-before - CSS: Cascading Style Sheets
syntax the break-before property is specified as one of the
keyword values from the list below.
... candidate recommendation adds the recto and verso
keywords.
...adds the avoid-region and region
keywords.
color - CSS: Cascading Style Sheets
syntax /*
keyword values */ color: currentcolor; /* <named-color> values */ color: red; color: orange; color: tan; color: rebeccapurple; /* <hex-color> values */ color: #090; color: #009900; color: #090a; color: #009900aa; /* <rgb()> values */ color: rgb(34, 12, 64, 0.6); color: rgba(34, 12, 64, 0.6); color: rgb(34 12 64 / 0.6); color: rgba(34 12 64 / 0.3); color: rgb(34.0 12 64 / 60%); color: rgba(34.6 12 ...
...the transparent
keyword maps to rgba(0,0,0,0).animation typea color formal syntax <color>where <color> = <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>where <rgb()> = rgb( <percentage>{3} [ / <alpha-value> ]?
... adds color
keyword rebeccapurple.
column-rule-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ column-rule-width: thin; column-rule-width: medium; column-rule-width: thick; /* <length> values */ column-rule-width: 1px; column-rule-width: 2.5em; /* global values */ column-rule-width: inherit; column-rule-width: initial; column-rule-width: unset; the column-rule-width property is specified as a single <'border-width'> value.
... values <'border-width'> is a
keyword defined by border-width describing the width of the rule.
... it may be either a <length> or one of the thin, medium, or thick
keywords.
content - CSS: Cascading Style Sheets
/*
keywords that cannot be combined with other values */ content: normal; content: none; /* <image> values */ content: url("http://www.example.com/test.png"); content: linear-gradient(#e66465, #9198e5); /* alt text for generated content, added in the level 3 specification */ content: url("http://www.example.com/test.png") / "this is the alt text"; /* values below can only be applied to generated content using ::before and ::after */ /* <string> value */ content: "prefix"; /* <counter> values */ content: counter(chapter_counter); content: counters(section_counter, "."); /* attr() value linked to the html attribute value */ content: attr(value...
... string); /* language- and position-dependent
keywords */ content: open-quote; content: close-quote; content: no-open-quote; content: no-close-quote; /* except for normal and none, several values can be used simultaneously */ content: open-quote chapter_counter; /* global values */ content: inherit; content: initial; content: unset; syntax values none the pseudo-element is not generated.
...otherwise, for uri values, the absolute uri; for attr() values, the resulting string; for other
keywords, as specified.animation typediscrete formal syntax normal | none | [ <content-replacement> | <content-list> ] [/ <string> ]?where <content-replacement> = <image><content-list> = [ <string> | contents | <image> | <quote> | <target> | <leader()> ]+where <image> = <url> | <image()> | <image-set()> | <element()> | <paint()> | <cross-fade()> | <gradient><quote> = open-quote | close-quote | no-o...
font-stretch - CSS: Cascading Style Sheets
/*
keyword values */ font-stretch: ultra-condensed; font-stretch: extra-condensed; font-stretch: condensed; font-stretch: semi-condensed; font-stretch: normal; font-stretch: semi-expanded; font-stretch: expanded; font-stretch: extra-expanded; font-stretch: ultra-expanded; /* percentage values */ font-stretch: 50%; font-stretch: 100%; font-stretch: 200%; /* global values */ font-stretch: inherit; font-stretch: initial; font-stretch: unset; syntax this property may be specified as a single
keyword value or a single <percentage> value.
... in earlier versions of the font-stretch specification, the property accepts only the nine
keyword values.
...
keyword to numeric mapping the table below shows the mapping between
keyword values and numeric percentages:
keyword percentage ultra-condensed 50% extra-condensed 62.5% condensed 75% semi-condensed 87.5% normal 100% semi-expanded 112.5% expanded 125% extra-expanded 150% ultra-ex...
font-synthesis - CSS: Cascading Style Sheets
syntax this property can take any one of the following forms: the
keyword value none.
... either of the
keyword values weight and style.
... both the
keyword values weight and style.
font-weight - CSS: Cascading Style Sheets
syntax /*
keyword values */ font-weight: normal; font-weight: bold; /*
keyword values relative to the parent */ font-weight: lighter; font-weight: bolder; /* numeric
keyword values */ font-weight: 100; font-weight: 200; font-weight: 300; font-weight: 400;// normal font-weight: 500; font-weight: 600; font-weight: 700;// bold font-weight: 800; font-weight: 900; /* global values */ font-weight: inherit; font-weight: initial; f...
... in earlier versions of the font-weight specification, the property accepts only
keyword values and the numeric values 100, 200, 300, 400, 500, 600, 700, 800, and 900; non-variable fonts can only really make use of these set values, although fine-grained values (e.g.
...it also applies to ::first-letter and ::first-line.inheritedyescomputed valuethe
keyword or the numerical value as specified, with bolder and lighter transformed to the real valueanimation typea font weight formal syntax <font-weight-absolute> | bolder | lighterwhere <font-weight-absolute> = normal | bold | <number <a href="/docs/css/value_definition_syntax#brackets" title="brackets: enclose several entities, combinators, and multipliers to transform them as a single component"...
grid-column-start - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-column-start: auto; /* <custom-ident> value */ grid-column-start: somegridarea; /* <integer> + <custom-ident> values */ grid-column-start: 2; grid-column-start: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-column-start: span 3; grid-column-start: span somegridarea; grid-column-start: span somegridarea 5; /* global values */ grid-column-start: inherit; ...
...a <grid-line> value can be specified as: either the auto
keyword or a <custom-ident> value or an <integer> value or both <custom-ident> and <integer>, separated by a space or the
keyword span together with either a <custom-ident> or an <integer> or both.
... values auto a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
grid-row-start - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-row-start: auto; /* <custom-ident> values */ grid-row-start: somegridarea; /* <integer> + <custom-ident> values */ grid-row-start: 2; grid-row-start: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-row-start: span 3; grid-row-start: span somegridarea; grid-row-start: 5 somegridarea span; /* global values */ grid-row-start: inherit; grid-row-start: initial...
...a <grid-line> value can be specified as: either the auto
keyword or a <custom-ident> value or an <integer> value or both <custom-ident> and <integer>, separated by a space or the
keyword span together with either a <custom-ident> or an <integer> or both.
... values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
justify-content - CSS: Cascading Style Sheets
safe used alongside an alignment
keyword.
... if the chosen
keyword means that the item overflows the alignment container causing data loss, the item is instead aligned as if the alignment mode were start.
... unsafe used alongside an alignment
keyword.
letter-spacing - CSS: Cascading Style Sheets
syntax /*
keyword value */ letter-spacing: normal; /* <length> values */ letter-spacing: 0.3em; letter-spacing: 3px; letter-spacing: .3px; /* global values */ letter-spacing: inherit; letter-spacing: initial; letter-spacing: unset; values normal the normal letter spacing for the current font.
... unlike a value of 0, this
keyword allows the user agent to alter the space between characters in order to justify text.
...it also applies to ::first-letter and ::first-line.inheritedyescomputed valuean optimum value consisting of either an absolute length or the
keyword normalanimation typea length formal syntax normal | <length> examples setting letter spacing html <p class="normal">letter spacing</p> <p class="em-wide">letter spacing</p> <p class="em-wider">letter spacing</p> <p class="em-tight">letter spacing</p> <p class="px-wide">letter spacing</p> css .normal { letter-spacing: normal; } .em-wide { letter-spacing: 0.4em; } .em-wider { letter...
mask-border-slice - CSS: Cascading Style Sheets
syntax /* all sides */ mask-border-slice: 30%; /* vertical | horizontal */ mask-border-slice: 10% 30%; /* top | horizontal | bottom */ mask-border-slice: 30 30% 45; /* top | right | bottom | left */ mask-border-slice: 7 12 14 5; /* using the `fill`
keyword */ mask-border-slice: 10% fill 7 12; /* global values */ mask-border-slice: inherit; mask-border-slice: initial; mask-border-slice: unset; the mask-border-slice property may be specified using one to four <number-percentage> values to represent the position of each image slice.
...it is discarded by default, but is used like a background image if the
keyword fill is set.
... note: the fill
keyword needs to be included if you want the element's content to be visible.
mask-mode - CSS: Cascading Style Sheets
/*
keyword values */ mask-mode: alpha; mask-mode: luminance; mask-mode: match-source; /* multiple values */ mask-mode: alpha, match-source; /* global values */ mask-mode: inherit; mask-mode: initial; mask-mode: unset; syntax the mask-mode property is specified as one or more of the
keyword values listed below, separated by commas.
... values alpha this
keyword indicates that the transparency (alpha channel) values of the mask layer image should be used as the mask values.
... luminance this
keyword indicates that the luminance values of the mask layer image should be used as the mask values.
max-height - CSS: Cascading Style Sheets
syntax /* <length> value */ max-height: 3.5em; /* <percentage> value */ max-height: 75%; /*
keyword values */ max-height: none; max-height: max-content; max-height: min-content; max-height: fit-content(20em); /* global values */ max-height: inherit; max-height: initial; max-height: unset; values <length> defines the max-height as an absolute value.
...is not absolutely positioned, the percentage value is treated as none.computed valuethe percentage as specified or the absolute length or noneanimation typea length, percentage or calc(); formal syntax auto | <length> | <percentage> | min-content | max-content | fit-content(<length-percentage>)where <length-percentage> = <length> | <percentage> examples setting max-height using percentage and
keyword values table { max-height: 75%; } form { max-height: none; } specifications specification status comment css box sizing module level 4the definition of 'max-height' in that specification.
... working draft adds the max-content, min-content, fit-content
keywords.
min-width - CSS: Cascading Style Sheets
syntax /* <length> value */ min-width: 3.5em; /* <percentage> value */ min-width: 10%; /*
keyword values */ min-width: max-content; min-width: min-content; min-width: fit-content(20em); /* global values */ min-width: inherit; min-width: initial; min-width: unset; values <length> defines the min-width as an absolute value.
... working draft adds the max-content, min-content, fit-content
keywords.
... candidate recommendation adds the auto
keyword and uses it as the initial value.
overscroll-behavior - CSS: Cascading Style Sheets
/*
keyword values */ overscroll-behavior: auto; /* default */ overscroll-behavior: contain; overscroll-behavior: none; /* two values */ overscroll-behavior: auto contain; /* global values */ overscroll-behavior: inherit; overscroll-behavior: initial; overscroll-behavior: unset; by default, mobile browsers tend to provide a "bounce" effect or even a page refresh when the top or bottom of a page (or other scroll area) is reached.
... syntax the overscroll-behavior property is specified as one or two
keywords chosen from the list of values below.
... two
keywords specifies the overscroll-behavior value on the x and y axes respectively.
pointer-events - CSS: Cascading Style Sheets
syntax /*
keyword values */ pointer-events: auto; pointer-events: none; pointer-events: visiblepainted; /* svg only */ pointer-events: visiblefill; /* svg only */ pointer-events: visiblestroke; /* svg only */ pointer-events: visible; /* svg only */ pointer-events: painted; /* svg only */ pointer-events: fill; /* svg only */ pointer-events: stroke; /* svg only */ pointer-events: all; ...
... /* svg only */ /* global values */ pointer-events: inherit; pointer-events: initial; pointer-events: unset; the pointer-events property is specified as a single
keyword chosen from the list of values below.
... elements with pointer-events: none will still receive focus through sequential
keyboard navigation using the tab
key.
ruby-position - CSS: Cascading Style Sheets
/*
keyword values */ ruby-position: over; ruby-position: under; ruby-position: inter-character; /* global values */ ruby-position: inherit; ruby-position: initial; ruby-position: unset; syntax values over is a
keyword indicating that the ruby has to be placed over the main text for horizontal scripts and right to it for vertical scripts.
... under is a
keyword indicating that the ruby has to be placed under the main text for horizontal scripts and left to it for vertical scripts.
... inter-character is a
keyword indicating that the ruby has to be placed between the different characters.
text-align - CSS: Cascading Style Sheets
syntax /*
keyword values */ text-align: left; text-align: right; text-align: center; text-align: justify; text-align: justify-all; text-align: start; text-align: end; text-align: match-parent; /* character-based alignment in a table column */ text-align: "."; text-align: "." center; /* block alignment values (non-standard syntax) */ text-align: -moz-center; text-align: -webkit-center; /* global values */ te...
...xt-align: inherit; text-align: initial; text-align: unset; the text-align property is specified in one of the following ways: using the
keyword values start, end, left, right, center, justify, justify-all, or match-parent.
... using both a
keyword value and a <string> value.
text-indent - CSS: Cascading Style Sheets
syntax /* <length> values */ text-indent: 3mm; text-indent: 40px; /* <percentage> value relative to the containing block width */ text-indent: 15%; /*
keyword values */ text-indent: 5em each-line; text-indent: 5em hanging; text-indent: 5em hanging each-line; /* global values */ text-indent: inherit; text-indent: initial; text-indent: unset; values <length> indentation is specified as an absolute <length>.
... formal definition initial value0applies toblock containersinheritedyespercentagesrefer to the width of the containing blockcomputed valuethe percentage as specified or the absolute length, plus any
keywords as specifiedanimation typea length, percentage or calc(); formal syntax <length-percentage> && hanging?
... working draft adds the hanging and each-line
keywords.
text-orientation - CSS: Cascading Style Sheets
syntax /*
keyword values */ text-orientation: mixed; text-orientation: upright; text-orientation: sideways-right; text-orientation: sideways; text-orientation: use-glyph-orientation; /* global values */ text-orientation: inherit; text-orientation: initial; text-orientation: unset; the text-orientation property is specified as a single
keyword from the list below.
...note that this
keyword causes all characters to be considered as left-to-right: the used value of direction is forced to be ltr.
... use-glyph-orientation on svg elements, this
keyword leads to use the value of the deprecated svg properties glyph-orientation-vertical and glyph-orientation-horizontal.
transition-timing-function - CSS: Cascading Style Sheets
syntax /*
keyword values */ transition-timing-function: ease; transition-timing-function: ease-in; transition-timing-function: ease-out; transition-timing-function: ease-in-out; transition-timing-function: linear; transition-timing-function: step-start; transition-timing-function: step-end; /* function values */ transition-timing-function: steps(4, jump-end); transition-timing-function: cubic-bezier(0.1, 0.7,...
... 1.0, 0.1); /* steps function
keywords */ transition-timing-function: steps(4, jump-start); transition-timing-function: steps(10, jump-end); transition-timing-function: steps(20, jump-none); transition-timing-function: steps(5, jump-both); transition-timing-function: steps(6, start); transition-timing-function: steps(8, end); /* multiple timing functions */ transition-timing-function: ease, step-start, cubic-bezier(0.1, 0.7, 1.0, 0.1); /* global values */ transition-timing-function: inherit; transition-timing-function: initial; transition-timing-function: unset; values <timing-function> each <timing-function> represents the timing function to link to the corresponding property to transition, as defined in transition-property.
... the non-step
keyword values (ease, linear, ease-in-out, etc.) each represent cubic bézier curve with fixed four point values, with the cubic-bezier() function value allowing for a non-predefined value.
vertical-align - CSS: Cascading Style Sheets
syntax /*
keyword values */ vertical-align: baseline; vertical-align: sub; vertical-align: super; vertical-align: text-top; vertical-align: text-bottom; vertical-align: middle; vertical-align: top; vertical-align: bottom; /* <length> values */ vertical-align: 10em; vertical-align: 4px; /* <percentage> values */ vertical-align: 20%; /* global values */ vertical-align: inherit; vertical-align: initial; vertic...
...the baseline of some replaced elements, like <textarea>, is not specified by the html specification, meaning that their behavior with this
keyword may vary between browsers.
...it also applies to ::first-letter and ::first-line.inheritednopercentagesrefer to the line-height of the element itselfcomputed valuefor percentage and length values, the absolute length, otherwise the
keyword as specifiedanimation typea length formal syntax baseline | sub | super | text-top | text-bottom | middle | top | bottom | <percentage> | <length> examples basic example html <div>an <img src="https://udn.realityripple.com/samples/b4/e1f0faff5b.svg" alt="link" width="32" height="32" /> image with a default alignment.</div> <div>an <img class="top" src="https://udn.realityripple.com/samp...
WAI ARIA Live Regions/API Support - Developer guides
often, changes in a page that are directly caused by a user's
keystrokes should be read.
...once the user presses the next
key the speech will move on to echoing that
key anyway.
...
key presses yes mouse clicks yes mouse hovers no page load events no everything else, including focus changes, timer callbacks, xmlhttprequest callbacks, etc.
Live streaming web audio and video - Developer guides
the
key consideration when streaming media to a browser is the fact that rather than playing a finite file we are relaying a file that is being created on the fly and has no pre-determined start or end.
...
key differences between streamed and static media in this case, we are using static media to describe media that is represented by a file, whether it be an mp3 or webm file.
... note: it's potentially easier to stream audio using non-streaming formats because unlike video there are no
keyframes.
DOM onevent handlers - Developer guides
events are actions like: being clicked detecting pressed
keys getting focus the onevent handler is usually named with the event it reacts to, like onclick, on
keypress, onfocus, etc.
... when the event handler is invoked, the this
keyword inside the handler is set to the dom element on which the handler is registered.
... for more details, see the this
keyword documentation.
Developer guides
using formdata objects the formdata object lets you compile a set of
key/value pairs to send using xmlhttprequest.
... it's primarily intended for sending form data, but can be used independently from forms to transmit
keyed data.
... user input and controls modern web user input goes beyond simple mouse and
keyboard: think of touchscreens for example.
HTML attribute: crossorigin - HTML: Hypertext Markup Language
these attributes are enumerated, and have the following possible values:
keyword description anonymous cors requests for this element will have the credentials flag set to 'same-origin'.
...the "anonymous"
keyword means that there will be no exchange of user credentials via cookies, client-side ssl certificates or http authentication as described in the terminology section of the cors specification, unless it is in the same origin.
... an invalid
keyword and an empty string will be handled as the anonymous
keyword.
DASH Adaptive Streaming for HTML 5 Video - HTML: Hypertext Markup Language
ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 -g 150 -tile-columns 4 -frame-parallel 1 -f webm -dash 1 \ -an -vf scale=160:90 -b:v 250k -dash 1 video_160x90_250k.webm ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 -g 150 -tile-columns 4 -frame-parallel 1 -f webm -dash 1 \ -an -vf scale=320:180 -b:v 500k -dash 1 video_320x180_500k.webm ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 -g 150 -tile-columns 4 -frame-parallel...
... 1 -f webm -dash 1 \ -an -vf scale=640:360 -b:v 750k -dash 1 video_640x360_750k.webm ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 -g 150 -tile-columns 4 -frame-parallel 1 -f webm -dash 1 \ -an -vf scale=640:360 -b:v 1000k -dash 1 video_640x360_1000k.webm ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 -g 150 -tile-columns 4 -frame-parallel 1 -f webm -dash 1 \ -an -vf scale=1280:720 -b:v 1500k -dash 1 video_1280x720_1500k.webm or do it in all in one command.
... ffmpeg -i in.video -c:v libvpx-vp9 -
keyint_min 150 \ -g 150 -tile-columns 4 -frame-parallel 1 -f webm -dash 1 \ -an -vf scale=160:90 -b:v 250k -dash 1 video_160x90_250k.webm \ -an -vf scale=320:180 -b:v 500k -dash 1 video_320x180_500k.webm \ -an -vf scale=640:360 -b:v 750k -dash 1 video_640x360_750k.webm \ -an -vf scale=640:360 -b:v 1000k -dash 1 video_640x360_1000k.webm \ -an -vf scale=1280:720 -b:v 1500k -dash 1 video_1280x720_1500k.webm 2.
<button>: The Button element - HTML: Hypertext Markup Language
formtarget html5 if the button is a submit button, this attribute is a author-defined name or standardized, underscore-prefixed
keyword indicating where to display the response from submitting the form.
... this is the name of, or
keyword for, a browsing context (a tab, window, or <iframe>).
...the following
keywords have special meanings: _self: load the response into the same browsing context as the current one.
<dl>: The Description List element - HTML: Hypertext Markup Language
common uses for this element are to implement a glossary or to display metadata (a list of
key-value pairs).
... metadata description lists are useful for displaying metadata as a list of
key-value pairs.
... <dl> <dt>name</dt> <dd>godzilla</dd> <dt>born</dt> <dd>1952</dd> <dt>birthplace</dt> <dd>japan</dd> <dt>color</dt> <dd>green</dd> </dl> tip: it can be handy to define a
key-value separator in the css, such as: dt::after { content: ": "; } wrapping name-value groups in <div> elements whatwg html allows wrapping each name-value group in a <dl> element in a <div> element.
<form> - HTML: Hypertext Markup Language
in html 4, this is the name/
keyword for a frame.
... in html5, it is a name/
keyword for a browsing context (for example, tab, window, or iframe).
... the following
keywords have special meanings: _self (default): load into the same browsing context as the current one.
<img>: The Image Embed element - HTML: Hypertext Markup Language
omitting alt altogether indicates that the image is a
key part of the content and no textual equivalent is available.
... setting this attribute to an empty string (alt="") indicates that this image is not a
key part of the content (it’s decoration or a tracking pixel), and that non-visual browsers may omit it from rendering.
...while this can provide additional information to the user, you should not assume that the user will ever see it: the user may only have
keyboard or touchscreen.
Link types - HTML: Hypertext Markup Language
note: you can also use the next
keyword to specify a link to the next page in the sequence.
...browsers, that don't have such a context will ignore this
keyword.
... if used in combination with the alternate
keyword, it defines an alternative style sheet; in that case the title attribute must be present and not be the empty string.
Identifying resources on the Web - HTTP
a more complex example might look like this: http://www.example.com:80/path/to/myfile.html?
key1=value1&
key2=value2#somewhereinthedocument urns a uniform resource name (urn) is a uri that identifies a resource by name in a particular namespace.
... query ?
key1=value1&
key2=value2 are extra parameters provided to the web server.
... those parameters are a list of
key/value pairs separated with the & symbol.
HTTP caching - HTTP
the primary cache
key consists of the request method and target uri (oftentimes only the uri is used as only get requests are caching targets).
... responses other than get if something suitable for use as a cache
key is defined.
... a cache entry might also consist of multiple stored responses differentiated by a secondary
key, if the request is target of content negotiation.
POST - HTTP
in this case, the content type is selected by putting the adequate string in the enctype attribute of the <form> element or the formenctype attribute of the <input> or <button> elements: application/x-www-form-urlencoded: the
keys and values are encoded in
key-value tuples separated by '&', with a '=' between the
key and the value.
... non-alphanumeric characters in both
keys and values are percent encoded: this is the reason why this type is not suitable to use with binary data (use multipart/form-data instead) multipart/form-data: each value is sent as a block of data ("body part"), with a user agent-defined delimiter ("boundary") separating each part.
... the
keys are given in the content-disposition header of each part.
Closures - JavaScript
you define some behavior, and then attach it to an event that is triggered by the user (such as a click or a
keypress).
... creating closures in loops: a common mistake prior to the introduction of the let
keyword in ecmascript 2015, a common problem with closures occurred when you created them inside a loop.
... } } setuphelp(); if you don't want to use more closures, you can use the let
keyword introduced in es2015 : function showhelp(help) { document.getelementbyid('help').innerhtml = help; } function setuphelp() { var helptext = [ {'id': 'email', 'help': 'your e-mail address'}, {'id': 'name', 'help': 'your full name'}, {'id': 'age', 'help': 'your age (you must be over 16)'} ]; for (let i = 0; i < helptext.length; i++) { let item = helptext[i]; ...
Details of the object model - JavaScript
inheriting properties suppose you create the mark object as a workerbee with the following statement: var mark = new workerbee; when javascript sees the new operator, it creates a new generic object and implicitly sets the value of the internal property [[prototype]] to the value of workerbee.prototype and passes this new object as the value of the this
keyword to the workerbee constructor function.
... the new operator passes the new object to the engineer constructor as the value of the this
keyword.
... because base is a method of engineer, within the call to base, javascript binds the this
keyword to the object created in step 1.
Meta programming - JavaScript
handler.own
keys() object.getownpropertynames() object.getownpropertysymbols() object.
keys() reflect.own
keys() the result of own
keys is a list.
... the result list must contain the
keys of all non-configurable own properties of target.
... if the target object is not extensible, then the result list must contain all the
keys of the own properties of target and no other values.
JavaScript modules - JavaScript
see node's ecmascript modules documentation for more details.disabled from version 8.5.0: this feature is behind the --experimental-modules runtime flag.default
keyword with exportchrome full support 61edge full support 16 full support 16 full support 15disabled disabled from version 15: this feature is behind the experimental javascript features preference.firefox ...
...the simplest way to do this is as follows: import { name, draw, reportarea, reportperimeter } from './modules/square.js'; you use the import statement, followed by a comma-separated list of the features you want to import wrapped in curly braces, followed by the
keyword from, followed by the path to the module file — a path relative to the site root, which for our basic-modules example would be /js-examples/modules/basic-modules.
... renaming imports and exports inside your import and export statement's curly braces, you can use the
keyword as along with a new feature name, to change the identifying name you will use for a feature inside the top-level module.
static - JavaScript
the static
keyword defines a static method for a class.
... calling static methods from another static method in order to call a static method within another static method of the same class, you can use the this
keyword.
... static anotherstaticmethod() { return this.staticmethod() + ' from another static method'; } } staticmethodcall.staticmethod(); // 'static method has been called' staticmethodcall.anotherstaticmethod(); // 'static method has been called from another static method' calling static methods from a class constructor and other methods static methods are not directly accessible using the this
keyword from non-static methods.
Warning: JavaScript 1.6's for-each-in loops are deprecated - JavaScript
deprecated syntax var object = { a: 10, b: 20 }; for each (var x in object) { console.log(x); // 10 // 20 } alternative standard syntax you can now use the standard for...in loop to iterate over specified object
keys, and get each value inside the loop: var object = { a: 10, b: 20 }; for (var
key in object) { var x = object[
key]; console.log(x); // 10 // 20 } or, using for...of (es2015) and object.values (es2017), you can get an array of the specified object values and iterate over the array like this: var object = { a: 10, b: 20 }; for (var x of object.values(object...
... function func(array) { if (array) { for (var x of array) { console.log(x); } } } func([10, 20]); // 10 // 20 func(null); // prints nothing func(undefined); // prints nothing iterating over an object's
key-value pair deprecated syntax there's a deprecated idiom to iterate over the specified object's
key-value pairs using for each...in and the deprecated iterator object.
... var object = { a: 10, b: 20 }; for each (var [
key, value] in iterator(object)) { console.log(
key, value); // "a", 10 // "b", 20 } alternative standard syntax you can now use the standard for...in loop to iterate over specified object
keys, and get each value inside the loop: var object = { a: 10, b: 20 }; for (var
key in object) { var value = object[
key]; console.log(
key, value); // "a", 10 // "b", 20 } or, using for...of (es2015) and object.entries (es2017), you can get an array of the specified object values and iterate over the array like this: var object = { a: 10, b: 20 }; for (var [
key, value] of object.entries(object)) { console.log(
key, value); // "a", 10 // "b", 20 } ...
SyntaxError: missing ) after condition - JavaScript
it must appear in parenthesis after the if
keyword.
...in javascript, this condition must appear in parenthesis after the if
keyword, like this: if (condition) { // do something if the condition is true } examples missing parenthesis it might just be an oversight, carefully check all you parenthesis in your code.
... if (3 > math.pi) { console.log("wait what?"); } misused is
keyword if you are coming from another programming language, it is also easy to add
keywords that don't mean the same or have no meaning at all in javascript.
SyntaxError: "x" is a reserved identifier - JavaScript
the javascript exception "variable is a reserved identifier" occurs when reserved
keywords are used as identifiers.
... reserved
keywords will throw in if they are used as identifiers.
... these are reserved in strict mode and sloppy mode: enum the following are only reserved when they are found in strict mode code: implements interface let package private protected public static examples strict and non-strict reserved
keywords the enum identifier is generally reserved.
BigInt64Array - JavaScript
bigint64array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... bigint64array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
BigUint64Array - JavaScript
biguint64array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... biguint64array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Float32Array - JavaScript
float32array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... float32array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Float64Array - JavaScript
float64array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... float64array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Int16Array - JavaScript
int16array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... int16array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Int32Array - JavaScript
int32array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... int32array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Int8Array - JavaScript
int8array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... int8array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Intl.Collator.prototype.resolvedOptions() - JavaScript
if any unicode extension values were requested in the input bcp 47 language tag that led to this locale, the
key-value pairs that were requested and are supported for this locale are included in locale.
... collation the value requested using the unicode extension
key "co", if it is supported for locale, or "default".
... numeric casefirst the values requested for these properties in the options argument or using the unicode extension
keys "kn" and "kf" or filled in as defaults.
Intl.Locale.prototype.hourCycle - JavaScript
these subtags add additional data about the locale, and are added to locale identifiers by using the -u extension
key.
...to add the hour cycle type, first add the -u extension
key to the string.
... next, add the -hc extension
key to indicate that you are adding an hour cycle.
Map.prototype.get() - JavaScript
if the value that is associated to the provided
key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the map object.
... syntax mymap.get(
key) parameters
key the
key of the element to return from the map object.
... return value the element associated with the specified
key, or undefined if the
key can't be found in the map object.
Map.prototype.has() - JavaScript
the has() method returns a boolean indicating whether an element with the specified
key exists or not.
... syntax mymap.has(
key) parameters
key the
key of the element to test for presence in the map object.
... return value true if an element with the specified
key exists in the map object; otherwise false.
Object.assign() - JavaScript
description properties in the target object are overwritten by properties in the sources if they have the same
key.
... of function is 2 'use strict'; if (target === null || target === undefined) { throw new typeerror('cannot convert undefined or null to object'); } var to = object(target); for (var index = 1; index < arguments.length; index++) { var nextsource = arguments[index]; if (nextsource !== null && nextsource !== undefined) { for (var next
key in nextsource) { // avoid bugs when hasownproperty is shadowed if (object.prototype.hasownproperty.call(nextsource, next
key)) { to[next
key] = nextsource[next
key]; } } } } return to; }, writable: true, configurable: true }); } examples cloning an object const obj = { a: 1 }; const copy = object.assign...
... // this is an assign function that copies full descriptors function completeassign(target, ...sources) { sources.foreach(source => { let descriptors = object.
keys(source).reduce((descriptors,
key) => { descriptors[
key] = object.getownpropertydescriptor(source,
key); return descriptors; }, {}); // by default, object.assign copies enumerable symbols, too object.getownpropertysymbols(source).foreach(sym => { let descriptor = object.getownpropertydescriptor(source, sym); if (descriptor.enumerable) { descriptors[sym...
Reflect.defineProperty() - JavaScript
syntax reflect.defineproperty(target, property
key, attributes) parameters target the target object on which to define the property.
... property
key the name of the property to be defined or modified.
... one
key difference: object.defineproperty returns the object or throws a typeerror if the property has not been successfully defined.
Reflect.get() - JavaScript
the static reflect.get() method works like getting a property from an object (target[property
key]) as a function.
... syntax reflect.get(target, property
key[, receiver]) parameters target the target object on which to get the property.
... property
key the name of the property to get.
Reflect.set() - JavaScript
syntax reflect.set(target, property
key, value[, receiver]) parameters target the target object on which to set the property.
... property
key the name of the property to set.
...reflect.set(arr, 'length', 1) // true arr // ["duck"] // with just one argument, property
key and value are "undefined".
Set.prototype.forEach() - JavaScript
syntax myset.foreach(callback[, thisarg]) parameters callback function to execute for each element, taking three arguments: currentvalue, current
key the current element being processed in the set.
... as there are no
keys in set, the value is passed for both arguments.
... callback is invoked with three arguments: the element value the element
key the set object being traversed there are no
keys in set objects, however, so the first two arguments are both values contained in the set.
Symbol.unscopables - JavaScript
however, in ecmascript 2015 and later, the array.prototype.
keys() method was introduced.
... that means that inside with environment "
keys" would now be the method and not the variable.
... var
keys = []; with (array.prototype) {
keys.push('something'); } object.
keys(array.prototype[symbol.unscopables]); // ["copywithin", "entries", "fill", "find", "findindex", // "includes", "
keys", "values"] unscopables in objects you can also set unscopables for your own objects.
TypedArray - JavaScript
typedarray.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... typedarray.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Uint16Array - JavaScript
uint16array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... uint16array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Uint32Array - JavaScript
uint32array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... uint32array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Uint8Array - JavaScript
uint8array.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... uint8array.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
Uint8ClampedArray - JavaScript
uint8clampedarray.prototype.entries() returns a new array iterator object that contains the
key/value pairs for each index in the array.
... uint8clampedarray.prototype.
keys() returns a new array iterator that contains the
keys for each index in the array.
... see also array.prototype.
keys().
WeakMap.prototype.set() - JavaScript
the set() method adds a new element with a specified
key and value to a weakmap object.
... syntax wm.set(
key, value); parameters
key required.
...the
key of the element to add to the weakmap object.
super - JavaScript
the super
keyword is used to access and call functions on an object's parent.
...super.functiononparent([arguments]); description when used in a constructor, the super
keyword appears alone and must be used before the this
keyword is used.
... the super
keyword can also be used to call functions on a parent object.
this - JavaScript
a function's this
keyword behaves a little differently in javascript compared to other languages.
... function sum() { return this.a + this.b + this.c; } var o = { a: 1, b: 2, c: 3, get average() { return (this.a + this.b + this.c) / 3; } }; object.defineproperty(o, 'sum', { get: sum, enumerable: true, configurable: true}); console.log(o.average, o.sum); // 2, 6 as a constructor when a function is used as a constructor (with the new
keyword), its this is bound to the new object being constructed.
... specifications specification ecmascript (ecma-262)the definition of 'the this
keyword' in that specification.
const - JavaScript
constants are block-scoped, much like variables defined using the let
keyword.
... const my_object = {'
key': 'value'}; // attempting to overwrite the object throws an error // uncaught typeerror: assignment to constant variable.
... my_object = {'other_
key': 'value'}; // however, object
keys are not protected, // so the following statement is executed without problem my_object.
key = 'othervalue'; // use object.freeze() to make object immutable // the same applies to arrays const my_array = []; // it's possible to push items into the array my_array.push('a'); // ["a"] // however, assigning a new array to the variable throws an error // uncaught typeerror: assignment to constant variable.
import - JavaScript
you need to destructure and rename the "default"
key from the returned object.
... to dynamically import a module, the import
keyword may be called as a function.
... }); this form also supports the await
keyword.
Strict mode - JavaScript
strict mode makes great strides toward treating eval and arguments as
keywords, although full fixes will not come until a future edition of ecmascript.
... first, in strict mode, a short list of identifiers become reserved
keywords.
... two mozilla-specific caveats: first, if your code is javascript 1.7 or greater (for example in chrome code or when using the right <script type="">) and is strict mode code, let and yield have the functionality they've had since those
keywords were first introduced.
JavaScript
the complete modules available there are as follows: javascript first steps answers some fundamental questions such as "what is javascript?", "what does it look like?", and "what can it do?", along with discussing
key javascript features such as variables, strings, numbers, and arrays.
... javascript building blocks continues our coverage of javascript's
key fundamental features, turning our attention to commonly-encountered types of code blocks such as conditional statements, loops, functions, and events.
... statements and declarations learn how do-while, for-in, for-of, try-catch, let, var, const, if-else, switch, and more javascript statements and
keywords work.
<semantics> - MathML
attributes the following attributes can be set on <annotation> and <annotation-xml>: definitionurl the location of the annotation
key symbol.
..."mathml-content", "mathml-presentation", "application/openmath+xml", "image/png") cd the content dictionary that contains the annotation
key symbol.
... name the name of the annotation
key symbol.
OpenSearch description format
pec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/"> <shortname>[snk]</shortname> <description>[search engine full name and summary]</description> <inputencoding>[utf-8]</inputencoding> <image width="16" height="16" type="image/x-icon">[https://example.com/favicon.ico]</image> <url type="text/html" template="[searchurl]"> <param name="[
key name]" value="{searchterms}"/> <!-- other params if you need them… --> <param name="[other
key name]" value="[parameter value]"/> </url> <url type="application/x-suggestions+json" template="[suggestionurl]"/> <moz:searchform>[https://example.com/search]</moz:searchform> </opensearchdescription> shortname a short name for the search engine.
... type="application/x-moz-
keywordsearch" specifies the url used when a
keyword search is entered in the location bar.
... param the parameters that must be passed in along with the search query as
key/value pairs.
Making PWAs work offline with Service workers - Progressive web apps (PWAs)
installation the api allows us to add event listeners for
key events we are interested in — the first one is the install event: self.addeventlistener('install', (e) => { console.log('[service worker] install'); }); in the install listener, we can initialize the cache and add files to it for offline use.
...the version number in the cache name is
key to this: var cachename = 'js13kpwa-v1'; when this updates to v2, we can then add all of our files (including our new files) to a new cache: contenttocache.push('/pwa-examples/js13kpwa/icons/icon-32.png'); // ...
...it can be used to clear out the old cache we don't need anymore: self.addeventlistener('activate', (e) => { e.waituntil( caches.
keys().then((
keylist) => { return promise.all(
keylist.map((
key) => { if(
key !== cachename) { return caches.delete(
key); } })); }) ); }); this ensures we have only the files we need in the cache, so we don't leave any garbage behind; the available cache space in the browser is limited, so it is a good idea to clean up after ourselves.
Media - Progressive web apps (PWAs)
there are five special selectors: selector selects e:hover any e element that has the pointer over it e:focus any e element that has
keyboard focus e:active the e element that is involved in the current user action e:link any e element that is a hyperlink to a url that the user has not visited recently e:visited any e element that is a hyperlink to a url that the user has visited recently note: the information that can be obtained from the :visited selector is restricted in gecko 2.0.
...see the actual pointer shapes in your browser: selector selects pointer indicating a link wait indicating that the program cannot accept input progress indicating that the program is working, but can still accept input default the default (usually an arrow) an outline property creates an outline that is often used to indicate
keyboard focus.
...button active">click me</button></td> </tr> <tr style="line-height:25%;"> <td> </td> </tr> <tr style="font-style:italic;"> <td>disabled</td> <td>normal</td> <td>active</td> </tr> </tbody> </table> live sample a fully functional button also has a dark outline around the entire button when it is the default, and a dotted outline on the face of the button when it has
keyboard focus.
preserveAspectRatio - SVG: Scalable Vector Graphics
width="160" height="60" preserveaspectratio="none" x="0" y="30"> <use href="#smiley" /> </svg> </svg> path { fill: yellow; stroke: black; stroke-width: 8px; stroke-linecap: round; stroke-linejoin: round; pointer-events: none; } rect:hover, rect:active { outline: 1px solid red; } syntax preserveaspectratio="<align> [<meetorslice>]" its value is made of one or two
keywords: a required alignment value and an optional "meet or slice" reference as described below: alignment value the alignment value indicates whether to force uniform scaling and, if so, the alignment method to use in case the aspect ratio of the viewbox doesn't match the aspect ratio of the viewport.
... the alignment value must be one of the following
keywords: none do not force uniform scaling.
... meet or slice reference the meet or slice reference is optional and, if provided, must be one of the following
keywords: meet (the default) - scale the graphic such that: aspect ratio is preserved the entire viewbox is visible within the viewport the viewbox is scaled up as much as possible, while still meeting the other criteria in this case, if the aspect ratio of the graphic does not match the viewport, some of the viewport will extend beyond the bounds of the viewbox (i.e., the ...
stop-color - SVG: Scalable Vector Graphics
note: with respect to gradients, svg treats the transparent
keyword differently than css.
... as a presentation attribute, it can be applied to any element but it has effect only on the following element: <stop> usage notes value currentcolor | <color> <icccolor> default value black animatable yes currentcolor this
keyword denotes the current fill color and can be specified in the same manner as within a <paint> specification for the fill and stroke attributes.
... candidate recommendation added a note that in svg the transparent
keyword is treated differently than in css.
SVG Attribute reference - SVG: Scalable Vector Graphics
ont-stretch font-style font-variant font-weight format from fr fx fy g g1 g2 glyph-name glyph-orientation-horizontal glyph-orientation-vertical glyphref gradienttransform gradientunits h hanging height href hreflang horiz-adv-x horiz-origin-x i id ideographic image-rendering in in2 intercept k k k1 k2 k3 k4 kernelmatrix kernelunitlength kerning
keypoints
keysplines
keytimes l lang lengthadjust letter-spacing lighting-color limitingconeangle local m marker-end marker-mid marker-start markerheight markerunits markerwidth mask maskcontentunits maskunits mathematical max media method min mode n name numoctaves o offset opacity operator order orient orientation origin overflow overline-position ...
...s attributes filter primitive attributes height, result, width, x, y transfer function attributes type, tablevalues, slope, intercept, amplitude, exponent, offset animation attributes animation attribute target attributes attributetype, attributename animation timing attributes begin, dur, end, min, max, restart, repeatcount, repeatdur, fill animation value attributes calcmode, values,
keytimes,
keysplines, from, to, by, autoreverse, accelerate, decelerate animation addition attributes additive, accumulate event attributes animation event attributes onbegin, onend, onrepeat document event attributes onabort, onerror, onresize, onscroll, onunload global event attributes oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncuechange, ondblclick, ondrag, ondra...
...gend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, oninput, oninvalid, on
keydown, on
keypress, on
keyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting graphical event attributes onactivate, onfocusin, onfocusout ...
Transport Layer Security - Web security
the cipher suite in tls 1.3 primarily governs the encryption of data, separate negotiation methods are used for
key agreement and authentication.
... tls 1.3 supports forward-secure modes only, unless the connection is resumed or it uses a pre-shared
key.
... numerous mechanisms have been disabled: renegotiation, generic data compression, digital signature algorithm (dsa) certificates, static rsa
key exchange, and
key exchange with custom diffie-hellman (dh) groups.
Index - XSLT: Extensible Stylesheet Language Transformations
13 transforming xml with xslt needsmigration, transforming_xml_with_xslt, xml, xslt the separation of content and presentation is a
key design feature of xml.
... 36 <xsl:
key> element,
key, reference, xslt the <xsl:
key> element declares a named
key which can be used elsewhere in the stylesheet with the
key( ) function.
... 45 <xsl:sort> element, reference, xslt, sort the <xsl:sort> element defines a sort
key for nodes selected by <xsl:apply-templates> or <xsl:for-each> and determines the order in which they are processed.
Transforming XML with XSLT - XSLT: Extensible Stylesheet Language Transformations
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes an overview the separation of content and presentation is a
key design feature of xml.
...emplates (supported) xsl:attribute (supported) xsl:attribute-set (supported) xsl:call-template (supported) xsl:choose (supported) xsl:comment (supported) xsl:copy (supported) xsl:copy-of (supported) xsl:decimal-format (supported) xsl:element (supported) xsl:fallback (not supported) xsl:for-each (supported) xsl:if (supported) xsl:import (mostly supported) xsl:include (supported) xsl:
key (supported) xsl:message (supported) xsl:namespace-alias (not supported) xsl:number (partially supported) xsl:otherwise (supported) xsl:output (partially supported) xsl:param (supported) xsl:preserve-space (supported) xsl:processing-instruction xsl:sort (supported) xsl:strip-space (supported) xsl:stylesheet (partially supported) xsl:template (supported) xsl:text (partially supported) ...
...ceding preceding-sibling self functions boolean() (supported) ceiling() (supported) concat() (supported) contains() (supported) count() (supported) current() (supported) document() (supported) element-available() (supported) false() (supported) floor() (supported) format-number() (supported) function-available() (supported) generate-id() (supported) id() (partially supported)
key() (supported) lang() (supported) last() (supported) local-name() (supported) name() (supported) namespace-uri() (supported) normalize-space() (supported) not() (supported) number() (supported) position() (supported) round() (supported) starts-with() (supported) string() (supported) string-length() (supported) substring() (supported) substring-after() (supported) substring-before()...
Classes and Inheritance - Archive of obsolete content
to illustrate this, let's define a simple constructor for a class shape: function shape(x, y) { this.x = x; this.y = y; } we can now use this constructor to create instances of shape: let shape = new shape(2, 3); shape instanceof shape; // => true shape.x; // => 2 shape.y; // => 3 the
keyword new tells javascript that we are performing a constructor call.
... constructor calls differ from ordinary function calls in that javascript automatically creates a new object and binds it to the
keyword this for the duration of the call.
content/symbiont - Archive of obsolete content
allow object permissions for the content, with the following
keys: script boolean whether or not to execute script in the content.
... allow permissions for the content, with a single boolean
key called script which defaults to true and indicates whether or not to execute scripts in the content.
core/heritage - Archive of obsolete content
constructors created using class function don't require new
keyword (even though it can be used) for instantiation.
... also, idiomatic sdk code does not uses optional new
keywords, but you're free to use it in your add-on code: var fluffy = dog('fluffy'); // instatiation fluffy instanceof dog // => true fluffy instanceof class // => true as you could notice from example above classes created via class function by default inherits from a class itself.
Storing annotations - Archive of obsolete content
.annotations.push(newannotation); } this function calls a constructor for an annotation object, which we also need to supply: function annotation(annotationtext, anchor) { this.annotationtext = annotationtext; this.url = anchor[0]; this.ancestorid = anchor[1]; this.anchortext = anchor[2]; } now we need to link this code to the annotation editor, so that when the user presses the return
key in the editor, we create and store the new annotation: var annotationeditor = panels.panel({ width: 220, height: 220, contenturl: data.url('editor/annotation-editor.html'), contentscriptfile: data.url('editor/annotation-editor.js'), onmessage: function(annotationtext) { if (annotationtext) handlenewannotation(annotationtext, this.annotationanchor); annotationeditor.hide()...
...by omitting the "private-browsing"
key from the annotator's "package.json" file, the annotator opts out of private browsing altogether.
Display a Popup - Archive of obsolete content
the panel just contains a <textarea> element: when the user presses the return
key, the contents of the <textarea> is sent to the main add-on code.
...var textarea = document.getelementbyid("edit-box"); textarea.addeventlistener('
keyup', function on
keyup(event) { if (event.
keycode == 13) { // remove the newline.
Bootstrapped extensions - Archive of obsolete content
gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) introduces bootstrapped extensions.
... the startup and shutdown process a
key feature of bootstrapped extensions is that they must be able to start up and shut down on demand by the application.
Boxes - Archive of obsolete content
make the box style="display: block" and the wrapping behavior will occur when the box is resized: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yourwindow" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <hbox style="display: block"> <label value="aaa"/> <label value="bbb"/> <label value="ccc"/> <label value="ddd"/> <label value="eee"/> <label value="fff"/> <label value="ggg"/> <label value="hhh"/> <label value="iii"/> <label value="jjj"/> <label value="kkk"/> <label value="lll"/> <label value="mmm"/> <label value="nnn"/> <label ...
...this keeps the image from stretching inside the box: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <box align="start" style="display:block"> <image src="chrome://global/skin/icons/error.png" style="padding:5px"/> <textbox /> <image src="chrome://global/skin/icons/error.png" style="padding:5px"/> <button label="hello"/> <image src="chrome://global/skin/icons/error.png" style="padding:5px"/> </box> </window> ...
File I/O - Archive of obsolete content
other such
keys as the "profd"
key are available; check the known locations.
... createinstance(components.interfaces.nsirelativefilepref); relfile.relativeto
key = "profd"; // or any other string listed above relfile.file = file; // |file| is nsilocalfile prefs.setcomplexvalue("filename", components.interfaces.nsirelativefilepref, relfile); // 2.
HTML in XUL for rich tooltips - Archive of obsolete content
this example is what the final xul overlay could look like, assuming a javascript overlay titled overlay.js: <?xml version="1.0" encoding="utf-8"?> <overlay id="htmltip-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <script type="application/x-javascript" src="overlay.js"/> <popup id="contentareacontextmenu"> <menuitem id="htmltip1" label="foo1" onmouseover="htmltip.onmousetooltip(event)" tooltip="myhtmltip" /> <menuitem id="htmltip2" label="foo2" onmouseover="htmltip.onmousetooltip...
... <?xml version="1.0" encoding="utf-8"?> <overlay id="htmltip-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <script type="application/x-javascript" src="overlay.js"/> <popup id="contentareacontextmenu"> <menuitem id="htmltip3" label="foo3" tooltip="mytip3html" /> </popup> <popupset id="mainpopupset"> <tooltip id="mytip3html"> <html:div type="content"> <htm...
JavaScript Debugger Service - Archive of obsolete content
obsolete since gecko 33 (firefox 33 / thunderbird 33 / seamon
key 2.30) this feature is obsolete.
... in firefox versions prior to gecko 33 (firefox 33 / thunderbird 33 / seamon
key 2.30), the javascript debugger service (or simply jsd) used to be an xpcom component that allows the tracking of javascript while it was being executed in the browser.
Preferences - Archive of obsolete content
slash.org/prefutils chrome://global/content/nsusersettings.js https://wiki.mozilla.org/labs/js_modules how to save preferences to save preferences into the default location: var prefservice = components.classes["@mozilla.org/preferences-service;1"] .getservice(components.interfaces.nsiprefservice); prefservice.savepreffile(null); checking for existence of a
key if you try to get the value of a nonexistent preference, an error will be thrown: error: ns_error_unexpected: component returned failure code: 0x8000ffff (ns_error_unexpected) [nsiprefbranch.getcharpref] to avoid such errors, you should check whether the
key exists or not using nsiprefservice.getpreftype(), as shown below: var prefservicebranch = components.classes["@mozilla.org/preference...
...s-service;1"] .getservice(components.interfaces.nsiprefservice).getbranch(""); if(prefservicebranch.getpreftype('extensions.myext.
key')){ //
key exist!
Code snippets - Archive of obsolete content
browser-oriented code tabbed browser code (firefox/seamon
key) basic operations, such as page loading, with the tabbed browser, which is the heart of mozilla's browser applications cookies reading, writing, modifying, and removing cookies page loading code used to load pages, reload pages, and listen for page loads interaction between privileged and non-privileged code how to communicate from extensions to websites and vice-versa.
... using the windows registry with xpcom how to read, write, modify, delete, enumerate, and watch registry
keys and values.
Creating custom Firefox extensions with the Mozilla build system - Archive of obsolete content
one final note: i've only tried these techniques inside firefox, but they'll probably work more or less unchanged on other gecko-based platforms like thunderbird or seamon
key.
...topsrcdir = @top_srcdir@ srcdir = @srcdir@ vpath = @srcdir@ include $(depth)/config/autoconf.mk module = myextension dirs = public src xpi_name = myextension install_extension_id = myextension@mycompany.com xpi_pkgname = myextension dist_files = install.rdf include $(topsrcdir)/config/rules.mk a detailed description of the make process, describing the
key features of this makefile, can be found here.
Chapter 4: Using XPCOM—Implementing advanced processes - Archive of obsolete content
you can perform a full-text search of the firefox source code in mozilla cross-reference using character strings, filenames, etc as search
keys.
... listing 1: calling xpcom functions using xpconnect <?xml version="1.0" encoding="utf-8"?> <page xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript"><![cdata[ var ioservice = components.classes['@mozilla.org/network/io-service;1'] .getservice(components.interfaces.nsiioservice); alert(ioservice); ]]></script> </page> calling xpconnect using local files try saving the contents of listing 1 as the file test.xul, somewhere on your desktop, ...
XPCOM Objects - Archive of obsolete content
at mdc, you'll see stuff like this: void setcharpref(in string aprefname, in string avalue); one of the most important details to notice is that both paratemers have the in
keyword.
...in some methods the out
keyword is used for parameters that are return values in reality.
Add-ons - Archive of obsolete content
extensions support in seamon
key 2 starting with seamon
key 2 alpha 1 seamon
key supports toolkit/-style extensions.
...these details apply to firefox, thunderbird, and seamon
key (version 2.0 and above).
Install.js - Archive of obsolete content
to make your extension install in mozilla suite, seamon
key, mozilla firefox pre-0.9 and mozilla thunderbird pre-0.7, you need to have an install.js file in the root of your xpi file.
...this version has been developed as part of the effort to port firefox extensions to seamon
key from the xsidebar project.
Notes on HTML Reflow - Archive of obsolete content
for example, each
keystroke typed into a text widget could generate a separate incremental reflow targeted at the text frame.
... were we to process each individually, the text widget would be flowed once for each
keystroke, which would be wasteful if the latency of an individual reflow exceeds the speed at which text is being typed.
Getting Started - Archive of obsolete content
<rdf:description about="urn:mozilla:skin:myskin/1.0" chrome:displayname="my skin" chrome:access
key="m" chrome:author="me" chrome:description="this is my custom skin for mozilla" chrome:name="myskin/1.0" chrome:image="preview.png"> the blue areas are explained below.
... the access
key is what
key you can press to activate the skin in the preferences.
Makefile.mozextension.2 - Archive of obsolete content
me://$(project)/skin/overlay.css endef export chrome_manifest chrome.manifest: @echo generating $(project)/chrome.manifest @echo "$$chrome_manifest" > $(project)/chrome.manifest ###### #firefox {ec8030f7-c20a-464f-9b0e-13a3a9e97384} #thunderbird {3550f703-e582-4d05-9a08-453d09bdfdc6} #nvu {136c295a-4a5a-41cf-bf24-5cee526720d5} #mozilla suite {86c18b42-e466-45a9-ae7a-9b95ba6f5640} #seamon
key {92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a} #sunbird {718e30fb-e89b-41dd-9da7-e25a45638b28} #netscape browser {3db10fab-e461-4c80-8b97-957ad5f8ea47} ###### define install_rdf <rdf xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <description about="urn:mozilla:install-manifest"> <id>$(project_id)</id> <name>$(project_name)</name> <version>$(proje...
... <id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</id> <minversion>2.0</minversion> <maxversion>9.0</maxversion> </description> </targetapplication> </description> </rdf> endef export install_rdf install.rdf: @echo generating $(project)/install.rdf @echo "$$install_rdf" > $(project)/install.rdf ###### define overlay_xul <overlay id="$(project)-overlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"><script src="overlay.js"/></overlay> ...
Mozilla Application Framework in Detail - Archive of obsolete content
by meeting the needs of developers and companies who are working to provide consumers with new interactive applications, solutions and services, gecko will become a
key catalyst for new growth and innovation and for delivering anytime, anywhere access to millions of new users.
...the gecko browser engine offers several
key benefits including: size: gecko has been designed to be lean and modular, bringing full-functionality browsing to a variety of new consumer devices.
Proxy UI - Archive of obsolete content
seamon
key menu: preferences > advanced group > proxies panel menu: right-click on offline-online button (on browser windows).
...mouseover when online, the tooltip will include the current proxy mode: code http://mxr.mozilla.org/seamon
key/sou...ityoverlay.xul bugs bug 243624 reference network.proxy.type ...
Actionscript Acceptance Tests - Archive of obsolete content
there is one special
keyword that can be used, uses_swfversion.
... when that
keyword is encountered, the test harness will run the test against all possible -swfversion versions: uses_swfversion is the equivalent of: -swfversion 9 -swfversion 10 -swfversion 11 -swfversion 12 ...
Tamarin - Archive of obsolete content
tamarin's jit-compiler, nanojit, is also used in tracemon
key ergo spidermon
key, which is mozilla’s javascript engine in firefox.
... log a bug against tamarin tamarin-devel mailing list #tamarin channel on irc.mozilla.org blogroll mason chang david mandelin related topics javascript spidermon
key actionmon
key tamarin on mozilla.org ...
Venkman Introduction - Archive of obsolete content
venkman's
keyboard shortcuts are the same as leading visual debugging environments, and gdb users should be familiar with venkman's /break, /step, /next, /finish, /frame, and /where commands.
...the scope object holds all arguments and local variables, and the this object holds the value of the this
keyword.
Venkman - Archive of obsolete content
it aims to provide a powerful javascript debugging environment for mozilla based browsers namely firefox, netscape 7.x/9.x and seamon
key.
... mozilla suite and seamon
key these releases come with venkman pre-installed.
Writing textual data - Archive of obsolete content
writing to a stream in gecko 1.8 (seamon
key 1.0, firefox 1.5), you can use nsiconverteroutputstream: var charset = "utf-8"; // can be any character encoding name that mozilla supports var os = components.classes["@mozilla.org/intl/converter-output-stream;1"] .createinstance(components.interfaces.nsiconverteroutputstream); // this assumes that fos is the nsioutputstream you want to write to os.init(fos, charset, 0, 0x0...
... the example here requires gecko 1.8 (firefox 1.5, seamon
key 1.0).
Creating XPI Installer Modules - Archive of obsolete content
introduction this article is rather old and only applies to mozilla suite and seamon
key (until it gets converted to toolkit).
...the barley package ui is a single xul window with an accompanying image: <?xml version="1.0"?> <?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?> <window title="barley window" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/
keymaster/gat...re.is.only.xul" width="175" height="375" x="20" y="20" persist="width height x y" orient="vertical" autostretch="always"> <script src="barley.js"/> <image src="barley.gif" /> <box orient="horizontal" autostretch="never"> <button label="barley corn" /> <button label="show aphids" oncommand="bar();" /> </box> </window> the other files that the window imp...
Install Wizards (aka: Stub Installers) - Archive of obsolete content
the xpinstall engine source resides at: <http://lxr.mozilla.org/seamon
key/sou...xpinstall/src/> what do we mean by stub installer?
...the stub installer calls some glue code: xpistub which resides at: < http://lxr.mozilla.org/seamon
key/sou...pinstall/stub/> this "glue" code initialized xpcom and registers the xpinstall engine and requisite components to prepare for use by the stub installer.
loadResources - Archive of obsolete content
method of install object syntax object loadresources( string xpipath ); parameters the sole input parameter for loadresources is a string representing the path to the properties file in the xpi in which the
key/value pairs are defined.
... returns a javascript object whose property names are the
keys from that file and whose values are the strings.
Return Codes - Archive of obsolete content
in mozilla/seamon
key, these constants are defined as part of the xpinstall object (formerly the softwareupdate object in netscape communicator 4.5).
...t file insufficient_disk_space -235 not enough disk space for install filename_too_long -236 unable_to_locate_lib_function -237 unable_to_load_library -238 chrome_registry_error -239 malformed_install -240
key_access_denied -241 access to the registry
key has been denied
key_does_not_exist -242 registry
key does not exist value_does_not_exist -243 registry value does not exist invalid_signature -260 the signature used in the xpi is not valid invalid_hash -261 the hash used in the ...
deleteValue - Archive of obsolete content
deletevalue removes the value of an arbitrary
key.
... method of winreg object syntax int deletevalue ( string sub
key, string valname); parameters the deletevalue method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
getValueString - Archive of obsolete content
getvaluestring retrieves the value of a
key when that value is a string.
... method of winreg object syntax string getvaluestring ( string sub
key, string valname); parameters the getvaluestring method has the following parameters: sub
key the
key path to the appropriate location in the
key hierarchy, such as "software\\netscape\\navigator\\mail".
acceltext - Archive of obsolete content
« xul reference home acceltext type: string text that appears beside the menu label to indicate the shortcut
key (accelerator
key) to use to invoke the command.
... if this value is set, it overrides an assigned
key set in the
key attribute.
enablehistory - Archive of obsolete content
« xul reference home note: for seamon
key 2.0 and all versions of thunderbird prior to 3.0 you also need to provide the disablehistory attribute.
... enablehistory new in thunderbird 1requires seamon
key 2.0 type: boolean if true, an arrow button will appear on the end of the textbox which, when pressed, will open a dropdown menu of all available results.
minresultsforpopup - Archive of obsolete content
« xul reference home minresultsforpopup new in thunderbird 3requires seamon
key 2.0 type: integer the minimum number of results that must be returned for the popup to be displayed.
...new in thunderbird 3requires seamon
key 2.0 a zero value will always open the popup.
onchange - Archive of obsolete content
a change event is fired in different ways for different xul input elements as listed below: onchange type: script code textbox when enter
key is pressed radio/check box when the state is changed select list when the selected item is changed what is accessible the script context at this point can only access the following things: global values/functions i.e.
... window, document, or any of the functions/objects/variables bound to the window object event object example <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="findfile-window" title="find files" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="text/javascript"> function myfunction(e){ /* do something cool here or just say the below */ alert(e.target.nodename); } </script> <textbox id="find-text" onchange="return myfunction(event);"/> </window> ...
tabscrolling - Archive of obsolete content
« xul reference home tabscrolling new in thunderbird 3requires seamon
key 2.0 type: boolean if true, the user may cycle through the results list by pressing the tab
key.
... if false, the default, the tab
key moves the focus to the next element.
textbox.disablehistory - Archive of obsolete content
« xul reference home disablehistory obsolete since gecko 2.0 type: boolean note: applies to: thunderbird and seamon
keyif false, an arrow button will appear on the end of the textbox which will open a dropdown menu of all available results.
...this attribute only works correctly in seamon
key 1.x; for thunderbird and seamon
key 2.0 you should also set the enablehistory attribute; as of gecko 2.0 this attribute is completely superseded by it.
textbox.tabScrolling - Archive of obsolete content
« xul reference home tabscrolling obsolete since gecko 1.9.1 type: boolean if true, the user may cycle through the results list by pressing the tab
key.
... if false, the default, the tab
key moves the focus to the next element.as of gecko 1.9.1, this attribute is now always specified in lower case.
List of commands - Archive of obsolete content
t cmd_selectwordprevious cmd_selectwordnext cmd_scrollpageup cmd_scrollpagedown cmd_scrolllineup cmd_scrolllinedown cmd_movepageup cmd_movepagedown cmd_selectpageup cmd_selectpagedown other commands the following list other commands (prefixed by cmd_ or browser:) which have not been categorized here yet (though they are in the alphabetical list below): http://lxr.mozilla.org/seamon
key/sou...baroverlay.xul http://lxr.mozilla.org/seamon
key/sou...t/navigator.js http://lxr.mozilla.org/seamon
key/sou...toroverlay.xul http://lxr.mozilla.org/seamon
key/sou...onaltoolbar.js http://lxr.mozilla.org/seamon
key/sou...rceoverlay.xul http://lxr.mozilla.org/seamon
key/sou...extoverlay.xul http://lxr.mozilla.org/seamon
key/sou...lityoverlay.js http://lxr.mozilla.org/seamon
key/sou...oomoverl...
...ay.xul http://lxr.mozilla.org/seamon
key/sou...toroverlay.xul http://lxr.mozilla.org/seamon
key/sou...ark.properties http://lxr.mozilla.org/seamon
key/sou...kmarks-temp.js http://lxr.mozilla.org/seamon
key/sou.../bookmarks.xml http://lxr.mozilla.org/seamon
key/sou...rksoverlay.xul http://lxr.mozilla.org/seamon
key/sou...okmarkstree.js list of commands (listed alphabetically) browser:addbookmark browser:addbookmarkas browser:addgroupmarkas browser:back browser:editpage browser:find browser:findagain browser:findprev browser:forward browser:home browser:managebookmark browser:open browser:openfile browser:print browser:printpreview browser:savepage browser:searchinternet browser:sendpage browser:uploadfile cmd_bm_copy cmd_bm_cut cmd_bm_delete cmd_bm_expandfolder cm...
Popup Guide - Archive of obsolete content
it displays items in a list, can display submenus, and provides
keyboard navigation between the items.
... handling
keys within popups for information about how
keys are handled within menus and panels, see handling
keys within popups.
popup - Archive of obsolete content
« xul reference popup new in thunderbird 14 requires seamon
key 2.11 type: popup element should be set to the popup element that should appear when the user clicks on the textbox.
... note: this property is readonly in thunderbird and seamon
key.
Property - Archive of obsolete content
« xul reference accessible accessibletype access
key align allnotifications allowevents alwaysopenpopup amindicator applocale autocheck autofill autofillaftermatch boxobject browsers builder builderview buttons canadvance cangoback cangoforward canrewind checked checkstate child children classname clickselectsall clientheight clientwidth collapsed color columns command commandmanager completedefaultindex container contentdocument contentprincipal contenttitle contentview contentvieweredit contentviewerfile contentwindow contextmenu control controller controllers crop current currentindex currentitem currentnotification currentpage currentpane currentset currenturi custo...
...mtoolbarcount database datasources date dateleadingzero datevalue decimalplaces decimalsymbol defaultbutton defaultvalue description dir disableautocomplete disableautocomplete disableautoselect disabled disable
keynavigation dlgtype docshell documentcharsetinfo editable editingcolumn editingrow editingsession editor editortype emptytext deprecated since gecko 2 enablecolumndrag eventnode firstordinalcolumn firstpermanentchild flex focused focuseditem forcecomplete group handlectrlpageupdown handlectrltab hasuservalue height hidden hideseconds highlightnonmatches homepage hour hourleadingzero id ignoreblurwhilesearching image increment inputfield inverted is24hourclock ispm issearching...
Sorting and filtering a custom tree view - Archive of obsolete content
sort.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <!doctype window> <window title="sorting a custom tree view example" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" onload="init()"> <script type="application/javascript" src="sort.js"/> <hbox align="center" id="search-box"> <label access
key="f" control="filter">filter</label> <textbox id="filter" oninput="inputfilter(event)" flex="1"/> <button id="clearfilter" oncommand="clearfilter()" label="clear" access
key="c" disabled="true"/> </hbox> <tree id="tree" flex...
...ku"}); data.push({name: "donatello", description: "does machines", weapon: "bo"}); data.push({name: "raphael", description: "cool, but rude", weapon: "sai"}); data.push({name: "splinter", description: "rat", weapon: "walking stick"}); data.push({name: "shredder", description: "armored man", weapon: "blades"}); data.push({name: "casey jones", description: "goalie masked man", weapon: "hoc
key stick"}); data.push({name: "april o'neil", description: "journalist", weapon: "none"}); } if (filtertext == "") { //show all of them table = data; } else { //filter out the ones we want to display table = []; data.foreach(function(element) { //we'll match on every property for (var i in element) { if (prepareforcomparison(element[i]).indexof(filtertext) != -1) { tab...
The Joy of XUL - Archive of obsolete content
the
key features and benefits of xul will be explored followed by an examination of supporting mozilla technologies.
...
key features and benefits powerful widget-based markup language the goal of xul is to build cross platform applications, in contrast with dhtml which is intended for developing web pages.
Creating toolbar buttons (Customize Toolbar Window) - Archive of obsolete content
a list of commonly overlayed windows with toolbars url application and affected window(s) palette id chrome://browser/content/browser.xul firefox - main window browsertoolbarpalette chrome://navigator/content/navigator.xul seamon
key 2.0 - browser window browsertoolbarpalette chrome://messenger/content/messenger.xul thunderbird - main window mailtoolbarpalette chrome://messenger/content/messenger...gercompose.xul thunderbird - compose window msgcomposetoolbarpalette chrome://messenger/content/addressbo...ddressbook.xul thunderbird - address book addressbooktoolbarpalette ...
... there is another page on mdc with information about adding buttons to various windows in seamon
key.
Commands - Archive of obsolete content
for instance, you might have a menu item, a toolbar button and a
keyboard shortcut all for the same operation.
... <window id="controller-example" title="controller example" onload="init();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script> function init() { var list = document.getelementbyid("thelist"); var listcontroller = { supportscommand : function(cmd){ return (cmd == "cmd_delete"); }, iscommandenabled : function(cmd){ if (cmd == "cmd_delete") return (list.selecteditem != null); return false; }, docommand : function(cmd){ list.removeitemat(li...
Creating a Wizard - Archive of obsolete content
an example wizard source <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="example-window" title="select a dog wizard" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <wizardpage> <description> this wizard will help you select the type of dog that is best for you." </description> <label value="why do you want a dog?"/> <menulist> <menupopup> <menuitem label="to scare people away"/> <menuitem label="to get rid of a cat"/> <menuitem label="i need a best friend"/> </...
...for example: <wizard id="example-window" title="select a dog wizard" onwizardfinish="return savedoginfo();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> when the user clicks the finish button, the function savedoginfo() will be called, which would be defined in a script file to save the information that was entered.
Element Positioning - Archive of obsolete content
the following example demonstrates this: example 2 : source view <window orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <hbox> <button label="yes" flex="1"/> <button label="no"/> <button label="i really don't know one way or the other"/> </hbox> </window> the window will initially appear like in the image earlier.
... example 5: source view <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yesno" title="question" orient="horizontal" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <hbox> <button label="yes"/> <button label="no"/> </hbox> <hbox align="center"> <button label="maybe"/> <button label="perhaps"/> </hbox> </window> you can also use the style properties -moz-box-pack and -moz-box-align instead of specifying attributes.
Input Controls - Archive of obsolete content
access
key the shortcut
key that can be used to select the element.
...seamon
key or waterfox and remote-xul-manager from https://github.com/jvillalobos/remote-xul-manager find files example so far : source view in the next section, we will look at some elements for entering and selecting numbers.
Introduction to XBL - Archive of obsolete content
events: events, such as mouse clicks and
keypresses that the element will respond to.
...xul (example.xul): <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <?xml-stylesheet href="chrome://example/skin/example.css" type="text/css"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <box class="okcancelbuttons"/> </window> css (example.css): box.okcancelbuttons { -moz-binding: url('chrome://example/skin/example.xml#okcancel'); } xbl (example.xml): <?xml version="1.0"?> <bindings xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <binding id="okcancel"> <conten...
More Wizards - Archive of obsolete content
it is also called whenever a
key is pressed in the textbox, to determine whether the next button should be enabled again.
... wizard example source <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="thewizard" title="secret code wizard" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script> function checkcode(){ document.getelementbyid('thewizard').canadvance = (document.getelementbyid('secretcode').value == "cabbage"); } </script> <wizardpage onpageshow="checkcode(); return true;"> <label value="enter the secret code:"/> <textbox id="secretcode" on
keyup="checkcode();"/> </wizardpage> <wizardpage> <label value="that is the correct secret code."/> </wizardpage> </wizard> there is also a corresponding canrewind property that you can use to enable or disable the back button.
RDF Datasources - Archive of obsolete content
last modified http://home.netscape.com/web-rdf#lastmodifieddate date of last modification last visited http://home.netscape.com/web-rdf#lastvisitdate date of last visit name http://home.netscape.com/nc-rdf#name bookmark name shortcut url http://home.netscape.com/nc-rdf#shortcuturl custom
keywords field url http://home.netscape.com/nc-rdf#url the url to link to possible bookmarks roots nc:bookmarksroot the top level of the bookmarks hierarchy nc:iefavoritesroot the bookmark folder that corresponds to the user's ie favorites.
...example 3 : source view <window id="example-window" title="history list" xmlns:animals="http://www.some-fictitious-zoo.com/rdf#" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <button label="click here to see the mammals the zoo has" type="menu" datasources="animals.rdf" ref="http://www.some-fictitious-zoo.com/mammals"> <template> <rule animals:specimens="0"></rule> <rule> <menupopup> <menuitem uri="rdf:*" label="rdf:http://www.some-fictitious-zoo.com/rdf#name"/> </menupopup> </rule> </te...
Tree Selection - Archive of obsolete content
the user may also change the selection by using the cursor
keys.
... if the user holds down the cursor
key to rapidly scroll through the items, the event handler is not called until the user stops.
Tree View Details - Archive of obsolete content
<window onload="init();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <tree id="elementlist" flex="1"> <treecols> <treecol id="element" label="element" primary="true" flex="1"/> </treecols> <treechildren/> </tree> </window> we use a simple tree here with no data in the treechildren.
...they are added near the end of the complete example, shown here: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window onload="init();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <tree id="elementlist" flex="1"> <treecols> <treecol id="element" label="element" primary="true" flex="1"/> </treecols> <treechildren/> </tree> <script> <![cdata[ var treeview = { childdata : { solids: ["silver", "gold", "lead"], liquids: ["mercury"], gases: ["helium", "nitrogen"] }, visibledata : [ ["solids", true, false], ...
Using nsIXULAppInfo - Archive of obsolete content
const firefox_id = "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"; const thunderbird_id = "{3550f703-e582-4d05-9a08-453d09bdfdc6}"; const seamon
key_id = "{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}"; var appinfo = components.classes["@mozilla.org/xre/app-info;1"] .getservice(components.interfaces.nsixulappinfo); if(appinfo.id == firefox_id) { // running under firefox } else if(appinfo.id == thunderbird_id) { // running under thunderbird } else if(appinfo.id == seamon
key_id) { // running under seamon
key } else { // ...
...another app } note: you could also use nsixulappinfo.name, which is a human-readable name for the application, such as "firefox", "thunderbird" or "seamon
key", but who knows, maybe they'll rename it again!
XUL Parser in Python/source - Archive of obsolete content
import sys, glob, xmllib import os, re el_list = {} w = open('res.html', 'w') # unfortunately, i had to put this hack in here to suppress the printing out of the resolved namespace: # "xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul window", etc.
... /b *.xul' chrome_dir = 'c:\program files\netscape\netscape 6\chrome' os.chdir(chrome_dir) files = os.popen(cmd).readlines() for file in files: file = file.strip() print '** ' + file + ' **' data = open(file).read() p.feed(data) w.write('<html><h3>periodic table of xul elements</h3>') w.write('<table><style>.head {font-weight: bold; background-color: lightgrey;}</style>') elements = el_list.
keys() elements.sort() for item in elements: w.write('<tr><td class="head">' + item + '</td></tr>\n') for a in el_list[item]: w.write('<tr><td class="at">' + a + '</td>') w.write('</table></html>\n') w.close() ...
XUL Reference - Archive of obsolete content
« xul reference « alphabetical list of all xul elements action arrowscrollbox assign bbox binding bindings box broadcaster broadcasterset button browser checkbox caption clicktoscroll colorpicker column columns commandset command conditions content datepicker deck description dialog dialogheader dropmarker editor grid grippy groupbox hbox iframe image
key keyset label listbox listcell listcol listcols listhead listheader listitem member menu menubar menuitem menulist menupopup menuseparator notification notificationbox observes overlay page panel param popupset preference preferences prefpane prefwindow progressmeter query queryset radio radiogroup resizer richlistbox richlistitem row rows rule scale script...
...listheader richlistbox richlistitem tree treecell treechildren treecol treecols treeitem treerow treeseparator box hbox vbox bbox deck stack grid columns column rows row scrollbox action assign binding bindings conditions content member param query queryset rule template textnode triple where script commandset command broadcaster broadcasterset observes
key keyset stringbundle stringbundleset arrowscrollbox dropmarker grippy scrollbar scrollcorner spinbuttons all attributes all properties all methods attributes defined for all xul elements style classes event handlers deprecated/defunct markup ...
browser - Archive of obsolete content
the properties of the nsidocumentcharsetinfo object were merged into the docshell in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9).
...this is the flag used when the reload button is pressed while the shift
key is held down.
datepicker - Archive of obsolete content
however, as described in mozilla bug #799219, a change event handler may encounter erratic behavior when the date is changed using the
keyboard instead of the mouse.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
tabbrowser - Archive of obsolete content
the properties of the nsidocumentcharsetinfo object were merged into the docshell in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9).
...this is the flag used when the reload button is pressed while the shift
key is held down.
tabs - Archive of obsolete content
setfocus type: boolean if true or omitted, the focus will be given to the first element in the corresponding tabpanel when the tabs are navigated via the
keyboard.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
timepicker - Archive of obsolete content
however, as described in mozilla bug #799219, a change event handler may encounter erratic behavior when the time is changed using the
keyboard instead of the mouse.
...the tab order is the order in which the focus is moved when the user presses the "tab"
key.
treecol - Archive of obsolete content
however, chrome://global/skin/checkbox/cbox-check.gif is available in seamon
key on mac os x..
...use the sortresource attribute to specify the sort
key.
Deploying XULRunner - Archive of obsolete content
here's a sample one: <?xml version="1.0" encoding="utf-8"?> <!doctype plist public "-//apple computer//dtd plist 1.0//en" "http://www.apple.com/dtds/propertylist-1.0.dtd"> <plist version="1.0"> <dict> <
key>cfbundledevelopmentregion</
key> <string>english</string> <
key>cfbundleexecutable</
key> <string>xulrunner</string> <
key>cfbundlegetinfostring</
key> <string>1.0</string> <
key>cfbundleiconfile</
key> <string>app_icon.icns</string> <
key>cfbundleidentifier</
key> <string>net.yourcompany.yourapplication</string> <
key>cfbundleinfodictionaryversion</
key> <string>6.0</string> <
key>cfbundlename</...
...
key> <string>applicationname</string> <
key>cfbundlepackagetype</
key> <string>appl</string> <
key>cfbundleshortversionstring</
key> <string>1.0</string> <
key>cfbundlesignature</
key> <string>????</string> <!--only useful if your app handle urls--> <
key>cfbundleurltypes</
key> <array> <dict> <
key>cfbundleurliconfile</
key> <string>app_icon.icns</string> <
key>cfbundleurlname</
key> <string>yourapp entity</string> <
key>cfbundleurlschemes</
key> <array> <string>chrome</string> </array> </dict> </array> <
key>cfbundleversion</
key> <string>1.0</string> </dict> </plist> here's a sample of the pkginfo file aapl????
Windows and menus in XULRunner - Archive of obsolete content
here is an example: <?xml version="1.0"?> <?xml-stylesheet href="chrome://basicapp/skin/main.css" type="text/css"?> <!doctype window system "chrome://basicapp/locale/main.dtd"> <window id="main" title="&title;" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script src="main.js"/> ...
... building on the simple window code, here is what xul menus and toolbars look like: <?xml version="1.0"?> <?xml-stylesheet href="chrome://basicapp/skin/main.css" type="text/css"?> <!doctype window system "chrome://basicapp/locale/main.dtd"> <window id="main" title="&title;" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script src="main.js"/> <toolbox> <menubar id="menubar"> <menu id="file-menu" label="&file;"> <menupopup id="file-popup"> <menuitem label="&file.new;" oncommand="dofilenew();"/> <menuitem label="&file.open;" oncommand="dofileopen();"/> <menuitem label="&file.save;" oncommand="dofilesave();"/> <menus...
XUL Explorer - Archive of obsolete content
there is even simple “
keyword” help lookup for xul elements.
... support attribute value checking where appropriate (boolean and enumerated values) - xul checker support “best practice” checks such as: using of commands and
keys, strings in dtds and so on - xul checker multi-tabbed editor support support wizards to generate common projects - extensions support extension testing using firefox extension test mode venkman support dom inspector support future: support more “best practice” checks such as: more a11y checks, strings in dtds and so on - xul checker allow users to add snippets on the fly add side...
ant script to assemble an extension - Archive of obsolete content
</target> <target name="templates" description="generate files from templates."> <copy file="chrome/content/blogmark/contents.rdf.tpl.xml" tofile="chrome/content/blogmark/contents.rdf" overwrite="true"> <filterchain> <replacetokens> <token
key="version" value="${version}"/> <token
key="description" value="${description}"/> </replacetokens> </filterchain> </copy> <copy file="chrome/content/blogmark/about.xul.tpl.xml" tofile="chrome/content/blogmark/about.xul" overwrite="...
...true"> <filterchain> <replacetokens> <token
key="version" value="${version}"/> </replacetokens> </filterchain> </copy> <copy file="install.rdf.tpl.xml" tofile="install.rdf" overwrite="true"> <filterchain> <replacetokens> <token
key="version" value="${version}"/> <token
key="description" value="${description}"/> </replacetokens> </filterchain> </copy> </target> </project...
2006-10-13 - Archive of obsolete content
summary: mozilla.dev.l10n - october 13, 2006 announcements seamon
key 1.0.5 he-il seamon
key 1.0.5 in hebrew was released a while ago firefox 2 rc2 is out firefox 2 rc2 is out, to download click here sunbird_0_3_release tag being created sunbird_0_3_release tag being created seamon
key 1.1 localization freeze and beta upcoming there are no open blockers left.
... l10n freeze on seamon
key 1.1 code is imminent in the next days, as well as beta release.
2006-11-10 - Archive of obsolete content
summary: mozilla.dev.l10n - november 10, 2006 announcements seamon
key 1.0.5 in belarusian belarusian [be-by] localization for seamon
key 1.0.5 is available now.
... seamon
key 1.0.6 and 1.1 beta upcoming seamon
key 1.0.6 and 1.1 beta are both available here.
2006-11-17 - Archive of obsolete content
summary: mozilla.dev.l10n - november 17, 2006 announcements seamon
key 1.1b in russian (ru-ru) seamon
key 1.1b in russian (ru-ru) is uploaded to ftp.mozilla.org seamon
key 1.0.6 in russian (ru-ru) seamon
key 1.0.6 in russian (ru-ru) is uploaded to ftp.mozilla.org seamon
key 1.0.6 in czech (cs-cz) seamon
key 1.0.6 in czech (cs-cz) is uploaded to ftp.mozilla.org seamon
key 1.0.6 he-il seamon
key 1.0.6 he-il is released.
... seamon
key 1.0.6 in french seamon
key 1.0.6 in french (fr-fr) is released.
2006-11-17 - Archive of obsolete content
discussions testing access
key conflicts discussion about the complexity of access
keys and how to detect conflicts there in the l10n community.
... site not loading with seamon
key a user built seamon
key in debug mode and is currently receiving a "bad request" error on some websites.
Shipping a plugin as a Toolkit bundle - Archive of obsolete content
platform-specific files gecko 1.9.2 (firefox 3.6) and earlier prior to gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1), it was possible to package multiple plugin libraries for different operating systems into a single xpi bundle.
...gecko 2.0 (firefox 4) and later gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) removed support for platform-specific subdirectories.
XEmbed Extension for Mozilla Plugins - Archive of obsolete content
key differences all of the interfaces that you would normally expect to exist in the plugins will still exist when using xembed plugins.
... there are only two
key differences: in the npp_setwindow call, the window parameter will be the xid of the hosting xembed window.
Security - Archive of obsolete content
decryption is the process of transforming encrypted information so that it is intelligible again.introduction to public-
key cryptographypublic-
key cryptography and related standards and techniques underlie the security features of many products such as signed and encrypted email, single sign-on, and secure sockets layer (ssl) communications.
... this document introduces the basic concepts of public-
key cryptography.
Using Firebug and jQuery (Screencast) - Archive of obsolete content
related links: firebug firefox extension jquery javascript library jquery selector documentation digg learning jquery: jquerify bookmarklet if you wish to use greasemon
key instead of a bookmarklet, then by all means, please do so.
... you can use the ability to quickly analyze and inspect a page that firebug and jquery affords you, using the results to build a greasemon
key script, instead of a simple bookmarklet.
Using workers in extensions - Archive of obsolete content
observe: function(subject, topic, data) { if (topic != "nspref:changed") { return; } switch(data) { case "symbol": this.tickersymbol = this.prefs.getcharpref("symbol").touppercase(); this.worker.postmessage(this.tickersymbol); break; } }, the
key here is line 10, which sends the new ticker symbol to monitor to the ticker thread by calling its postmessage() method.
... a note about chromeworkers requires gecko 2.0(firefox 4 / thunderbird 3.3 / seamon
key 2.1) gecko 2.0 added the new chromeworker object, which provides a special chrome-only worker that can be used by applications and extensions.
-ms-ime-align - Archive of obsolete content
in the case of -ms-ime-align: after, an ime might adjust the candidate window and
keyboard input behavior to provide a better user experience, such as using a horizontal candidate list and allowing some
keys to be sent to the app for suggestion list navigation.
... initial valueautoapplies toall elementsinheritednocomputed valueas specifiedanimation typediscrete syntax /*
keyword values */ -ms-ime-align: auto; -ms-ime-align: after; values auto initial value.
display-inside - Archive of obsolete content
/*
keyword values */ display-inside: auto; display-inside: block; display-inside: table; display-inside: flex; display-inside: grid; display-inside: ruby; /* global values */ display-inside: inherit; display-inside: initial; display-inside: unset; value not found in db!
... syntax one of the
keyword values listed below.
display-outside - Archive of obsolete content
/*
keyword values */ display-outside: block-level; display-outside: inline-level; display-outside: run-in; display-outside: contents; display-outside: none; display-outside: table-row-group; display-outside: table-header-group; display-outside: table-footer-group; display-outside: table-row; display-outside: table-cell; display-outside: table-column-group; display-outside: table-column; display-outside: table-caption; display-outside: ruby-base; display-outside: ruby-text; display-outside: ruby-base-container; display-outside: ruby-text-container; /* global values */ display-outside: inherit; display-outside...
... syntax one of the
keyword values listed below.
New in JavaScript 1.7 - Archive of obsolete content
in html or xul code, use: <script type="application/javascript;version=1.7"></script> when using the javascript shell, you need to set the version you wish to use using the -version 170 switch on the command line or using the version() function: version(170); the features that require the use of the new
keywords "yield" and "let" require you to specify version 1.7 because existing code might use those
keywords as variable or function names.
... the features that do not introduce new
keywords (destructuring assignment and array comprehensions) can be used without specifying the javascript version.
New in JavaScript 1.8.5 - Archive of obsolete content
bug 505587 object.
keys() returns an array of all enumerable properties on an object.
...some information about why: spidermon
key change du jour: the special __parent__ property has been removed bug 551529 & bug 552560.
New in JavaScript - Archive of obsolete content
this chapter contains information about javascript's version history and implementation status for mozilla/spidermon
key-based javascript applications, such as firefox.
... includes the tracemon
key jit and supports native json.
Archived JavaScript Reference - Archive of obsolete content
do not use it!handler.enumerate()the handler.enumerate() method used to be a trap for for...in statements, but has been removed from the ecmascript standard in es2016 and is deprecated in browsers.legacy generator functionthe legacy generator function statement declares legacy generator functions with the specified parameters.legacy generator function expressionthe function
keyword can be used to define a legacy generator function inside an expression.
...rator, the function body should contain at least one yield expression.microsoft javascript extensionsmicrosoft browsers (internet explorer, and in a few cases, microsoft edge) support a number of special microsoft extensions to the otherwise standard javascript apis.new in javascriptthis chapter contains information about javascript's version history and implementation status for mozilla/spidermon
key-based javascript applications, such as firefox.number.tointeger()the number.tointeger() method used to evaluate the passed value and convert it to an integer, but its implementation has been removed.object.getnotifier()the object.getnotifer() method was used to create an object that allows to synthetically trigger a change, but has been deprecated and removed in browsers.object.observe()the objec...
JavaObject - Archive of obsolete content
in addition, you can explicitly construct a javaobject using the object's java constructor with the packages
keyword: new packages.javaclass(parameterlist) javaclassis the fully-specified name of the object's java class.
... examples example: instantiating a java object in javascript the following code creates the javaobject thestring, which is an instance of the class java.lang.string: var thestring = new packages.java.lang.string("hello, world"); because the string class is in the java package, you can also use the java synonym and omit the packages
keyword when you instantiate the class: var thestring = new java.lang.string("hello, world"); example: accessing methods of a java object because the javaobject thestring is an instance of java.lang.string, it inherits all the public methods of java.lang.string.
JavaPackage - Archive of obsolete content
created by a reference to the package name used with the packages
keyword: packages.javapackage javapackageis the name of the object's java package.
... if the package is in the java, netscape, or sun packages, the packages
keyword is optional.
Packages - Archive of obsolete content
obsolete since gecko 16.0 (firefox 16.0 / thunderbird 16.0 / seamon
key 2.13)this feature is obsolete.
...consequently, you can access java classes in these packages without the packages
keyword, as follows: var theframe = new java.awt.frame(); the classname property represents the fully qualified path name of any other java class that is available to javascript.
background-size - Archive of obsolete content
are based on webkit, like netscape 6-8, seamon
key, camino, flock, fennec, blackbird etc.
... if so, feel free to change the en/css_reference/property_template and all css property pages ; ) start with -webkit-background-size and investigate support of contain and cover
keywords and "omitted second value" behavior.
XForms - Archive of obsolete content
obsolete since gecko 19 (firefox 19 / thunderbird 19 / seamon
key 2.16)this feature is obsolete.
... xforms support can be added to firefox and seamon
key by installing the mozilla xforms extension.
Building up a basic demo with A-Frame - Game development
the controls are already working: you can use the mouse for looking around and the
keyboard for movement (try the w, a, s, and d
keys.) there's even an "enter vr mode" button in the bottom right corner of the screen, to allow you to shift to full screen, stereoscopic image viewing if you have the necesary vr hardware set up and ready.
...add the <a-animation> element seen below to the <a-box> element as a child, as shown: <a-box color="#0095dd" rotation="20 40 0" position="0 1 0"> <a-animation attribute="rotation" from="20 0 0" to="20 360 0" direction="alternate" dur="4000" repeat="indefinite" easing="ease"> </a-animation> </a-box> as with any other entities, you can define
key properties for the animation.
Desktop gamepad controls - Game development
note: please remember that different devices may have different
key mappings, i.e.
... if(this.game.device.desktop) { if(gamepadapi.active) { movetext = 'dpad or left stick\nto move'; shoottext = 'a to shoot,\ny for controls'; } else { movetext = 'arrow
keys\nor wasd to move'; shoottext = 'x or space\nto shoot'; } } else { movetext = 'tap and hold to move'; shoottext = 'tap to shoot'; } } when on desktop, we can check if the controller is active and show the gamepad controls — if not, then the
keyboard controls will be shown.
Implementing controls using the Gamepad API - Game development
it will launch the game in the super turbo mode and you'll be able to control the fridge with the
keyboard: a and d for turning the turret left and right, w for shooting and arrow
keys for movement.
...to check if the press is a new one, so the player is not holding the
key, we loop through the cached states of the buttons from the previous frame of the game loop.
Plug-in Development Overview - Gecko Plugin API Reference
starting in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), you can get the origin of the document in a secure, convenient way by calling npn_getvalue() to retrieve the value of the variable npnvdocumentorigin.
...plug-in-identifier should follow the specification): hklm/software/mozillaplugins/plugin-identifier descripton: reg_sz "description of the plugin" path: reg_sz "c:\..path to the plugin.dll" productname: reg_sz "the plugin name" vendor: reg_sz "the plugin author/vendor" version: reg_sz "0.5.whatever plugin version string" hklm/software/mozillaplugins/plugin-identifier/mimetypes add a sub-
key for each mime type the plugin supports, with no values install to known locations on linux and mac on linux and mac, plug-ins are installed to well-known locations: linux: /usr/lib/mozilla/plugins or /usr/lib64/mozilla/plugins mac: /library/internet plug-ins or ~/library/internet plug-ins ...
Cipher suite - MDN Web Docs Glossary: Definitions of Web-related terms
a cipher suite is a combination of a
key exchange algorithm, authentication method, bulk encryption cipher, and message authentication code.
... a typical cipher suite looks like ecdhe_rsa_with_aes_128_gcm_sha256 or ecdhe-rsa-aes128-gcm-sha256, indicating: ecdhe (elliptic curve diffie-hellman ephemeral) for
key exchange rsa for authentication aes-128 as the cipher, with galois/counter mode (gcm) as the block cipher mode of operation sha-256 as the hash-based message authentication code (hmac) learn more mozilla recommended cipher suite choices for tls ...
Ciphertext - MDN Web Docs Glossary: Definitions of Web-related terms
in cryptography, a ciphertext is a scrambled message that conveys information but is not legible unless decrypted with the right cipher and the right secret (usually a
key), reproducing the original cleartext.
... a ciphertext's security, and therefore the secrecy of the contained information, depends on using a secure cipher and keeping the
key secret.
HPKP - MDN Web Docs Glossary: Definitions of Web-related terms
http public
key pinning (hpkp) is a security feature that tells a web client to associate a specific cryptographic public
key with a certain web server to decrease the risk of mitm attacks with forged certificates.
... learn more public-
key-pins public-
key-pins-report-only rfc 7469 wikipedia: http public
key pinning ...
Screen reader - MDN Web Docs Glossary: Definitions of Web-related terms
desktop/laptop screen reader users navigate websites with a
keyboard or other non-pointing device.
... just like
keyboard navigation without voiceover, you can navigate through interactive elements using the tab
key and the arrow
keys: next interactive element: tab previous interactive element: shift + tab next radio button in a same named-group: right or down arrow previous radio button in a same named-group: left or up arrow navigating through the content of a page is done with the tab
key and a series of other
keys along with control + option
keys next heading: control + option + h next list: control + option + x next graphic: control + option + g next table: control + option + t down an html hierarchical order control + option + right arrow previous heading: shift + control + option + h previous list: shift + control + optio...
Signature (security) - MDN Web Docs Glossary: Definitions of Web-related terms
from the hash of a given message, the signing process first generates a digital signature linked to the signing entity, using the entity's private
key.
... on receiving the message, the verification process authenticates the sender - uses the sender's public
key to decrypt the signature and recover the hash, which can only be created with the sender's private
key, and checks message integrity - compares the hash with a newly calculated one from the received document (the two hashes will differ if the document has been tampered with) the system fails if the private
key is compromised or the recipient is deceitfully given the wrong public
key.
Backgrounds and borders - Learn web development
you can also use
keywords: cover — the browser will make the image just large enough so that it completely covers the box area while still retaining its aspect ratio.
... you can use
keywords such as top and right (look up the others on the background-position page): .box { background-image: url(star.png); background-repeat: no-repeat; background-position: top center; } and lengths, and percentages: .box { background-image: url(star.png); background-repeat: no-repeat; background-position: 20px 10%; } you can also mix
keyword values with lengths or percentages,...
Cascade and inheritance - Learn web development
conflicting rules css stands for cascading style sheets, and that first word cascading is incredibly important to understand — the way that the cascade behaves is
key to understanding css.
... let's start by taking a quick look at the
key things we are dealing with, then we'll look at each in turn and see how they interact with each other and your css.
Getting started with CSS - Learn web development
this has different states depending on whether it is unvisited, visited, being hovered over, focused via the
keyboard, or in the process of being clicked (activated).
...or they might 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.
How CSS is structured - Learn web development
functions while most values are relatively simple
keywords or numeric values, there are some values which take the form of a function.
...some @rules are simple with just a
keyword and a value.
What is CSS? - Learn web development
this article explains what css is, with a simple syntax example, and also covers some
key terms about the language.
...however, a
key thing about css is that everyone works very hard to never change things in a way that would break old websites.
CSS FAQ - Learn web development
initially css didn't provide a "default"
keyword and the only way to restore the default value of a property is to explicitly re-declare that property.
... for example: /* heading default color is black */ h1 { color: red; } h1 { color: black; } this has changed with css 2; the
keyword initial is now a valid value for a css property.
Styling links - Learn web development
focus: a link when it has been focused (for example moved to by a
keyboard user using the tab
key or similar, or programmatically focused using htmlelement.focus()) — this is styled using the :focus pseudo class.
... focused links have an outline around them — you should be able to focus on the links on this page with the
keyboard by pressing the tab
key (on mac, you'll need to use option + tab, or enable the full
keyboard access: all controls option by pressing ctrl + f7.) active links are red (try holding down the mouse button on the link as you click it.) interestingly enough, these default styles are nearly the same as they were back in the early days of browsers in the mid-1990s.
What are browser developer tools? - Learn web development
three ways:
keyboard: ctrl + shift + i, except internet explorer and edge: f12 macos: ⌘ + ⌥ + i menu bar: firefox: menu ➤ web developer ➤ toggle tools, or tools ➤ web developer ➤ toggle tools chrome: more tools ➤ developer tools safari: develop ➤ show web inspector.
... click a property name or value to bring up a text box, where you can
key in a new value to get a live preview of a style change.
Basic native form controls - Learn web development
the coordinates are sent as two
key/value pairs: the x value
key is the value of the name attribute followed by the string ".x".
... the y value
key is the value of the name attribute followed by the string ".y".
Sending forms through JavaScript - Learn web development
form data (application/x-www-form-urlencoded) is made of url-encoded lists of
key/value pairs.
... let's look at an example: <button>click me!</button> and now the javascript: const btn = document.queryselector('button'); function senddata( data ) { console.log( 'sending data' ); const xhr = new xmlhttprequest(); let urlencodeddata = "", urlencodeddatapairs = [], name; // turn the data object into an array of url-encoded
key/value pairs.
HTML basics - Learn web development
this includes things like
keywords and a page description that you want to appear in search results, css to style our content, character set declarations and more.
...if you save and reload the page, you should see something like this in place of the image: the
keywords for alt text are "descriptive text".
JavaScript basics - Learn web development
you start by declaring a variable with the var (less recommended, dive deeper for the explanation) or the let
keyword, followed by the name you give to the variable: let myvariable; note: a semicolon at the end of a line indicates where a statement ends.
...the words true and false are special
keywords that don't need quote marks.
Creating hyperlinks - Learn web development
note: a link title is only revealed on mouse hover, which means that people relying on
keyboard controls or touchscreens to navigate web pages will have difficulty accessing title information.
... search engines use link text to index target files, so it is a good idea to include
keywords in your link text to effectively describe what is being linked to.
Adding vector graphics to the Web - Learn web development
nction() { if(solution.value === 'show solution') { textarea.value = solutionentry; solution.value = 'hide solution'; } else { textarea.value = userentry; solution.value = 'show solution'; } updatecode(); }); const htmlsolution = ''; let solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).s...
...0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; summary this article has provided you with a quick tour of what vector graphics and svg a...
From object to iframe — other embedding technologies - Learn web development
568166412784!3d53.473310471916975!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x487bae6c05743d3d%3a0xf82fddd1e49fc0a1!2sthe+lowry!5e0!3m2!1sen!2suk!4v1518171785211" width="600" height="450" frameborder="0" style="border:0" allowfullscreen>\n</iframe>'; let solutionentry = htmlsolution; textarea.addeventlistener('input', updatecode); window.addeventlistener('load', updatecode); // stop tab
key tabbing out of textarea and // make it write a tab at the caret position instead textarea.on
keydown = function(e){ if (e.
keycode === 9) { e.preventdefault(); insertatcaret('\t'); } if (e.
keycode === 27) { textarea.blur(); } }; function insertatcaret(text) { const scrollpos = textarea.scrolltop; const caretpos = textarea.selectionstart; const front = (textarea.value).
...(0, caretpos); const back = (textarea.value).substring(textarea.selectionend, textarea.value.length); textarea.value = front + text + back; caretpos = caretpos + text.length; textarea.selectionstart = caretpos; textarea.selectionend = caretpos; textarea.focus(); textarea.scrolltop = scrollpos; } // update the saved usercode every time the user updates the text area code textarea.on
keyup = function(){ // we only want to save the state when the user code is being shown, // not the solution, so that solution is not saved over the user code if(solution.value === 'show solution') { userentry = textarea.value; } else { solutionentry = textarea.value; } updatecode(); }; iframes in detail so, that was easy and fun, right?
Functions — reusable blocks of code - Learn web development
in addition, attempting to declare the name variable a second time with the let
keyword in the second.js file results in an error.
... the zoo keeper is like the global scope — he or she has the
keys to access every enclosure, to restock food, tend to sick animals, etc.
Test your skills: Events - Learn web development
events 2 now we'll look at
keyboard events.
... to pass this assessment you need to build an event handler that moves the circle around the provided canvas when the wasd
keys are pressed on the
keyboard.
Working with JSON - Learn web development
add the following at the bottom of your javascript code: let requesturl = 'https://mdn.github.io/learning-area/javascript/oojs/json/superheroes.json'; to create a request, we need to create a new request object instance from the xmlhttprequest constructor, using the new
keyword.
...the
key snippet of code is here: request.open('get', requesturl); request.responsetype = 'text'; // now we're getting a string!
Object-oriented JavaScript for beginners - Learn web development
notice also the this
keyword being used here as well — it is basically saying that whenever one of these object instances is created, the object's name property will be equal to the name value passed to the constructor call, and the greeting() method will use the name value passed to the constructor call too.
... let's look at the constructor calls again: let person1 = new person('bob'); let person2 = new person('sarah'); in each case, the new
keyword is used to tell the browser we want to create a new object instance, followed by the function name with its required parameters contained in parentheses, and the result is stored in a variable — very similar to how a standard function is called.
Object prototypes - Learn web development
object.is(), object.
keys(), and other members not defined inside the prototype bucket are not inherited by object instances or object types that inherit from object.prototype.
...the constructor is a function after all, so can be invoked using parentheses; you just need to include the new
keyword to specify that you want to use the function as a constructor.
JavaScript — Dynamic client-side scripting - Learn web development
after that, we discuss some
key javascript features in detail, such as variables, strings, numbers and arrays.
... javascript building blocks in this module, we continue our coverage of all javascript's
key fundamental features, turning our attention to commonly-encountered types of code block such as conditional statements, loops, functions, and events.
Aprender y obtener ayuda - Learn web development
if you are looking for some more specific information, you can add other
keywords as modifiers, for example "<video> element autoplay attribute", or "date.settime parameters".
... if you are not sure which article to read, then try searching mdn for some related
keywords (as indicated above), or try a general web search.
Perceived performance - Learn web development
make things like type-ahead a progressive enhancement: use css to display input modal, js to add typeahead/autocomplete as it is available make task initiators appear more interactive making a content request on
keydown rather than waiting for
keyup can shave 200ms off the perceived load of the content.
... adding an interesting but unobtrusive 200ms animation to that
keyup even can reduce another 200ms of the perceived load.
Getting started with Ember - Learn web development
there are a couple of github issues open about this on the todomvc family of projects: add
keyboard access to demos re-enable outline on focusable elements ember has a strong commitment to being accessible by default and there is an entire section of the ember guides on accessibility on what it means for website / app design.
...lly, find app.css, located at app/styles/app.css, and paste in the following: :focus, .view label:focus, .todo-list li .toggle:focus + label, .toggle-all:focus + label { /* !important needed because todomvc styles deliberately disable the outline */ outline: #d86f95 solid !important; } this css overrides some of the styles provided by the todomvc-app-css npm package, therefore allowing
keyboard focus to be visible.
Framework main features - Learn web development
</figcaption> </figure> state we talked about the concept of state in the previous chapter — a robust state-handling mechanism is
key to an effective framework, and each component may have data to control the state of.
... components in components one
key benefit of component-based ui architecture is that components can be composed together.
React resources - Learn web development
this screenshot shows our finished application as it appears in react devtools: on the left, we see all of the components that make up our application, including some unique
keys for the things that are rendered from arrays.
... focus management is essential in client-side routing — without it,
keyboard users can be trapped in focus limbo, and screen-reader users may have no idea that they have moved to a new page.
Getting started with Svelte - Learn web development
<script> export let name; </script> svelte uses the export
keyword to mark a variable declaration as a property (or prop), which means it becomes accessible to consumers of the component (e.g.
... component props are declared with the export
keyword.
Understanding client-side JavaScript frameworks - Learn web development
accessibility in react in our final tutorial article, we'll focus on (pun intended) accessibility, including focus management in react, which can improve usability and reduce confusion for both
keyboard-only and screen reader users.
...the last bit of functionality to look at is focus management, or put another way, how we can improve our app's
keyboard accessibility.
Implementing feature detection - Learn web development
next, fill in the your-api-
key placeholder text in the second <script> element (as it is now) with a valid google maps api
key.
... to get a
key, sign in to a google account, go to the get a
key/authentication page, then click the blue get a
key button and follow the instructions.
Introduction to cross browser testing - Learn web development
people with disabilities, who use the web with the aid of assistive technologies like screenreaders, or don't use a mouse (some people use only the
keyboard).
... do some lo-fi accessibility testing, such as trying to use your site with only the
keyboard, or using your site via a screen reader to see if it is navigable.
Command line crash course - Learn web development
note: a very useful terminal shortcut is using the tab
key to autocomplete names that you know are present, rather than having to type out the whole thing.
...this will open up the man page in the terminal’s default text file viewer (for example, less in my terminal), and you should then be able to scroll through the page using the arrow
keys, or some similar mechanism.
Chrome Worker Modules
to make the value public, you just have to add it to either global value exports, as follows: /* file mymodule.js */ let secret
key = "this is a secret"; let public
key = "this is public"; exports.
key = public
key; // secret
key is not exported // public
key is exported with name "
key" alternatively, if you prefer that style, you may write // variable |module| is a special global introduced by require() module.exports = {
key: public
key }; once this is done, we may load the module and use the values that have been exported ...
... // assuming that mymodule.js is installed to resource://gre/modules/mymodule.js let module = require("resource://gre/modules/mymodule.js") foo(module.
key); // module.
key == "this is public"; // however, secret
key is not exported and cannot be used for the installation of resources, please see the documentation on moz.build (if your code is part of the platform) or on chrome manifests (if your code is part of an add-on).
Accessibility Information for Core Gecko Developers
these widgets are often not even
keyboard focusable, and assistive technologies do not understand these widgets.
... this document shows several interactive desktop-style widgets that are accessible by
keyboards and assistive technologies, and outlines a plan being developed by ibm, mozilla, and the wai protocols and formats working group (pfwg) to address the issue of dhtml accessibility.
Accessibility information for UI designers and developers
see also: understanding sc 1.4.3: contrast the focus indicator users who navigate by
keyboard (or other specialised input methods), rely on focus styles to see where they are on the page.
...on desktop with a
keyboard, it lets people type a character, say ‘k’, to jump directly to options starting with ‘k’.
Accessibility and Mozilla
in fact, the same
keyboard commands are still available, so users can become comfortable and productive right away.accessibility information for core gecko developersboth end users and developers are invited for discussion on the live irc channel at irc.mozilla.org/#accessibility.
...> help contents f1 > accessibility features) which describe any special features and
keyboard shortcuts designed to help users with disabilities.
Theme concepts
full detais of the alignment and tiling options can be found in the "theme"
key description.
...full details of the alignment options can be found in the "theme"
key description.
Adding phishing protection data providers
browser.safebrowsing.provider.idnum.
keyurl an url that returns a private
key to be used for encrypting of other requests.
...this request must be encrypted using the private
key returned by the
keyurl request.
Creating a Firefox sidebar
the document might be obsolete, though.obsolete since gecko 57 the social api obsolete since gecko 57 (firefox 57 / thunderbird 57 / seamon
key 2.54)this feature is obsolete.
... the window.sidebar api obsolete since gecko 23 (firefox 23 / thunderbird 23 / seamon
key 2.20)this feature is obsolete.
Updating NSPR or NSS in mozilla-central
(because some developers might not be aware that nspr/nss are separately maintained and released, the mozilla hg server rejects accidental changes/forking, if the required
keywords are missing in the commit comment.) if nspr or nss must be upgraded to a new static tag, follow this procedure: before starting, make sure your local repository is updated to mozilla-central tip and that there are no local changes: $ hg status -mard pull the new sources $ python client.py update_nspr nspr_tag_name or $ python client.py update_nss nss_tag_name if you updat...
... in your commit message, include the required
keywords, upgrade_nspr_release and/or upgrade_nss_release.
Obsolete Build Caveats and Tips
windows vista sdk obsolete since gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9)this feature is obsolete.
... windows server 2003 r2 platform sdk obsolete since gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9)this feature is obsolete.
Contributing to the Mozilla code base
there are a number of ways to do this: search bugzilla for relevant
keywords.
...we'll be integrating some information from these pages soon, but until then you may find them interesting in their current form: a guide to learning the mozilla codebase a beginner's guide to spidermon
key, mozilla's javascript engine mozilla platform development cheatsheet (archive.org) ...
mach
another possible reason: mach gives you an error, while running, say bootstrap.py directly (that is to type in a bash shell: python2 ./bootstrap.py enter-
key ) in an otherwise empty ..../subdir/ may work for you!
... the arguments registered with @commandargument are passed to your method as
keyword arguments using the **kwargs calling convention.
Displaying Places information using views
the following table shows the mappings between these magic column id values and their corresponding nsinavhistoryresultnode properties: treecol id or anonid corresponding nsinavhistoryresultnode property title title url uri date time visitcount accesscount
keyword * description * dateadded dateadded lastmodified lastmodified tags tags ** icon *
keyword and description are looked up in the places database using the nsinavhistoryresultnode property itemid.
... in firefox 4 and later requires gecko 2.0(firefox 4 / thunderbird 3.3 / seamon
key 2.1) you can add places information to a popup like this: <menu id="bookmarksmenu"> <menupopup placespopup="true"> onpopupshowing="if (!document.getelementbyid('bookmarksmenu')._placesview) new placesmenu(event, 'place:folder=bookmarks_menu');" </menupopup> </menu> the menu view is implemented in browser/components/places/content/menu.xml.
Roll your own browser: An embedding how-to
(screenshot) light: very simple non-bloated gtk+ interface, familiar netscape 4.x
keyboard shortcuts, context menus, etc.
...fast ie-look-alike browser, uses ie and ns bookmarking system, fast loading time, privacy features, java support and complete control of the menus and "hot
keys".
PromiseWorker.jsm
in summary, from a worker file, data can only be sent back as a response to a request from the main thread, it is not possible for a worker to send data to the main thread otherwise, this is a
key difference between promiseworker worker file and all other types of workers.
...the tomsg function should return an object which has exn property, that is the property
key for the frommsg function in main thread side.
Using workers in JavaScript code modules
it works exactly like a standard worker, except that it has access to js-ctypes via a global ctypes object available in the global scope of the worker obsolete since gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5)this feature is obsolete.
... note: as of gecko 8.0, the nsiworkerfactory interface has been removed starting in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1), you can use workers in javascript code modules (jsms).
Localizing with Pontoon
info menu gives important information, like the anticipated project timeline and a list of
keyboard shortcuts.
... search almost like machinery, but takes provided
keyword as input parameter instead of the original string.
What every Mozilla translator should know
for example: bug 12345, fix typos and resize prefwindow, a=l10n as soon as you have committed, put the bug in fixed state and write fixed1.8.xxx in the
keyword field you have to verify in the next build that the changes have been successful.
... if so, change the state of the bug to verified and write verified1.8.xxx in the
keyword field tinderbox in tinderbox you can see the result of the build process.
Mozilla MathML Status
the user interface works correctly in seamon
key but not in firefox.
...the mathvariant attribute is fully supported starting with (firefox 28.0 / thunderbird 28.0 / seamon
key 2.25).
MathML Accessibility in Mozilla
we started exposing generic accessible objects for mathml in bug 920547 and so these can be retrieved by nvda starting with gecko 27.0 (firefox 27.0 / thunderbird 27.0 / seamon
key 2.24).
...hence basic support is available in gecko 41.0 (firefox 41.0 / thunderbird 41.0 / seamon
key 2.38) and we are still trying to keep in sync with webkit/voiceover.
Mozilla Development Strategies
make sure documentation gets updated if the bug you're fixing is likely to require an update to developer documentation once it's fixed, be sure to add the dev-doc-needed
keyword to the bug (or ask someone to do it, if you don't have editbugs privileges on bugzilla).
... note: you can mark the bug with this
keyword at any time; you don't need to wait until it's actually fixed.
Profiling with the Firefox Profiler
tip: you can quickly go deeper into the call tree by holding down your right arrow
key.
... profiling js benchmark (xpcshell) to profile the script run.js with ionmon
key (-i), type inference (-n) and jäegermon
key (-m).
accessibility.tabfocus
the preference accessibility.tabfocus controls what elements receive focus when the user presses the tab
key.
... note: on mac os x, if this preference is not set, the full
keyboard access setting in system preferences >
keyboard is honored.
browser.altClickSave
the preference browser.altclicksave controls whether clicking a link while holding the alt
key starts the download of that link.
... type:boolean default value: false exists by default: yes application support:firefox 13.0 status: active; last updated 2012-03-19 introduction: pushed to nightly on 2012-03-02 bugs: bug 713052 values true clicking a link while holding the alt
key starts the download of that link.
Preferences system
reference information about them is available below: preferences system documentation: introduction: getting started | examples | troubleshooting reference: prefwindow | prefpane | preferences | preference | xul attributes use code for a typical preferences window may look like this: <prefwindow id="apppreferences" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <prefpane id="pane1" label="&pane1.title;"> <preferences> <preference id="pref1" name="pref.name" type="bool"/> </preferences> ..
... ui elements that refer to the preferences above, e.g.: <checkbox id="check1" preference="pref1" label="&check1.label;" access
key="&check1.access
key;"/> </prefpane> <prefpane id="pane2" label="&pane2.title;" src="chrome://uri/to/pane.xul"/> </prefwindow> pane content can be specified inline or an external chrome uri supplied for pane content to be loaded in via a dynamic overlay.
Preferences
the preference system makes it possible to store data for mozilla applications using a
key/value pairing system.
... mozilla networking preferences a guide to
key networking-related preferences.
Profile Manager
by default, profile manager will manage firefox profiles, but you can also use it to work with profiles of other xulrunner apps, like thunderbird or seamon
key.
... to use profile manager with an application other than firefox, you need to launch it using the application's name as an argument, for example: profilemanager-bin seamon
key profiles and application versions profile manager manages two different lists: one of user profiles, and the other of application versions that can be used with the profiles.
Firefox Sync
it uses firefox accounts for account, authentication and
key management.
...mozilla does not hold any
keys to your sync data.
JSHydra
in its back-end, it uses the parse tree created by the spidermon
key engine.
... mailing list newsgroup rss feed #static on irc.mozilla.org blogs joshua cranmer related topics dehydra, treehydra, spidermon
key categories interwiki language links ...
L20n Javascript API
the ctxdata is an object which extends the context data per
key and per level of hierarchy.
... the callback function is passed an l10n object with the following properties: entities: an object whose
keys are the identifiers and value are the entity objects as returned by getentitysync, reason: an object with the reason why callback was invoked.
MailNews automated testing
these tests are run against almost every changeset that gets committed to the thunderbird and seamon
key code bases.
... performance testing mail leak and bloat tests these tests start up thunderbird or seamon
key and record any leaks found, as well as the total memory requirement.
PLHashAllocOps
syntax #include <plhash.h> typedef struct plhashallocops { void *(pr_callback *alloctable)(void *pool, prsize size); void (pr_callback *freetable)(void *pool, void *item); plhashentry *(pr_callback *allocentry)(void *pool, const void *
key); void (pr_callback *freeentry)(void *pool, plhashentry *he, pruintn flag); } plhashallocops; #define ht_free_value 0 /* just free the entry's value */ #define ht_free_entry 1 /* free value and entire entry */ description users of the hash table functions can provide their own memory allocation functions.
... remark the
key argument for the allocentry function does not seem to be useful.
CERT_FindCertByIssuerAndSN
cert_findcertbyissuerandsn ( certcertdbhandle *handle, certissuerandsn *issuerandsn ); parameters handle in pointer to a certcertdbhandle representing the certificate database to look in issuerandsn in pointer to a certissuerandsn that must be properly formed to contain the issuer name and the serial number (see [example]) description this function creates a certificate
key using the issuerandsn and it then uses the
key to find the matching certificate in the database.
... example certissuerandsn issuersn; issuersn.derissuer.data = caname->data; issuersn.derissuer.len = caname->len; issuersn.serialnumber.data = authority
keyid->authcertserialnumber.data; issuersn.serialnumber.len = authority
keyid->authcertserialnumber.len; issuercert = cert_findcertbyissuerandsn(cert->dbhandle, &issuersn); if ( issuercert == null ) { port_seterror (sec_error_unknown_issuer); } see also occurrences of cert_findcertbyissuerandsn in the current nss source code (generated by lxr).
NSS Certificate Download Specification
regardless of which of the supported binary formats is used, the begin and end lines must say certificate, and not any other word (such as
key).
...if the private
key associated with the certificate does not exist in the user's local
key database, then an error dialog is generated and the certificate is not imported.
4.3 Release Notes
release date: 01 april 2009 introduction network security services for java (jss) 4.3 is a minor release with the following new features: sqlite-based shareable certificate and
key databases libpkix: an rfc 3280 compliant certificate path validation library pkcs11 needslogin method support hmacsha256, hmacsha384, and hmacsha512 support for all nss 3.12 initialization options jss 4.3 is tri-licensed under mpl 1.1/gpl 2.0/lgpl 2.1.
... new sqlite-based shareable certificate and
key databases by prepending the string "sql:" to the directory path passed to configdir parameter for crypomanager.initialize method or using the nss environment variable nss_default_db_type.
JSS
you might want to read these documents: introduction to public-
key cryptography.
... explains the basic concepts of public-
key cryptography that underlie nss and jss.
NSS_3.12.2_release_notes.html
new in nss 3.12.2 new functions in the nss shared library: sec_pkcs12addcertorchainand
key (see p12.h) new pkcs11 errors (see secerr.h) sec_error_pkcs11_general_error sec_error_pkcs11_function_failed sec_error_pkcs11_device_error bugs fixed the following bugs have been fixed in nss 3.12.2.
... bug 200704: pkcs11: invalid session handle 0 bug 205434: fully implement new libpkix cert verification api from bug 294531 bug 302670: use the installed libz.so where available bug 305693: shlibsign generates pqg for every run bug 311483: exposing includecertchain as a parameter to sec_pkcs12addcertand
key 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
new functions for sni (see ssl.h for more information): sslsnisocketconfig return values: ssl_sni_current_config_is_used: libssl must use the default cert and
key.
... ssl
keylogfile
key log file.
NSS 3.12.9 release notes
bug 609068: implement j-pake in freebl bug 607058: crash [@ nss_cms_decoder_work_data] bug 613394: november/december 2010 batch of nss root ca changes bug 610843: need way to recover softoken in child after fork() bug 617492: add pk11_
keygenwithtemplate function to pk11wrap (for firefox sync) bug 610162: sha-512 and sha-384 hashes are incorrect for inputs of 512mb or larger when running under windows and other 32-bit platforms (fx 3.6.12 and 4.0b6) bug 518551: vfychain crashes in pkits tests.
... bug 620908: certutil -t -d "sql:." dumps core bug 584257: need a way to expand partial private
keys.
NSS 3.14.3 release notes
new functions in pk11pub.h pk11_signwithsym
key - similar to pk11_sign, performs a signing operation in a single operation.
... however, unlike pk11_sign, which uses a sec
keyprivate
key, pk11_signwithsym
key performs the signature using a symmetric
key, such as commonly used for generating macs.
NSS 3.16.1 release notes
new functions in pk11pub.h pk11_exportderprivate
keyinfo and pk11_exportpriv
keyinfo - exports a private
key in a der-encoded asn.1 private
keyinfo type or a sec
keyprivate
keyinfo structure.
... only rsa private
keys are supported now.
NSS 3.16.2 release notes
in pk11pub.h pk11_privdecrypt - decrypts with a private
key.
... pk11_pubencrypt - encrypts with a public
key.
NSS 3.18 release notes
nss 3.18 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_18_rtm/src/ new in nss 3.18 new functionality when importing certificates and
keys from a pkcs#12 source, it's now possible to override the nicknames, prior to importing them into the nss database, using new api sec_pkcs12decoderrenamecertnicknames.
... the default
key size used by certutil when creating an rsa
key pair has been increased from 1024 bits to 2048 bits.
NSS 3.27 release notes
nss 3.27 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_27_rtm/src/ new in nss 3.27 new functionality allow custom named group priorities for tls
key exchange handshake (ssl_namedgroupconfig).
... hard limits on the maximum number of tls records encrypted with the same
key are enforced.
NSS 3.40 release notes
nss 3.40 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_40_rtm/src/ new in nss 3.40 new functionality the draft-00 version of encrypted sni support is implemented tstclnt now takes -n option to specify encrypted sni
key new functions none notable changes in nss 3.40 the mozilla::pkix library has been ported from mozilla psm to nss.
... the following ca certificates were removed: cn = visa ecommerce root sha-256 fingerprint: 69fac9bd55fb0ac78d53bbee5cf1d597989fd0aaab20a25151bdf1733ee7d122 bugs fixed in nss 3.40 bug 1478698 - ffdhe
key exchange sometimes fails with decryption failure this bugzilla query returns all the bugs fixed in nss 3.40: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.40 compatibility nss 3.40 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.46 release notes
bugs fixed in nss 3.46 bug 1572164 - don't unnecessarily free session in nsc_wrap
key bug 1574220 - improve controls after errors in tstcln, selfserv and vfyserv cmds bug 1550636 - upgrade sqlite in nss to a 2019 version bug 1572593 - reset advertised extensions in ssl_constructextensions bug 1415118 - nss build with ./build.sh --enable-libpkix fails bug 1539788 - add length checks for cryptographic primitives (cve-2019-17006) bug 1542077 - mp_set_ulong and mp_set_int should...
...- remove -wmaybe-uninitialized warning in lgattr.c bug 1561558 - remove -wmaybe-uninitialized warning in httpserv.c bug 1561556 - remove -wmaybe-uninitialized warning in tls13esni.c bug 1561332 - ec.c:28 warning: comparison of integers of different signs: 'int' and 'unsigned long' bug 1564714 - print certutil commands during setup bug 1565013 - hacl image builder times out while fetching gpg
key bug 1563786 - update hacl-star docker image to pull specific commit bug 1559012 - improve gcm perfomance using pmull2 bug 1528666 - correct resumption validation checks bug 1568803 - more tests for client certificate authentication bug 1564284 - support profile mobility across windows and linux bug 1573942 - gtest for pkcs11.txt with different breaking line formats bug 1575968 - add strscl...
NSS 3.47 release notes
cert bug 1588557 - bad debug statement in tls13con.c bug 1579060 - mozilla::pkix tag definitions for issueruniqueid and subjectuniqueid shouldn't have the constructed bit set bug 1583068 - nss 3.47 should pick up fix from bug 1575821 (nspr 4.23) bug 1152625 - support aes hw acceleration on armv8 bug 1549225 - disable dsa signature schemes for tls 1.3 bug 1586947 - pk11_importandreturnprivate
key does not store nickname for ec
keys bug 1586456 - unnecessary conditional in pki3hack, pk11load and stanpcertdb bug 1576307 - check mechanism param and param length before casting to mechanism-specific structs bug 1577953 - support longer (up to rfc maximum) hkdf outputs bug 1508776 - remove refcounting from sftk_freesession (cve-2019-11756) bug 1494063 - support tls exporter in tstclnt and ...
... bug 1577038 - add pk11_getcertsfromprivate
key to return all certificates with public
keys matching a particular private
key this bugzilla query returns all the bugs fixed in nss 3.47: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.47 compatibility nss 3.47 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS Sample Code Sample_2_Initialization of NSS
>source == pw_plaintext) { return pl_strdup(pwdata->data); } /* open terminal */ input = fopen("/dev/tty", "r"); if (input == null) { pr_fprintf(pr_stderr, "error opening input terminal for read\n"); return null; } /* we have no password, so initialize database with one */ pr_fprintf(pr_stderr, "enter a password which will be used to encrypt your
keys.\n" "the password should be at least 8 characters long,\n" "and should contain at least one non-alphabetic character.\n\n"); output = fopen("/dev/tty", "w"); if (output == null) { pr_fprintf(pr_stderr, "error opening output terminal for write\n"); return null; } for (;;) { if (p0) port_free(p0); p0 = getpassword(input, output, "e...
... pl_destroyoptstate(optstate); if (!dbdir) usage(progname); pr_init(pr_user_thread, pr_priority_normal, 0); /* create the database */ rv = nss_initreadwrite(dbdir); if (rv != secsuccess) { pr_fprintf(pr_stderr, "nss_initialize failed"); pr_cleanup(); exit(rv); } if (pl_strcmp(slotname, "internal") == 0) slot = pk11_getinternal
keyslot(); /* if creating new database, initialize the password.
Initialize NSS database - sample 2
>source == pw_plaintext) { return pl_strdup(pwdata->data); } /* open terminal */ input = fopen("/dev/tty", "r"); if (input == null) { pr_fprintf(pr_stderr, "error opening input terminal for read\n"); return null; } /* we have no password, so initialize database with one */ pr_fprintf(pr_stderr, "enter a password which will be used to encrypt your
keys.\n" "the password should be at least 8 characters long,\n" "and should contain at least one non-alphabetic character.\n\n"); output = fopen("/dev/tty", "w"); if (output == null) { pr_fprintf(pr_stderr, "error opening output terminal for write\n"); return null; } for (;;) { if (p0) port_free(p0); p0 = getpassword(input, output, "e...
... pl_destroyoptstate(optstate); if (!dbdir) usage(progname); pr_init(pr_user_thread, pr_priority_normal, 0); /* create the database */ rv = nss_initreadwrite(dbdir); if (rv != secsuccess) { pr_fprintf(pr_stderr, "nss_initialize failed"); pr_cleanup(); exit(rv); } if (pl_strcmp(slotname, "internal") == 0) slot = pk11_getinternal
keyslot(); /* if creating new database, initialize the password.
FC_DecryptInit
syntax ck_rv fc_decryptinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession [in] session handle.
...h
key [in] handle of the
key to be used.
FC_Initialize
the library parameters string has this format: "configdir='dir' certprefix='prefix1'
keyprefix='prefix2' secmod='file' flags= " here are some examples.
... nss_nodb_init(""), which initializes nss with no databases: "configdir='' certprefix=''
keyprefix='' secmod='' flags=readonly,nocertdb,nomod db,forceopen,optimizespace " mozilla firefox initializes nss with this string (on windows): "configdir='c:\\documents and settings\\wtc\\application data\\mozilla\\firefox\\profiles\\default.7tt' certprefix=''
keyprefix='' secmod='secmod.db' flags=optimizespace manufacturerid='mozilla.org' librarydescription='psm internal crypto services' cryptotokendescription='generic crypto services' dbtokendescription='software security device' cryptoslotdescription='psm internal cryptographic services' dbslotdescription='psm private
keys' fipsslotdescription='psm internal fips-140-1 cryptographic services' fipstokendescription='psm fips-140-1 user private
key s...
FC_SignInit
syntax ck_rv fc_signinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession [in] session handle.
...h
key [in] handle of the
key to be used .
FC_SignRecoverInit
syntax ck_rv fc_signrecoverinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession [in] session handle.
...h
key [in] handle of the
key to be used.
FC_VerifyInit
syntax ck_rv fc_verifyinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession [in] session handle.
...h
key [in] handle of the
key to be used.
FC_VerifyRecoverInit
syntax ck_rv fc_verifyrecoverinit( ck_session_handle hsession, ck_mechanism_ptr pmechanism, ck_object_handle h
key ); parameters hsession [in] session handle.
...h
key [in] handle of the
key to be used.
NSS Tools
tools information tool description links certutil 2.0 manage certificate and
key databases (cert7.db and
key3.db).
... source, documentation, tasks/plans pk12util 1.0 import and export
keys and certificates between the cert/
key databases and files in pkcs12 format.
Network Security Services
introduction to public-
key cryptography explains the basic concepts of public-
key cryptography that underlie nss.
... additional information using the window.crypto object from javascript delegation of http download for ocsp tls cipher suite discovery nss certificate download specification fips mode - an explanation format of
key log files view all nss-related articles on mdn planning information on nss planning can be found at wiki.mozilla.org, including: fips validation nss roadmap page nss improvement project community view mozilla security forums...
Bytecodes
background spidermon
key bytecodes are the canonical form of code representation that is used in the javascript engine.
...bytecode listing was moved to spidermon
key internals: bytecode descriptions page.
JIT Optimization Strategies
spidermon
key's optimizing jit, ionmon
key, uses various strategies to optimize operations.
... optimization information is currently collected for the following operations: getproperty (obj.prop) setproperty (obj.prop = val) getelement (obj[elemname]) setelement (obj[elemname] = val) call (func(...)) at each operation site, ionmon
key tries a battery of strategies, from the most optimized but most restrictive to the least optimized but least restrictive.
JSAPI Cookbook
note: the foss wiki page contains a few links to other libraries and programs that can make life easier when using spidermon
key and jsapi.
..., js_newplainobject(cx)); // or js_newobject(cx, js::nullptr(), js::nullptr(), js::nullptr()); if (!x) return false; constructing an object with new // javascript var person = new person("dave", 24); it looks so simple in javascript, but a jsapi application has to do three things here: look up the constructor, person prepare the arguments ("dave", 24) call js_new to simulate the new
keyword (if your constructor doesn't take any arguments, you can skip the second step and call js_new(cx, constructor, 0, null) in step 3.) /* jsapi */ /* step 1 - get the value of |person| and check that it is an object.
JS::AutoVectorRooter
this article covers features introduced in spidermon
key 17 base class that roots an internal variable-size array of type t.
... there are derived classes for the main types: class parent class js::autovaluevector autovectorrooter<value> js::autoidvector autovectorrooter<jsid> js::autoobjectvector added in spidermon
key 24 autovectorrooter<jsobject *> js::autofunctionvector added in spidermon
key 31 autovectorrooter<jsfunction *> js::autoscriptvector autovectorrooter<jsscript *> see also mxr id search for js::autovectorrooter mxr id search for js::autovaluevector mxr id search for js::autoidvector mxr id search for js::autoobjectvector mxr id search for js::autofunctionvec...
JS::Compile
this article covers features introduced in spidermon
key 17 compile a script for execution.
... syntax // added in spidermon
key 45 bool js::compile(jscontext *cx, const js::readonlycompileoptions &options, js::sourcebufferholder &srcbuf, js::mutablehandlescript script); bool js::compile(jscontext *cx, const js::readonlycompileoptions &options, const char *bytes, size_t length, js::mutablehandlescript script); bool js::compile(jscontext *cx, const js::readonlycompileoptions &options, const char16_t *chars, size_t length, js::mutablehandlescript script); bool js::compile(jscontext *cx, const js::readonlycompileoptions &options, file *file, js::mutablehandlescript script); bool js::compile(jscontext *cx, const js::readonlycompileoptions &options, const char *filename, ...
JS::CompileOptions
this article covers features introduced in spidermon
key 17 compile options classes.
... constructor js::readonlycompileoptions(); // added in spidermon
key 31 js::owningcompileoptions(jscontext *cx); // added in spidermon
key 31 js::compileoptions(jscontext *cx, jsversion version = jsversion_unknown); name type description cx jscontext * pointer to a js context from which to derive runtime information.
JS::CreateError
this article covers features introduced in spidermon
key 38 create an error object.
... syntax // added in spidermon
key 45 bool js::createerror(jscontext *cx, jsexntype type, handleobject stack, handlestring filename, uint32_t linenumber, uint32_t columnnumber, jserrorreport *report, handlestring message, mutablehandlevalue rval); // obsolete since jsapi 39 bool js::createerror(jscontext *cx, jsexntype type, handlestring stack, handlestring filename, uint32_t linenumber, uint32_t columnnumber, jserrorreport *report, handlestring message, mutablehandlevalue rval); name type description cx jscontext * pointer to a js context from which to derive runtime information.
JS::DeflateStringToUTF8Buffer
this article covers features introduced in spidermon
key 38 encode the given string as utf8 into given buffer.
... syntax // new in jsapi 52 void deflatestringtoutf8buffer(jsflatstring* src, mozilla::rangedptr<char> dst, size_t* dstlenp = nullptr, size_t* numcharsp = nullptr); // obsolete in spidermon
key 49 void deflatestringtoutf8buffer(jsflatstring* src, mozilla::rangedptr<char> dst); name type description src jsflatstring * the pointer to the string to deflate.
JS::Handle
this article covers features introduced in spidermon
key 17 reference to a t that has been rooted elsewhere.
... there are typedefs available for the main types: namespace js { typedef handle<jsfunction*> handlefunction; typedef handle<jsid> handleid; typedef handle<jsobject*> handleobject; typedef handle<jsscript*> handlescript; typedef handle<jsstring*> handlestring; typedef handle<js::symbol*> handlesymbol; // added in spidermon
key 38 typedef handle<value> handlevalue; } see also mxr id search for js::handle mxr id search for js::handlefunction mxr id search for js::handleid mxr id search for js::handleobject mxr id search for js::handlescript mxr id search for js::handlestring mxr id search for js::handlesymbol mxr id search for js::handlevalue js::rooted js::mutablehandle gc rooting guide bug 714647 ...
JS::Rooted
this article covers features introduced in spidermon
key 17 local variable of type t whose value is always rooted.
... there are typedefs available for the main types: namespace js { typedef rooted<jsobject*> rootedobject; typedef rooted<jsfunction*> rootedfunction; typedef rooted<jsscript*> rootedscript; typedef rooted<jsstring*> rootedstring; typedef rooted<js::symbol*> rootedsymbol; // added in spidermon
key 38 typedef rooted<jsid> rootedid; typedef rooted<js::value> rootedvalue; } see also mxr id search for js::rooted mxr id search for js::rootedobject mxr id search for js::rootedfunction mxr id search for js::rootedscript mxr id search for js::rootedstring mxr id search for js::rootedsymbol mxr id search for js::rootedid mxr id search for js::rootedvalue js::handle js...
JS::ToString
this article covers features introduced in spidermon
key 31 convert any javascript value to a string.
... syntax #include "js/conversions.h" // as of spidermon
key 38; previously in jsapi.h jsstring* js::tostring(jscontext *cx, js::handlevalue v) name type description cx jscontext * the context in which to perform the conversion.
JSConstDoubleSpec
this article covers features introduced in spidermon
key 17 describes a double and integer value and assigns it a name.
... syntax template<typename t> struct jsconstscalarspec { const char *name; t val; /* uint8_t flags; // obsolete from jsapi 35 uint8_t spare[3]; // obsolete from jsapi 35 */ }; typedef jsconstscalarspec<double> jsconstdoublespec; typedef jsconstscalarspec<int32_t> jsconstintegerspec; // added in spidermon
key 38 name type description val double or int32_t value for the double or integer.
JSObjectOps.defaultValue
this documentation should be considered spidermon
key internals documentation, not api documentation.
...on success, *vp must be a primitive value: per es5 §8.12.8, every object "must ensure that its [[defaultvalue]] internal method can return only primitive values." debug builds of spidermon
key will assert if a convert callback is successful but leaves *vp holding a primitive value.
JSObjectPrincipalsFinder
jsobjectprincipalsfinder is the type of a security callback that can be configured using js_setobjectprincipalsfinderjsapi 1.8 and earlier or js_setruntimesecuritycallbacksadded in spidermon
key 1.8.1.
...since it is very common for jsobjectops.checkaccess or jsclass.checkaccess hooks to call these functions, the object principals finder callback is a
key security feature.
JS_CallFunction
syntax /* added in spidermon
key 31 */ bool js_callfunction(jscontext *cx, js::handleobject obj, js::handlefunction fun, const js::handlevaluearray& args, js::mutablehandlevalue rval); bool js_callfunctionname(jscontext *cx, js::handleobject obj, const char *name, const js::handlevaluearray& args, js::mutablehandlevalue rval); bool js_callfunctionvalue(jscontext *cx, js::handleobject obj, js::handlevalue fval, const js::handlevaluearray& args, js::mutablehandlevalue rval); /* obsolete since jsapi 30 */ bool js_callfunction(jscontext *cx, jsobject *obj, jsfunction *fun, unsigned argc, jsval *argv, jsval *rval); bool js_callfunctionname(jscontext *cx, jsobject *obj, con...
...added in spidermon
key 31 argc unsigned number of arguments you are passing to the function.
JS_ConvertArguments
syntax bool js_convertarguments(jscontext *cx, const js::callargs &args, const char *format, ...); // added in spidermon
key 31 bool js_convertarguments(jscontext *cx, unsigned argc, jsval *argv, const char *format, ...); // obsolete since jsapi 30 name type description cx jscontext * the context in which to perform any necessary conversions.
...added in spidermon
key 31 argc unsigned the number of arguments to convert.
JS_DecompileFunctionBody
generate the source code representing the body of a function, minus the function
keyword, name, parameters, and braces.
... description js_decompilefunctionbody generates the source code of a function's body, minus the function
keyword, name, parameters, and braces, from a function's compiled form, fun.
JS_DefineFunction
js_defineucfunction(jscontext *cx, js::handle<jsobject*> obj, const char16_t *name, size_t namelen, jsnative call, unsigned nargs, unsigned attrs); jsfunction * js_definefunctionbyid(jscontext *cx, js::handle<jsobject*> obj, js::handle<jsid> id, jsnative call, unsigned nargs, unsigned attrs); // added in spidermon
key 17 name type description cx jscontext * the context in which to define the function.
...added in spidermon
key 17 call jsnative the native c/c++ function to be wrapped by the new function.
JS_DefineFunctions
syntax bool js_definefunctions(jscontext *cx, js::handle<jsobject*> obj, const jsfunctionspec *fs, propertydefinitionbehavior behavior = defineallproperties); in spidermon
key versions prior to spidermon
key 24, fs was not const.
...added in spidermon
key 38 enum propertydefinitionbehavior { defineallproperties, onlydefinelateproperties, dontdefinelateproperties }; name description defineallproperties define all properties regardless of their flags.
JS_DefineProperty
me, size_t namelen, uint32_t value, unsigned attrs, jsnative getter = nullptr, jsnative setter = nullptr); bool js_defineucproperty(jscontext *cx, js::handleobject obj, const char16_t *name, size_t namelen, double value, unsigned attrs, jsnative getter = nullptr, jsnative setter = nullptr); // ---- added in spidermon
key 45 ---- bool js_definepropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::handle<jspropertydescriptor> desc, js::objectopresult &result); bool js_definepropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::handle<jspropertydescriptor> desc); bool js_defineucproperty(jscontext *cx, js::handleob...
...ject obj, const char16_t *name, size_t namelen, js::handle<jspropertydescriptor> desc); // ---- added in spidermon
key 1.8.1 ---- bool js_definepropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::handlevalue value, unsigned attrs, jsnative getter = nullptr, jsnative setter = nullptr); bool js_definepropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::handleobject value, unsigned attrs, jsnative getter = nullptr, jsnative setter = nullptr); bool js_definepropertybyid(jscontext *cx, js::handleobject obj, js::handleid id, js::handlestring value, unsigned attrs, jsnative getter = nullptr, jsnative setter = ...
JS_EncodeString
this article covers features introduced in spidermon
key 1.8 convert a javascript string to a c string.
... syntax char * js_encodestring(jscontext *cx, jsstring *str); char * js_encodestringtoutf8(jscontext *cx, js::handlestring str); // added in spidermon
key 24 name type description cx jscontext * a context.
JS_ExecuteScript
syntax bool js_executescript(jscontext *cx, js::handlescript script, js::mutablehandlevalue rval); // added in spidermon
key 45 bool js_executescript(jscontext *cx, js::handlescript script); // added in spidermon
key 45 bool js_executescript(jscontext *cx, js::autoobjectvector &scopechain, js::handlescript script, js::mutablehandlevalue rval); // added in spidermon
key 36 bool js_executescript(jscontext *cx, js::autoobjectvector &scopechain, js::handlescript script); // added in spidermon
key 36 bool js_executescript(jscontext *cx, js::handleobject obj, js::handlescript script, js::mutablehandlevalue rval); // obsolete since jsapi 39 bool js_executescript(jscontext *cx, js::handleobject obj, j...
...s::handlescript script); // obsolete since jsapi 39 bool js::cloneandexecutescript(jscontext *cx, js::handle<jsscript*> script); // added in spidermon
key 45 bool js::cloneandexecutescript(jscontext *cx, js::handle<jsobject*> obj, js::handle<jsscript*> script); // added in spidermon
key 31, obsoleted since jsapi 39 name type description cx jscontext * the context in which to execute the script.
JS_GC
syntax void js_gc(jscontext *cx); // added in spidermon
key 52 void js_gc(jsruntime *rt); // obsolete since jsapi 50 void js_gc(jscontext *cx); // obsolete since jsapi 14 name type description cx jscontext * the context to for which to perform garbage collection.
... added in spidermon
key 52 rt jsruntime * the runtime to for which to perform garbage collection.
JS_GetGlobalObject
the concept of a global object belonging to a context will likely be phased out in future versions of spidermon
key.
...spidermon
key supports applications that have multiple global objects, such as the various window objects in a web browser.
JS_InitClass
javascript code can create new instances using the new
keyword.
... note: starting with spidermon
key 1.8, the prototype and constructor are set up with stub getter and setter operations instead of class operations.
JS_IsConstructing
js_isconstructing returns js_true if the native was defined with jsfun_constructor (js_initclass automatically sets that flag when defining a constructor) and it was called as a constructor, either from javascript, using the new
keyword, or from c/c++ using a jsapi function such as js_constructobject.
...in the common case where a constructor should have the same behavior (creating a new object) whether it is called with the new
keyword or not, it does not need to call js_isconstructing.
JS_IsIdentifier
this article covers features introduced in spidermon
key 17 test whether the given string is a valid ecmascript identifier.
... syntax bool js_isidentifier(jscontext *cx, js::handlestring str, bool *isidentifier); bool js_isidentifier(const char16_t *chars, size_t length); // added in spidermon
key 38 name type description cx jscontext * pointer to a js context from which to derive runtime information.
JS_IsStopIteration
this article covers features introduced in spidermon
key 31 determine whether the value is a stopiteration exception or not.
... syntax // added in spidermon
key 42 bool js_isstopiteration(js::value v); // obsolete since spidermon
key 42 bool js_isstopiteration(jsval v); name type description v js::value the value to check.
JS_MaybeGC
calling js_maybegc periodically when the application is busy, from a jsbranchcallback or jsoperationcallback added in spidermon
key 1.8, can keep memory usage down and improve performance.
... implementation note: spidermon
key 1.8 and earlier determine whether garbage collection is appropriate by analyzing statistics about the gc heap and memory usage since the last garbage collection cycle.
JS_New
this article covers features introduced in spidermon
key 1.8 create an object as though by using the new
keyword and a javascript function.
...added in spidermon
key 38 argc unsigned the number of arguments to pass to the constructor.
JS_NewArrayObject
syntax jsobject * js_newarrayobject(jscontext *cx, const js::handlevaluearray& contents); // added in spidermon
key 31 jsobject * js_newarrayobject(jscontext *cx, size_t length); // added in spidermon
key 31 jsobject * js_newarrayobject(jscontext *cx, int length, jsval *vector); // obsolete since jsapi 30 name type description cx jscontext * the context in which to create the new array.
...added in spidermon
key 31 length size_t or int the length of the new array.
JS_NewFunction
syntax // added in spidermon
key 45 jsfunction * js_newfunction(jscontext *cx, jsnative call, unsigned nargs, unsigned flags, const char *name); // obsolete since jsapi 44 jsfunction * js_newfunctionbyid(jscontext *cx, jsnative call, unsigned nargs, unsigned flags, js::handle<jsid> id); // obsolete since jsapi 39 jsfunction * js_newfunction(jscontext *cx, jsnative call, unsigned nargs, unsigned flags, js::handle<jsobject*> parent, const char *name); jsfunction * js_newfunctionbyid(jscontext *cx, jsnative call, unsigned nargs, unsigned flags, js::handle<jsobject*> parent, js::handle<jsid> id); // added in spidermon
key 17 name t...
...added in spidermon
key 17 description js_newfunction creates a new javascript function implemented in c/c++.
JS_NewObjectForConstructor
added in spidermon
key 17 vp jsval * pointer to a constructor.
...added in spidermon
key 38 description js_newobjectforconstructor creates a new object exactly as the given constructor would if invoked with new.
JS_NewRuntime
added in spidermon
key 38 parentruntime jsruntime * the topmost parent or nullptr .
... added in spidermon
key 31 description js_newruntime initializes the javascript runtime environment.
JS_NumberValue
this article covers features introduced in spidermon
key 17 convert a c floating-point number of type double to a js::value.
... syntax // added in spidermon
key 42 js::value js_numbervalue(double d); // obsolete since spidermon
key 42 jsval js_numbervalue(double d); name type description d double the numeric value to convert.
JS_SameValue
this article covers features introduced in spidermon
key 1.8.1 determines if two jsvals are the same, as determined by the samevalue algorithm in ecmascript 262, 5th edition.
...the samevalue algorithm is equivalent to the following javascript: function samevalue(v1, v2) { if (v1 === 0 && v2 === 0) return 1 / v1 === 1 / v2; if (v1 !== v1 && v2 !== v2) return true; return v1 === v2; } syntax // added in spidermon
key 45 bool js_samevalue(jscontext *cx, js::handle<js::value> v1, js::handle<js::value> v2, bool *same); // obsolete since jsapi 39 bool js_samevalue(jscontext *cx, jsval v1, jsval v2, bool *same); name type description cx jscontext * pointer to a js context from which to derive runtime information.
JS_SetContextCallback
added in spidermon
key 31 callback syntax typedef bool (* jscontextcallback)(jscontext *cx, unsigned contextop, void *data); name type description cx jscontext * pointer to a jscontext which the callback may use to call into jsapi functions.
...added in spidermon
key 31 typedef enum jscontextop { jscontext_new, jscontext_destroy } jscontextop; enumeration meaning jscontext_new js_newcontext successfully created a new jscontext instance.
JS_SetElement
syntax /* added in spidermon
key 31 */ bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, js::handlevalue v); bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, js::handleobject v); bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, js::handlestring v); bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, int32_t v); bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, uint32_t v); bool js_setelement(jscontext *cx, js::handleobject obj, uint32_t index, double v); /* obsolete since jsapi 29 */ bool js_setelement(jscontext *cx, js::handleobjec...
...added in spidermon
key 31 vp js::mutablehandlevalue in/out parameter.
JS_SetGCZeal
this article covers features introduced in spidermon
key 1.8 enable gc zeal, a testing and debugging feature that helps find gc-related bugs in jsapi applications.
...to enable this function in an optimized build, define the macro js_gc_zeal building spidermon
key.
JS_SetOperationCallback
this article covers features introduced in spidermon
key 1.8.5 set a callback function that is automatically called periodically while javascript code runs.
... these methods/types are renamed to js_setinterruptcallback, js_getinterruptcallback, js_requestinterruptcallback and jsinterruptcallback in spidermon
key 30.
JS_StrictlyEqual
this article covers features introduced in spidermon
key 1.8.1 determine whether two javascript values are equal in the sense of the === operator.
... syntax // added in spidermon
key 45 bool js_strictlyequal(jscontext *cx, js::handle<js::value> v1, js::handle<js::value> v2, bool *equal); // obsolete since jsapi 39 bool js_strictlyequal(jscontext *cx, jsval v1, jsval v2, bool *equal); name type description cx jscontext * the context in which to perform the conversion.
JS_SuspendRequest
removed from spidermon
key at or prior to version 45.
...in spidermon
key 1.8 and later, these functions will be present, but will do nothing, in non-js_threadsafe builds.
JS_YieldRequest
this bug (bug 402898) will be fixed in spidermon
key 1.8.
...in spidermon
key 1.8 and later, this function will be present, but will do nothing, in non-js_threadsafe builds.
JSDBGAPI
the jsdbg api is obsolete and has been removed in spidermon
key 35.
... js_setexecutehook js_setcallhook js_setobjecthook js_setthrowhook js_setdebugerrorhook js_setnewscripthook js_setdestroyscripthook js_getglobaldebughooks js_setcontextdebughooks memory usage js_getobjecttotalsize js_getfunctiontotalsize js_getscripttotalsize system objects js_issystemobject js_newsystemobject profiling these functions can be used to profile a spidermon
key application using the mac profiler, shark.
compare-locales
ab-cd browser chrome/browser browser.dtd +backforwardmenu.tooltip +fullzoomenlargecmd.command
key3 +fullzoomreducecmd.command
key2 +fullzoomresetcmd.command
key2 +organizebookmarks.label -showallbookmarkscmd2.label migration/migration.dtd -importfromfile.access
key -importfromfile.label +importfromhtmlfile.access
key +importfromhtmlfile.label you can assume changed strings when you see entities removed and add...
... the output closes with a summary, giving the total counts of missing and obsolete strings and words, and some statistics on how many strings are changed or not, excluding access- and command
keys.
Mozilla Projects
mailnews is the back end of the messaging parts of seamon
key and thunderbird.
... spidermon
key: the mozilla javascript runtime standalone source code releases can be found on the releases page.
Pinning violation reports
public
key pinning helps ensure that people are connecting to the sites they intend.
... if a site makes use of
key pinning, and your browser sees a certificate chain for that site which does not match the pin, firefox will reject the connection and display an error page.
Gecko events
is supported: no event_focus an object has received the
keyboard focus.
... is supported: no event_accelerator_change an object's
keyboard shortcut has changed.
Gecko Roles
role_hot
keyfield represents a hot-
key field that allows the user to enter a combination or sequence of
keystrokes.
... role_ime an object which is used to allow input of characters not found on a
keyboard, such as the input of chinese characters on a western
keyboard.
The Places database
moz_
keywords: this table is a unique list of
keywords.
... the moz_bookmarks table has a
keyword_id column that maps to a record in moz_
keywords table.
History Service Design
a locationbar intelligent algorithm (aka: the awesomebar) allows searchs through bookmarks, history,
keywords (and much more) detaching the user from the old long searches through tree views.
... storing pages and visits pages (intended as uris) are stored into a table shared by both history and bookmarks, every url is unique in this table and is associated with a place id, commonly used as the foreign
key on other tables.
extIApplication
implemented via xpcom service for extiapplication: see the instructions on the fuel (firefox), steel (thunderbird) and smile (seamon
key) pages.
...the object needs to be accessed like any other xpcom service: var application = components.classes["@mozilla.org/fuel/application;1"].getservice(components.interfaces.fueliapplication); see also fuel (firefox), steel (thunderbird) and smile (seamon
key) ...
extIExtension
implemented via xpcom service for extiapplication: see the instructions on the fuel (firefox), steel (thunderbird) and smile (seamon
key) pages.
...also, see the fuel (firefox), steel (thunderbird) and smile (seamon
key) pages.
extIPreferenceBranch
implemented via xpcom service for extiapplication: see the instructions on the fuel (firefox), steel (thunderbird) and smile (seamon
key) pages.
... see bug 481044 void reset() parameters return value examples var myext = application.extensions.get('myapplicationid'); function myfunc (event) { application.console.log('change!'); }; myext.prefs.get("myprefname").events.addlistener("change", myfunc); see also fuel (firefox), steel (thunderbird) and smile (seamon
key) known issues bug 488587 - function registered as fuel preference listener not always called ...
extISessionStorage
implemented via xpcom service for extiapplication: see the instructions on the fuel (firefox), steel (thunderbird) and smile (seamon
key) pages.
... see also fuel (firefox), steel (thunderbird) and smile (seamon
key) ...
XPCOM guide
each item has a
key that identifies the item.
... items are found, added, and removed from the hashtable by using the
key.
Observer Notifications
note: this notification is specific to firefox and seamon
key 2.0 applications application shutdown these are the topics that you can observe on shutdown, in order of appearance.
... user-interaction-active nsidomwindow null sent once every 5000ms while this chrome document sees some kind of user activity (for example,
keyboard or mouse events), and at the exact moment of the state transition from idle to active.
amIWebInstallInfo
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview void install(); attributes attribute type description installs nsivariant an array of addoninstall objects.
... note: prior to gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5), this was an nsidomwindowinternal.
imgIContainerObserver
1.0 66 introduced gecko 1.7 inherits from: nsisupports last changed in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9) if you wish to listen for activities on an imgicontainer, you should implement the framechanged() method.
... notes the arequest parameter was added to this method in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamon
key 2.9).
jsdIStackFrame
inherits from: jsdiephemeral last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) strict mode is on.
...unique tag among all valid jsdicontext objects, useful as a hash
key.
mozIStorageStatement
methods initialize() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) note: this method has been removed for gecko 1.9.1.
... asqlstatement string
key representing the sql statement.
nsIAccessNode
inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) the nsiaccessnode implementations are instantiated lazily.
... methods getchildnodeat() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) get the nth child of this node.
nsIAccessibleText
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) method overview void addselection(in long startoffset, in long endoffset); nsiaccessible getattributerange(in long offset, out long rangestartoffset, out long rangeendoffset); obsolete since gecko 1.9.1 wchar getcharacteratoffset(in long offset); void getcharacterextents(in long offset, out long x, out long y, out long width, out long height, in unsigned long coordtype); long getoffsetatpoint(in long x, in long y, in unsigned long coordtype); void getrangeextents(in long startoffset, in long endoffset, out long x, out long y, out long width, out long height, in unsigned long co...
... constant value description coord_type_screen 0 coord_type_window 1 methods addselection() void addselection( in long startoffset, in long endoffset ); parameters startoffset endoffset getattributerange() obsolete since gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) get the accessible and start/end offsets around the given offset.
nsIAppStartup_MOZILLA_2_0
toolkit/components/startup/public/nsiappstartup.idlscriptable this lets you get information about the times at which
key application startup events occurred.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) in gecko 4.0 this interface was merged into the nsiappstartup interface.
nsIAutoCompleteInput
forcecomplete boolean if true, the text field automatically completes to the default result whenever the user hits the enter
key or the text field loses focus.
... timeout unsigned long the number of milliseconds after a
keystroke before a search begins.
nsIBrowserSearchService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) implemented by: @mozilla.org/browser/search-service;1.
... restoredefaultengines() un-hides all engines installed in the directory corresponding to the directory service's ns_app_search_dir
key.
nsIChannelEventSink
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) channels will try to get this interface from a channel's notificationcallbacks or, if not available there, from the loadgroup's notificationcallbacks.
... onchannelredirect() obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) called when a redirect occurs.
nsIConsoleService
inherits from: nsisupports last changed in gecko 19 (firefox 19 / thunderbird 19 / seamon
key 2.16) implemented by: @mozilla.org/consoleservice;1 as a service: var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.interfaces.nsiconsoleservice); method overview void getmessagearray([array, size_is(count)] out nsiconsolemessage messages, out uint32_t count);obsolete since gecko 19 void getmessagearray([optional] out uint...
... obsolete since gecko 19 (firefox 19 / thunderbird 19 / seamon
key 2.16)this feature is obsolete.
nsIContentPrefService
preferences are saved as
key/value pairs on a per-website basis.
... last changed in gecko 2 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) inherits from: nsisupports implemented by: @mozilla.org/content-pref/service;1.
nsIDOMEvent
inherits from: nsisupports last changed in gecko 16.0 (firefox 16.0 / thunderbird 16.0 / seamon
key 2.13) note: as of gecko 16.0, the nsiprivatedomevent interface was merged into this interface.
... mousedown 0x00000001 mouseup 0x00000002 mouseover 0x00000004 mouseout 0x00000008 mousemove 0x00000010 mousedrag 0x00000020 click 0x00000040 dblclick 0x00000080
keydown 0x00000100
keyup 0x00000200
keypress 0x00000400 dragdrop 0x00000800 focus 0x00001000 blur 0x00002000 select 0x00004000 change 0x00008000 reset 0x00010000 submit 0x00020000 scroll 0x00040000 load 0x00080000 ...
nsIDOMStorageManager
1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) implemented by @mozilla.org/dom/storagemanager;1 as a service: var domstoragemanager = components.classes["@mozilla.org/dom/storagemanager;1"] .getservice(components.interfaces.nsidomstoragemanager); method overview void clearofflineapps(); nsidomstorage getlocalstorageforprincipal(in nsiprincipal aprincipal, in domstring adocumenturi); long getusage(in astring aownerdomain); methods clearofflineapps() clears
keys owned by offline applications.
...usage is checked against the domain of the page that set the
key (the owner domain), not the domain of the storage object.
nsIDOMWindowInternal
66 introduced gecko 1.0 deprecated gecko 8.0 inherits from: nsidomwindow last changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) in gecko 8.0 this interface was merged into the nsidomwindow interface.
... note: prior to gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4), this attribute was part of nsidomwindow_2_0_branch.
nsIDragService
inherits from: nsisupports last changed in gecko 43 (firefox 43 / thunderbird 43 / seamon
key 2.40) note: using this interface directly from add-on code is deprecated.
... firedrageventatsource() obsolete since gecko 43 (firefox 43 / thunderbird 43 / seamon
key 2.40)this feature is obsolete.
nsIEditor
66 introduced gecko 1.0 inherits from: nsisupports last changed in gecko 18.0 (firefox 18.0 / thunderbird 18.0 / seamon
key 2.15) method overview [noscript] void init(in nsidomdocument doc, in nsicontent aroot, in nsiselectioncontroller aselcon, in unsigned long aflags); void setattributeorequivalent(in nsidomelement element, in astring sourceattrname, in astring sourceattrvalue, in boolean asuppresstransaction); void removeattributeorequivalent(in nsidomelement element, in domstring sourceattrname, in boolean asuppresstransaction); void postcreate(); void predestroy(in boolean adestroyingframes)...
...this parameter was removed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2).
nsIFile
inherits from: nsisupports last changed in gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamon
key 2.27) nsifile is the correct platform-agnostic way to specify a file; you should always use this instead of a string to ensure compatibility.
...for specific handling before gecko 9 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6), please see bug 682571.
nsIFilePicker
inherits from: nsisupports last changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamon
key 2.14) implemented by: @mozilla.org/filepicker;1.
... show() obsolete since gecko 57.0 (firefox 57.0 / thunderbird 57.0 / seamon
key 2.54) displays the file picker dialog.
nsIGSettingsCollection
1.0 66 introduced gecko 6.0 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3) method overview boolean getboolean(in autf8string
key); long getint(in autf8string
key); autf8string getstring(in autf8string
key); void setboolean(in autf8string
key, in boolean value); void setint(in autf8string
key, in long value); void setstring(in autf8string
key, in autf8string value); methods getboolean() boolean getboolean( in autf8string
key ); parameters
key return value getint() long getint( in autf8string
key ); parameters
key return value getstring() autf8string getstring( in autf8string
key ); parameter...
...s
key return value setboolean() void setboolean( in autf8string
key, in boolean value ); parameters
key value setint() void setint( in autf8string
key, in long value ); parameters
key value setstring() void setstring( in autf8string
key, in autf8string value ); parameters
key value ...
nsIHTMLEditor
inherits from: nsisupports last changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2) method overview void adddefaultproperty(in nsiatom aproperty, in astring aattribute, in astring avalue); void addinsertionlistener(in nsicontentfilter infilter); void align(in astring aalign); boolean breakisvisible(in nsidomnode anode); boolean candrag(in nsidomevent aevent); void checkselectionstateforanonymousbuttons(in nsiselection aselection); nsidomelement createanonymouselement(in astring atag, in nsidomnode aparentnode, in astring aanonclass, in boolean aiscreatedhidden); nsidomelement createelementwithdefaults(in astring...
... returninparagraphcreatesnewparagraph boolean a boolean indicating if a return
key pressed in a paragraph creates another paragraph or just inserts a <br> at the caret.
nsIHttpChannelInternal
66 introduced gecko 1.0 inherits from: nsisupports last changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamon
key 2.3) method overview void getrequestversion(out unsigned long major, out unsigned long minor); void getresponseversion(out unsigned long major, out unsigned long minor); void httpupgrade(in acstring aprotocolname, in nsihttpupgradelistener alistener); void setcookie(in string acookieheader); void setupfallbackchannel(in string afallback
key); attributes attribute type description canceled boolean returns true if and only if ...
...void setupfallbackchannel( in string afallback
key ); parameters afallback
key the fallback
key.
nsILocalFileMac
inherits from: nsilocalfile last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview cfurlref getcfurl(); native code only!
...native code only!inittoappwithcreatorcode obsolete since gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1)this feature is obsolete.
nsILoginManagerCrypto
1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) method overview astring decrypt(in astring ciphertext); astring encrypt(in astring plaintext); attributes attribute type description isloggedin boolean current login state of the token used for encryption.
...can throw if the user cancels entry of their master password, or if the ciphertext value can not be successfully decrypted (for example, if it was encrypted with some other
key).
nsIMsgIdentity
each identity is identified by a
key, which is the id string in the identity preferences, such as in mail.identity.<id>.replyto.
... smtpserver
key astring the preferred smtp server for this identity.
nsINavBookmarkObserver
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamon
key 2.18) method overview void onbeforeitemremoved(in long long aitemid, in unsigned short aitemtype, in long long aparentid, in acstring aguid, in acstring aparentguid); obsolete since gecko 21.0 void onbeginupdatebatch(); void onendupdatebatch(); void onfolderadded(in print64 folder, in print64 parent, in print32 index); obsolete since gecko 1.9 void onfolderchanged(in print64 folder, in acstring property); obsolete since gecko 1.9 void onfoldermoved(in print64 fo...
...ype, in nsiuri auri, in long long aparentid, in acstring aguid, in acstring aparentguid); void onseparatoradded(in print64 parent, in print32 index); obsolete since gecko 1.9 void onseparatorremoved(in print64 parent, in print32 index); obsolete since gecko 1.9 methods onbeforeitemremoved() obsolete since gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamon
key 2.18) note: this method was removed in gecko 21.0 as part of bug 826409.
nsINavHistoryService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 22 (firefox 22 / thunderbird 22 / seamon
key 2.19) implemented by: "@mozilla.org/browser/nav-history-service;1".
... addvisit() obsolete since gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamon
key 2.19) note: this method was removed in gecko 22.0.
nsIObserverService
this string-valued
key uniquely identifies the notification.
...this string-valued
key uniquely identifies the notification.
nsIPushService
inherits from: nsisupports last changed in gecko 46.0 (firefox 46.0 / thunderbird 46.0 / seamon
key 2.43) push lets a remote server send payloads to a web site, add-on, or component running in the browser.
... subscription.endpoint; subscription.get
key("p256dh"); subscription.get
key("auth"); } ); getsubscription() fetches an existing subscription.
nsIResumableChannel
inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) method overview void asyncopenat(in nsistreamlistener listener, in nsisupports ctxt, in unsigned long startpos, in nsiresumableentityid entityid); obsolete since gecko 1.8 void resumeat(in unsigned long long startpos, in acstring entityid); attributes attribute type description entityid acstring the entity id for this uri.
... methods asyncopenat() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) open this channel, and read starting at the specified offset.
nsIScreen
inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10) use nsiscreenmanager to obtain references to screens.
... screen rotation constants requires gecko 13.0(firefox 13.0 / thunderbird 13.0 / seamon
key 2.10) constant value description rotation_0_deg 0 0° of rotation (that is, no rotation, or default orientation).
nsIScriptError2
1.0 66 introduced gecko 2.0 obsolete gecko 12.0 inherits from: nsiscripterror last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) in gecko 12.0 this interface was merged into the nsiscripterror interface.
...prior to gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6), this was the outer window id.
nsISelection
inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamon
key 2.10) interface for manipulating and querying the current selected range of nodes within the document.
... selectionlanguagechange() modifies the cursor bidi level after a change in
keyboard direction.
nsISessionStartup
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) implemented by: @mozilla.org/browser/sessionstartup;1.
...note: prior to gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5), this was a string.
nsISmsDatabaseService
nsismsdatabaseservice dom/sms/interfaces/nsismsdatabaseservice.idlscriptable used to store and manage sms text messages for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) implemented by: @mozilla.org/sms/smsdatabaseservice;1.
... markmessageread() requires gecko 15.0(firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) void markmessageread( in long messageid, in boolean value, in long requestid, [optional] in unsigned long long processid ); parameters messageid a number representing the id of the message.
nsISocketTransportService
init() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void init(); parameters none.
... shutdown() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) void shutdown(); parameters none.
nsIStringBundleService
to access this service, use: var stringbundleservice = components.classes["@mozilla.org/intl/stringbundle;1"] .getservice(components.interfaces.nsistringbundleservice); method overview nsistringbundle createbundle(in string aurlspec); nsistringbundle createextensiblebundle(in string aregistry
key); void flushbundles(); wstring formatstatusmessage(in nsresult astatus, in wstring astatusarg); methods createbundle() nsistringbundle createbundle( in string aurlspec ); parameters aurlspec the url of the properties file to load.
... createextensiblebundle() nsistringbundle createextensiblebundle( in string aregistry
key ); parameters aregistry
key the name of the category under which the properties file(s) have been registered.
nsIToolkitProfileService
inherits from: nsisupports last changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamon
key 2.0) note: starting in gecko 1.9.1, this service is implemented by @mozilla.org/toolkit/profile-service;1.
...os.file is available from gecko 18 (firefox 18.0 / thunderbird 18.0 / seamon
key 2.15).
nsIURL
inherits from: nsiuri last changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) http://host/directory/filebasename.fileextension?query http://host/directory/filebasename.fileextension#ref http://host/directory/filebasename.fileextension;param \ \ / \ ----------------------- \ | / \ filename / ---------------------------- | filepath you can get a nsiurl from an nsiuri, using the queryinterface() method: var myuri = compon...
...obsolete since gecko 9.0 note: this was removed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6) because the semicolon is not actually valid for this purpose and should not have been specially handled.
nsIXULAppInfo
1.0 66 introduced gecko 1.8 inherits from: nsisupports last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamon
key 1.0) in xulrunner applications nsixulappinfo obtains app-specific information from application.ini.
...this must be ascii, and is normally mixed-case, for example "firefox", "thunderbird" or "seamon
key".
nsIZipReader
inherits from: nsisupports last changed in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7) implemented by: @mozilla.org/libjar/zip-reader;1.
... starting in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), the nsizipreader api supports a limited 8 bit code page usage.
Performance
for example sqlite> explain query plan select * from moz_historyvisit v join moz_history h on v.page_id = h.id where v.visit_date > 1000000000; 0|0|table moz_historyvisit as v with index moz_historyvisit_dateindex 1|1|table moz_history as h using primary
key this tells us that it will first look up in moz_historyvisit using an index, and will then look up in moz_history using the primary
key.
... both of these are "good" because they use indices and primary
keys, which are fast.
Weak reference
it's
key to note that an nsweakptr has exactly the same interface as an nscomptr.
...additionally, nscomptr now supports the new
key do_queryreferent to simplify life even further.
XPIDL
attributes can be declared readonly, in which case setting causes an error to be thrown in script contexts and native contexts lack the set method, by using the "readonly"
keyword.
... resources (mostly outdated) some unsorted notes including a
keyword list xpidl is a tool for generating c++ headers, java interfaces, xpconnect typelibs, and html documentation from xpidl files generating xpt files on windows a google groups post with instructions on how to use variable-length argument lists using xpidl.
XUL Overlays
and given the following overlay: <?xml version="1.0"?> <overlay id="singleitemex" xmlns:html="http://www.w3.org/1999/xhtml" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <menupopup id="menu_filepopup"> <menu id="file_menu"> <menuitem name="super stream player"/> </menu> </menupopup> </overlay> the result will be: ...
...<overlay id="main-overlay" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <menu id="file_menu"> <menuitem name="example one"/> <menuitem name="example two"/> <menuitem name="example three"/> <menuitem name="example four" position="1"/> </menu> </overlay> the node with the position attribute orders itself to the top of the menu.
Address Book examples
note: thunderbird and seamon
key user interfaces now reference 'contacts' not 'cards' however, as the backend still uses the 'cards' terminology, that is what is used here this article provides examples on accessing and manipulating thunderbird address books.
... the "mydomain" and "addrbook" behaviours can be changed by passing an identity
key (see nsimsgidentity.
key) via an attribute autocompletesearchparam on the textbox element.
MailNews fakeserver
there are added in alphabetical order, which may help for purposes that rely on article
key orders.
...e api of the news fakeserver itself: nntpdaemon api name arguments returns notes [constructor] daemon flags n/a flags are defined below addgroup group name (string), is postable nothing adds the group (resetting if it exists) addarticle newsarticle object nothing adds the message to all groups in the article's group list addarticletogroup newsarticle object, group (string), integral
key for group nothing adds the message to the specified group with the specified
key getgroup group name group object group is a map
key->article, with the additional properties: flags,
keys (array of
keys), next
key (next
key to use for new articles) getgroupstats group name array of [size, min, max] the size is an estimate if nntp_real_length is not specified in the daemon flags.
Mail client architecture overview
events - as data changes throughout the mail application, the event system notifies
key components such as datasources and the url system of these changes.
... msgdb - a message database for a given folder is a summary of some of the
key attributes in a folder such as the author and subject.
Main Windows
the rest is loaded from overlays: mailwindowoverlay.xul this is the red sections shown in the interface above (where?), including the toolbars, notification bars, and the status bar, but also includes most of the commands,
keysets, and context menus of thunderbird, along with a whole lot of javascript.
... mailwindowoverlay.xul this is the red sections shown in the interface above, including the toolbars, notification bars and the status bar.it also includes most of the commands,
keysets, and context menus of thunderbird, along with a whole lot of javascript.
customDBHeaders Preference
user_pref( "mailnews.customdbheaders", "x-superfluous x-other"); adding a column the reply-to column tutorial does a good job of explaining how to add a column with an overlay, so i'll just show you my overlay file: <?xml version="1.0" ?> <overlay id="colsuperfluousoverlay" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type='application/javascript' src='chrome://superfluous/content/superfluous.js'/> <tree id="threadtree"> <treecols id="threadcols"> <splitter class="tree-splitter" /> <treecol id="colsuperfluous" persist="hidden ordinal width" currentview="unthreaded" flex="1" label="superfluous" tooltiptext="click ...
...this is the superfluous.js file referenced from within the superfluous_overlay.xul file: dump(" ~ ~ ~ ~ superfluous ~ ~ ~ ~ \n"); var columnhandler = { getcelltext: function(row, col) { //get the messages header so that we can extract the 'x-superfluous' field var
key = gdbview.get
keyat(row); var hdr = gdbview.db.getmsghdrfor
key(
key); var retval = hdr.getstringproperty("x-superfluous"); dump("x-superfluous: " + retval + "\n"); return retval; }, getsortstringforrow: function(hdr) { return hdr.getstringproperty("x-superfluous"); }, isstring: function() {return true;}, getcellproperties: function(row, col, props){}...
Using Mozilla code in other projects
various components of the platform, such as the spidermon
key javascript engine, can be used in your own projects without the rest of the platform.
... using mozilla components spidermon
key spidermon
key is the javascript runtime engine used by mozilla projects.
Working with windows in chrome code
it has a more useful example opener code: window.opendialog("chrome://test/content/progress.xul", "myprogress", "chrome,centerscreen", {status: "reading remote data", maxprogress: 50, progress: 10} ); progress.xul: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window onload="onload();" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script><![cdata[ var gstatus, gprogressmeter; var maxprogress = 100; function onload() { gstatus = document.getelementbyid("status"); gprogressmeter = document.getelementbyid("progressmeter"); if("arguments" in window && window.arguments.length > 0) { maxprogress = window.arguments[0].maxprogress; setprogress(window.arguments[0].progress); ...
... application.storage.set(
keyname, data); var data = application.storage.get(
keyname, default); where:
keyname is a string used to identify the data data is the data default is the data value to return if
keyname does not exists pros: its the "right way".
Plug-in Development Overview - Plugins
starting in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7), you can get the origin of the document in a secure, convenient way by calling npn_getvalue() to retrieve the value of the variable npnvdocumentorigin.
...plug-in-identifier should follow the specification): hklm/software/mozillaplugins/plugin-identifier descripton: reg_sz "description of the plugin" path: reg_sz "c:\..path to the plugin.dll" productname: reg_sz "the plugin name" vendor: reg_sz "the plugin author/vendor" version: reg_sz "0.5.whatever plugin version string" hklm/software/mozillaplugins/plugin-identifier/mimetypes add a sub-
key for each mime type the plugin supports, with no values install to known locations on linux and mac on linux and mac, plug-ins are installed to well-known locations: linux: /usr/lib/mozilla/plugins or /usr/lib64/mozilla/plugins mac: /library/internet plug-ins or ~/library/internet plug-ins ...
Preferences System
reference information about them is available below: preferences system documentation: introduction: getting started | examples | troubleshooting reference: prefwindow | prefpane | preferences | preference | xul attributes use code for a typical preferences window may look like this: <prefwindow id="apppreferences" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <prefpane id="pane1" label="&pane1.title;"> <preferences> <preference id="pref1" name="pref.name" type="bool"/> </preferences> ..
... ui elements that refer to the preferences above, e.g.: <checkbox id="check1" preference="pref1" label="&check1.label;" access
key="&check1.access
key;"/> </prefpane> <prefpane id="pane2" label="&pane2.title;" src="chrome://uri/to/pane.xul"/> </prefwindow> pane content can be specified inline or an external chrome uri supplied for pane content to be loaded in via a dynamic overlay.
3D view - Firefox Developer Tools
controlling the 3d view there are
keyboard shortcuts and mouse controls available for the 3d view.
... function
keyboard mouse zoom in/out + / - scroll wheel up/down rotate left/right a / d mouse left/right rotate up/down w / s mouse up/down pan left/right ← / → mouse left/right pan up/down ↑ / ↓ mouse up/down reset zoom level 0 resets the zoom level to the default focus on selected node f makes sure the currently selected node is visible reset view r resets zoom, rotation, and panning to the default hide current node x makes the currently selected node invisible; this can be helpful if you need to get at a node that's obscured use cases for the 3d view there are a variety of ways the 3d view is useful: if you have broken ...
Browser Toolbox - Firefox Developer Tools
you can also open it with the ctrl + alt +shift + i
key combination ( cmd + opt +shift + i on a mac).
... now when you open any popup, it will stay open until you press the esc
key.
Debugger.Environment - Firefox Developer Tools
spidermon
key creates debugger.environment instances as needed as the debugger inspects stack frames and function objects; calling debugger.environment as a function or constructor raises a typeerror exception.
... spidermon
key creates exactly one debugger.environment instance for each environment it presents via a given debugger instance: if the debugger encounters the same environment through two different routes (perhaps two functions have closed over the same environment), spidermon
key presents the same debugger.environment instance to the debugger each time.
Network request details - Firefox Developer Tools
note that the
keys in the response header are all in lowercase, while the request headers
keys are not.
...(there may be some exceptions, such as x-firefox-spdy, which is added by firefox.) you can copy some or all of the response header in json format by using the context menu: if you select copy, a single
key word, value pair is copied.
Animation inspector example: Web Animations API - Firefox Developer Tools
in: 0.5em; box-shadow: 1px 1px 5px #808080; margin: 1.5em; } .channel > * { vertical-align: middle; line-height: normal; } #icon { width: 50px; height: 50px; filter: grayscale(100%); } #note { margin-left: 1em; font: 1.5em "open sans",arial,sans-serif; overflow: hidden; white-space: nowrap; display: inline-block; opacity: 0; width: 0; } javascript content var icon
keyframeset = [ { transform: 'scale(1)', filter: 'grayscale(100%)'}, { filter: 'grayscale(100%)', offset: 0.333}, { transform: 'scale(1.5)', offset: 0.666 }, { transform: 'scale(1.5)', filter: 'grayscale(0%)'} ]; var note
keyframeset = [ { opacity: '0', width: '0'}, { opacity: '1', width: '300px'} ]; var icon
keyframeoptions = { duration: 750, fill: 'forwards', easing: 'ease-in', ...
... enddelay: 100 } var note
keyframeoptions = { duration: 500, fill: 'forwards', easing: 'ease-out', delay: 150 } var icon = document.getelementbyid("icon"); var note = document.getelementbyid("note"); var iconanimation = icon.animate(icon
keyframeset, icon
keyframeoptions); var noteanimation = note.animate(note
keyframeset, note
keyframeoptions); iconanimation.pause(); noteanimation.pause(); var firsttime = true; function animatechannel(e) { if (e.button != 0) { return; } if (e.target.id != "icon") { return; } if (firsttime) { iconanimation.play(); noteanimation.play(); firsttime = false; } else { iconanimation.reverse(); noteanimation.reverse(); } } document.addeventlistener("click", animatechannel); ...
Animating CSS properties - Firefox Developer Tools
with css animations you specify a number of
keyframes, each of which uses css to define the appearance of the element at a particular stage of the animation.
... the browser creates the animation as a transition from each
keyframe to the next.
Responsive Design Mode - Firefox Developer Tools
from the developer tools toolbox: press the responsive design mode button in the toolbox's toolbar: from the
keyboard: press ctrl + shift + m (or cmd + opt + m on macos).
... screen size - you can edit the width and height values to change the device size by editing a number directly or using the up and down
keys to increase or decrease the value by 1 pixels on each
keypress or hold and shift to change the value by 10.
Toolbox - Firefox Developer Tools
see also
keyboard shortcuts.
...
keyboard shortcuts these shortcuts work whenever the toolbox is open, no matter which tool is active.
Rich output - Firefox Developer Tools
click on the triangle, and the object will be expanded to show its contents: starting with firefox 67 (available now in firefox developer) you can use the arrow
keys on your
keyboard to navigate through objects displayed in the console.
... the right-arrow
key opens the details of an object and the left-arrow
key closes open objects.
Web Console - Firefox Developer Tools
keyboard shortcuts shortcut reference.
... opening the web console you open the web console from a menu or with a
keyboard shortcut: choose web console from the web developer submenu in the firefox menu (or tools menu if you display the menu bar or are on mac os x) press the ctrl+shift+k (command+option+k on os x)
keyboard shortcut.
Firefox Developer Tools
the core tools you can 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.
... download firefox developer edition connecting the developer tools if you open the developer tools using
keyboard shortcuts or the equivalent menu items, they'll target the document hosted by the currently active tab.
Animation() - Web APIs
although in the future other effects such as sequenceeffects or groupeffects might be possible, the only kind of effect currently available is
keyframeeffect.
... examples in the follow the white rabbit example, the animation() constructor is used to create an animation for the rabbitdown
keyframes using the document's timeline: var rabbitdownanimation = new animation(rabbitdown
keyframes, document.timeline); specifications specification status comment web animationsthe definition of 'animation()' in that specification.
Animation - Web APIs
this will usually be a
keyframeeffect object.
... methods animation.cancel() clears all
keyframeeffects caused by this animation and aborts its playback.
AudioWorkletProcessor() - Web APIs
parameterdata optional an object containing the initial values of custom audioparam objects on this node (in its parameters property), with
key being the name of a custom parameter and value being its initial value.
... in the options object we pass processoroptions with a map instance under someusefulvariable
key.
AudioWorkletProcessor.process - Web APIs
parameters an object containing string
keys and float32array values.
... for each custom audioparam defined using the parameterdescriptors getter, the
key in the object is a name of that audioparam, and the value is a float32array.
CSSRule - Web APIs
(until the documentation is completed, see the interface definition in the mozilla source code: nsidomcssimportrule.) cssrule.media_rule 4 cssmediarule cssrule.font_face_rule 5 cssfontfacerule cssrule.page_rule 6 csspagerule cssrule.
keyframes_rule 7 css
keyframesrule cssrule.
keyframe_rule 8 css
keyframerule reserved for future use 9 should be used to define color profiles in the future cssrule.namespace_rule 10 cssnamespacerule cssrule.counter_style_rule 11 csscounterstylerule cssrule.supports_rule 12 csssupportsrule ...
... working draft added values
keyframes_rule and
keyframe_rule.
CSSUnparsedValue - Web APIs
methods cssunparsedvalue.entries() returns an array of a given object's own enumerable property [
key, value] pairs in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... cssunparsedvalue.
keys() returns a new array iterator object that contains the
keys for each index in the cssunparsedvalue object.
CSS Object Model (CSSOM) - Web APIs
reference animationevent caretposition css csscharsetrule cssconditionrule csscounterstylerule cssfontfacerule cssfontfeaturevaluesmap cssfontfeaturevaluesrule cssgroupingrule cssimportrule css
keyframerule css
keyframesrule cssmarginrule cssmediarule cssnamespacerule csspagerule cssrule cssrulelist cssstyledeclaration cssstylesheet cssstylerule csssupportsrule cssvariablesmap cssviewportrule elementcssinlinestyle fontface fontfaceset fontfacesetloadevent geometryutils getstyleutils linkstyle medialist mediaquerylist mediaquerylistevent mediaquerylistlistener screen ...
... css typed object model cssimagevalue css
keywordvalue cssmathinvert cssmathmax cssmathmin cssmathnegate cssmathproduct cssmathsum cssmathvalue cssmatrixcomponent cssnumericarray cssnumericvalue cssperspective csspositionvalue cssrotate cssscale cssskew cssskewx cssskewy cssstylevalue csstransformcomponent csstransformvalue csstranslate cssunitvalue cssunparsedvalue cssvariablereferencevalue stylepropertymap stylepropertymapreadonly obsolete cssom interfaces cssprimitivevalu...
Cache.addAll() - Web APIs
the request objects created during retrieval become
keys to the stored response operations.
... note: addall() will overwrite any
key/value pairs previously stored in the cache that match the request, but will fail if a resulting put() operation would overwrite a previous cache entry stored by the same addall() method.
Cache.put() - Web APIs
the put() method of the cache interface allows
key/value pairs to be added to the current cache object.
... fetch(url).then(function(response) { if (!response.ok) { throw new typeerror('bad response status'); } return cache.put(url, response); }) note: put() will overwrite any
key/value pair previously stored in the cache that matches the request.
CacheStorage.delete() - Web APIs
we return the
keys of the caches in the cachestorage object using cachestorage.
keys, then check each
key to see if it is in the array.
... this.addeventlistener('activate', function(event) { var cachestokeep = ['v2']; event.waituntil( caches.
keys().then(function(
keylist) { return promise.all(
keylist.map(function(
key) { if (cachestokeep.indexof(
key) === -1) { return caches.delete(
key); } })); }) ); }); specifications specification status comment service workersthe definition of 'cachestorage: delete' in that specification.
CacheStorage.match() - Web APIs
the match() method of the cachestorage interface checks if a given request or url string is a
key for a stored response.
...equivalent functionality is to call cache.match() on each cache (in the order returned by caches.
keys()) until a response is returned.
Credential - Web APIs
valid values are password, federated and public-
key.
... (for passwordcredential, federatedcredential and public
keycredential) event handlers none.
CredentialsContainer.get() - Web APIs
public
key: an public
keycredentialrequestoptions object containing requirements for returned webauthn credentials.
... web authentication: an api for accessing public
key credentials level 1 recommendation initial definition.
DOMTokenList.entries() - Web APIs
the domtokenlist.entries() method returns an iterator allowing you to go through all
key/value pairs contained in this object.
...we when retrieve an iterator containing the
key/value pairs using entries(), then iterate through each one using a for...of loop, writing them to the <span>'s node.textcontent.
DeprecationReportBody - Web APIs
t('ul'); outputelem.appendchild(list); for(let i = 0; i < reports.length; i++) { let listitem = document.createelement('li'); let textnode = document.createtextnode('report ' + (i + 1) + ', type: ' + reports[i].type); listitem.appendchild(textnode); let innerlist = document.createelement('ul'); listitem.appendchild(innerlist); list.appendchild(listitem); for (let
key in reports[i].body) { let innerlistitem = document.createelement('li'); let
keyvalue = reports[i].body[
key]; innerlistitem.textcontent =
key + ': ' +
keyvalue; innerlist.appendchild(innerlistitem); } } } the reports parameter contains an array of all the reports in the observer's report queue.
... we loop over each report using a basic for loop, then iterate over each entry of in the report's body (a deprecationreportbody instance) using a for...in structure, displaying each
key/value pair inside a list item.
Document.createElementNS() - Web APIs
important namespace uris html http://www.w3.org/1999/xhtml svg http://www.w3.org/2000/svg mathml http://www.w3.org/1998/math/mathml xul http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul xbl http://www.mozilla.org/xbl example this creates a new <div> element in the xhtml namespace and appends it to the vbox element.
... although this is not an extremely useful xul document, it does demonstrate the use of elements from two different namespaces within a single document: <?xml version="1.0"?> <page xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml" title="||working with elements||" onload="init()"> <script type="application/javascript"><![cdata[ let container; let newdiv; let txtnode; function init(){ container = document.getelementbyid("containerbox"); newdiv = document.createelementns("http://www.w3.org/1999/xhtml", "div"); txtnode = document.createtextnode("this is text that was constructed dynamically with createelementns and createtextnode then inserted into the document using appendchild."); newdiv.appendchi...
Document.execCommand() - Web APIs
(internet explorer and edge support only heading tags h1–h6, address, and pre, which must be wrapped in angle brackets, such as "<h1>".) forwarddelete deletes the character ahead of the cursor's position, identical to hitting the delete
key on a windows
keyboard.
... insertbronreturn controls whether the enter
key inserts a <br> element, or splits the current block element into two.
Document.importNode() - Web APIs
with gecko 28.0 (firefox 28 / thunderbird 28 / seamon
key 2.25 / firefox os 1.3), the console warns developers not to omit the argument.
... starting with gecko 29.0 (firefox 29 / thunderbird 29 / seamon
key 2.26)), a shallow clone is defaulted instead of a deep clone.
Document.xmlEncoding - Web APIs
obsolete since gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7)this feature is obsolete.
... warning: do not use this attribute; it has been removed from the dom level 4 specification and is no longer supported in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamon
key 2.7).
EffectTiming.delay - Web APIs
element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including delay.
... the value of delay corresponds directly to effecttiming.delay in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
EffectTiming.duration - Web APIs
element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including duration.
... the value of duration corresponds directly to animationeffecttimingreadonly.duration in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
EffectTiming.endDelay - Web APIs
element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() all accept an object of timing properties including enddelay.
... the value of enddelay corresponds directly to animationeffecttimingreadonly.enddelay in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
EffectTiming.iterationStart - Web APIs
element.animate(),
keyframeeffectreadonly.
keyframeeffectreadonly(), and
keyframeeffect.
keyframeeffect() all accept an object of timing properties including iterationstart.
... the value of iterationstart corresponds directly to animationeffecttimingreadonly.iterationstart in timing objects returned by animationeffectreadonly,
keyframeeffectreadonly, and
keyframeeffect.
EffectTiming - Web APIs
the effecttiming dictionary, part of the web animations api, is used by element.animate(),
keyframeeffectreadonly(), and
keyframeeffect() to describe timing properties for animation effects.
... simply put, these properties describe how the user agent should go about making the transition from
keyframe to
keyframe, and how to behave when the animation begins and ends.
Element.getBoundingClientRect() - Web APIs
<div></div> div { width: 400px; height: 200px; padding: 20px; margin: 50px auto; background: purple; } let elem = document.queryselector('div'); let rect = elem.getboundingclientrect(); for (var
key in rect) { if(typeof rect[
key] !== 'function') { let para = document.createelement('p'); para.textcontent = `${
key } : ${ rect[
key] }`; document.body.appendchild(para); } } notice how the width/height are equal to the equal to its width/height + padding.
...while the in operator and for...in will find returned properties, other apis such as object.
keys() will fail.
Event.timeStamp - Web APIs
example html <p> focus this iframe and press any
key to get the current timestamp for the
keypress event.
... </p> <p>timestamp: <span id="time">-</span></p> javascript function gettime(event) { var time = document.getelementbyid("time"); time.firstchild.nodevalue = event.timestamp; } document.body.addeventlistener("
keypress", gettime); result reduced time precision to offer protection against timing attacks and fingerprinting, the precision of event.timestamp might get rounded depending on browser settings.
Event.type - Web APIs
example this example logs the event type whenever you press a
keyboard
key or click a mouse button.
... html <p>press any
key or click the mouse to get the event type.</p> <p id="log"></p> javascript function geteventtype(event) { const log = document.getelementbyid('log'); log.innertext = event.type + '\n' + log.innertext; } //
keyboard events document.addeventlistener('
keydown', geteventtype, false); // first document.addeventlistener('
keypress', geteventtype, false); // second document.addeventlistener('
keyup', geteventtype, false); // third // mouse events document.addeventlistener('mousedown', geteventtype, false); // first document.addeventlistener('mouseup', geteventtype, false); // second document.addeventlistener('click', geteventtype, false); // third result specifications specification status comment domthe definition of 'event.ty...
Event - Web APIs
clicking the mouse button or tapping
keyboard, or generated by apis to represent the progress of an asynchronous task.
...event audioprocessingevent beforeinputevent beforeunloadevent blobevent clipboardevent closeevent compositionevent cssfontfaceloadevent customevent devicelightevent devicemotionevent deviceorientationevent deviceproximityevent domtransactionevent dragevent editingbeforeinputevent errorevent fetchevent focusevent gamepadevent hashchangeevent idbversionchangeevent inputevent
keyboardevent mediastreamevent messageevent mouseevent mutationevent offlineaudiocompletionevent overconstrainederror pagetransitionevent paymentrequestupdateevent pointerevent popstateevent progressevent relatedevent rtcdatachannelevent rtcidentityerrorevent rtcidentityevent rtcpeerconnectioniceevent sensorevent storageevent svgevent svgzoomevent timeevent touchevent trackeven...
EventTarget.addEventListener() - Web APIs
tlistener('dblclick', this, false); } const s = new something(document.body); another way of handling the reference to this is to pass to the eventlistener a function that calls the method of the object that contains the fields that need to be accessed: class someclass { constructor() { this.name = 'something good'; } register() { const that = this; window.addeventlistener('
keydown', function(e) { that.somemethod(e); }); } somemethod(e) { console.log(this.name); switch(e.
keycode) { case 5: // some code here...
...other events and associated event handlers such as blur (onblur) and
keypress (on
keypress) behave similarly.
FormData() - Web APIs
syntax var formdata = new formdata(form) parameters form optional an html <form> element — when specified, the formdata object will be populated with the form's current
keys/values using the name property of each element for the
keys and their submitted value for the values.
... example the following line creates an empty formdata object: var formdata = new formdata(); // currently empty you could add a
key/value pair to this using formdata.append: formdata.append('username', 'chris'); or you can specify the optional form argument when creating the formdata object, to prepopulate it with values from the specified form: <form id="myform" name="myform"> <div> <label for="username">enter name:</label> <input type="text" id="username" name="username"> </div> <div> <label for="useracc">enter account number:</label> <input type="text" id="useracc" name="useracc"> </div> <div> <label for="userfile">upload file:</label> <input type="file" id="userfile" name="userfile"> </div> <input type=...
Using FormData Objects - Web APIs
the formdata object lets you compile a set of
key/value pairs to send using xmlhttprequest.
... it is primarily intended for use in sending form data, but can be used independently from forms in order to transmit
keyed data.
FormData.has() - Web APIs
the has() method of the formdata interface returns a boolean stating whether a formdata object contains a certain
key.
... syntax formdata.has(name); parameters name a usvstring representing the name of the
key you want to test for.
GlobalEventHandlers.onanimationcancel - Web APIs
#box { width: var(--boxwidth); height: var(--boxwidth); left: 0; top: 0; border: 1px solid #7788ff; margin: 0; position: relative; background-color: #2233ff; display: flex; justify-content: center; animation: 5s ease-in-out 0s infinite alternate both slidebox; } the animation's
keyframes are described next, plotting a course from the top-left corner of the content box to the bottom-right corner.
... @
keyframes slidebox { from { left:0; top:0; } to { left:calc(100% - var(--boxwidth)); top:calc(100% - var(--boxwidth)) } } since the animation is described as taking place an infinite number of times, alternating direction each time, the box will glide back and forth between the two corners until stopped or the page is closed.
GlobalEventHandlers.onanimationiteration - Web APIs
#box { width: var(--boxwidth); height: var(--boxwidth); left: 0; top: 0; border: 1px solid #7788ff; margin: 0; position: relative; background-color: #2233ff; display: flex; justify-content: center; animation: 2s ease-in-out 0s infinite alternate both paused slidebox; } the animation's
keyframes are defined next; they describe an animation which causes the box to migrate from the top-left corner of the container to the bottom-right corner.
... @
keyframes slidebox { from { left:0; top:0; } to { left:calc(100% - var(--boxwidth)); top:calc(100% - var(--boxwidth)) } } javascript some javascript code will need to be written to handle the click on the button to start the next iteration.
HTMLAreaElement - Web APIs
element.access
key is a domstring containing a single character that switches input focus to the control.
... recommendation technically, the properties tabindex and access
key are now defined on htmlelement.
HTMLLegendElement - Web APIs
htmllegendelement.access
key is a domstring representing a single-character access
key to give access to the element.
... recommendation the property access
key is now defined on htmlelement.
HTMLOrForeignElement - Web APIs
a-*) set on the element.nonce the nonce property of the htmlorforeignelement interface returns the cryptographic number used once that is used by content security policy to determine whether a given fetch will be allowed to proceed.tabindexthe tabindex property of the htmlorforeignelement interface represents the tab order of the current element.methodsblur()the htmlelement.blur() method removes
keyboard focus from the current element.focus()the htmlelement.focus() method sets focus on the specified element, if it can be focused.
... the focused element is the element which will receive
keyboard and similar events by default.
The HTML DOM API - Web APIs
event handlers for document events defined by the html standard to allow access to mouse and
keyboard events, drag and drop, media control, and more.
... each level defines a
key aspect of the utility of the element.
Ajax navigation example - Web APIs
"&" + sview
key + "=" + sviewmode : "").slice(1)).replace(rendqstmark, ""); } function getpage (spage) { if (bisloading) { return; } oreq = new xmlhttprequest(); bisloading = true; oreq.onload = ajaxload; oreq.onerror = ajaxerror; if (spage) { opageinfo.url = filterurl(spage, null); } oreq.open("get", filterurl(opageinfo.url, "json"), true); ...
...se; } return true; } function init () { opageinfo.title = document.title; history.replacestate(opageinfo, opageinfo.title, opageinfo.url); for (var olink, nidx = 0, nlen = document.links.length; nidx < nlen; document.links[nidx++].onclick = processlink); } const /* customizable constants */ stargetid = "ajax-content", sview
key = "view_as", sajaxclass = "ajax-nav", /* not customizable constants */ rsearch = /\?.*$/, rhost = /^[^\?]*\?*&*/, rview = new regexp("&" + sview
key + "\\=[^&]*|&*$", "i"), rendqstmark = /\?$/, oloadingbox = document.createelement("div"), ocover = document.createelement("div"), oloadingimg = new image(), opageinfo = { title: null, url: locat...
IDBCursorWithValue - Web APIs
it has a position within the range, and moves in a direction that is increasing or decreasing in the order of record
keys.
...the cursor does not require us to select the data based on a
key; we can just grab all of it.
IDBDatabase: abort event - Web APIs
// open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
...'); // abort the transaction transaction.abort(); }; the same example, but assigning the event handler to the onabort property: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBDatabase: close event - Web APIs
ce event event handler property onerror examples this example opens a database and listens for the close event: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
... console.log('database connection closed'); }); }; the same example, using the onclose property instead of addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBDatabase: error event - Web APIs
ening for the error event for the add() operation (this will occur if, for example, a record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
... const objectstorerequest = objectstore.add(newitem); }; the same example, using the onerror property instead of addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBDatabase: versionchange event - Web APIs
handler property onversionchange examples this example opens a database and, on success, adds a listener to versionchange: // open the database const dbopenrequest = window.indexeddb.open('nonexistent', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
...nsole.log('the version of this database has changed'); }); }); the same example, using the onversionchange event handler property: // open the database const dbopenrequest = window.indexeddb.open('nonexistent', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBFactory - Web APIs
idbfactory.cmp a method that compares two
keys and returns a result indicating which one is greater in value.
...// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction; window.idb
keyrange = window.idb
keyrange || window.webkitidb
keyrange || window.msidb
keyrange; // (mozilla has never prefixed these objects, so we don't need window.mozidb*) // let us open version 4 of our database var dbopenrequest = window.indexeddb.open("todolist", 4); // these two event handlers act on the database being opened successfully, or not dbopenrequest.onerror = function(event) { console.error(...
IDBIndex.objectStore - Web APIs
this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
... the current object store is logged to the console: it should be returned something like this: idbobjectstore { name: "contactslist",
keypath: "id", indexnames: domstringlist[7], transaction: idbtransaction, autoincrement: false } finally, we iterate through each record, and insert the data into an html table.
IDBOpenDBRequest: blocked event - Web APIs
roperty onblocked examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
...request was blocked'); }); }; using the onblocked property: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBOpenDBRequest: upgradeneeded event - Web APIs
// open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.addeventlistener('upgradeneeded', event => { const db = event.target.result; console.log(`upgrading to version ${db.version}`); // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); })...
... // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; console.log(`upgrading to version ${db.version}`); // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; ...
IDBRequest: error event - Web APIs
record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.addeventlistener('upgradeneeded', event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); })...
...xample, using the onerror property instead of addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBRequest: success event - Web APIs
atabase and listens for the success event using addeventlistener(): // open the database const openrequest = window.indexeddb.open('todolist', 4); openrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
... the same example, but using the onsuccess event handler property: // open the database const openrequest = window.indexeddb.open('todolist', 4); openrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBTransaction: complete event - Web APIs
property oncomplete examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
... = objectstore.add(newitem); }; using the oncomplete property: // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = event => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBTransaction: error event - Web APIs
ening for the error event for the add() operation (this will occur if, for example, a record with the given tasktitle already exists): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
... const objectstorerequest = objectstore.add(newitem); }; the same example, using the onerror property instead of addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; // create an objectstore for this database const objectstore = db.createobjectstore('todolist', {
keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); };...
IDBTransaction - Web APIs
v> a:hover text { fill: #0095dd; pointer-events: all;} transactions are started when the transaction is created, not when the first request is placed; for example consider this: var trans1 = db.transaction("foo", "readwrite"); var trans2 = db.transaction("foo", "readwrite"); var objectstore2 = trans2.objectstore("foo") var objectstore1 = trans1.objectstore("foo") objectstore2.put("2", "
key"); objectstore1.put("1", "
key"); after the code is executed the object store should contain the value "2", since trans2 should run after trans1.
...trying to add() the same
key twice, or put() with the same index
key with a uniqueness constraint.
LockedFile.getMetadata() - Web APIs
each
key is a boolean where true means the metadata is expected and where false means it is not expected.
... note that if the
key is undefined, it is considered as if it were true.
close() - Web APIs
the media
keysession.close() method notifies that the current media session is no longer needed, and that the content decryption module should release any resources associated with this object and close it.
... syntax media
keysession.close().then(function() { ...
expiration - Web APIs
the media
keysession.expiration read-only property returns the time after which the
keys in the current session can no longer be used to decrypt media data, or nan if no such time exists.
... syntax var expirationtime = media
keysessionobj.expiration; specifications specification status comment encrypted media extensionsthe definition of 'expiration' in that specification.
generateRequest() - Web APIs
the media
keysession.generaterequest() method returns a promise after generating a media request based on initialization data.
... syntax media
keysession.generaterequest().then(function) { ...
sessionId - Web APIs
the media
keysession.sessionid read-only property contains a unique string generated by the cdm for the current media object and its associated
keys or licenses.
... syntax var sessionid = media
keysessionobj.sessionid; specifications specification status comment encrypted media extensionsthe definition of 'sessionid' in that specification.
update() - Web APIs
the media
keysession.update() method loads messages and licenses to the cdm, and then returns a promise .
... syntax media
keysession.update(response).then(function() { ...
getConfiguration() - Web APIs
the media
keysystemaccess.getconfiguration() method returns a media
keysystemconfiguration object with the supported combination of configuration options.
... syntax var media
keysystemconfiguration = media
keysystemaccess.getconfiguration(); specifications specification status comment encrypted media extensionsthe definition of 'getconfiguration()' in that specification.
createSession() - Web APIs
the media
keys.createsession() method returns a new media
keysession object, which represents a context for message exchange with a content decryption module (cdm).
... syntax var media
keysessionobject = media
keys.createsession([media
keysessiontype]); specifications specification status comment encrypted media extensionsthe definition of 'createsession()' in that specification.
setServerCertificate() - Web APIs
the media
keys.setservercertificate() method a promise to a server certificate to be used to encrypt messages to the license server.
... syntax media
keys.setservercertificate([media
keysessiontype]).then(function() { ...
Transcoding assets for Media Source Extensions - Web APIs
fragmenting if you have an asset that is not already an mp4, ffmpeg can handle emitting a properly fragmented mp4 during the transcode process, with the -movflags frag_
keyframe+empty_moov command line flag: $ ffmpeg -i trailer_1080p.mov -c:v copy -c:a copy -movflags frag_
keyframe+empty_moov bunny_fragmented.mp4 if you already have an mp4, but it's not properly 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_
key...
... note: if "invalid duration specification for force_
key_frames: 'expr:eq(mod(n" is displayed as an error message, modify mp4-dash-encode.py and remove two "'" from "-force_
key_frames 'expr:eq(mod(n,%d),0)'".
Capabilities, constraints, and settings - Web APIs
simple tab support in the editor this code adds simple support for tabs to the <textarea> elements by making the tab
key insert two space characters when either constraint edit box is focused.
... function
keydownhandler(event) { if (event.
key == "tab") { let elem = event.target; let str = elem.value; let position = elem.selectionstart; let newstr = str.substring(0, position) + " " + str.substring(position, str.length); elem.value = newstr; elem.selectionstart = elem.selectionend = position + 2; event.preventdefault(); } } videoconstrainteditor.addeventlistener("
keydown",
keydownhandler, false); audioconstrainteditor.addeventlistener("
keydown",
keydownhandler, false); show constrainable properties the browser supports the last significant piece of the puzzle: code that displays, for the user's reference, a list of the constrainable properties which their browser supports.
Navigator - Web APIs
navigator.
keyboard read only returns a
keyboard object which provides access to functions that retrieve
keyboard layout maps and toggle capturing of
key presses from the physical
keyboard.
... navigator.requestmedia
keysystemaccess() returns a promise for a media
keysystemaccess object.
PaymentRequest.show() - Web APIs
it may only be called while handling events that represent user interactions, such as click,
keyup, or the like.
... securityerror the promise rejects with a securityerror if the call to show() was not in response to a user action, such as a click or
keyup event.
Payment processing concepts - Web APIs
some payment handlers use merchant validation, which is the process of validating the identity of a merchant in some way, usually using some form of cryptographic response such as a public
key.
...in the end, the only thing that the web site or app is responsible for is fetching the merchant's validation
key and passing it into the event's complete() method.
PushManager.permissionState() - Web APIs
applicationserver
key: a public
key your push server will use to send messages to client apps via a push server.
... this value is part of a signing
key pair generated by your application server and usable with elliptic curve digital signature (ecdsa) over the p-256 curve.
PushSubscription.options - Web APIs
applicationserver
key: a public
key your push server will use to send messages to client apps via a push server.
... this value is part of a signing
key pair generated by your application server, and usable with elliptic curve digital signature (ecdsa), over the p-256 curve.
Push API - Web APIs
the resulting pushsubscription includes all the information that the application needs to send a push message: an endpoint and the encryption
key needed for sending data.
... note: chrome versions earlier than 52 require you to set up a project on google cloud messaging to send push messages, and use the associated project number and api
key when sending push notifications.
RTCConfiguration - Web APIs
one obvious benefit to providing your own is identity
key continuity—if you use the same certificate for subsequent calls, the remote peer can tell you're the same caller.
... this also avoids the cost of generating new
keys.
RTCInboundRtpStreamStats.perDscpPacketsReceived - Web APIs
the perdscppacketsreceived property of the rtcinboundrtpstreamstats dictionary is a record comprised of
key/value pairs in which each
key is a string representation of a differentiated services code point and the value is the number of packets received for that dcsp.
...each
key is the string representation of a single differentiated services code point (dscp)'s id number.
RTCOutboundRtpStreamStats.perDscpPacketsSent - Web APIs
the perdscppacketssent property of the rtcoutboundrtpstreamstats dictionary is a record comprised of
key/value pairs in which each
key is a string representation of a differentiated services code point and the value is the number of packets sent for that dcsp.
...each
key is the string representation of a single differentiated services code point (dscp)'s id number.
RTCPeerConnection.generateCertificate() - Web APIs
the generatecertificate() method of the rtcpeerconnection interface creates and stores an x.509 certificate and corresponding private
key then returns an rtccertificate, providing access to it.
... syntax var cert = rtcpeerconnection.generatecertificate(
keygenalgorithm) parameters
keygenalgorithm a domstring identifying the algorithm to use in creating the
key.
Range.commonAncestorContainer - Web APIs
html <ul> <li>strings <ul> <li>cello</li> <li>violin <ul> <li>first chair</li> <li>second chair</li> </ul> </li> </ul> </li> <li>woodwinds <ul> <li>clarinet</li> <li>oboe</li> </ul> </li> </ul> css the .highlight class created below uses a set of css @
keyframes to animate a fading outline.
... .highlight { animation: highlight linear 1s; } @
keyframes highlight { from { outline: 1px solid #f00f; } to { outline: 1px solid #f000; } } body { padding: 1px; } javascript document.addeventlistener('pointerup', e => { const selection = window.getselection(); if (selection.type === 'range') { for (let i = 0; i < selection.rangecount; i++) { const range = selection.getrangeat(i); playanimation(range.commonancestorcontainer); } } }); function playanimation(el) { if (el.nodetype === node.text_node) { el = el.parentnode; } el.classlist.remove('highlight'); settimeout(() => { el.classlist.add('highlight'); }, 0); } result specifications specification status comment domthe definition of 'range.commonances...
Report - Web APIs
t('ul'); outputelem.appendchild(list); for(let i = 0; i < reports.length; i++) { let listitem = document.createelement('li'); let textnode = document.createtextnode('report ' + (i + 1) + ', type: ' + reports[i].type); listitem.appendchild(textnode); let innerlist = document.createelement('ul'); listitem.appendchild(innerlist); list.appendchild(listitem); for (let
key in reports[i].body) { let innerlistitem = document.createelement('li'); let
keyvalue = reports[i].body[
key]; innerlistitem.textcontent =
key + ': ' +
keyvalue; innerlist.appendchild(innerlistitem); } } } the reports parameter contains an array of all the reports in the observer's report queue.
... we loop over each report using a basic for loop, then iterate over each entry of in the report's body using a for...in structure, displaying each
key/value pair inside a list item.
RsaHashedImportParams - Web APIs
the rsahashedimportparams dictionary of the web crypto api represents the object that should be passed as the algorithm parameter into subtlecrypto.import
key() or subtlecrypto.unwrap
key(), when importing any rsa-based
key pair: that is, when the algorithm is identified as any of rsassa-pkcs1-v1_5, rsa-pss, or rsa-oaep.
... examples see the examples for subtlecrypto.import
key().
RsaPssParams - Web APIs
rfc 3447 says that "typical salt lengths" are either 0 or the length of the output of the digest algorithm that was selected when this
key was generated.
... the maximum size of saltlength is given by: math.ceil((
keysizeinbits - 1)/8) - digestsizeinbytes - 2 so for a
key length of 2048 bits and a digest output size of 32 bytes, the maximum size would be 222.
SVGElement - Web APIs
e53" text-anchor="middle" alignment-baseline="middle">svgelement</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties also inherits properties from: documentandelementeventhandlers, element, elementcssinlinestyle, globaleventhandlers, htmlorforeignelement, svgelementinstance svgelement.datasetread only a domstringmap object which provides a list of
key/value pairs of named data attributes which correspond to custom data attributes attached to the element.
... these can also be defined in svg using attributes of the form data-*, where * is the
key name for the pair.
Using Service Workers - Web APIs
to do this, we use service worker’s brand new storage api — cache — a global object on the service worker that allows us to store assets delivered by responses, and
keyed by their requests.
... self.addeventlistener('activate', (event) => { var cachekeeplist = ['v2']; event.waituntil( caches.
keys().then((
keylist) => { return promise.all(
keylist.map((
key) => { if (cachekeeplist.indexof(
key) === -1) { return caches.delete(
key); } })); }) ); }); developer tools chrome has chrome://inspect/#service-workers, which shows current service worker activity and storage on a device, and chrome://serviceworker-internals, which shows more detail and allows...
StylePropertyMapReadOnly.entries() - Web APIs
the stylepropertymapreadonly.entries() method returns an array of a given object's own enumerable property [
key, value] pairs, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... return value an array of the given stylepropertymapreadonly object's own enumerable property [
key, value] pairs.
StylePropertyMapReadOnly - Web APIs
methods stylepropertymapreadonly.entries() returns an array of a given object's own enumerable property [
key, value] pairs, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
... stylepropertymapreadonly.
keys() returns a new array iterator containing the
keys for each item in stylepropertymapreadonly.
UIEvent.isChar - Web APIs
the uievent.ischar read-only property returns a boolean indicating whether the event produced a
key character or not.
...some
keystroke combinations may raise events but not produce any character (example: ctrl-alt-?).
URLSearchParams.append() - Web APIs
the append() method of the urlsearchparams interface appends a specified
key/value pair as a new search parameter.
... as shown in the example below, if the same
key is appended multiple times it will appear in the parameter string multiple times for each value.
URLSearchParams.set() - Web APIs
'use strict' function genurl(rexp, atext, bdebug=false){ let theurl theurl= new url('https://regexr.com') theurl.searchparams.set( 'expression', rexp.tostring() ) theurl.searchparams.set( 'tool', 'replace' ) theurl.searchparams.set( 'input', '\u2911\u20dc' )// ⤑⃜ theurl.searchparams.set( 'text', atext.join('\n') ) if( bdebug ){ // display the
key/value pairs for(var pair of theurl.searchparams.entries()) { console.debug(pair[0] + ' = \'' + pair[1] + '\''); } console.debug(theurl) } return theurl } var url = genurl( /(^\s*\/\/|\s*[^:]\/\/).*\s*$|\s*\/\*(.|\n)+?\*\/\s*$/gm // single/multi-line comments // /(^\s*\/\/.*|\s*[^:]\/\/.*)/g // single-line comments ,[ "these should work:", "", "// eslint-disable-next-lin...
...e no-unused-vars", "lockpref( '
keyword.url',\t\t'https://duckduckgo.com/html/?q=!+' )\t// test", "/*", " * bla bla ", "*/", "", "/* bla bla */", "", "// bla bla ", "", "these shouldn\'t work:", "console.log(\"http://foo.co.uk/\")", "var url = \"http://regexr.com/foo.html?q=bar\"", "alert(\"https://mediatemple.net\")", ] , true ) console.info( url, url.tostring() ) // window.open( url, 'regex_site' ) specifications specification status comment urlthe definition of 'set()' in that specification.
Visual Viewport API - Web APIs
the visual viewport is the visual portion of a screen excluding on-screen
keyboards, areas outside of a pinch-zoom area, or any other on-screen artifact that doesn't scale with the dimensions of a page.
...user-interface features like the on-screen
keyboard (osk) can shrink the visual viewport without affecting the layout viewport.
WebRTC Statistics API - Web APIs
statsinterval = window.setinterval(getconnectionstats, 1000); /* add event handlers, etc */ } catch(err) { console.error("error creating rtcpeerconnection: " + err); } function getconnectionstats() { mypeerconnection.getstats(null).then(stats => { var statsoutput = ""; stats.foreach(report => { if (report.type === "inbound-rtp" && report.kind === "video") { object.
keys(report).foreach(statname => { statsoutput += `<strong>${statname}:</strong> ${report[statname]}<br>\n`; }); } }); document.queryselector(".stats-box").innerhtml = statsoutput; }); } when the promise returned by getstats() is fulfilled, the resolution handler receives as input an rtcstatsreport object containing the statistics information.
...the dictionary this
key maps to depends on the track's kind.
Using the Web Speech API - Web APIs
when the screen is tapped/clicked, you can say an html color
keyword, and the app's background color will change to that color.
...this is mainly to hide the
keyboard on firefox os.
Window.captureEvents() - Web APIs
syntax window.captureevents(eventtype) eventtype is a combination of the following values: event.abort, event.blur, event.click, event.change, event.dblclick, event.dragddrop, event.error, event.focus, event.
keydown, event.
keypress, event.
keyup, event.load, event.mousedown, event.mousemove, event.mouseout, event.mouseover, event.mouseup, event.move, event.reset, event.resize, event.select, event.submit, event.unload.
... note that you can pass a list of events to this method using the following syntax: window.captureevents(event.
keypress | event.
keydown | event.
keyup).
Window.localStorage - Web APIs
the
keys and the values are always in the utf-16 domstring format, which uses two bytes per character.
... as with objects, integer
keys are automatically converted to strings.
Window.pkcs11 - Web APIs
obsolete since gecko 29 (firefox 29 / thunderbird 29 / seamon
key 2.26)this feature is obsolete.
... note: this property has been returned null since gecko 1.9.0.14 (firefox 3.0.14) and removed in gecko 29.0 (firefox 29 / thunderbird 29 / seamon
key 2.26)) for security reasons.
Window.releaseEvents() - Web APIs
syntax window.releaseevents(eventtype) eventtype is a combination of the following values: event.abort, event.blur, event.click, event.change, event.dblclick, event.dragddrop, event.error, event.focus, event.
keydown, event.
keypress, event.
keyup, event.load, event.mousedown, event.mousemove, event.mouseout, event.mouseover, event.mouseup, event.move, event.reset, event.resize, event.select, event.submit, event.unload.
... example window.releaseevents(event.
keypress) notes note that you can pass a list of events to this method using the following syntax: window.releaseevents(event.
keypress | event.
keydown | event.
keyup).
Window.sessionStorage - Web APIs
the
keys and the values are always in the utf-16 domstring format, which uses two bytes per character.
... as with objects, integer
keys are automatically converted to strings.
Window.sidebar - Web APIs
methods the sidebar object returned has the following methods: method description (seamon
key) description (firefox) addpanel(title, contenturl, "") adds a sidebar panel.
... obsolete since firefox 23 (only present in seamon
key).
WindowEventHandlers.onstorage - Web APIs
example this example logs the value for a storage
key whenever it changes in another document.
... window.onstorage = function(e) { console.log('the ' + e.
key + '
key has been changed from ' + e.oldvalue + ' to ' + e.newvalue + '.'); }; specifications specification status comment html living standardthe definition of 'onstorage' in that specification.
WindowOrWorkerGlobalScope.setInterval() - Web APIs
example: var intervalid = setinterval(function(arg1) {}.bind(undefined, 10), 1000); inactive tabs requires gecko 5.0(firefox 5.0 / thunderbird 5.0 / seamon
key 2.2) starting in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2), intervals are clamped to fire no more often than once per second in inactive tabs.
...as a consequence, the this
keyword for the called function is set to the window (or global) object, it is not the same as the this value for the function that called settimeout.
WindowOrWorkerGlobalScope.setTimeout() - Web APIs
the usual rules for setting the this
keyword for the called function apply, and if you have not set this in the call or with bind, it will default to the window (or global) object.
...prior to (firefox 5.0 / thunderbird 5.0 / seamon
key 2.2), the minimum timeout value for nested timeouts was 10 ms.
Sending and Receiving Binary Data - Web APIs
note: support for sending arraybuffer objects using xmlhttprequest was added to gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamon
key 2.6).
... note: this non-standard sendasbinary method is considered deprecated as of gecko 31 (firefox 31 / thunderbird 31 / seamon
key 2.28) and will be removed soon.
XRInputSourceArray.entries() - Web APIs
the xrinputsourcearray interface's entries() method returns a javascript iterator which can then be used to iterate over the
key/value pairs in the input source array.
... specifications specification status comment webxr device apithe definition of 'xrinputsourcearray' in that specification.1 working draft xrinputsourcearray interface [1] see iterator-like methods in information contained in a webidl file for information on how an iterable declaration in an interface definition causes entries(), foreach(),
keys(), and values() methods to be exposed from objects that implement the interface.
XRInputSourceArray - Web APIs
entries() returns an iterator you can use to walk the list of
key/value pairs in the list.
...
keys() a list of the
keys corresponding to the entries in the input source list.
XRPose - Web APIs
ion and orient the node to provide the desired viewing position and angle: viewerpose = xrframe.getviewerpose(adjreferencespace); here, adjreferencespace is a reference space which has been updated using the base frame of reference for the frame and any adjustments needed to position the viewer based on movement or rotation which is being supplied from a source other than the xr device, such as
keyboard or mouse inputs.
...if any component of the transform is computed or created artificially (such as by using mouse or
keyboard controls to move through space), this value is instead true, indicating that the transform is in part emulated in software.
Using the slider role - Accessibility
keyboard and focus the slider should be
keyboard focusable and operable.
...arrow
keys should operate as follows (localization for right-to-left languages should reverse the direction of the arrows):
key(s) action right and up arrows increase the selected value left and down arrows decrease the selected value page up and page down optionally increase and decrease the value by a set amount (e.g.
ARIA: banner role - Accessibility
associated aria roles, states, and properties none
keyboard interactions none required javascript features none examples here's a fake simple banner with a skip to navigation link, a logo, a title and a subtitle.
... <div role="banner"> <a href="#nav" id="skiptomenu" class="skiptocontent">skip to
keyboard navigation</a> <img src="images/w3c.png" alt="w3c logo"> <h1>aria landmarks</h1> <p>identifying page subsections for easy navigation</p> </div> we could also have written the above with the html header element: <header> <a href="#nav" id="skiptomenu" class="skiptocontent">skip to
keyboard navigation</a> <img src="images/w3c.png" alt="w3c logo"> <h1>aria landmarks</h1> <p>identifying page subsections for easy navigation</p> </header> best practices while it is best to use the header element and ensure it is not a descendant of any subsection of the page, sometimes you don't have ac...
ARIA: figure role - Accessibility
for example, make sure it is perceivable by users of assistive technology, navigable by
keyboard as well as mouse, and so on.
...
keyboard interactions no role specific
keyboard interactions.
ARIA: switch role - Accessibility
since a switch is an interactive control, it must be focusable and
keyboard accessible.
...the expected
keyboard shortcut for toggling the value of a switch is the space
key.
ARIA: heading role - Accessibility
keyboard interactions this role does not require any special
keyboard navigation.
... as with any heading, giving it an id ensures it can be referenced from anchor links, making it accessible via the
keyboard.
ARIA: textbox role - Accessibility
keyboard interactions in a single-line use (when aria-multiline is false or not used), the return or enter
key submits the form.
... in a multi-line use (when aria-multiline is true), return or enter
key inserts a line break.
Web applications and ARIA FAQ - Accessibility
for example, a screen reader uses this api to read the user interface with a text-to-speech engine, a magnifier uses it to highlight important or active areas of the screen, and an onscreen
keyboard might use it to provide the most efficient
keyboard layout for a given context or ui control.
...they include: orca for linux nvda for windows voiceover is built into os x when you're testing with a screen reader, keep two
key points in mind: casual testing with a screen reader user can never replace feedback, testing, and help from real users.
Architecture - Accessibility
you can test this in a given editor by pressing the end
key on a line, to see whether the caret is shown past the end of the line.
... to doublecheck, hit the delete
key and see if it removes the first char of the next line.
Understandable - Accessibility
however, the title contents are not accessible via
keyboard, nor are they reliably read out by screenreaders.
...also see building
keyboard accessibility back in for some useful implementation ideas.
-moz-context-properties - CSS: Cascading Style Sheets
syntax /*
keyword values */ -moz-context-properties: fill; -moz-context-properties: fill, stroke; /* global values */ -moz-context-properties: inherit; -moz-context-properties: initial; -moz-context-properties: unset; values fill expose the fill value set on the image to the embedded svg.
... <rect width='100%' height='100%' stroke-width='30px' fill='context-fill red' stroke='context-stroke' fill-opacity='0.5'/></svg>"> here we've set the image src to a data uri containing a simple svg image; the <rect> inside has been made to take its fill and stroke values from the fill and stroke set on the <img> element by giving them the context-fill/context-stroke
keywords in their values, along with a fallback color for the fill (red) which will be used in the case that the svg is loaded standalone in a top-level window (where it will have no context element to provide context values).
-webkit-mask-composite - CSS: Cascading Style Sheets
/*
keyword values */ -webkit-mask-composite: clear; -webkit-mask-composite: copy; -webkit-mask-composite: source-over; -webkit-mask-composite: source-in; -webkit-mask-composite: source-out; -webkit-mask-composite: source-atop; -webkit-mask-composite: destination-over; -webkit-mask-composite: destination-in; -webkit-mask-composite: destination-out; -webkit-mask-composite: destination-atop; -webkit-mask-composite: xor; /* global values */ -webkit-mask-composite: inherit; -webkit-mask-composite: initial; -webkit-mask-composite: u...
...nset; there is a standardized mask-composite property covering parts of this non-standard property using different
keywords.
forced-colors - CSS: Cascading Style Sheets
the browser provides the color palette to authors through the css system color
keywords and, if appropriate, it triggers the appropriate value of prefers-color-scheme so that authors can adapt the page.
... color fill stroke text-decoration-color text-emphasis-color border-color outline-color column-rule-color scrollbar-color -webkit-tap-highlight-color box-shadow text-shadow you can use system color
keywords with any property other than those listed above, to ensure that the rest of the page integrates with the restricted color palette available in forced colors mode.
update - CSS: Cascading Style Sheets
syntax the update feature is specified as a single
keyword value chosen from the list below.
... examples html <p>if this text animates for you, you are using a fast-updating device.</p> css @
keyframes jiggle { from { transform: translatey(0); } to { transform: translatey(25px); } } @media (update: fast) { p { animation: 1s jiggle linear alternate infinite; } } result specifications specification status comment media queries level 4the definition of 'update' in that specification.
Using URL values for the cursor property - CSS: Cascading Style Sheets
syntax the basic (css 2.1) syntax for this property is: cursor: [ <url> , ]* <
keyword> this means that zero or more urls may be specified (comma-separated), which must be followed by one of the
keywords defined in the css specification, such as auto or pointer.
..., ]* <
keyword> it allows specifying the coordinates of the cursor's hotspot, which will be clamped to the boundaries of the cursor image.
Using feature queries - CSS: Cascading Style Sheets
testing for lack of support in addition to asking the browser if it supports a feature, you can test for the opposite by adding in the not
keyword: @supports not (property: value) { css rules to apply } the css inside the following example feature query will run if the browser does not support row-gap.
...to do so, you can include a list of features to test for, separated by and
keywords: @supports (property1: value) and (property2: value) { css rules to apply } for example, if the css you want to run requires that the browser supports css shapes and css grid, you could create a rule which checks for both of these things.
Line-based placement with CSS Grid - CSS: Cascading Style Sheets
using the span
keyword in addition to specifying the start and end lines by number, you can specify a start line and then the number of tracks you would like the area to span.
...v class="wrapper"> <div class="box1">one</div> <div class="box2">two</div> <div class="box3">three</div> <div class="box4">four</div> </div> .box1 { grid-column: 1; grid-row: 1 / span 3; } .box2 { grid-column: 3; grid-row: 1 / span 2; } .box3 { grid-column: 2; grid-row: 1; } .box4 { grid-column: 2 / span 2; grid-row: 3; } you can also use the span
keyword in the value of grid-row-start/grid-row-end and grid-column-start/grid-column-end.
Using CSS gradients - CSS: Cascading Style Sheets
<div class="radial-gradient"></div> div { width: 120px; height: 120px; } .radial-gradient { background: radial-gradient(red 10px, yellow 30%, #1e90ff 50%); } positioning the center of the gradient you can position the center of the gradient with
keyterms, percentage, or absolute lengths, length and percentage values repeating if only one is present, otherwise in the order of position from the left and position from the top.
...by default, the center of the gradient is at the 50% 50% mark, with the start of the gradient facing up: <div class="simple-conic"></div> div { width: 120px; height: 120px; } .simple-conic { background: conic-gradient(red, blue); } positioning the conic center like radial gradients, you can position the center of the conic gradient with
keyterms, percentage, or absolute lengths, with the
keyword "at" <div class="conic-gradient"></div> div { width: 120px; height: 120px; } .conic-gradient { background: conic-gradient(at 0% 30%, red 10%, yellow 30%, #1e90ff 50%); } changing the angle like radial gradients, you can position the center of the conic gradient with
keyterms, percentage, or absolute lengths, with the
keywo...
CSS Logical Properties and Values - CSS: Cascading Style Sheets
x-block-size max-inline-size min-block-size min-inline-size properties for margins, borders and padding border-block border-block-color border-block-end border-block-end-color border-block-end-style border-block-end-width border-block-start border-block-start-color border-block-start-style border-block-start-width border-block-style border-block-width border-color (logical
keyword) border-inline border-inline-color border-inline-end border-inline-end-color border-inline-end-style border-inline-end-width border-inline-start border-inline-start-color border-inline-start-style border-inline-start-width border-inline-style border-inline-width border-start-start-radius border-start-end-radius border-end-start-radius border-end-end-radius border-style (logic...
...al
keyword) border-width (logical
keyword) margin (logical
keyword) margin-block margin-block-end margin-block-start margin-inline margin-inline-end margin-inline-start padding (logical
keyword) padding-block padding-block-end padding-block-start padding-inline padding-inline-end padding-inline-start properties for floating and positioning clear (inline-end and inline-start
keywords) float (inline-end and inline-start
keywords) inset inset-block inset-block-end inset-block-start inset-inline inset-inline-end inset-inline-start other properties caption-side (inline-end and inline-start
keywords) overflow-block overflow-inline overscroll-behavior-block overscroll-behavior-inline resize (block and inline
keywords) text-align (end and start
keywo...
CSS data types - CSS: Cascading Style Sheets
css data types define typical values (including
keywords and units) accepted by css properties and functions.
... in formal syntax, data types are denoted by a
keyword placed between the inequality signs "<" and ">".
background-image - CSS: Cascading Style Sheets
syntax each background image is specified either as the
keyword none or as an <image> value.
... to specify 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.
background-position-x - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-position-x: left; background-position-x: center; background-position-x: right; /* <percentage> values */ background-position-x: 25%; /* <length> values */ background-position-x: 0px; background-position-x: 1cm; background-position-x: 8em; /* side-relative values */ background-position-x: right 3px; background-position-x: left 25%; /* multiple values */ background-posi...
... formal definition initial valueleftapplies toall elementsinheritednopercentagesrefer to width of background positioning area minus height of background imagecomputed valuea list, each item consisting of: an offset given as a combination of an absolute length and a percentage, plus an origin
keywordanimation typediscrete formal syntax [ center | [ [ left | right | x-start | x-end ]?
background-position-y - CSS: Cascading Style Sheets
syntax /*
keyword values */ background-position-y: top; background-position-y: center; background-position-y: bottom; /* <percentage> values */ background-position-y: 25%; /* <length> values */ background-position-y: 0px; background-position-y: 1cm; background-position-y: 8em; /* side-relative values */ background-position-y: bottom 3px; background-position-y: bottom 10%; /* multiple values */ background-p...
... formal definition initial valuetopapplies toall elementsinheritednopercentagesrefer to height of background positioning area minus height of background imagecomputed valuea list, each item consisting of: an offset given as a combination of an absolute length and a percentage, plus an origin
keywordanimation typediscrete formal syntax [ center | [ [ top | bottom | y-start | y-end ]?
background - CSS: Cascading Style Sheets
size of the background positioning area minus size of background image; size refers to the width for horizontal offsets and to the height for vertical offsetsbackground-size: relative to the background positioning areacomputed valueas each of the properties of the shorthand:background-image: as specified, but with <url> values made absolutebackground-position: a list, each item consisting of two
keywords representing the origin and two offsets from that origin, each given as an absolute length (if given a <length>), otherwise as a percentagebackground-size: as specified, but with relative lengths converted into absolute lengthsbackground-repeat: a list, each item consisting of two
keywords, one per dimensionbackground-origin: as specifiedbackground-clip: as specifiedbackground-attachment: as...
...entage><hue> = <number> | <angle><linear-color-stop> = <color> <color-stop-length>?<linear-color-hint> = <length-percentage><angular-color-stop> = <color> && <color-stop-angle>?<angular-color-hint> = <angle-percentage>where <color-stop-length> = <length-percentage>{1,2}<color-stop-angle> = <angle-percentage>{1,2}<angle-percentage> = <angle> | <percentage> examples setting backgrounds with color
keywords and images html <p class="topbanner"> starry sky<br/> twinkle twinkle<br/> starry sky </p> <p class="warning">here is a paragraph<p> css .warning { background: pink; } .topbanner { background: url("https://mdn.mozillademos.org/files/11983/starsolid.gif") #99f repeat-y fixed; } result specifications specification status comment css backgrounds ...
border-bottom-style - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-bottom-style: none; border-bottom-style: hidden; border-bottom-style: dotted; border-bottom-style: dashed; border-bottom-style: solid; border-bottom-style: double; border-bottom-style: groove; border-bottom-style: ridge; border-bottom-style: inset; border-bottom-style: outset; /* global values */ border-bottom-style: inherit; border-bottom-style: initial; border-bottom-style...
...: unset; the border-bottom-style property is specified as a single
keyword chosen from those available for the border-style property.
border-bottom-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-bottom-width: thin; border-bottom-width: medium; border-bottom-width: thick; /* <length> values */ border-bottom-width: 10em; border-bottom-width: 3vmax; border-bottom-width: 6px; /* global
keywords */ border-bottom-width: inherit; border-bottom-width: initial; border-bottom-width: unset; values <line-width> defines the width of the border, either as an explicit nonnegative <length> or a
keyword.
... if it's a
keyword, it must be one of the following values: thin a thin border medium a medium border thick a thick border note: because the specification doesn't define the exact thickness denoted by each
keyword, the precise result when using one of them is implementation-specific.
border-color - CSS: Cascading Style Sheets
color: red cyan gold; } #trbl { border-color: red cyan black gold; } /* set width and style for all divs */ div { border: solid 0.3em; width: auto; margin: 0.5em; padding: 0.5em; } ul { margin: 0; list-style: none; } result specifications specification status comment css logical properties and values level 1 editor's draft added the logical
keyword.
... candidate recommendation the transparent
keyword has been removed as it is now a part of the <color> data type.
border-image - CSS: Cascading Style Sheets
r-image-slice: refer to the size of the border imageborder-image-width: refer to the width or height of the border image areacomputed valueas each of the properties of the shorthand:border-image-outset: as specified, but with relative lengths converted into absolute lengthsborder-image-repeat: as specifiedborder-image-slice: one to four percentage(s) (as specified) or absolute length(s), plus the
keyword fill if specifiedborder-image-source: none or the image with its uri made absoluteborder-image-width: as specified, but with relative lengths converted into absolute lengthsanimation typediscrete formal syntax <'border-image-source'> | <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>?
...r-image-slice: refer to the size of the border imageborder-image-width: refer to the width or height of the border image areacomputed valueas each of the properties of the shorthand:border-image-outset: as specified, but with relative lengths converted into absolute lengthsborder-image-repeat: as specifiedborder-image-slice: one to four percentage(s) (as specified) or absolute length(s), plus the
keyword fill if specifiedborder-image-source: none or the image with its uri made absoluteborder-image-width: as specified, but with relative lengths converted into absolute lengthsanimation typediscrete ...
border-left-style - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-left-style: none; border-left-style: hidden; border-left-style: dotted; border-left-style: dashed; border-left-style: solid; border-left-style: double; border-left-style: groove; border-left-style: ridge; border-left-style: inset; border-left-style: outset; /* global values */ border-left-style: inherit; border-left-style: initial; border-left-style: unset; the border-left...
...-style property is specified as a single
keyword chosen from those available for the border-style property.
border-left-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-left-width: thin; border-left-width: medium; border-left-width: thick; /* <length> values */ border-left-width: 10em; border-left-width: 3vmax; border-left-width: 6px; /* global
keywords */ border-left-width: inherit; border-left-width: initial; border-left-width: unset; values <line-width> defines the width of the border, either as an explicit nonnegative <length> or a
keyword.
... if it's a
keyword, it must be one of the following values: thin a thin border medium a medium border thick a thick border note: because the specification doesn't define the exact thickness denoted by each
keyword, the precise result when using one of them is implementation-specific.
border-right-style - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-right-style: none; border-right-style: hidden; border-right-style: dotted; border-right-style: dashed; border-right-style: solid; border-right-style: double; border-right-style: groove; border-right-style: ridge; border-right-style: inset; border-right-style: outset; /* global values */ border-right-style: inherit; border-right-style: initial; border-right-style: unset; th...
...e border-right-style property is specified as a single
keyword chosen from those available for the border-style property.
border-right-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-right-width: thin; border-right-width: medium; border-right-width: thick; /* <length> values */ border-right-width: 10em; border-right-width: 3vmax; border-right-width: 6px; /* global
keywords */ border-right-width: inherit; border-right-width: initial; border-right-width: unset; values <line-width> defines the width of the border, either as an explicit nonnegative <length> or a
keyword.
... if it's a
keyword, it must be one of the following values: thin a thin border medium a medium border thick a thick border note: because the specification doesn't define the exact thickness denoted by each
keyword, the precise result when using one of them is implementation-specific.
border-top-style - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-top-style: none; border-top-style: hidden; border-top-style: dotted; border-top-style: dashed; border-top-style: solid; border-top-style: double; border-top-style: groove; border-top-style: ridge; border-top-style: inset; border-top-style: outset; /* global values */ border-top-style: inherit; border-top-style: initial; border-top-style: unset; the border-top-style propert...
...y is specified as a single
keyword chosen from those available for the border-style property.
border-top-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ border-top-width: thin; border-top-width: medium; border-top-width: thick; /* <length> values */ border-top-width: 10em; border-top-width: 3vmax; border-top-width: 6px; /* global
keywords */ border-top-width: inherit; border-top-width: initial; border-top-width: unset; values <line-width> defines the width of the border, either as an explicit nonnegative <length> or a
keyword.
... if it's a
keyword, it must be one of the following values: thin a thin border medium a medium border thick a thick border note: because the specification doesn't define the exact thickness denoted by each
keyword, the precise result when using one of them is implementation-specific.
bottom - CSS: Cascading Style Sheets
syntax /* <length> values */ bottom: 3px; bottom: 2.4em; /* <percentage>s of the height of the containing block */ bottom: 10%; /*
keyword value */ bottom: auto; /* global values */ bottom: inherit; bottom: initial; bottom: unset; values <length> a negative, null, or positive <length> that represents: for absolutely positioned elements, the distance to the bottom edge of the containing block.
...this computed value is then handled as if it were a <length>, <percentage>, or the auto
keyword.
box-align - CSS: Cascading Style Sheets
/*
keyword values */ box-align: start; box-align: center; box-align: end; box-align: baseline; box-align: stretch; /* global values */ box-lines: inherit; box-lines: initial; box-lines: unset; the direction of layout depends on the element's orientation: horizontal or vertical.
... syntax the box-align property is specified as one of the
keyword values listed below.
box-lines - CSS: Cascading Style Sheets
/*
keyword values */ box-lines: single; box-lines: multiple; /* global values */ box-lines: inherit; box-lines: initial; 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.
... syntax the box-lines property is specified as one of the
keyword values listed below.
box-orient - CSS: Cascading Style Sheets
/*
keyword values */ box-orient: horizontal; box-orient: vertical; box-orient: inline-axis; box-orient: block-axis; /* global values */ box-orient: inherit; box-orient: initial; box-orient: unset; syntax the box-orient property is specified as one of the
keyword values listed below.
... the inline and block axes are the writing-mode dependent
keywords which, in english, map to horizontal and vertical respectively.
box-pack - CSS: Cascading Style Sheets
/*
keyword values */ box-pack: start; box-pack: center; box-pack: end; box-pack: justify; /* global values */ box-pack: inherit; box-pack: initial; box-pack: unset; the direction of layout depends on the element's orientation: horizontal or vertical.
... syntax the box-pack property is specified as one of the
keyword values listed below.
break-inside - CSS: Cascading Style Sheets
/*
keyword values */ break-inside: auto; break-inside: avoid; break-inside: avoid-page; break-inside: avoid-column; break-inside: avoid-region; /* global values */ break-inside: inherit; break-inside: initial; break-inside: unset; each possible break point (in other words, each element boundary) is affected by three properties: the break-after value of the previous element, the break-before value of the next element, and the break-inside value of the containing element.
... syntax the break-inside property is specified as one of the
keyword values from the list below.
column-span - CSS: Cascading Style Sheets
/*
keyword values */ column-span: none; column-span: all; /* global values */ column-span: inherit; column-span: initial; column-span: unset; an element that spans more than one column is called a spanning element.
... syntax the column-span property is specified as one of the
keyword values listed below.
column-width - CSS: Cascading Style Sheets
syntax /*
keyword value */ column-width: auto; /* <length> values */ column-width: 60px; column-width: 15.5em; column-width: 3.3vw; /* global values */ column-width: inherit; column-width: initial; column-width: unset; the column-width property is specified as one of the values listed below.
... candidate recommendation adds intrinsic sizes via the
keywords min-content, max-content, fill-available, and fit-content.
columns - CSS: Cascading Style Sheets
values <'column-width'> the ideal column width, defined as a <length> or the
keyword auto.
... <'column-count'> the ideal number of columns into which the element's content should be flowed, defined as an <integer> or the
keyword auto.
conic-gradient() - CSS: Cascading Style Sheets
ic gradient is in at the top left corner */ conic-gradient(from 90deg at 0 0, blue, red); /* colorwheel */ background: conic-gradient( hsl(360, 100%, 50%), hsl(315, 100%, 50%), hsl(270, 100%, 50%), hsl(225, 100%, 50%), hsl(180, 100%, 50%), hsl(135, 100%, 50%), hsl(90, 100%, 50%), hsl(45, 100%, 50%), hsl(0, 100%, 50%) ); values <angle> preceded by the from
keyterm, and taking an angle as its value, defines the gradient rotation in clockwise direction.
... <position> using the same length, order and
keyterm values as the background-position property, the position defines center of the gradient.
contain - CSS: Cascading Style Sheets
syntax /*
keyword values */ contain: none; contain: strict; contain: content; contain: size; contain: layout; contain: style; contain: paint; /* multiple
keywords */ contain: size paint; contain: size layout paint; /* global values */ contain: inherit; contain: initial; contain: unset; the contain property is specified as either one of the following: using a single none, strict, or content
keyword.
... using one or more of the size, layout, style, and paint
keywords in any order.
<display-inside> - CSS: Cascading Style Sheets
these
keywords specify the element’s inner display type, which defines the type of formatting context that lays out its contents (assuming it is a non-replaced element).
... these
keywords are used as values of the display property, and can be used for legacy purposes as a single
keyword, or as defined in the level 3 specification alongside a value from the <display-outside>
keywords.
<display-legacy> - CSS: Cascading Style Sheets
css 2 used a single-
keyword syntax for the display property, requiring separate
keywords for block-level and inline-level variants of the same layout mode.
... examples in the below example, we are creating an inline flex container with the legacy
keyword inline-flex.
<display-listitem> - CSS: Cascading Style Sheets
the list-item
keyword causes the element to generate a ::marker pseudo-element with the content specified by its list-style properties (for example a bullet point) together with a principal box of the specified type for its own contents.
... list-item can also be combined with any <display-outside>
keyword and the flow or flow-root <display-inside>
keywords.
<display-outside> - CSS: Cascading Style Sheets
the <display-outside>
keywords specify the element’s outer display type, which is essentially its role in flow layout.
... these
keywords are used as values of the display property, and can be used for legacy purposes as a single
keyword, or as defined in the level 3 specification alongside a value from the <display-inside>
keywords.
filter - CSS: Cascading Style Sheets
the function accepts a parameter of type <shadow> (defined in css3 backgrounds), with the exception that the inset
keyword is not allowed.
... <color> (optional) see <color> values for possible
keywords and notations.
flex - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: flex-grow flex-shrink flex-basis syntax /*
keyword values */ flex: auto; flex: initial; flex: none; /* one value, unitless number: flex-grow */ flex: 2; /* one value, width/height: flex-basis */ flex: 10em; flex: 30%; flex: min-content; /* two values: flex-grow | flex-basis */ flex: 1 30px; /* two values: flex-grow | flex-shrink */ flex: 2 2; /* three values: flex-grow | flex-shrink | flex-basis */ flex: 2 2 10%; /* global values */ fle...
... one of the
keywords: none, auto, or initial.
font-family - CSS: Cascading Style Sheets
generic family names are
keywords and must not be quoted.
...the following
keywords are defined: serif glyphs have finishing strokes, flared or tapering ends, or have actual serifed endings.
font-kerning - CSS: Cascading Style Sheets
in the image below, for instance, the examples on the left do not use kerning, while the ones on the right do: syntax the font-kerning property is specified as one of the
keyword values listed below.
...ij</textarea> css div { font-size: 2rem; font-family: serif; } #nokern { font-kerning: none; } #kern { font-kerning: normal; } javascript let input = document.getelementbyid('input'); let kern = document.getelementbyid('kern'); let nokern = document.getelementbyid('nokern'); input.addeventlistener('
keyup', function() { kern.textcontent = input.value; /* update content */ nokern.textcontent = input.value; }); kern.textcontent = input.value; /* initialize content */ nokern.textcontent = input.value; specifications specification status comment css fonts module level 3the definition of 'font-kerning' in that specification.
font-language-override - CSS: Cascading Style Sheets
/*
keyword value */ font-language-override: normal; /* <string> values */ font-language-override: "eng"; /* use english glyphs */ font-language-override: "trk"; /* use turkish glyphs */ /* global values */ font-language-override: initial; font-language-override: inherit; font-language-override: unset; by default, html's lang attribute tells browsers to display glyphs designed specifically for that language.
... syntax the font-language-override property is specified as the
keyword normal or a <string>.
font-style - CSS: Cascading Style Sheets
syntax font-style: normal; font-style: italic; font-style: oblique; font-style: oblique 10deg; /* global values */ font-style: inherit; font-style: initial; font-style: unset; the font-style property is specified as a single
keyword chosen from the list of values below, which can optionally include an angle if the
keyword is oblique.
...you can select this using the <angle> modifier for the oblique
keyword.
font-variant-caps - CSS: Cascading Style Sheets
syntax /*
keyword values */ font-variant-caps: normal; font-variant-caps: small-caps; font-variant-caps: all-small-caps; font-variant-caps: petite-caps; font-variant-caps: all-petite-caps; font-variant-caps: unicase; font-variant-caps: titling-caps; /* global values */ font-variant-caps: inherit; font-variant-caps: initial; font-variant-caps: unset; the font-variant-caps property is specified using a single...
...
keyword value from the list below.
font-variant-position - CSS: Cascading Style Sheets
/*
keyword values */ font-variant-position: normal; font-variant-position: sub; font-variant-position: super; /* global values */ font-variant-position: inherit; font-variant-position: initial; font-variant-position: unset; when the usage of these alternate glyphs is activated, if one character in the run doesn't have such a typographically-enhanced glyph, the whole set of characters of the run is rendered using a fallback method, synthesizing these glyphs.
... syntax the font-variant-position property is specified as one of the
keyword values listed below.
grid-area - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: grid-column-end grid-column-start grid-row-end grid-row-start syntax /*
keyword values */ grid-area: auto; grid-area: auto / auto; grid-area: auto / auto / auto; grid-area: auto / auto / auto / auto; /* <custom-ident> values */ grid-area: some-grid-area; grid-area: some-grid-area / another-grid-area; /* <integer> && <custom-ident>?
... values */ grid-area: 4 some-grid-area; grid-area: 4 some-grid-area / 2 another-grid-area; /* span && [ <integer> || <custom-ident> ] values */ grid-area: span 3; grid-area: span 3 / span some-grid-area; grid-area: 2 span / another-grid-area span; /* global values */ grid-area: inherit; grid-area: initial; grid-area: unset; values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement or a default span of 1.
grid-auto-flow - CSS: Cascading Style Sheets
syntax /*
keyword values */ grid-auto-flow: row; grid-auto-flow: column; grid-auto-flow: dense; grid-auto-flow: row dense; grid-auto-flow: column dense; /* global values */ grid-auto-flow: inherit; grid-auto-flow: initial; grid-auto-flow: unset; this property may take one of two forms: a single
keyword: one of row, column, or dense.
... two
keywords: row dense or column dense.
grid-column-end - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-column-end: auto; /* <custom-ident> values */ grid-column-end: somegridarea; /* <integer> + <custom-ident> values */ grid-column-end: 2; grid-column-end: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-column-end: span 3; grid-column-end: span somegridarea; grid-column-end: 5 somegridarea span; /* global values */ grid-column-end: inherit; grid-column-end...
...: initial; grid-column-end: unset; values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
grid-column - CSS: Cascading Style Sheets
each <grid-line> value can be specified as: either the auto
keyword or a <custom-ident> value or an <integer> value or both <custom-ident> and <integer>, separated by a space or the
keyword span together with either a <custom-ident> or an <integer> or both.
... values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
grid-row-end - CSS: Cascading Style Sheets
syntax /*
keyword value */ grid-row-end: auto; /* <custom-ident> values */ grid-row-end: somegridarea; /* <integer> + <custom-ident> values */ grid-row-end: 2; grid-row-end: somegridarea 4; /* span + <integer> + <custom-ident> values */ grid-row-end: span 3; grid-row-end: span somegridarea; grid-row-end: 5 somegridarea span; /* global values */ grid-row-end: inherit; grid-row-end: initial; grid-row-end: un...
...set; values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
grid-row - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: grid-row-end grid-row-start syntax /*
keyword values */ grid-row: auto; grid-row: auto / auto; /* <custom-ident> values */ grid-row: somegridarea; grid-row: somegridarea / someothergridarea; /* <integer> + <custom-ident> values */ grid-row: somegridarea 4; grid-row: 4 somegridarea / 6; /* span + <integer> + <custom-ident> values */ grid-row: span 3; grid-row: span somegridarea; grid-row: 5 somegridarea span; grid-row: span 3 / 6; grid...
...-row: span somegridarea / span someothergridarea; grid-row: 5 somegridarea span / 2 span; /* global values */ grid-row: inherit; grid-row: initial; grid-row: unset; values auto is a
keyword indicating that the property contributes nothing to the grid item’s placement, indicating auto-placement, an automatic span, or a default span of 1.
grid-template - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: grid-template-areas grid-template-columns grid-template-rows syntax /*
keyword value */ grid-template: none; /* grid-template-rows / grid-template-columns values */ grid-template: 100px 1fr / 50px 1fr; grid-template: auto 1fr / auto 1fr auto; grid-template: [linename] 100px / [columnname1] 30% [columnname2] 70%; grid-template: fit-content(100px) / fit-content(40%); /* grid-template-areas grid-template-rows / grid-template-column values */ grid-template: "a a a" ...
... "b b b"; grid-template: "a a a" 20% "b b b" auto; grid-template: [header-top] "a a a" [header-bottom] [main-top] "b b b" 1fr [main-bottom] / auto 1fr auto; /* global values */ grid-template: inherit; grid-template: initial; grid-template: unset; values none is a
keyword that sets all three longhand properties to none, meaning there is no explicit grid.
hanging-punctuation - CSS: Cascading Style Sheets
/*
keyword values */ hanging-punctuation: none; hanging-punctuation: first; hanging-punctuation: last; hanging-punctuation: force-end; hanging-punctuation: allow-end; /* two
keywords */ hanging-punctuation: first force-end; hanging-punctuation: first allow-end; hanging-punctuation: first last; hanging-punctuation: last force-end; hanging-punctuation: last allow-end; /* three
keywords */ hanging-punctuation: first force-end last; hanging-punctuation: first allow-end last; /* global values */ hanging-punctuation: inherit; hanging-punctuation: initial; hanging-punctuation: unset; syntax the hanging-punctuatio...
... one-value syntax uses any one of the
keyword values in the list below.
height - CSS: Cascading Style Sheets
syntax /*
keyword value */ height: auto; /* <length> values */ height: 120px; height: 10em; /* <percentage> value */ height: 75%; /* global values */ height: inherit; height: initial; height: unset; values <length> defines the height as an absolute value.
... working draft added the max-content, min-content, fit-content
keywords.
image-orientation - CSS: Cascading Style Sheets
/*
keyword values */ image-orientation: none; image-orientation: from-image; /* use exif data from the image */ /* global values */ image-orientation: inherit; image-orientation: initial; image-orientation: unset; /* obsolete values.
...for any purpose other than correcting an image's orientation due to how it was shot or scanned, use a transform property with the rotate
keyword to specify rotation.
ime-mode - CSS: Cascading Style Sheets
/*
keyword values */ ime-mode: auto; ime-mode: normal; ime-mode: active; ime-mode: inactive; ime-mode: disabled; /* global values */ ime-mode: inherit; ime-mode: initial; ime-mode: unset; the ime-mode property is only partially and inconsistently implemented in browsers.
... syntax the ime-mode property is specified using one of the
keyword values listed below.
Inheritance - CSS: Cascading Style Sheets
notes the inherit
keyword allows authors to explicitly specify inheritance.
... see also css values for controlling inheritance: inherit, initial, unset, and revert introducing the css cascade cascade and inheritance css
key concepts: css syntax, at-rule, comments, specificity and inheritance, the box, layout modes and visual formatting models, and margin collapsing, or the initial, computed, resolved, specified, used, and actual values.
initial - CSS: Cascading Style Sheets
the initial css
keyword applies the initial (or default) value of a property to an element.
...you should consider using the inherit, unset, or revert
keywords instead.
left - CSS: Cascading Style Sheets
syntax /* <length> values */ left: 3px; left: 2.4em; /* <percentage>s of the width of the containing block */ left: 10%; /*
keyword value */ left: auto; /* global values */ left: inherit; left: initial; left: unset; values <length> a negative, null, or positive <length> that represents: for absolutely positioned elements, the distance to the left edge of the containing block.
...this computed value is then handled as if it were a <length>, <percentage>, or the auto
keyword.
line-height - CSS: Cascading Style Sheets
syntax /*
keyword value */ line-height: normal; /* unitless values: use this number multiplied by the element's font size */ line-height: 3.5; /* <length> values */ line-height: 3em; /* <percentage> values */ line-height: 34%; /* global values */ line-height: inherit; line-height: initial; line-height: unset; the line-height property is specified as any one of the following: a <number> a <length> a ...
...<percentage> the
keyword normal.
linear-gradient() - CSS: Cascading Style Sheets
if specified, it consists of the word to and up to two
keywords: one indicates the horizontal side (left or right), and the other the vertical side (top or bottom).
... the order of the side
keywords does not matter.
list-style-type - CSS: Cascading Style Sheets
syntax /* partial list of types */ list-style-type: disc; list-style-type: circle; list-style-type: square; list-style-type: decimal; list-style-type: georgian; list-style-type: trad-chinese-informal; list-style-type: kannada; /* <string> value */ list-style-type: '-'; /* identifier matching an @counter-style rule */ list-style-type: custom-counter-style; /*
keyword value */ list-style-type: none; /* global values */ list-style-type: inherit; list-style-type: initial; list-style-type: unset; the list-style-type property may be defined as any one of: a <custom-ident> value a symbols() value a <string> value the
keyword none.
... working draft modify syntax to support for identifiers used in @counter-style rules to
keywords.
mask-origin - CSS: Cascading Style Sheets
/*
keyword values */ mask-origin: content-box; mask-origin: padding-box; mask-origin: border-box; mask-origin: margin-box; mask-origin: fill-box; mask-origin: stroke-box; mask-origin: view-box; /* multiple values */ mask-origin: padding-box, content-box; mask-origin: view-box, fill-box, border-box; /* non-standard
keyword values */ -webkit-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.
... syntax one or more of the
keyword values listed below, separated by commas.
mask-position - CSS: Cascading Style Sheets
/*
keyword values */ mask-position: top; mask-position: bottom; mask-position: left; mask-position: right; mask-position: center; /* <position> values */ mask-position: 25% 75%; mask-position: 0px 0px; mask-position: 10% 8em; /* multiple values */ mask-position: top right; mask-position: 1rem 1rem, center; /* global values */ mask-position: inherit; mask-position: initial; mask-position: unset; syntax one or more <position> values, separated by commas.
... formal definition initial valuecenterapplies toall elements; in svg, it applies to container elements excluding the defs element and all graphics elementsinheritednopercentagesrefer to size of mask painting area minus size of mask layer image (see the text for background-position)computed valueconsists of two
keywords representing the origin and two offsets from that origin, each given as an absolute length (if given a <length>), otherwise as a percentage.animation typerepeatable list of simple list of length, percentage, or calc formal syntax <position>#where <position> = [ [ left | center | right ] | [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | ...
mask - CSS: Cascading Style Sheets
constituent properties this property is a shorthand for the following css properties: mask-clip mask-composite mask-image mask-mode mask-origin mask-position mask-repeat mask-size syntax /*
keyword values */ mask: none; /* image values */ mask: url(mask.png); /* pixel image used as mask */ mask: url(masks.svg#star); /* element within svg graphic used as mask */ /* combined values */ mask: url(masks.svg#star) luminance; /* element within svg graphic used as luminance mask */ mask: url(masks.svg#star) 40px 20px; /* element within svg gra...
...ng the defs element and all graphics elementsinheritednopercentagesas each of the properties of the shorthand:mask-position: refer to size of mask painting area minus size of mask layer image (see the text for background-position)computed valueas each of the properties of the shorthand:mask-image: as specified, but with <url> values made absolutemask-mode: as specifiedmask-repeat: consists of two
keywords, one per dimensionmask-position: consists of two
keywords representing the origin and two offsets from that origin, each given as an absolute length (if given a <length>), otherwise as a percentage.mask-clip: as specifiedmask-origin: as specifiedmask-size: as specified, but with relative lengths converted into absolute lengthsmask-composite: as specifiedanimation typeas each of the propertie...
max-width - CSS: Cascading Style Sheets
syntax /* <length> value */ max-width: 3.5em; /* <percentage> value */ max-width: 75%; /*
keyword values */ max-width: none; max-width: max-content; max-width: min-content; max-width: fit-content(20em); /* global values */ max-width: inherit; max-width: initial; max-width: unset; values <length> defines the max-width as an absolute value.
... working draft adds the max-content, min-content, fit-content
keywords.
min-height - CSS: Cascading Style Sheets
syntax /* <length> value */ min-height: 3.5em; /* <percentage> value */ min-height: 10%; /*
keyword values */ min-height: max-content; min-height: min-content; min-height: fit-content(20em); /* global values */ min-height: inherit; min-height: initial; min-height: unset; values <length> defines the min-height as an absolute value.
... working draft adds the max-content, min-content, fit-content
keywords.
offset-anchor - CSS: Cascading Style Sheets
syntax /*
keyword values */ offset-anchor: top; offset-anchor: bottom; offset-anchor: left; offset-anchor: right; offset-anchor: center; offset-anchor: auto; /* <percentage> values */ offset-anchor: 25% 75%; /* <length> values */ offset-anchor: 0 0; offset-anchor: 1cm 2cm; offset-anchor: 10ch 8em; /* edge offsets values */ offset-anchor: bottom 10px right 20px; offset-anchor: right 3em bottom 10px; /* global values */ offset-anchor: inherit; offset-anchor: initial; offset-anchor: unset; values auto offset-anchor is given the same value as the element's transform-origin, unless offset-path is none, in which case it takes its value...
...ht: 40px; } section { background-image: linear-gradient(to bottom, transparent, transparent 49%, #000 50%, #000 51%, transparent 52%); border: 1px solid #ccc; margin-bottom: 10px; } .offset-anchor1 { offset-anchor: auto; background: cyan; } .offset-anchor2 { offset-anchor: right top; background: purple; } .offset-anchor3 { offset-anchor: left bottom; background: magenta; } @
keyframes move { 0% { offset-distance: 0%; } 100% { offset-distance: 100%; } } result specifications specification status comment motion path module level 1the definition of 'offset-anchor' in that specification.
offset-path - CSS: Cascading Style Sheets
y() taking up to three values, defines a path that is a line segment starting from the position of the box and proceeds in the direction defined by the specified angle similar to the css gradient angle where 0deg is up, with positive angles increasing in the clockwise direction, with the size value being similar to the css radial gradient size values from closest-side to farthest-corner, and the
keyterm contain.
...ejoin="round" stroke-linecap="round" fill-rule="evenodd" /> </svg> css .scissorhalf { offset-path: path('m900,190 l993,245 v201 a11,11 0 0,1 1004,190 h1075 a11,11 0 0,1 1086,201 v300 l1294,423 h1216 a11,11 0 0,0 1205,434 v789 a11,11 0 0,1 1194,800 h606 a11,11 0 0,1 595,789 v434 a11,11 0 0,0 584,423 h506 l900,190'); animation: followpath 4s linear infinite; } @
keyframes followpath { to { motion-offset: 100%; offset-distance: 100%; } } result specifications <body> specification status comment motion path module level 1the definition of 'offset-path' in that specification.
outline-width - CSS: Cascading Style Sheets
syntax /*
keyword values */ outline-width: thin; outline-width: medium; outline-width: thick; /* <length> values */ outline-width: 1px; outline-width: 0.1em; /* global values */ outline-width: inherit; the outline-width property is specified as any one of the values listed below.
... formal definition initial valuemediumapplies toall elementsinheritednocomputed valuean absolute length; if the
keyword none is specified, the computed value is 0animation typea length formal syntax <line-width>where <line-width> = <length> | thin | medium | thick examples setting an element's outline width html <span id="thin">thin</span> <span id="medium">medium</span> <span id="thick">thick</span> <span id="twopixels">2px</span> <span id="oneex">1ex</span> <span id="em">1.2em</span> css span { ou...
outline - CSS: Cascading Style Sheets
usable focus indicators wcag 2.1: understanding success criterion 2.4.7: focus visible formal definition initial valueas each of the properties of the shorthand:outline-color: invert, for browsers supporting it, currentcolor for the otheroutline-style: noneoutline-width: mediumapplies toall elementsinheritednocomputed valueas each of the properties of the shorthand:outline-color: for the
keyword invert, the computed value is invert.
...the transparent
keyword maps to rgba(0,0,0,0).outline-width: an absolute length; if the
keyword none is specified, the computed value is 0outline-style: as specifiedanimation typeas each of the properties of the shorthand:outline-color: a coloroutline-width: a lengthoutline-style: discrete formal syntax [ <'outline-color'> | <'outline-style'> | <'outline-width'> ] examples using outline to set a focus style html <a href="#">this link has a special focus style.</a> css a { border: 1px solid; border-radius: 3px; display: inline-block; margin: 10px; padding: 5px; } a:focus { outline: 4px dotted #e73; outline-offse...
overflow-x - CSS: Cascading Style Sheets
syntax /*
keyword values */ overflow-x: visible; overflow-x: hidden; overflow-x: clip; overflow-x: scroll; overflow-x: auto; /* global values */ overflow-x: inherit; overflow-x: initial; overflow-x: unset; the overflow-x property is specified as a single
keyword chosen from the list of values below.
...the difference between clip and hidden is that the clip
keyword also forbids all scrolling, including programmatic scrolling.
overflow-y - CSS: Cascading Style Sheets
syntax /*
keyword values */ overflow-y: visible; overflow-y: hidden; overflow-y: clip; overflow-y: scroll; overflow-y: auto; /* global values */ overflow-y: inherit; overflow-y: initial; overflow-y: unset; the overflow-y property is specified as a single
keyword chosen from the list of values below.
...the difference between clip and hidden is that the clip
keyword also forbids all scrolling, including programmatic scrolling.
quotes - CSS: Cascading Style Sheets
syntax /*
keyword value */ quotes: none; quotes: auto; /* <string> values */ quotes: "«" "»"; /* set open-quote and close-quote to the french quotation marks */ quotes: "«" "»" "‹" "›"; /* set two levels of quotation marks */ /* global values */ quotes: inherit; quotes: initial; quotes: unset; values none the open-quote and close-quote values of the content property produce no quota...
... 37chrome android full support 18firefox android full support 4opera android full support 14safari ios full support 9samsung internet android full support 1.0auto
keywordchrome no support nonotes no support nonotes notes this value is not supported, but the default browser behavior is to choose appropriate quotes for the user's language settingedge no support nonotes no support non...
repeating-conic-gradient() - CSS: Cascading Style Sheets
syntax /* starburst: a a blue on blue starburst: the gradient is a starburst of lighter and darker blue, centered in the upper left quandrant, offset by 3degrees so there is no up/down straight line */ background: repeating-conic-gradient( from 3deg at 25% 25%, hsl(200, 100%, 50%) 0deg 15deg, hsl(200, 100%, 60%) 10deg 30deg); ); values <angle> preceded by the from
keyterm, and taking an angle as its value, defines the gradient rotation in clockwise direction.
... <position> using the same length, order and
keyterm values as the background-position property, the position defines center of the gradient.
right - CSS: Cascading Style Sheets
syntax /* <length> values */ right: 3px; right: 2.4em; /* <percentage>s of the width of the containing block */ right: 10%; /*
keyword value */ right: auto; /* global values */ right: inherit; right: initial; right: unset; values <length> a negative, null, or positive <length> that represents: for absolutely positioned elements, the distance to the right edge of the containing block.
...this computed value is then handled as if it were a <length>, <percentage>, or the auto
keyword.
scrollbar-color - CSS: Cascading Style Sheets
syntax /*
keyword values */ scrollbar-color: auto; scrollbar-color: dark; scrollbar-color: light; /* <color> values */ scrollbar-color: rebeccapurple green; /* two valid colors.
...for
keyword values, uas should ensure the colors they use have enough contrast.
scrollbar-width - CSS: Cascading Style Sheets
initial valueautoapplies toscrolling boxesinheritednocomputed valueas specifiedanimation typediscrete syntax /*
keyword values */ scrollbar-width: auto; scrollbar-width: thin; scrollbar-width: none; /* global values */ scrollbar-width: inherit; scrollbar-width: initial; scrollbar-width: unset; values <scrollbar-width> defines the width of the scrollbar as a
keyword.
... wcag criterion 2.1.1 (
keyboard) has been in place for a long time to advise on basic
keyboard accessibility, and this should include scrolling of content areas.
shape-outside - CSS: Cascading Style Sheets
syntax /*
keyword values */ shape-outside: none; shape-outside: margin-box; shape-outside: content-box; shape-outside: border-box; shape-outside: padding-box; /* function values */ shape-outside: circle(); shape-outside: ellipse(); shape-outside: inset(10px 10px 10px 10px); shape-outside: polygon(10px 10px, 20px 20px, 30px 30px); shape-outside: path('m0.5,1 c0.5,1,0,0.7,0,0.3 a0.25,0.25,1,1,1,0.5,0.3 a0.25,0.
... if both shapes are the same type, that type is ellipse() or circle(), and none of the radii use the closest-side or farthest-side
keywords, interpolate between each value in the shape functions.
text-combine-upright - CSS: Cascading Style Sheets
/*
keyword values */ text-combine-upright: none; text-combine-upright: all; /* digits values */ text-combine-upright: digits; /* fits 2 consecutive digits horizontally inside vertical text */ text-combine-upright: digits 4; /* fits up to 4 consecutive digits horizontally inside vertical text */ /* global values */ text-combine-upright: inherit; text-combine-upright: initial; text-combine-upright...
... formal definition initial valuenoneapplies tonon-replaced inline elementsinheritedyescomputed valuespecified
keyword, plus integer if 'digits'animation typediscrete formal syntax none | all | [ digits <integer>?
top - CSS: Cascading Style Sheets
syntax /* <length> values */ top: 3px; top: 2.4em; /* <percentage>s of the height of the containing block */ top: 10%; /*
keyword value */ top: auto; /* global values */ top: inherit; top: initial; top: unset; values <length> a negative, null, or positive <length> that represents: for absolutely positioned elements, the distance to the top edge of the containing block.
...this computed value is then handled as if it were a <length>, <percentage>, or the auto
keyword.
touch-action - CSS: Cascading Style Sheets
/*
keyword values */ touch-action: auto; touch-action: none; touch-action: pan-x; touch-action: pan-left; touch-action: pan-right; touch-action: pan-y; touch-action: pan-up; touch-action: pan-down; touch-action: pinch-zoom; touch-action: manipulation; /* global values */ touch-action: inherit; touch-action: initial; touch-action: unset; by default, panning (scrolling) and pinching gestures are handled exclusively by the browser.
... syntax the touch-action property may be specified as either: one of the
keywords auto, none, manipulation, or one of the
keywords pan-x, pan-left, pan-right, and/or one of the
keywords pan-y, pan-up, pan-down, plus optionally the
keyword pinch-zoom.
transform-box - CSS: Cascading Style Sheets
/*
keyword values */ transform-box: content-box; transform-box: border-box; transform-box: fill-box; transform-box: stroke-box; transform-box: view-box; /* global values */ transform-box: inherit; transform-box: initial; transform-box: unset; syntax the transform-box property is specified as one of the
keyword values listed below.
... bottom: 0; left: 0; } #box{ transform-origin:50% 50%; /*+++++++++++++++++++++++++++*/ /* if i remove this rule the pen won't work properly on chrome for mac, ff, safari will still work properly on chrome for pc & opera*/ transform-box: fill-box; /*alternatively i can use transform-origin:15px 15px;*/ /*+++++++++++++++++++++++++++*/ animation: rotatebox 3s linear infinite; } @
keyframes rotatebox { to { transform: rotate(360deg); } full credit for this example goes to pogany; see this codepen for a live version.
transform - CSS: Cascading Style Sheets
syntax /*
keyword values */ transform: none; /* function values */ transform: matrix(1.0, 2.0, 3.0, 4.0, 5.0, 6.0); transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); transform: perspective(17px); transform: rotate(0.5turn); transform: rotate3d(1, 2.0, 3.0, 10deg); transform: rotatex(10deg); transform: rotatey(10deg); transform: rotatez(10deg); transform: translate(12px, 50%); transform: tra...
...nsform: 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.
unset - CSS: Cascading Style Sheets
the unset css
keyword resets a property to its inherited value if the property naturally inherits from its parent, and to its initial value if not.
... in other words, it behaves like the inherit
keyword in the first case, when the property is an inherited property, and like the initial
keyword in the second case, when the property is a non-inherited property.
user-modify - CSS: Cascading Style Sheets
/*
keyword values */ user-modify: read-only; user-modify: read-write; user-modify: write-only; /* global values */ user-modify: inherit; user-modify: initial; user-modify: unset; this property has been replaced by the contenteditable attribute.
... syntax the -moz-user-modify property is specified as one of the
keyword values from the list below.
width - CSS: Cascading Style Sheets
syntax /* <length> values */ width: 300px; width: 25em; /* <percentage> value */ width: 75%; /*
keyword values */ width: max-content; width: min-content; width: fit-content(20em); width: auto; /* global values */ width: inherit; width: initial; width: unset; the width property is specified as either: one of the following
keyword values: min-content, max-content, fit-content, auto.
... working draft added the max-content, min-content, fit-content
keywords.
word-spacing - CSS: Cascading Style Sheets
syntax /*
keyword value */ word-spacing: normal; /* <length> values */ word-spacing: 3px; word-spacing: 0.3em; /* <percentage> values */ word-spacing: 50%; word-spacing: 200%; /* global values */ word-spacing: inherit; word-spacing: initial; word-spacing: unset; values normal the normal inter-word spacing, as defined by the current font and/or the browser.
...it also applies to ::first-letter and ::first-line.inheritedyespercentagesrefer to the width of the affected glyphcomputed valuean optimum, minimum, and maximum value, each consisting of either an absolute length, a percentage, or the
keyword normalanimation typea length formal syntax normal | <length-percentage>where <length-percentage> = <length> | <percentage> specifications specification status comment css text module level 3the definition of 'word-spacing' in that specification.
zoom - CSS: Cascading Style Sheets
/*
keyword values */ zoom: normal; zoom: reset; /* <percentage> values */ zoom: 50%; zoom: 200%; /* <number> values */ zoom: 1.1; zoom: 0.7; /* global values */ zoom: inherit; zoom: initial; zoom: unset; syntax values normal render this element at its normal size.
...by pressing ctrl-- or ctrl++
keyboard shortcuts) to the document.
Writing Web Audio API code that works in every browser - Developer guides
writing for today (and tomorrow) first, get a copy of audiocontext-mon
keypatch by chris wilson.
...if you're porting moderately "old" code (say, a year old) it's possible that it uses some methods that audiocontext-mon
keypatch doesn't alias, because it helps you to write code in the new style.
Touch events (Mozilla experimental) - Developer guides
warning: this experimental api was removed in gecko 18.0 (firefox 18.0 / thunderbird 18.0 / seamon
key 2.15), when support for the standard touch events was implemented.
... the experimental touch events api described on this page was available from gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) to gecko/firefox 17.
Index - Developer guides
25 touch events (mozilla experimental) dom the experimental touch events api described on this page was available from gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) to gecko/firefox 17.
... 42 user input and controls screen orientation, contenteditable, drag and drop, fullscreen,
keyboard, mouse, pointer lock, touch, user input modern web user input goes beyond simple mouse and
keyboard: think of touchscreens for example.
HTML attribute: multiple - HTML: Hypertext Markup Language
depending on the operating system, mouse users can hold the ctrl, command, or shift
keys and then click multiple options to select/deselect them.
...
keyboard users can select multiple contiguous items by focusing on the <select> element, selecting an item at the top or bottom of the range they want to select using the up and down cursor
keys to go up and down the options.
<a>: The Anchor element - HTML: Hypertext Markup Language
the following
keywords have special meanings for where to load the url: _self: the current browsing context.
... <body> <a href="#content">skip to main content</a> <header> … </header> <main id="content"> <!-- the skip link jumps to here --> .skip-link { position: absolute; top: -3em; background: #fff; } .skip-link:focus { top: 0; } skip links let
keyboard users bypass content repeated throughout multiple pages, such as header navigation.
<area> - HTML: Hypertext Markup Language
target a
keyword or author-defined name of the browsing context to display the linked resource.
... the following
keywords have special meanings: _self (default): show the resource in the current browsing context.
<base>: The Document Base URL element - HTML: Hypertext Markup Language
target a
keyword or author-defined name of the default browsing context to show the results of navigation from <a>, <area>, or <form> elements without explicit target attributes.
... the following
keywords have special meanings: _self (default): show the result in the current browsing context.
<track>: The Embed Text Track element - HTML: Hypertext Markup Language
the following
keywords are allowed: subtitles subtitles provide translation of content that cannot be understood by the viewer.
...ions.vtt" srclang="en"> <track kind="chapters" src="samplechapters.vtt" srclang="en"> <track kind="subtitles" src="samplesubtitles_de.vtt" srclang="de"> <track kind="subtitles" src="samplesubtitles_en.vtt" srclang="en"> <track kind="subtitles" src="samplesubtitles_ja.vtt" srclang="ja"> <track kind="subtitles" src="samplesubtitles_oz.vtt" srclang="oz"> <track kind="metadata" src="
keystage1.vtt" srclang="en" label="
key stage 1"> <track kind="metadata" src="
keystage2.vtt" srclang="en" label="
key stage 2"> <track kind="metadata" src="
keystage3.vtt" srclang="en" label="
key stage 3"> <!-- fallback --> ...
autocapitalize - HTML: Hypertext Markup Language
(all letters default to lowercase) on or sentences: the first letter of each sentence defaults to a capital letter; all other letters default to lowercase words: the first letter of each word defaults to a capital letter; all other letters default to lowercase characters: all letters should default to uppercase the autocapitalize attribute doesn’t affect behavior when typing on a physical
keyboard.
... instead, it affects the behavior of other input mechanisms, such as virtual
keyboards on mobile devices and voice input.
Firefox user agent string reference - HTTP
for instance, this could be "camino/2.1.1", or "seamon
key/2.7.1".
... browser gecko user agent string firefox for maemo (nokia n900) mozilla/5.0 (maemo; linux armv7l; rv:10.0.1) gecko/20100101 firefox/10.0.1 fennec/10.0.1 camino on mac mozilla/5.0 (macintosh; intel mac os x 10.5; rv:2.0.1) gecko/20100101 firefox/4.0.1 camino/2.2.1 seamon
key on windows mozilla/5.0 (windows nt 5.2; rv:10.0.1) gecko/20100101 firefox/10.0.1 seamon
key/2.7.1 seamon
key on mac mozilla/5.0 (macintosh; intel mac os x 10.5; rv:10.0.1) gecko/20100101 firefox/10.0.1 seamon
key/2.7.1 seamon
key on linux mozilla/5.0 (x11; linux i686; rv:10.0.1) gecko/20100101 firefox/10.0.1 seamon
key/2.7.1 implementation notes for applications, vend...
Iterators and generators - JavaScript
when a value is consumed by calling the generator's next method, the generator function executes until it encounters the yield
keyword.
...this simply means that the object (or one of the objects up its prototype chain) must have a property with a symbol.iterator
key.
Public class fields - JavaScript
public static fields are declared using the static
keyword.
...subclasswithinstancefield extends classwithinstancefield { subinstancefield = super.baseinstancemethod() } const base = new classwithinstancefield() const sub = new subclasswithinstancefield() console.log(base.anotherbaseinstancefield) // expected output: "base field" console.log(sub.subinstancefield) // expected output: "base method output" public methods public static methods the static
keyword defines a static method for a class.
extends - JavaScript
the extends
keyword is used in class declarations or class expressions to create a class that is a child of another class.
...} description the extends
keyword can be used to subclass custom classes as well as built-in objects.
TypeError: "x" is not a non-null object - JavaScript
providing no object (like just a number), will throw an error: object.defineproperty({}, '
key', 1); // typeerror: 1 is not a non-null object object.defineproperty({}, '
key', null); // typeerror: null is not a non-null object a valid property descriptor object might look like this: object.defineproperty({}, '
key', { value: 'foo', writable: false }); weakmap and weakset objects require object
keys weakmap and weakset objects store object
keys.
... you can't use other types as
keys.
ReferenceError: assignment to undeclared variable "x" - JavaScript
in other words, there was an assignment without the var
keyword.
... function foo() { 'use strict'; bar = true; } foo(); // referenceerror: assignment to undeclared variable bar valid cases to make "bar" a declared variable, you can add the var
keyword in front of it.
TypeError: "x" is (not) "y" - JavaScript
also, certain methods, such as object.create() or symbol.
keyfor(), require a specific type, that must be provided.
... examples invalid cases // undefined and null cases on which the substring method won't work var foo = undefined; foo.substring(1); // typeerror: foo is undefined var foo = null; foo.substring(1); // typeerror: foo is null // certain methods might require a specific type var foo = {} symbol.
keyfor(foo); // typeerror: foo is not a symbol var foo = 'bar' object.create(foo); // typeerror: "foo" is not an object or null fixing the issue to fix null pointer to undefined values, you can use the typeof operator, for example.
SyntaxError: function statement requires a name - JavaScript
you will need a few more braces in this case: (function () { })(); labeled functions if you are using function labels, you will still need to provide a function name after the function
keyword.
...the following syntax without a name after the function
keyword is valid then.
TypeError: 'x' is not iterable - JavaScript
var obj = { 'france': 'paris', 'england': 'london' }; for (let p of obj) { // typeerror: obj is not iterable // … } instead you have to use object.
keys or object.entries, to iterate over the properties or entries of an object.
... var obj = { 'france': 'paris', 'england': 'london' }; // iterate over the property names: for (let country of object.
keys(obj)) { var capital = obj[country]; console.log(country, capital); } for (const [country, capital] of object.entries(obj)) console.log(country, capital); another option for this use case might be to use a map: var map = new map; map.set('france', 'paris'); map.set('england', 'london'); // iterate over the property names: for (let country of map.
keys()) { let capital = map[country]; console.log(country, capital); } for (let capital of map.values()) console.log(capital); for (const [country, capital] of map.entries()) console.log(country, capital); iterating over a generator generators are functions you call to produce an iterable obj...
Method definitions - JavaScript
syntax const obj = { get property() {}, set property(value) {}, property( parameters… ) {}, *generator( parameters… ) {}, async property( parameters… ) {}, async* generator( parameters… ) {}, // with computed
keys get [property]() {}, set [property](value) {}, [property]( parameters… ) {}, *[generator]( parameters… ) {}, async [property]( parameters… ) {}, async* [generator]( parameters… ) {}, }; description the shorthand syntax is similar to the getter and setter syntax introduced in ecmascript 2015.
...(that is, * g(){} will work, but g *(){} will not.) non-generator method definitions cannot contain the yield
keyword.
Error() constructor - JavaScript
therefore, a mere call to error will produce the same output that constructing an error object via the new
keyword would.
...const y = new error('i was constructed via the "new"
keyword!') specifications specification ecmascript (ecma-262)the definition of 'error constructor' in that specification.
Error - JavaScript
examples throwing a generic error usually you create an error object with the intention of raising it using the throw
keyword.
... you can handle the error using the try...catch construct: try { throw new error('whoops!') } catch (e) { console.error(e.name + ': ' + e.message) } handling a specific error you can choose to handle only specific error types by testing the error type with the error's constructor property or, if you're writing for modern javascript engines, instanceof
keyword: try { foo.bar() } catch (e) { if (e instanceof evalerror) { console.error(e.name + ': ' + e.message) } else if (e instanceof rangeerror) { console.error(e.name + ': ' + e.message) } // ...
Function.prototype.bind() - JavaScript
the bind() method creates a new function that, when called, has its this
keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.
...const addthirtyseven = addarguments.bind(null, 37); const list2 = leadingthirtysevenlist(); // [37] const list3 = leadingthirtysevenlist(1, 2, 3); // [37, 1, 2, 3] const result2 = addthirtyseven(5); // 37 + 5 = 42 const result3 = addthirtyseven(5, 10); // 37 + 5 = 42 // (the second argument is ignored) with settimeout() by default within window.settimeout(), the this
keyword will be set to the window (or global) object.
Function.name - JavaScript
(new function).name; // "anonymous" anonymous function expression anonymous function expressions that were created using the
keyword function or arrow functions would have ""(an empty string) as their name.
...however, es2015 specifies the static
keyword such that static methods will be set as ownproperty of the class constructor function (ecmascript2015, 14.5.14.21.b + 12.2.6.9).
Intl.DateTimeFormat.prototype.resolvedOptions() - JavaScript
if any unicode extension values were requested in the input bcp 47 language tag that led to this locale, the
key-value pairs that were requested and are supported for this locale are included in locale.
..."gregory" numberingsystem the values requested using the unicode extension
keys "ca" and "nu" or filled in as default values.
Intl.NumberFormat.prototype.resolvedOptions() - JavaScript
if any unicode extension values were requested in the input bcp 47 language tag that led to this locale, the
key-value pairs that were requested and are supported for this locale are included in locale.
... numberingsystem the value provided for this properties in the options argument, if present, or the value requested using the unicode extension
key "nu" or filled in as a default.
Intl.RelativeTimeFormat.prototype.resolvedOptions() - JavaScript
if any unicode extension values were requested in the input bcp 47 language tag that led to this locale, the
key-value pairs that were requested and are supported for this locale are included in locale.
... numberingsystem the value requested using the unicode extension
key "nu" or filled in as a default.
Intl - JavaScript
each constructor or function supports only a subset of the
keys defined for the unicode extension, and the supported values often depend on the language tag.
... for example, the "co"
key (collation) is only supported by collator, and its "phonebk" value is only supported for german.
Map() constructor - JavaScript
syntax new map([iterable]) parameters iterable an array or other iterable object whose elements are
key-value pairs.
... (for example, arrays with two elements, such as [[ 1, 'one' ],[ 2, 'two' ]].) each
key-value pair is added to the new map.
Map.prototype.delete() - JavaScript
the delete() method removes the specified element from a map object by
key.
... syntax mymap.delete(
key); parameters
key the
key of the element to remove from the map object.
Map.prototype.set() - JavaScript
the set() method adds or updates an element with a specified
key and a value to a map object.
... syntax mymap.set(
key, value) parameters
key the
key of the element to add to the map object.
Comparing Reflect and Object methods - JavaScript
keys() object.
keys() returns an array of strings that map to the target object's own (enumerable) property
keys.
... n/a own
keys() n/a reflect.own
keys() returns an array of property names that map to the target object's own property
keys.
Reflect.deleteProperty() - JavaScript
syntax reflect.deleteproperty(target, property
key) parameters target the target object on which to delete the property.
... property
key the name of the property to be deleted.
Reflect.getOwnPropertyDescriptor() - JavaScript
syntax reflect.getownpropertydescriptor(target, property
key) parameters target the target object in which to look for the property.
... property
key the name of the property to get an own property descriptor for.
Reflect.has() - JavaScript
syntax reflect.has(target, property
key) parameters target the target object in which to look for the property.
... property
key the name of the property to check.
Set.prototype.entries() - JavaScript
for set objects there is no
key like in map objects.
... however, to keep the api similar to the map object, each entry has the same value for its
key and value here, so that an array [value, value] is returned.
Symbol.asyncIterator - JavaScript
in order for an object to be async iterable, it must have a symbol.asynciterator
key.
... built-in async iterables there are currently no built-in javascript objects that have the [symbol.asynciterator]
key set by default.
WeakMap.prototype.delete() - JavaScript
syntax wm.delete(
key); parameters
key the
key of the element to remove from the weakmap object.
...false if the
key is not found in the weakmap or if the
key is not an object.
Iteration protocols - JavaScript
in order to be iterable, an object must implement the @@iterator method, meaning that the object (or one of the objects up its prototype chain) must have a property with a @@iterator
key which is available via constant symbol.iterator: property value [symbol.iterator] a zero-argument function that returns an object, conforming to the iterator protocol.
...therefore inside of the function, the this
keyword can be used to access the properties of the iterable object, to decide what to provide during the iteration.
Destructuring assignment - JavaScript
let
key = 'z'; let {[
key]: foo} = {z: 'bar'}; console.log(foo); // "bar" rest in object destructuring the rest/spread properties for ecmascript proposal (stage 4) adds the rest syntax to destructuring.
... rest properties collect the remaining own enumerable property
keys that are not already picked off by the destructuring pattern.
Property accessors - JavaScript
the
keys in this array are the names of the object's properties.
... let foo = {unique_prop: 1}, bar = {unique_prop: 2}, object = {}; object[foo] = 'value' console.log(object[bar]) in the spidermon
key javascript engine, this string would be "[object object]".
Spread syntax (...) - JavaScript
spread syntax (...) allows an iterable such as an array expression or string to be expanded in places where zero or more arguments (for function calls) or elements (for array literals) are expected, or an object expression to be expanded in places where zero or more
key-value pairs (for object literals) are expected.
... spread syntax (other than in the case of spread properties) can be applied only to iterable objects: const obj = {'
key1': 'value1'}; const array = [...obj]; // typeerror: obj is not iterable spread with many values when using spread syntax for function calls, be aware of the possibility of exceeding the javascript engine's argument length limit.
delete operator - JavaScript
-configurable properties that cannot be deleted with the delete operator: var nameother = 'xyz'; // we can access this global property using: object.getownpropertydescriptor(window, 'nameother'); // output: object {value: "xyz", // writable: true, // enumerable: true, // configurable: false} // since "nameother" is added using with the // var
keyword, it is marked as "non-configurable" delete nameother; // return false in strict mode, this would have raised an exception.
... if you want to use an ordered associative array in a cross-browser environment, use a map object if available, or simulate this structure with two separate arrays (one for the
keys and the other for the values), or build an array of single-property objects, etc.
void operator - JavaScript
e void operator should be taken into account and that parentheses can help clarify the resolution of the expression following the void operator: void 2 == '2'; // (void 2) == '2', returns false void (2 == '2'); // void (2 == '2'), returns undefined examples immediately invoked function expressions when using an immediately-invoked function expression, void can be used to force the function
keyword to be treated as an expression instead of a declaration.
... void function iife() { console.log("executed!"); }(); // output: "executed!" executing the above function without the void
keyword will result in an uncaught syntaxerror.
for...in - JavaScript
the for...in statement iterates over all enumerable properties of an object that are
keyed by strings (ignoring ones
keyed by symbols), including inherited enumerable properties.
...although arrays are often more practical for storing data, in situations where a
key-value pair is preferred for working with data (with properties acting as the "
key"), there may be instances where you want to check if any of those
keys hold a particular value.
for...of - JavaScript
alue of iterable) { console.log(value); } // "b" // "o" // "o" iterating over a typedarray const iterable = new uint8array([0x00, 0xff]); for (const value of iterable) { console.log(value); } // 0 // 255 iterating over a map const iterable = new map([['a', 1], ['b', 2], ['c', 3]]); for (const entry of iterable) { console.log(entry); } // ['a', 1] // ['b', 2] // ['c', 3] for (const [
key, value] of iterable) { console.log(value); } // 1 // 2 // 3 iterating over a set const iterable = new set([1, 1, 2, 2, 3, 3]); for (const value of iterable) { console.log(value); } // 1 // 2 // 3 iterating over the arguments object you can iterate over the arguments object to examine all of the parameters passed into a javascript function: (function() { for (const argument of argume...
...ibonacci() { // a generator function let [prev, curr] = [0, 1]; while (true) { [prev, curr] = [curr, prev + curr]; yield curr; } } for (const n of fibonacci()) { console.log(n); // truncate the sequence at 1000 if (n >= 1000) { break; } } do not reuse generators generators should not be re-used, even if the for...of loop is terminated early, for example via the break
keyword.
Template literals (Template strings) - JavaScript
function template(strings, ...
keys) { return (function(...values) { let dict = values[values.length - 1] || {}; let result = [strings[0]];
keys.foreach(function(
key, i) { let value = number.isinteger(
key) ?
... values[
key] : dict[
key]; result.push(value, strings[i + 1]); }); return result.join(''); }); } let t1closure = template`${0}${1}${0}!`; //let t1closure = template(["","","","!"],0,1,0); t1closure('y', 'a'); // "yay!" let t2closure = template`${0} ${'foo'}!`; //let t2closure = template([""," ","!"],0,"foo"); t2closure('hello', {foo: 'world'}); // "hello world!" let t3closure = template`i'm ${'name'}.
Values - MathML
88889em constant value veryverythinmathspace 1/18em verythinmathspace 2/18em thinmathspace 3/18em mediummathspace 4/18em thickmathspace 5/18em verythickmathspace 6/18em veryverythickmathspace 7/18em negative contstants are introduced in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) (bug 650530) negativeveryverythinmathspace -1/18em negativeverythinmathspace -2/18em negativethinmathspace -3/18em negativemediummathspace -4/18em negativethickmathspace -5/18em negativeverythickmathspace -6/18em negativeveryverythickmathspace -7/18em note: namedspace binding is deprecated in mathm...
...l3 and has been removed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamon
key 2.12) (bug 673759).
<mpadded> - MathML
pseudo-units it is possible to use the
keywords "depth", "height", and "width" as a pseudo-unit for the attributes depth, height, lspace, voffset, and width.
... prior to gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamon
key 2.4) the mathml2 pseudo-unit lspace was allowed, which is no longer present in the mathml3 recommendation and has been removed now.
<mtable> - MathML
starting with gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamon
key 2.5) the interpretation of negative values has been corrected (bug 601436).
... in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamon
key 2.14) the parsing has been updated to treat whitespace correctly.
Using audio and video in HTML - Web media technologies
more than that, their underlying interfaces are the
key to manipulating and playing back media in general, even offscreen.
...for now, some of the
key information you may be looking for can be found in our learning area article on the topic.
Animation performance and frame rate - Web Performance
with css animations you specify a number of
keyframes, each of which uses css to define the appearance of the element at a particular stage of the animation.
... the browser creates the animation as a transition from each
keyframe to the next.
CSS and JavaScript animation performance - Web Performance
css animations consist of two components: a style describing the css animation, and a set of
key frames that indicate the start and end states of the animation's style, as well as possible intermediate points.
...the
key is that as long as the properties we want to animate do not trigger reflow/repaint (read css triggers for more information), we can move those sampling operations out of the main thread.
Privacy, permissions, and information security
feature policy lets web developers selectively enable, disable, and modify the behavior of certain features and apis both for a document and for subdocuments loaded in <iframe>s <iframe>'s allow attribute technically part of feature policy, the allow attribute on an <iframe> specifies which web features the document in the frame should be allowed to access http public
key pinning (hpkp) hpkp is used by servers to instruct a client to associate a specific public
key with the server going forward in order to decrease the likelihood of man-in-the-middle attacks http strict transport security (hsts) hsts is used by servers to let them protect themselves from protocol downgrade and cookie hijack attacks by letting sites tell clients that they can only us...
...for example, in firefox 73, the user permission requests were revised so that when an <iframe> uses the allow
keyword to delegate permission to the embeded document, the browser asks the user to grant the parent document permission to use the resource, and that permission is then shared with the embedded content that requested the resource to begin with.
calcMode - SVG: Scalable Vector Graphics
if paced is specified, any
keytimes or
keysplines will be ignored.
...the points of the spline are defined in the
keytimes attribute, and the control points for each interval are defined in the
keysplines attribute.
type - SVG: Scalable Vector Graphics
the
keyword matrix indicates that a full 5x4 matrix of values will be provided.
... the other
keywords represent convenience shortcuts to allow commonly used color operations to be performed without specifying a complete matrix.
<animateMotion> - SVG: Scalable Vector Graphics
htgrey" d="m20,50 c20,-50 180,150 180,50 c180-50 20,150 20,50 z" /> <circle r="5" fill="red"> <animatemotion dur="10s" repeatcount="indefinite" path="m20,50 c20,-50 180,150 180,50 c180-50 20,150 20,50 z" /> </circle> </svg> usage context categoriesanimation elementpermitted contentany number of the following elements, in any order:descriptive elements<mpath> attributes
keypoints this attribute indicate, in the range [0,1], how far is the object along the path for each
keytimes associated values.
... value type: <number>|auto|auto-reverse; default value: 0; animatable: no note: for <animatemotion> the default value for the calcmode attribute is paced animation attributes animation timing attributes begin, dur, end, min, max, restart, repeatcount, repeatdur, fill animation value attributes calcmode, values,
keytimes,
keysplines, from, to, by other animation attributes most notably: attributename, additive, accumulate animation event attributes most notably: onbegin, onend, onrepeat global attributes core attributes most notably: id styling attributes class, style event attributes global event attributes, document element event attributes usage notes this element implements the svganimat...
Tutorials
after that, we discuss some
key javascript features in detail, such as variables, strings, numbers and arrays.
... javascript building blocks in this module, we continue our coverage of all javascript's
key fundamental features, turning our attention to commonly-encountered types of code block such as conditional statements, loops, functions, and events.
Using custom elements - Web Components
one of the
key features of the web components standard is the ability to create custom elements that encapsulate your functionality on an html page, rather than having to make do with a long, nested batch of elements that together provide a custom page feature.
...<custom-square l="100" c="red"></custom-square> the class constructor is really simple — here we attach a shadow dom to the element, then attach empty <div> and <style> elements to the shadow root: const shadow = this.attachshadow({mode: 'open'}); const div = document.createelement('div'); const style = document.createelement('style'); shadow.appendchild(style); shadow.appendchild(div); the
key function in this example is updatestyle() — this takes an element, gets its shadow root, finds its <style> element, and adds width, height, and background-color to the style.
menubar - Archive of obsolete content
> <menuitem label="new"/> <menuitem label="save" disabled="true"/> <menuitem label="close"/> <menuseparator/> <menuitem label="quit"/> </menupopup> </menu> <menu id="edit-menu" label="edit"> <menupopup id="edit-popup"> <menuitem label="undo"/> <menuitem label="redo"/> </menupopup> </menu> </menubar> attributes grippyhidden seamon
key only type: boolean when set to true, the grippy will be hidden.
resizer - Archive of obsolete content
attributes dir, element, type examples resizing a window <window xmlns="http://www.mozilla.org/
keymaster/gat...re.is.only.xul" hidechrome="true" windowtype="main" orient="vertical" sizemode="normal" width="400" height="300" persist="screenx screeny width height"> <hbox flex="1"> <vbox width="2" style="background-color: grey;"> <resizer dir="topleft" height="2" style="cursor: nw-resize;"/> <resizer dir="left" flex="1" style="cursor: w-resize;"/> <resizer dir="bottomleft" heigh...
scrollbar - Archive of obsolete content
pageincrement type: integer the amount by which the value of the curpos or value attribute changes when the tray of the scroll bar (the area in which the scroll bar thumb moves) is clicked, or when the page up or page down
keys are pressed.
titlebar - Archive of obsolete content
<?xml version="1.0"?> <window title="movable hud window" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" width="300" height="200" style="background: transparent; -moz-appearance: none;"> <titlebar flex="1" oncommand="close()" style="background: rgba(30, 30, 30, 0.9); -moz-border-radius: 10px; -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.8); margin: 8px 12px 16px;"/> </window> it...
toolbox - Archive of obsolete content
properties accessible, customtoolbarcount, externaltoolbars, palette, toolbarset methods appendcustomtoolbar, collapsetoolbar, expandtoolbar examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="yourwindow" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" title="toolbox example" width="300"> <toolbox> <toolbar> <toolbarbutton label="back"/> <toolbarbutton label="forward"/> <toolbarbutton label="home"/> </toolbar> <toolbar> <toolbarbutton label="stop"/> <toolbarbutton label="reload"/> </toolbar> </toolbox> <textbox multiline="true" value="we have two toolbars in...
wizard - Archive of obsolete content
dowtype properties canadvance, canrewind, currentpage, onfirstpage, onlastpage, pagecount, pageindex, pagestep, title, wizardpages methods advance, cancel, extra1, extra2, getbutton, getpagebyid, goto, rewind examples <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <wizard id="thewizard" title="secret code wizard" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script> function checkcode(){ document.getelementbyid('thewizard').canadvance = (document.getelementbyid('secretcode').value == "cabbage"); } </script> <wizardpage onpageshow="checkcode();"> <label value="enter the secret code:"/> <textbox id="secretcode" on
keyup="checkcode();"/> </wizardpage> <wizardpage> <label value="that i...
CommandLine - Archive of obsolete content
interfaces.nsiobserverservice); observerservice.notifyobservers(window.arguments[0], "commandline-args-changed", null); addeventlistener("unload", observer.unregister, false); finally, add a reference in your application window to the observer: chrome/content/window.xul <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" id="main" title="&window.title;" windowtype="xulmine" style="width: 300px; height: 350px;" persist="screenx screeny width height sizemode"> <script type="application/javascript" src="cmdline.js" /> ...
Getting started with XULRunner - Archive of obsolete content
main.xul: <?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window id="main" title="my app" width="300" height="300" xmlns="http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://myapp/content/main.js"/> <caption label="hello world"/> <separator/> <button label="more >>" oncommand="showmore();"/> <separator/> <description id="more-text" hidden="true">this is a simple xulrunner application.
How to enable locale switching in a XULRunner application - Archive of obsolete content
toolkitchromereg = chromeregservice.queryinterface(components.interfaces.nsitoolkitchromeregistry); var selectedlocale = xulchromereg.getselectedlocale("localeswitchdemo"); var availablelocales = toolkitchromereg.getlocalesforpackage("localeswitchdemo"); // render locale menulist by iterating through the query result from getlocalesforpackage() const xul_ns = "http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul"; var localelistbox = document.getelementbyid("locale-listbox"); var selecteditem = null; while(availablelocales.hasmore()) { var locale = availablelocales.getnext(); var listitem = document.createelementns(xul_ns, "listitem"); listitem.setattribute("value", locale); listitem.setattribute("label", locale); if (locale == selectedl...
Advanced form styling - Learn web development
however, in the case of the number type the data being collected is simpler, and it is easy to just use a text input type instead if desired (or tel if you want mobile browsers to show the numeric
keypad).
Client-side form validation - Learn web development
note: a
key point here is that setting the novalidate attribute on the form is what stops the form from showing its own error message bubbles, and allows us to instead display the custom error messages in the dom in some manner of our own choosing.
Example 3 - Learn web development
on () { highlightoption(select, option); }); }); select.addeventlistener('click', function (event) { toggleoptlist(select); }, false); select.addeventlistener('focus', function (event) { activeselect(select, selectlist); }); select.addeventlistener('blur', function (event) { deactivateselect(select); }); select.addeventlistener('
keyup', function (event) { if (event.
keycode === 27) { deactivateselect(select); } }); }); }); result ...
Example 4 - Learn web development
optionlist = select.queryselectorall('.option'), selectedindex = getindex(select); select.tabindex = 0; select.previouselementsibling.tabindex = -1; updatevalue(select, selectedindex); optionlist.foreach(function (option, index) { option.addeventlistener('click', function (event) { updatevalue(select, index); }); }); select.addeventlistener('
keyup', function (event) { var length = optionlist.length, index = getindex(select); if (event.
keycode === 27) { deactivateselect(select); } if (event.
keycode === 40 && index < length - 1) { index++; } if (event.
keycode === 38 && index > 0) { index--; } updatevalue(select, index); }); }); }); result ...
Example 5 - Learn web development
, function (event) { updatevalue(select, index); }); }); select.addeventlistener('click', function (event) { toggleoptlist(select); }); select.addeventlistener('focus', function (event) { activeselect(select, selectlist); }); select.addeventlistener('blur', function (event) { deactivateselect(select); }); select.addeventlistener('
keyup', function (event) { var length = optionlist.length, index = getindex(select); if (event.
keycode === 27) { deactivateselect(select); } if (event.
keycode === 40 && index < length - 1) { index++; } if (event.
keycode === 38 && index > 0) { index--; } updatevalue(select, index); }); }); }); result ...
Sending form data - Learn web development
on the server side: retrieving the data whichever http method you choose, the server receives a string that will be parsed in order to get the data as a list of
key/value pairs.
Styling web forms - Learn web development
borders and backgrounds, and redefine their padding and margin: input, textarea { font : 1.4em/1.5em "handwriting", cursive, sans-serif; border : none; padding : 0 10px; margin : 0; width : 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.
The web and web standards - Learn web development
"open" standards one of the
key aspects of web standards, which timbl and the w3c agreed on from the start, is that the web (and web technologies) should be free to both contribute and use, and not encumbered by patents/licensing.
Debugging HTML - Learn web development
debugging doesn't have to be scary though — the
key to being comfortable with writing and debugging any programming language or code is familiarity with both the language and the tools.
HTMLDialogElement.show() - Web APIs
<!-- simple pop-up dialog box, containing a form --> <dialog id="favdialog"> <form method="dialog"> <section> <p><label for="favanimal">favorite animal:</label> <select id="favanimal" name="favanimal"> <option></option> <option>brine shrimp</option> <option>red panda</option> <option>spider mon
key</option> </select></p> </section> <menu> <button id="cancel" type="reset">cancel</button> <button type="submit">confirm</button> </menu> </form> </dialog> <menu> <button id="updatedetails">update details</button> </menu> <script> (function() { var updatebutton = document.getelementbyid('updatedetails'); var cancelbutton =...
HTMLDialogElement.showModal() - Web APIs
<!-- simple pop-up dialog box, containing a form --> <dialog id="favdialog"> <form method="dialog"> <section> <p><label for="favanimal">favorite animal:</label> <select id="favanimal" name="favanimal"> <option></option> <option>brine shrimp</option> <option>red panda</option> <option>spider mon
key</option> </select></p> </section> <menu> <button id="cancel" type="reset">cancel</button> <button type="submit">confirm</button> </menu> </form> </dialog> <menu> <button id="updatedetails">update details</button> </menu> <script> (function() { var updatebutton = document.getelementbyid('updatedetails'); var cancelbutton =...
HTMLDialogElement - Web APIs
<!-- simple pop-up dialog box, containing a form --> <dialog id="favdialog"> <form method="dialog"> <section> <p><label for="favanimal">favorite animal:</label> <select id="favanimal" name="favanimal"> <option></option> <option>brine shrimp</option> <option>red panda</option> <option>spider mon
key</option> </select></p> </section> <menu> <button id="cancel" type="reset">cancel</button> <button type="submit">confirm</button> </menu> </form> </dialog> <menu> <button id="updatedetails">update details</button> </menu> <script> (function() { var updatebutton = document.getelementbyid('updatedetails'); var cancelbutton =...
HTMLElement: animationcancel event - Web APIs
our planet.</p> </div> <button class="activate" type="button">activate animation</button> <div class="event-log"></div> </div> css .container { height: 3rem; } .event-log { width: 25rem; height: 2rem; border: 1px solid black; margin: 0.2rem; padding: 0.2rem; } .animation.active { animation-duration: 2s; animation-name: slidein; animation-iteration-count: 2; } @
keyframes slidein { from { transform: translatex(100%) scalex(3); } to { transform: translatex(0) scalex(1); } } js const animation = document.queryselector('p.animation'); const animationeventlog = document.queryselector('.animation-example>.event-log'); const applyanimation = document.queryselector('.animation-example>button.activate'); let iterationcount = 0; animation.addevent...
HTMLElement: animationend event - Web APIs
it our planet.</p> </div> <button class="activate" type="button">activate animation</button> <div class="event-log"></div> </div> css .container { height: 3rem; } .event-log { width: 25rem; height: 2rem; border: 1px solid black; margin: .2rem; padding: .2rem; } .animation.active { animation-duration: 2s; animation-name: slidein; animation-iteration-count: 2; } @
keyframes slidein { from { margin-left: 100%; width: 300%; } to { margin-left: 0%; width: 100%; } } js const animation = document.queryselector('p.animation'); const animationeventlog = document.queryselector('.animation-example>.event-log'); const applyanimation = document.queryselector('.animation-example>button.activate'); let iterationcount = 0; animation.addeventlist...
HTMLElement: animationiteration event - Web APIs
our planet.</p> </div> <button class="activate" type="button">activate animation</button> <div class="event-log"></div> </div> css .container { height: 3rem; } .event-log { width: 25rem; height: 2rem; border: 1px solid black; margin: 0.2rem; padding: 0.2rem; } .animation.active { animation-duration: 2s; animation-name: slidein; animation-iteration-count: 2; } @
keyframes slidein { from { transform: translatex(100%) scalex(3); } to { transform: translatex(0) scalex(1); } } js const animation = document.queryselector('p.animation'); const animationeventlog = document.queryselector('.animation-example>.event-log'); const applyanimation = document.queryselector('.animation-example>button.activate'); let iterationcount = 0; animation.addevent...
HTMLElement: animationstart event - Web APIs
our planet.</p> </div> <button class="activate" type="button">activate animation</button> <div class="event-log"></div> </div> css .container { height: 3rem; } .event-log { width: 25rem; height: 2rem; border: 1px solid black; margin: 0.2rem; padding: 0.2rem; } .animation.active { animation-duration: 2s; animation-name: slidein; animation-iteration-count: 2; } @
keyframes slidein { from { transform: translatex(100%) scalex(3); } to { transform: translatex(0) scalex(1); } } js const animation = document.queryselector('p.animation'); const animationeventlog = document.queryselector('.animation-example>.event-log'); const applyanimation = document.queryselector('.animation-example>button.activate'); let iterationcount = 0; animation.addevent...
HTMLElement: change event - Web APIs
bubbles yes cancelable no interface event event handler property onchange depending on the kind of element being changed and the way the user interacts with the element, the change event fires at a different moment: when the element is :checked (by clicking or using the
keyboard) for <input type="radio"> and <input type="checkbox">; when the user commits the change explicitly (e.g., by selecting a value from a <select>'s dropdown with a mouse click, by selecting a date from a date picker for <input type="date">, by selecting a file in the file picker for <input type="file">, etc.); when the element loses focus after its value was changed, but not commited (e.g., a...
HTMLElement.dir - Web APIs
chrome and safari provide a directionality option in the contextual menu of input fields while internet explorer and edge use the
key combinations ctrl + left shift and ctrl + right shift.
HTMLElement: input event - Web APIs
this is unlike the change event, which only fires when the value is committed, such as by pressing the enter
key, selecting a value from a list of options, and the like.
HTMLFormElement - Web APIs
you can also get the form's element by using its name attribute as a
key of the form, but using elements is a better approach—it contains only the form's elements, and it cannot be mixed with other attributes of the form.
HTMLImageElement.crossOrigin - Web APIs
syntax htmlimageelement.crossorigin = crossoriginmode; let crossoriginmode = htmlimageelement.crossorigin; value a domstring of a
keyword specifying the cors mode to use when fetching the image resource.
HTMLInputElement: search event - Web APIs
bubbles yes cancelable no interface event event handler property onsearch there are several ways a search can be initiated, such as by pressing enter while the <input> is focused, or, if the incremental attribute is present, after a ua-defined timeout elapses since the most recent
keystroke (with new
keystrokes resetting the timeout so the firing of the event is debounced).
HTMLMediaElement.textTracks - Web APIs
scriptions.vtt" srclang="en"> <track kind="chapters" src="samplechapters.vtt" srclang="en"> <track kind="subtitles" src="samplesubtitles_de.vtt" srclang="de"> <track kind="subtitles" src="samplesubtitles_en.vtt" srclang="en"> <track kind="subtitles" src="samplesubtitles_ja.vtt" srclang="ja"> <track kind="subtitles" src="samplesubtitles_oz.vtt" srclang="oz"> <track kind="metadata" src="
keystage1.vtt" srclang="en" label="
key stage 1"> <track kind="metadata" src="
keystage2.vtt" srclang="en" label="
key stage 2"> <track kind="metadata" src="
keystage3.vtt" srclang="en" label="
key stage 3"> </video> the htmlmediaelement.texttracks returns a texttrackslist thru which we can iterate.
Option() - Web APIs
examples just add new options /* assuming we have the following html <select id='s'> </select> */ var s = document.getelementbyid('s'); var options = [four, five, six]; options.foreach(function(element,
key) { s[
key] = new option(element,
key); }); append options with different parameters /* assuming we have the following html <select id="s"> <option>first</option> <option>second</option> <option>third</option> </select> */ var s = document.getelementbyid('s'); var options = [ 'zero', 'one', 'two' ]; options.foreach(function(element,
key) { if (element == 'zero') { s[s.opti...
HTMLParamElement - Web APIs
the htmlparamelement interface provides special properties (beyond those of the regular htmlelement object interface it inherits) for manipulating <param> elements, representing a pair of a
key and a value that acts as a parameter for an <object> element.
IDBCursor.source - Web APIs
within each iteration we log the source of the cursor, which will log our idbobjectstore object to the console, something like this: idbobjectstore {autoincrement: false, transaction: idbtransaction, indexnames: domstringlist,
keypath: "albumtitle", name: "rushalbumlist"…} the cursor does not require us to select the data based on a
key; we can just grab all of it.
IDBDatabase.onabort - Web APIs
dbopenrequest.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function() { note.innerhtml += '<li>error opening database.</li>'; }; db.onabort = function() { note.innerhtml += '<li>database opening aborted!</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }); ...
IDBDatabase.onerror - Web APIs
dbopenrequest.onupgradeneeded = function(event) { var db = this.result; db.onerror = function(event) { note.innerhtml += '<li>error opening database.</li>'; }; db.onabort = function(event) { note.innerhtml += '<li>database opening aborted!</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }); ...
IDBDatabase.onversionchange - Web APIs
request.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function(event) { note.innerhtml += '<li>error opening database.</li>'; }; db.onabort = function(event) { note.innerhtml += '<li>database opening aborted!</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }); ...
IDBDatabase - Web APIs
ersion number has been // submitted via the window.indexeddb.open line above dbopenrequest.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database using // idbdatabase.createobjectstore var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }); ...
IDBFactory.open() - Web APIs
// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction; window.idb
keyrange = window.idb
keyrange || window.webkitidb
keyrange || window.msidb
keyrange; // (mozilla has never prefixed these objects, so we don't // need window.mozidb*) // let us open version 4 of our database var dbopenrequest = window.indexeddb.open("todolist", 4); // these two event handlers act on the database being opened // successfully, or not dbopenrequest.onerror = function(event) { note.in...
IDBIndex.isAutoLocale - Web APIs
we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBIndex.locale - Web APIs
we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBIndex.name - Web APIs
we then open a basic cursor on the index using idbindex.opencursor() — this works the same as opening a cursor directly on an idbobjectstore using opencursor() except that the returned records are sorted based on the index, not the primary
key.
IDBObjectStore.deleteIndex() - Web APIs
a new version number has been submitted via the // window.indexeddb.open line above //it is only implemented in recent browsers dbopenrequest.onupgradeneeded = function(event) { var db = this.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }...
IDBObjectStore.index() - Web APIs
we then open a basic cursor on the index using idbindex.opencursor — this works the same as opening a cursor directly on an objectstore using idbobjectstore.opencursor except that the returned records are sorted based on the index, not the primary
key.
IDBOpenDBRequest.onblocked - Web APIs
new version number has been submitted via the // window.indexeddb.open line above //it is only implemented in recent browsers request.onupgradeneeded = function(event) { var db = event.target.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); ...
IDBOpenDBRequest.onupgradeneeded - Web APIs
var store = db.createobjectstore("books", {
keypath: "isbn"}); var titleindex = store.createindex("by_title", "title", {unique: true}); var authorindex = store.createindex("by_author", "author"); } if (event.oldversion < 2) { // version 2 introduces a new index of books by year.
IDBOpenDBRequest - Web APIs
new version number has been // submitted via the window.indexeddb.open line above // it is only implemented in recent browsers dbopenrequest.onupgradeneeded = function(event) { var db = this.result; db.onerror = function(event) { note.innerhtml += '<li>error loading database.</li>'; }; // create an objectstore for this database var objectstore = db.createobjectstore("todolist", {
keypath: "tasktitle" }); // define what data items the objectstore will contain objectstore.createindex("hours", "hours", { unique: false }); objectstore.createindex("minutes", "minutes", { unique: false }); objectstore.createindex("day", "day", { unique: false }); objectstore.createindex("month", "month", { unique: false }); objectstore.createindex("year", "year", { unique: false }...
IDBVersionChangeEvent.newVersion - Web APIs
// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction; window.idb
keyrange = window.idb
keyrange || window.webkitidb
keyrange || window.msidb
keyrange; // (mozilla has never prefixed these objects, // so we don't need window.mozidb*) // let us open version 4 of our database var dbopenrequest = window.indexeddb.open("todolist", 4); // these two event handlers act on the database being opened dbopenrequest.onerror = function(event) { note.innerhtml += '<li>error lo...
IDBVersionChangeEvent - Web APIs
// moreover, you may need references to some window.idb* objects: window.idbtransaction = window.idbtransaction || window.webkitidbtransaction || window.msidbtransaction; window.idb
keyrange = window.idb
keyrange || window.webkitidb
keyrange || window.msidb
keyrange; // (mozilla has never prefixed these objects, so we don't need window.mozidb*) // let us open version 4 of our database var dbopenrequest = window.indexeddb.open("todolist", 4); // these two event handlers act on the database being opened successfully, or not dbopenrequest.onerror = function(event) { note.innerhtml...
InputDeviceCapabilities - Web APIs
this allows, for example, touchscreen
keyboards and physical
keyboards to be represented the same way when they produce the same input.
MIDIMessageEvent - Web APIs
a midimessage event is fired every time a midi message is sent from a device represented by a midiinput, for example when a midi
keyboard
key is pressed, a knob is tweaked, or a slider is moved.
Payment Request API - Web APIs
accessibility: as the browser controls the input elements of the payment sheet, it can assure consistent
keyboard and screen reader accessibility on every website without developers needing to do anything.
performance.clearMarks() - Web APIs
performance.mark("squirrel"); performance.mark("squirrel"); performance.mark("mon
key"); performance.mark("mon
key"); performance.mark("dog"); performance.mark("dog"); logmarkcount() // "found this many entries: 6" // delete just the "squirrel" performancemark entries.
PerformanceEventTiming - Web APIs
auxclick beforeinput click compositionend compositionstart compositionupdate contextmenu dblclick dragend dragenter dragleave dragover dragstart drop input
keydown
keypress
keyup mousedown mouseenter mouseleave mouseout mouseover mouseup pointerover pointerenter pointerdown pointerup pointercancel pointerout pointerleave gotpointercapture lostpointercapture touchstart touchend touchcancel properties performanceeventtiming.processingstart returns the time at which event dispatch started.
Performance Timeline - Web APIs
however, note there is one
key difference with these methods; the performance observer entry list versions are used to retrieve observed performance entries within the observer callback.
Pointer Lock API - Web APIs
document.exitpointerlock = document.exitpointerlock || document.mozexitpointerlock; // attempt to unlock document.exitpointerlock(); pointerlockchange event when the pointer lock state changes—for example, when calling requestpointerlock(), exitpointerlock(), the user pressing the esc
key, etc.—the pointerlockchange event is dispatched to the document.
PushSubscription - Web APIs
methods pushsubscription.get
key() returns an arraybuffer which contains the client's public
key, which can then be sent to a server and used in encrypting push message data.
RTCIceCandidateStats.deleted - Web APIs
ts.type === "local-candidate" || stats.type === "remote.candidate") && !stats.deleted) { statsoutput += `<h2>report: ${report.type}</h3>\n<strong>id:</strong> ${report.id}<br>\n` + `<strong>timestamp:</strong> ${report.timestamp}<br>\n`; // now the statistics for this report; we intentially drop the ones we // sorted to the top above object.
keys(report).foreach(statname => { if (statname !== "id" && statname !== "timestamp" && statname !== "type") { statsoutput += `<strong>${statname}:</strong> ${report[statname]}<br>\n`; } }); } }); document.queryselector(".stats-box").innerhtml = statsoutput; }); }, 1000); specifications specification status comment ...
RTCIceCandidateStats.networkType - Web APIs
-candidate" || stats.type === "remote.candidate") && stats.networktype === "cellular") { statsoutput += `<h2>report: ${report.type}</h3>\n<strong>id:</strong> ${report.id}<br>\n` + `<strong>timestamp:</strong> ${report.timestamp}<br>\n`; // now the statistics for this report; we intentially drop the ones we // sorted to the top above object.
keys(report).foreach(statname => { if (statname !== "id" && statname !== "timestamp" && statname !== "type") { statsoutput += `<strong>${statname}:</strong> ${report[statname]}<br>\n`; } }); } }); document.queryselector(".stats-box").innerhtml = statsoutput; }); }, 1000); ...
RTCIceTransport: gatheringstatechange event - Web APIs
bubbles no cancelable no interface event event handler property ongatheringstatechange the
key difference between gatheringstatechange and icegatheringstatechange is that the latter represents the overall state of the connection including every rtcicetransport used by every rtcrtpsender and every rtcrtpreceiver on the entire connection.
RTCInboundRtpStreamStats - Web APIs
perdscppacketsreceived a record of
key-value pairs with strings as the
keys mapped to 32-bit integer values, each indicating the total number of packets this receiver has received on this rtp stream from this source for each differentiated services code point (dscp).
RTCOutboundRtpStreamStats.qualityLimitationReason - Web APIs
syntax var qualitylimitationreason = rtcoutboundrtpstreamstats.qualitylimitationreason; value a map whose
keys are domstrings whose values come from the rtcqualitylimitationreason enumerated type, and whose values are the duration of the media, in seconds, whose quality was reduced for that reason.
RTCOutboundRtpStreamStats - Web APIs
perdscppacketssent a record of
key-value pairs with strings as the
keys mapped to 32-bit integer values, each indicating the total number of packets this rtcrtpsender has transmitted for this source for each differentiated services code point (dscp).
RTCPeerConnection.getStats() - Web APIs
connection.getstats(null).then(stats => { let statsoutput = ""; stats.foreach(report => { statsoutput += `<h2>report: ${report.type}</h3>\n<strong>id:</strong> ${report.id}<br>\n` + `<strong>timestamp:</strong> ${report.timestamp}<br>\n`; // now the statistics for this report; we intentially drop the ones we // sorted to the top above object.
keys(report).foreach(statname => { if (statname !== "id" && statname !== "timestamp" && statname !== "type") { statsoutput += `<strong>${statname}:</strong> ${report[statname]}<br>\n`; } }); }); document.queryselector(".stats-box").innerhtml = statsoutput; }); }, 1000); this works by calling getstats(), then, when the promise is resolved, iterates over the ...
RTCPeerConnection - Web APIs
the remote peer, over which any kind of data may be transmitted.createoffer()the createoffer() method of the rtcpeerconnection interface initiates the creation of an sdp offer for the purpose of starting a new webrtc connection to a remote peer.generatecertificate()the generatecertificate() method of the rtcpeerconnection interface creates and stores an x.509 certificate and corresponding private
key then returns an rtccertificate, providing access to it.getconfiguration() the rtcpeerconnection.getconfiguration() method returns an rtcconfiguration object which indicates the current configuration of the rtcpeerconnection on which the method is called.getidentityassertion() the rtcpeerconnection.getidentityassertion() method initiates the gathering of an identity assertion.
isolation - CSS: Cascading Style Sheets
syntax /*
keyword values */ isolation: auto; isolation: isolate; /* global values */ isolation: inherit; isolation: initial; isolation: unset; the isolation property is specified as one of the
keyword values listed below.
line-break - CSS: Cascading Style Sheets
/*
keyword values */ line-break: auto; line-break: loose; line-break: normal; line-break: strict; line-break: anywhere; /* global values */ line-break: inherit; line-break: initial; line-break: unset; syntax values auto break text using the default line break rule.
list-style-image - CSS: Cascading Style Sheets
syntax /*
keyword values */ list-style-image: none; /* <url> values */ list-style-image: url('starsolid.gif'); /* global values */ list-style-image: inherit; list-style-image: initial; list-style-image: unset; values <url> location of image to use as the marker.
list-style-position - CSS: Cascading Style Sheets
syntax /*
keyword values */ list-style-position: inside; list-style-position: outside; /* global values */ list-style-position: inherit; list-style-position: initial; list-style-position: unset; the list-style-position property is specified as one of the
keyword values listed below.
list-style - CSS: Cascading Style Sheets
erties this property is a shorthand for the following css properties: list-style-image list-style-position list-style-type syntax /* type */ list-style: square; /* image */ list-style: url('../img/shape.png'); /* position */ list-style: inside; /* type | position */ list-style: georgian inside; /* type | image | position */ list-style: lower-roman url('../img/shape.png') outside; /*
keyword value */ list-style: none; /* global values */ list-style: inherit; list-style: initial; list-style: unset; the list-style property is specified as one, two, or three
keywords in any order.
margin-block-end - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-block-end: 10px; /* an absolute length */ margin-block-end: 1em; /* relative to the text size */ margin-block-end: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-block-end: auto; /* global values */ margin-block-end: inherit; margin-block-end: initial; margin-block-end: unset; it corresponds to the margin-top, margin-right, margin-bottom, or margin-left property depending on the values defined for writing-mode, direction, and text-orientation.
margin-block-start - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-block-start: 10px; /* an absolute length */ margin-block-start: 1em; /* relative to the text size */ margin-block-start: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-block-start: auto; /* global values */ margin-block-start: inherit; margin-block-start: initial; margin-block-start: unset; it corresponds to the margin-top, margin-right, margin-bottom, or margin-left property depending on the values defined for writing-mode, direction, and text-orientation.
margin-block - CSS: Cascading Style Sheets
/* <length> values */ margin-block: 10px 20px; /* an absolute length */ margin-block: 1em 2em; /* relative to the text size */ margin-block: 5% 2%; /* relative to the nearest block container's width */ margin-block: 10px; /* sets both start and end values */ /*
keyword values */ margin-block: auto; /* global values */ margin-block: inherit; margin-block: initial; margin-block: unset; these values corresponds to the margin-top and margin-bottom, or margin-right, and margin-left property depending on the values defined for writing-mode, direction, and text-orientation.
margin-bottom - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-bottom: 10px; /* an absolute length */ margin-bottom: 1em; /* relative to the text size */ margin-bottom: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-bottom: auto; /* global values */ margin-bottom: inherit; margin-bottom: initial; margin-bottom: unset; the margin-bottom property is specified as the
keyword auto, or a <length>, or a <percentage>.
margin-inline-end - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-inline-end: 10px; /* an absolute length */ margin-inline-end: 1em; /* relative to the text size */ margin-inline-end: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-inline-end: auto; /* global values */ margin-inline-end: inherit; margin-inline-end: initial; margin-inline-end: unset; it relates to margin-block-start, margin-block-end, and margin-inline-start, which define the other margins of the element.
margin-inline-start - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-inline-start: 10px; /* an absolute length */ margin-inline-start: 1em; /* relative to the text size */ margin-inline-start: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-inline-start: auto; /* global values */ margin-inline-start: inherit; it relates to margin-block-start, margin-block-end, and margin-inline-end, which define the other margins of the element.
margin-inline - CSS: Cascading Style Sheets
/* <length> values */ margin-inline: 10px 20px; /* an absolute length */ margin-inline: 1em 2em; /* relative to the text size */ margin-inline: 5% 2%; /* relative to the nearest block container's width */ margin-inline: 10px; /* sets both start and end values */ /*
keyword values */ margin-inline: auto; /* global values */ margin-inline: inherit; margin-inline: initial; margin-inline: unset; this property corresponds to the margin-top and margin-bottom, or margin-right, and margin-left properties, depending on the values defined for writing-mode, direction, and text-orientation.
margin-left - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-left: 10px; /* an absolute length */ margin-left: 1em; /* relative to the text size */ margin-left: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-left: auto; /* global values */ margin-left: inherit; margin-left: initial; margin-left: unset; the margin-left property is specified as the
keyword auto, or a <length>, or a <percentage>.
margin-right - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-right: 20px; /* an absolute length */ margin-right: 1em; /* relative to the text size */ margin-right: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-right: auto; /* global values */ margin-right: inherit; margin-right: initial; margin-right: unset; the margin-right property is specified as the
keyword auto, or a <length>, or a <percentage>.
margin-top - CSS: Cascading Style Sheets
syntax /* <length> values */ margin-top: 10px; /* an absolute length */ margin-top: 1em; /* relative to the text size */ margin-top: 5%; /* relative to the nearest block container's width */ /*
keyword values */ margin-top: auto; /* global values */ margin-top: inherit; margin-top: initial; margin-top: unset; the margin-top property is specified as the
keyword auto, or a <length>, or a <percentage>.
Control flow and error handling - JavaScript
function getmonthname(mo) { mo = mo - 1; // adjust month number for array index (1 = jan, 12 = dec) let months = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec']; if (months[mo]) { return months[mo]; } else { throw 'invalidmonthno'; // throw
keyword is used here } } try { // statements to try monthname = getmonthname(mymonth); // function could throw exception } catch (e) { monthname = 'unknown'; logmyerrors(e); // pass exception object to error handler (i.e.
Functions - JavaScript
defining functions function declarations a function definition (also called a function declaration, or function statement) consists of the function
keyword, followed by: the name of the function.
Introduction - JavaScript
it is useful if you want to implement standards-compliant language features in your ecmascript implementation or engine (such as spidermon
key in firefox, or v8 in chrome).
Using Promises - JavaScript
using async/await addresses most, if not all of these problems—the tradeoff being that the most common mistake with that syntax is forgetting the await
keyword.
JavaScript Guide - JavaScript
pressions and operators assignment & comparisons arithmetic operators bitwise & logical operators conditional (ternary) operator numbers and dates number literals number object math object date object text formatting string literals string object template literals internationalization regular expressions indexed collections arrays typed arrays
keyed collections map weakmap set weakset working with objects objects and properties creating objects defining methods getter and setter details of the object model prototype-based oop creating object hierarchies inheritance promises guarantees chaining error propagation composition timing iterators and generators iterators iterables ...
JavaScript technologies overview - JavaScript
among other things, ecmascript defines: language syntax (parsing rules,
keywords, control flow, object literal initialization, ...) error handling mechanisms (throw, try...catch, ability to create user-defined error types) types (boolean, number, string, function, object, ...) the global object.
JavaScript language resources - JavaScript
implementations spidermon
key - the javascript engine used in various mozilla products, including firefox; rhino - the javascript engine is written in java; tamarin - the actionscript virtual machine (used in the adobe® flash® player); other implementations (wikipedia).
Deprecated and obsolete features - JavaScript
getenumerableproperty
keys (bug 783829, firefox 37) getownpropertynames (bug 1007334, firefox 33)
keys (bug 1007334, firefox 33) escape sequences octal escape sequences (\ followed by one, two, or three octal digits) are deprecated in string and regular expression literals.
TypeError: invalid Array.prototype.sort argument - JavaScript
examples invalid cases [1, 3, 2].sort(5); // typeerror var cmp = { asc: (x, y) => x >= y, dsc: (x, y) => x <= y }; [1, 3, 2].sort(cmp[this.
key] || 'asc'); // typeerror valid cases [1, 3, 2].sort(); // [1, 2, 3] var cmp = { asc: (x, y) => x >= y, dsc: (x, y) => x <= y }; [1, 3, 2].sort(cmp[this.
key || 'asc']); // [1, 2, 3] ...
TypeError: cyclic object value - JavaScript
the snippet below illustrates how to find and filter (thus causing data loss) a cyclic reference by using the replacer parameter of json.stringify(): const getcircularreplacer = () => { const seen = new weakset(); return (
key, value) => { if (typeof value === "object" && value !== null) { if (seen.has(value)) { return; } seen.add(value); } return value; }; }; json.stringify(circularreference, getcircularreplacer()); // {"otherdata":123} ...
SyntaxError: JSON.parse: bad parsing - JavaScript
ected non-digit syntaxerror: json.parse: missing digits after decimal point syntaxerror: json.parse: unterminated fractional number syntaxerror: json.parse: missing digits after exponent indicator syntaxerror: json.parse: missing digits after exponent sign syntaxerror: json.parse: exponent part is missing a number syntaxerror: json.parse: unexpected end of data syntaxerror: json.parse: unexpected
keyword syntaxerror: json.parse: unexpected character syntaxerror: json.parse: end of data while reading object contents syntaxerror: json.parse: expected property name or '}' syntaxerror: json.parse: end of data when ',' or ']' was expected syntaxerror: json.parse: expected ',' or ']' after array element syntaxerror: json.parse: end of data when property name was expected syntaxerror: json.parse: ex...
SyntaxError: missing ; before statement - JavaScript
var obj = {}; var obj.foo = 'hi'; // syntaxerror missing ; before statement var array = []; var array[0] = 'there'; // syntaxerror missing ; before statement instead, omit the var
keyword: var obj = {}; obj.foo = 'hi'; var array = []; array[0] = 'there'; bad
keywords if you come from another programming language, it is also common to use
keywords that don't mean the same or have no meaning at all in javascript: def print(info){ console.log(info); }; // syntaxerror missing ; before statement instead, use function instead of def: function print(info){ console.log(inf...
TypeError: "x" is not a function - JavaScript
an example helpers library (helpers.js) let helpers = function () { }; helpers.groupby = function (objectarray, property) { return objectarray.reduce(function (acc, obj) { var
key = obj[property]; if (!acc[
key]) { acc[
key] = []; } acc[
key].push(obj); return acc; }, {}); } export default helpers; the correct import usage (app.js): import helpers from './helpers' ...
RangeError: precision is out of range - JavaScript
method firefox (spidermon
key) chrome, opera (v8) number.prototype.toexponential() 0 to 100 0 to 20 number.prototype.tofixed() -20 to 100 0 to 20 number.prototype.toprecision() 1 to 100 1 to 21 examples invalid cases 77.1234.toexponential(-1); // rangeerror 77.1234.toexponential(101); // rangeerror 2.34.tofixed(-100); // rangeerror 2.34.tofixed(1001); ...
getter - JavaScript
defineproperty while using the get
keyword and object.defineproperty() have similar results, there is a subtle difference between the two when used on classes.
Array.prototype.reduce() - JavaScript
) { allnames[name]++ } else { allnames[name] = 1 } return allnames }, {}) // countednames is: // { 'alice': 2, 'bob': 1, 'tiff': 1, 'bruce': 1 } grouping objects by a property let people = [ { name: 'alice', age: 21 }, { name: 'max', age: 20 }, { name: 'jane', age: 20 } ]; function groupby(objectarray, property) { return objectarray.reduce(function (acc, obj) { let
key = obj[property] if (!acc[
key]) { acc[
key] = [] } acc[
key].push(obj) return acc }, {}) } let groupedpeople = groupby(people, 'age') // groupedpeople is: // { // 20: [ // { name: 'max', age: 20 }, // { name: 'jane', age: 20 } // ], // 21: [{ name: 'alice', age: 21 }] // } bonding arrays contained in an array of objects using the spread operator and initialva...
Array.prototype.filter() - JavaScript
((typeof func === 'function' || typeof func === 'function') && this) ) throw new typeerror(); var len = this.length >>> 0, res = new array(len), // preallocate array t = this, c = 0, i = -1; var kvalue; if (thisarg === undefined){ while (++i !== len){ // checks to see if the
key was set if (i in this){ kvalue = t[i]; // in case t is changed in callback if (func(t[i], i, t)){ res[c++] = kvalue; } } } } else{ while (++i !== len){ // checks to see if the
key was set if (i in this){ kvalue = t[i]; if (func.call(thisarg, t[i], i, t)){ res[c++] = kvalue...
Array.from() - JavaScript
array from a string array.from('foo'); // [ "f", "o", "o" ] array from a set const set = new set(['foo', 'bar', 'baz', 'foo']); array.from(set); // [ "foo", "bar", "baz" ] array from a map const map = new map([[1, 2], [2, 4], [4, 8]]); array.from(map); // [[1, 2], [2, 4], [4, 8]] const mapper = new map([['1', 'a'], ['2', 'b']]); array.from(mapper.values()); // ['a', 'b']; array.from(mapper.
keys()); // ['1', '2']; array from an array-like object (arguments) function f() { return array.from(arguments); } f(1, 2, 3); // [ 1, 2, 3 ] using arrow functions and array.from() // using an arrow function as the map function to // manipulate the elements array.from([1, 2, 3], x => x + x); // [2, 4, 6] // generate a sequence of numbers // since the array is initialized with `undefined` o...
Array.prototype.lastIndexOf() - JavaScript
math.min(n, len - 1) : len - math.abs(n); k >= 0; k--) { if (k in t && t[k] === searchelement) { return k; } } return -1; }; } again, note that this implementation aims for absolute compatibility with lastindexof in firefox and the spidermon
key javascript engine, including in several cases which are arguably edge cases.
Array.prototype.map() - JavaScript
let kvarray = [{
key: 1, value: 10}, {
key: 2, value: 20}, {
key: 3, value: 30}] let reformattedarray = kvarray.map(obj => { let robj = {} robj[obj.
key] = obj.value return robj }) // reformattedarray is now [{1: 10}, {2: 20}, {3: 30}], // kvarray is still: // [{
key: 1, value: 10}, // {
key: 2, value: 20}, // {
key: 3, value: 30}] mapping an array of numbers using a function co...
JSON - JavaScript
in engines that haven't implemented the proposal, u+2028 line separator and u+2029 paragraph separator are allowed in string literals and property
keys in json; but their use in these features in javascript string literals is a syntaxerror.
Map.prototype[@@iterator]() - JavaScript
.iterator]() console.log(mapiter.next().value) // ["0", "foo"] console.log(mapiter.next().value) // [1, "bar"] console.log(mapiter.next().value) // [object, "baz"] using [@@iterator]() with for..of const mymap = new map() mymap.set('0', 'foo') mymap.set(1, 'bar') mymap.set({}, 'baz') for (const entry of mymap) { console.log(entry) } // ["0", "foo"] // [1, "bar"] // [{}, "baz"] for (const [
key, value] of mymap) { console.log(`${
key}: ${value}`) } // 0: foo // 1: bar // [object]: baz specifications specification ecmascript (ecma-262)the definition of 'map.prototype[@@iterator]()' in that specification.
Number.prototype.toLocaleString() - JavaScript
uses comma as decimal separator and period for thousands console.log(number.tolocalestring('de-de')); // → 123.456,789 // arabic in most arabic speaking countries uses eastern arabic digits console.log(number.tolocalestring('ar-eg')); // → ١٢٣٤٥٦٫٧٨٩ // india uses thousands/lakh/crore separators console.log(number.tolocalestring('en-in')); // → 1,23,456.789 // the nu extension
key requests a numbering system, e.g.
Object.create() - JavaScript
(note that the second parameter // maps
keys to *property descriptors*.) o = object.create(object.prototype, { // foo is a regular 'value property' foo: { writable: true, configurable: true, value: 'hello' }, // bar is a getter-and-setter (accessor) property bar: { configurable: false, get: function() { return 10; }, set: function(value) { console.log('setting `o.bar` to', value); } /* with es201...
Object.setPrototypeOf() - JavaScript
dy: if (!object.setprototypeof) { // only works in chrome and firefox, does not work in ie: object.prototype.setprototypeof = function(obj, proto) { if(obj.__proto__) { obj.__proto__ = proto; return obj; } else { // if you want to return prototype of object.create(null): var fn = function() { for (var
key in obj) { object.defineproperty(this,
key, { value: obj[
key], }); } }; fn.prototype = proto; return new fn(); } } } examples using object.setprototypeof var dict = object.setprototypeof({}, null); specifications specification ecmasc...
Object.values() - JavaScript
examples using object.values const obj = { foo: 'bar', baz: 42 }; console.log(object.values(obj)); // ['bar', 42] // array-like object const arraylikeobj1 = { 0: 'a', 1: 'b', 2: 'c' }; console.log(object.values(arraylikeobj1 )); // ['a', 'b', 'c'] // array-like object with random
key ordering // when using numeric
keys, the values are returned in the
keys' numerical order const arraylikeobj2 = { 100: 'a', 2: 'b', 7: 'c' }; console.log(object.values(arraylikeobj2 )); // ['b', 'c', 'a'] // getfoo is property which isn't enumerable const my_obj = object.create({}, { getfoo: { value: function() { return this.foo; } } }); my_obj.foo = 'bar'; console.log(object.values(my_obj)); //...
RangeError - JavaScript
although ecma-262 specifies that rangeerror should provide its own message property, in spidermon
key, it inherits error.prototype.message.
ReferenceError - JavaScript
although ecma-262 specifies that referenceerror should provide its own message property, in spidermon
key, it inherits error.prototype.message.
Reflect.construct() - JavaScript
when using object.create() and function.prototype.apply(), the new.target operator will point to undefined within the function used as the constructor, since the new
keyword is not being used to create the object.
RegExp.prototype.sticky - JavaScript
examples using a regular expression with the sticky flag var str = '#foo#'; var regex = /foo/y; regex.lastindex = 1; regex.test(str); // true regex.lastindex = 5; regex.test(str); // false (lastindex is taken into account with sticky flag) regex.lastindex; // 0 (reset after match failure) anchored sticky flag for several versions, firefox's spidermon
key engine had a bug with regard to the ^ assertion and the sticky flag which allowed expressions starting with the ^ assertion and using the sticky flag to match when they shouldn't.
Set.prototype.has() - JavaScript
examples using the has method var myset = new set(); myset.add('foo'); myset.has('foo'); // returns true myset.has('bar'); // returns false var set1 = new set(); var obj1 = {'
key1': 1}; set1.add(obj1); set1.has(obj1); // returns true set1.has({'
key1': 1}); // returns false because they are different object references set1.add({'
key1': 1}); // now set1 contains 2 entries specifications specification ecmascript (ecma-262)the definition of 'set.prototype.has' in that specification.
SVG Event Attributes - SVG: Scalable Vector Graphics
ibutes onabort, onerror, onresize, onscroll, onunload document element event attributes oncopy, oncut, onpaste global event attributes oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncuechange, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, oninput, oninvalid, on
keydown, on
keypress, on
keyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting graphical e...
max - SVG: Scalable Vector Graphics
five elements are using this attribute: <animate>, <animatecolor>, <animatemotion>, <animatetransform>, and <set> html, body, svg { height: 100%; } <svg viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"> <circle cx="60" cy="10" r="10"> <animate attributename="cx" dur="4s" max="6s" repeatcount="indefinite" values="60 ; 110 ; 60 ; 10 ; 60"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> <animate attributename="cy" dur="4s" max="6s" repeatcount="indefinite" values="10 ; 60 ; 110 ; 60 ; 10"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> </circle> </svg> usage notes value <clock-value> default value none animatable no <clock-value> specifies the length of the maximum value of the active du...
min - SVG: Scalable Vector Graphics
five elements are using this attribute: <animate>, <animatecolor>, <animatemotion>, <animatetransform>, and <set> html, body, svg { height: 100%; } <svg viewbox="0 0 120 120" xmlns="http://www.w3.org/2000/svg"> <circle cx="60" cy="10" r="10"> <animate attributename="cx" dur="4s" min="2s" repeatcount="indefinite" values="60 ; 110 ; 60 ; 10 ; 60"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> <animate attributename="cy" dur="4s" min="2s" repeatcount="indefinite" values="10 ; 60 ; 110 ; 60 ; 10"
keytimes="0 ; 0.25 ; 0.5 ; 0.75 ; 1"/> </circle> </svg> usage notes value <clock-value> default value 0 animatable no <clock-value> specifies the length of the minimum value of the active durat...
panose-1 - SVG: Scalable Vector Graphics
the panose system consists of a set of ten numbers that categorize the
key attributes of a latin typeface, a classification procedure for creating those numbers, and mapper software that determines the closest possible font match given a set of typefaces.
<a> - SVG: Scalable Vector Graphics
visibility xlink attributes most notably: xlink:title aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<animate> - SVG: Scalable Vector Graphics
argin:0; padding:0; } <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <rect width="10" height="10"> <animate attributename="rx" values="0;5;0" dur="10s" repeatcount="indefinite" /> </rect> </svg> attributes animation attributes animation timing attributes begin, dur, end, min, max, restart, repeatcount, repeatdur, fill animation value attributes calcmode, values,
keytimes,
keysplines, from, to, by other animation attributes most notably: attributename, additive, accumulate animation event attributes most notably: onbegin, onend, onrepeat global attributes core attributes most notably: id styling attributes class, style event attributes global event attributes, document element event attributes usage notes this element implements the svganimat...
<circle> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<clipPath> - SVG: Scalable Vector Graphics
*/ @
keyframes openyourheart {from {r: 0} to {r: 60px}} #myclip circle { animation: openyourheart 15s infinite; } a clipping path is conceptually equivalent to a custom viewport for the referencing element.
<ellipse> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<foreignObject> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<g> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<line> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<marker> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<path> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<polygon> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<polyline> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<rect> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<svg> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<symbol> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<text> - SVG: Scalable Vector Graphics
width, text-anchor, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<textPath> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<tspan> - SVG: Scalable Vector Graphics
width, text-anchor, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
<use> - SVG: Scalable Vector Graphics
city, stroke-width, transform, vector-effect, visibility aria attributes aria-activedescendant, aria-atomic, aria-autocomplete, aria-busy, aria-checked, aria-colcount, aria-colindex, aria-colspan, aria-controls, aria-current, aria-describedby, aria-details, aria-disabled, aria-dropeffect, aria-errormessage, aria-expanded, aria-flowto, aria-grabbed, aria-haspopup, aria-hidden, aria-invalid, aria-
keyshortcuts, aria-label, aria-labelledby, aria-level, aria-live, aria-modal, aria-multiline, aria-multiselectable, aria-orientation, aria-owns, aria-placeholder, aria-posinset, aria-pressed, aria-readonly, aria-relevant, aria-required, aria-roledescription, aria-rowcount, aria-rowindex, aria-rowspan, aria-selected, aria-setsize, aria-sort, aria-valuemax, aria-valuemin, aria-valuenow, aria-valuetext,...
SVG as an Image - SVG: Scalable Vector Graphics
many browsers support svg images in: html <img> or <svg> elements css background-image gecko-specific contexts additionally, gecko 2.0 (firefox 4 / thunderbird 3.3 / seamon
key 2.1) introduced support for using svg in these contexts: css list-style-image css content svg <image> element svg <feimage> element canvas drawimage function restrictions for security purposes, gecko places some restrictions on svg content when it's being used as an image: javascript is disabled.
Scripting - SVG: Scalable Vector Graphics
or if you want to use the backspace
key in your code, you want to override the browser's default behavior when the backspace
key is pressed, which is to go back to the previous page.
Web security
cors cors-safelisted request header cors-safelisted response header cross-site scripting cryptanalysis cryptographic hash function cryptography csp csrf decryption digital certificate dtls encryption forbidden header name forbidden response header name hash hmac hpkp hsts https
key mitm owasp preflight request public-
key cryptography reporting directive robots.txt same-origin policy session hijacking sql injection symmetric-
key cryptography tofu tls ...
Using templates and slots - Web Components
we'll call it <my-paragraph>: customelements.define('my-paragraph', class extends htmlelement { constructor() { super(); let template = document.getelementbyid('my-paragraph'); let templatecontent = template.content; const shadowroot = this.attachshadow({mode: 'open'}) .appendchild(templatecontent.clonenode(true)); } } ); the
key point to note here is that we append a clone of the template content to the shadow root, created using the node.clonenode() method.
Functions - XPath
boolean() ceiling() choose() concat() contains() count() current() xslt-specific document() xslt-specific element-available() false() floor() format-number() xslt-specific function-available() generate-id() xslt-specific id() (partially supported)
key() xslt-specific lang() last() local-name() name() namespace-uri() normalize-space() not() number() position() round() starts-with() string() string-length() substring() substring-after() substring-before() sum() system-property() xslt-specific translate() true() unparsed-entity-url() xslt-specific (not supported) ...
Index - XPath
33
key xslt, xslt_reference the
key function returns a node-set of nodes that have the given value for the given
key.
Introduction to using XPath in JavaScript - XPath
<?xml version="1.0"?> <people xmlns:xul = "http://www.mozilla.org/
keymaster/gatekeeper/there.is.only.xul" > <person> <name first="george" last="bush" /> <address street="1600 pennsylvania avenue" city="washington" country="usa"/> <phonenumber>202-456-1111</phonenumber> </person> <person> <name first="tony" last="blair" /> <address street="10 downing street" city="london" country="uk"/> <phonenumber>020 7925 0918</phonenumber> </person> </people> to ...