Search completed in 1.33 seconds.
RTCDTMFToneChangeEvent.RTCDTMFToneChangeEvent() - Web APIs
the rtcdtmftone
changeevent() constructor creates a new rtcdtmftone
changeevent.
... syntax var event = new rtcdtmftone
changeevent(type, options); parameters type a domstring containing the name of the event.
... this is always "tone
change".
...And 3 more matches
nsIDBChangeListener
the nsidb
changelistener interface is used by components wanting to receive notification when the current database
changes somehow.
... example here is an example implementation of the listener (that does nothing): var mylistener = { onhdrflags
changed: function(ahdr
changed, aoldflags, anewflags, ainstigator) {}, onhdrdeleted: function(ahdr
changed, aparentkey, aflags, ainstigator) {}, onhdradded: function(ahdr
changed, aparentkey, aflags, ainstigator) {}, onparent
changed: function(akey
changed, oldparent, newparent, ainstigator) {}, onannouncergoingaway: function(ainstigator) {}, onread
changed: function(ainstigator) {}, onjunkscore
changed: function(ainstigator) {}, onhdrproperty
changed: function(ahdrto
change, apre
change, astatus, ainstigator) {}, onevent: function(adb, aevent) {}, queryinterface: function(aiid) { if (!aiid.equals(components.interfaces.nsidb
changelistener) && !aiid.equals(compone...
...nts.interfaces.nsisupports)) throw components.results.ns_error_no_interface; return this; } }; and to attach it in thunderbird, we must call addlistener on a nsidb
changeannouncer, typically through a nsimsgdatabase.
...And 25 more matches
will-change - CSS: Cascading Style Sheets
the will-
change css property hints to browsers how an element is expected to
change.
... browsers may set up optimizations before an element is actually
changed.
... important: will-
change is intended to be used as a last resort, in order to try to deal with existing performance problems.
...And 21 more matches
XPCOM changes in Gecko 2.0
several
changes that affect xpcom component compatibility are taking place in gecko 2.
... this article details those
changes, and provides suggestions for how to update your code.
... no more frozen interfaces there are no longer any frozen interfaces; from now on, all interfaces are subject to
change.
...And 15 more matches
Theme changes in Firefox 2 - Archive of obsolete content
this article covers the
changes that need to be made to update a firefox theme to work properly in firefox 2.
... browser
changes requiring theme updates there are a number of
changed and deleted files in the browser that may require you to make
changes to your theme.
... the table lists both the
changed xul file and the theme's corresponding css file that you might need to update.
...And 13 more matches
Appendix F: Monitoring DOM changes - Archive of obsolete content
dom mutation events were introduced to html several years ago in order to allow web applications to monitor
changes to the dom by other scripts.
... hash
change and popstate events most ajax-heavy sites update the url when they significantly
change their content, either via a
change to the fragment identifier (hash) or more recently via the history.pushstate method.
... the former triggers a hash
change event while the latter triggers a popstate event.
...And 8 more matches
MediaDevices.ondevicechange - Web APIs
the mediadevices.ondevice
change property is an eventhandler which specifies a function to be called when the device
change event occurs on a mediadevices instance.
... this happens whenever the set of media devices available to the user agent and, by extension, to the web site or app has
changed.
... syntax mediadevices.ondevice
change = eventhandler; value a function you provide which accepts as input a event object describing the device
change event that occurred.
...And 7 more matches
PaymentRequest.onshippingaddresschange - Web APIs
the onshippingaddress
change event of the paymentrequest interface is fired whenever the user
changes their shipping address, including when an address is added by the user for the first time.
... syntax paymentrequest.addeventlistener('shippingaddress
change', shippingaddress
changeevent => { ...
... }); paymentrequest.onshippingaddress
change = function(shippingaddress
changeevent) { ...
...And 7 more matches
PaymentRequest.onshippingoptionchange - Web APIs
the onshippingoption
change event of the paymentrequest interface is fired whenever the user
changes a shipping option.
... syntax paymentrequest.addeventlistener('shippingoption
change', shippingoption
changeevent => { ...
... }); paymentrequest.onshippingoption
change = function(shippingoption
changeevent) { ...
...And 7 more matches
Tree Widget Changes - Archive of obsolete content
this describes
changes in xul trees api for gecko 1.8.
... there are no
changes to xul tree tags, however the id attribute is no longer required on treecol elements just to get them to work.
... some specific
changes you should now get the tree selection object from the view, not the box object, meaning use tree.view.selection instead of tree.treeboxobject.selection.
...And 6 more matches
Theme changes in Firefox 3 - Archive of obsolete content
this article covers the
changes that need to be made to update a firefox theme to work properly in firefox 3.
... browser
changes requiring theme updates there are a number of
changed and deleted files in the browser that may require you to make
changes to your theme.
... the table lists both the
changed xul file and the theme's corresponding css file that you might need to update.
...And 6 more matches
WindowEventHandlers.onhashchange - Web APIs
the windoweventhandlers.onhash
change property of the windoweventhandlers mixin is the eventhandler for processing hash
change events.
... the hash
change event fires when a window's hash
changes (see window.location and htmlhyperlinkelementutils.hash).
... syntax using an event handler: window.onhash
change = funcref; using an html event handler: <body onhash
change="funcref();"> using an event listener: to add an event listener, use addeventlistener(): window.addeventlistener("hash
change", funcref, false); parameters funcref a reference to a function.
...And 6 more matches
Element: fullscreenchange event - Web APIs
the fullscreen
change event is fired immediately after an element switches into or out of full-screen mode.
... bubbles yes cancelable no interface event event handler property onfullscreen
change this event is sent to the element which is transitioning into or out of full-screen mode.
... examples in this example, a handler for the fullscreen
change event is added to the element whose id is fullscreen-div.
...And 5 more matches
PaymentRequest: paymentmethodchange event - Web APIs
paymentmethod
change events are delivered by the payment request api to a paymentrequest object when the user
changes payment methods within a given payment handler.
... for example, if the user switches from one credit card to another on their apple pay account, a paymentmethod
change event is fired to let you know about the
change.
... bubbles no cancelable no interface paymentmethod
changeevent event handler property onpaymentmethod
change examples let's take a look at an example.
...And 5 more matches
RTCPeerConnection: icegatheringstatechange event - Web APIs
the icegatheringstate
change event is sent to the onicegatheringstate
change event handler on an rtcpeerconnection when the state of the ice candidate gathering process
changes.
... this signifies that the value of the connection's icegatheringstate property has
changed.
... when ice firststarts to gather connection candidates, the value
changes from new to gathering to indicate that the process of collecting candidate configurations for the connection has begun.
...And 5 more matches
ServiceWorker.onstatechange - Web APIs
an eventlistener property called whenever an event of type state
change is fired; it is basically fired anytime the serviceworker.state
changes.
... syntax serviceworker.onstate
change = function(state
changeevent) { ...
... } serviceworker.addeventlistener('state
change', function(state
changeevent) { ...
...And 5 more matches
TouchEvent.changedTouches - Web APIs
the
changedtouches read-only property is a touchlist whose touch points (touch objects) varies depending on the event type, as follows: for the touchstart event, it is a list of the touch points that became active with the current event.
... for the touchmove event, it is a list of the touch points that have
changed since the last event.
... syntax var
changes = touchevent.
changedtouches; return value
changes a touchlist whose touch objects include all the touch points that contributed to this touch event.
...And 5 more matches
XRInputSourcesChangeEvent() - Web APIs
the xrinputsources
changeevent() constructor creates and returns a new xrinputsources
changeevent object, representing an update to the list of available webxr input devices.
... syntax newinputsources
changeevent = new xrinputsources
changeevent(type, eventinitdict); parameters type a domstring indicating the type of event which has occurred.
... this string must always be inputsources
change.
...And 5 more matches
XRInputSourcesChangeEvent - Web APIs
the webxr device api interface xrinputsources
changeevent is used to represent the inputsources
change event sent to an xrsession when the set of available webxr input controllers
changes.
... constructor xrinputsources
changeevent() creates and returns a new xrinputsources
changeevent object configured as indicated by the given xrinputsources
changeeventinit object.
... the specified type must be inputsources
change, which is the only event that uses this interface.
...And 5 more matches
Theme changes in Firefox 3.5 - Archive of obsolete content
this article covers the
changes that need to be made to update a firefox theme to work properly in firefox 3.5.
... core, browser and toolkit
changes requiring theme updates there are a number of
changes in the browser that may require you to make
changes to your theme.
...look at the patch to see what was
changed for pinstripe.
...And 4 more matches
AudioTrackList.onchange - Web APIs
the audiotracklist property on
change is an event handler which is called when the
change event occurs, indicating that one or more of the audiotracks in the audiotracklist have been enabled or disabled.
... note: you can also add a handler for the
change event using addeventlistener().
... syntax audiotracklist.on
change = eventhandler; value set on
change to a function that should be called whenever tracks are enabled or disabled on the media element.
...And 4 more matches
HTMLSlotElement: slotchange event - Web APIs
the slot
change event is fired on an htmlslotelement instance (<slot> element) when the node(s) contained in that slot
change.
... note: the slot
change event doesn't fire if the children of a slotted node
change — only if you
change (e.g.
... bubbles yes cancelable no interface event event handler property none in order to trigger a slot
change event, one has to set or remove the slot attribute.
...And 4 more matches
HashChangeEvent - Web APIs
the hash
changeevent interface represents events that fire when the fragment identifier of the url has
changed.
...height="50" fill="#fff" stroke="#d4dde4" stroke-width="2px" /><text x="38.5" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">event</text></a><polyline points="76,25 86,20 86,30 76,25" stroke="#d4dde4" fill="none"/><line x1="86" y1="25" x2="116" y2="25" stroke="#d4dde4"/><a xlink:href="/docs/web/api/hash
changeevent" target="_top"><rect x="116" y="1" width="150" height="50" fill="#f4f7f8" stroke="#d4dde4" stroke-width="2px" /><text x="191" y="30" font-size="12px" font-family="consolas,monaco,andale mono,monospace" fill="#4d4e53" text-anchor="middle" alignment-baseline="middle">hash
changeevent</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} properties this interface...
... hash
changeevent.newurl read only the new url to which the window is navigating.
...And 4 more matches
IDBDatabase.onversionchange - Web APIs
the onversion
change event handler of the idbdatabase interface handles the version
change event, fired when a database structure
change (idbopendbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested elsewhere (most probably in another window/tab on the same computer).
... this is different from the version
change transaction (but it is related).
... syntax idbdatabase.onversion
change = function(event) { ...
...And 4 more matches
IDBVersionChangeEvent - Web APIs
the idbversion
changeevent interface of the indexeddb api indicates that the version of the database has
changed, as the result of an idbopendbrequest.onupgradeneeded event handler function.
... idbversion
changeevent.oldversion read only returns the old version of the database.
... idbversion
changeevent.newversion read only returns the new version of the database.
...And 4 more matches
PaymentMethodChangeEvent - Web APIs
the paymentmethod
changeevent() constructor creates a new paymentmethod
changeevent object providing details about a paymentmethod
change event.
... syntax paymentmethod
changeevent = new paymentmethod
changeevent(type, options); parameters type a domstring which must contain the string paymentmethod
change, the name of the only type of event which uses the paymentmethod
changeevent interface.
... options optional an optional paymentmethod
changeeventinit dictionary which may contain zero or more of the following properties: methodname optional a domstring containing the payment method identifier for the payment handler being used.
...And 4 more matches
PaymentRequest.onpaymentmethodchange - Web APIs
the paymentrequest event handler onpaymentmethod
change is invoked when the paymentmethod
change is fired, indicating that the user has
changed payment methods within a given payment handler.
... syntax paymentrequest.addeventlistener('paymentmethod
change', paymentmethod
changeevent => { ...
... }); paymentrequest.onpaymentmethod
change = function(paymentmethod
changeevent) { ...
...And 4 more matches
PaymentResponse: payerdetailchange event - Web APIs
payerdetail
change events are delivered by the payment request api to a paymentresponse object when the user makes
changes to their personal information while filling out a payment request form.
... the event handler for payerdetail
change should check each value in the form that has
changed and ensure that the values are valid.
... bubbles no cancelable no interface paymentrequestupdateevent event handler property onpayerdetail
change examples in the example below, onpayerdetail
change is used to set up a listener for the payerdetail
change event in order to validate the information entered by the user, requesting that any mistakes be corrected // options for paymentrequest(), indicating that shipping address, // payer email address, name, and phone number all be collected.
...And 4 more matches
ServiceWorkerGlobalScope: pushsubscriptionchange event - Web APIs
the pushsubscription
change event is sent to the global scope of a serviceworker to indicate a
change in push subscription that was triggered outside the application's control.
... bubbles no cancelable no interface pushsubscription
changeevent event handler property onpushsubscription
change usage notes although examples demonstrating how to share subscription related information with the application server tend to use fetch(), this is not necessarily the best choice for real-world use, since it will not work if the app is offline, for example.
... consider using another method to synchronize subscription information between your service worker and the app server, or make sure your code using fetch() is robust enough to handle cases where attempts to ex
change data fail.
...And 4 more matches
XRSystem: devicechange event - Web APIs
a device
change event is fired on an xrsystem object whenever the whenever the availability of immersive xr devices has
changed; for example, a vr headset or ar goggles have been connected or disconnected.
... note: not to be confused with the mediadevices device
change event.
... bubbles no cancelable no interface event event handler xrsystem.ondevice
change usage notes device
change events are not delivered if the document which owns the xrsystem object has been granted permission to do so through the xr-spatial-tracking feature policy.
...And 4 more matches
mozbrowsermetachange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsermeta
change event is fired when a <meta> element related to web applications is added, removed or
changed.
... type a domstring representing the type of meta
change that this event object represents.
...And 3 more matches
GlobalEventHandlers.onchange - Web APIs
the on
change property of the globaleventhandlers mixin is an eventhandler for processing
change events.
...
change events fire when the user commits a value
change to a form control.
... note: unlike oninput, the on
change event handler is not necessarily called for each alteration to an element's value.
...And 3 more matches
HTMLElement: change event - Web APIs
the
change event is fired for <input>, <select>, and <textarea> elements when an alteration to the element's value is committed by the user.
... unlike the input event, the
change event is not necessarily fired for each alteration to an element's value.
... bubbles yes cancelable no interface event event handler property on
change 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., after editing the value of <textarea> or <input type="text">).
...And 3 more matches
PaymentMethodChangeEvent.methodName - Web APIs
the read-only methodname property of the paymentmethod
changeevent interface is a string which uniquely identifies the payment handler currently selected by the user.
... the payment handler may be a payment technology, such as apple pay or android pay, and each payment handler may support multiple payment methods;
changes to the payment method within the payment handler are described by the paymentmethod
changeevent.
... syntax var methodname = paymentmethod
changeevent.methodname; value a domstring which uniquely identifies the currently-selected payment handler.
...And 3 more matches
PaymentResponse.onpayerdetailchange - Web APIs
the paymentresponse object's onpayerdetail
change property is an event handler which is called to handle the payerdetail
change event, which is sent to the paymentresponse when the user makes
changes to their personal information while filling out a payment request form.
... syntax paymentresponse.onpayerdetail
change = eventhandlerfunction; value an event handler function which is called to handle the payerdetail
change event when the user makes
changes to their personal information while editing a payment request form.
... examples in the example below, onpayerdetail
change is used to set up a listener for the payerdetail
change event in order to validate the information entered by the user, requesting that any mistakes be corrected // options for paymentrequest(), indicating that shipping address, // payer email address, name, and phone number all be collected.
...And 3 more matches
RTCDTMFToneChangeEvent - Web APIs
the rtcdtmftone
changeevent interface represents events sent to indicate that dtmf tones have started or finished playing.
... this interface is used by the tone
change event.
... properties in addition to the properties of event, this interface offers the following: rtcdtmftone
changeevent.tone read only a domstring specifying the tone which has begun playing, or an empty string ("") if the previous tone has finished playing.
...And 3 more matches
RTCIceTransport: gatheringstatechange event - Web APIs
a gatheringstate
change event is sent to an rtcicetransport when its ice candidate gathering state
changes.
... bubbles no cancelable no interface event event handler property ongatheringstate
change the key difference between gatheringstate
change and icegatheringstate
change 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.
... in contrast, gatheringstate
change represents
changes to the candidate gathering state for a single transport.
...And 3 more matches
RTCPeerConnection.onsignalingstatechange - Web APIs
the onsignalingstate
change event handler property of the rtcpeerconnection interface specifies a function to be called when the signalingstate
change event occurs on an rtcpeerconnection interface.
... the function receives as input the event object of type event; this event is sent when the peer connection's signalingstate
changes, which may happen either because of a call to setlocaldescription() or to setremotedescription().
... syntax rtcpeerconnection.onsignalingstate
change = errorhandler; value set this to a function which you provide that receives an event object as input; this contains the signalingstate
change event.
...And 3 more matches
VideoTrackList.onchange - Web APIs
the videotracklist property on
change is an event handler which is called when the
change event occurs, indicating that a videotrack in the videotracklist has been made active.
... note: you can also add a handler for the
change event using addeventlistener().
... syntax videotracklist.on
change = eventhandler; value set on
change to a function that should be called whenever a track is made active.
...And 3 more matches
modDateChanged - Archive of obsolete content
method of file object syntax boolean moddate
changed (filespecobject asourcefolder, number anolddate); parameters the moddate
changed method has the following parameters: asourcefolder a filespecobject representing the file to be queried.
... description most often, the date passed in as the second parameter in moddate
changed is the returned value from a moddate on a separate file, as in the following example, in which the dates of two files are compared.
... example filesource1 = getfolder("program", "file1.txt"); filesource2 = getfolder("program", "file2.txt"); err1 = file.moddate(filesource1); // the baseline returned err2 = file.moddate
changed(filesource1, err1); logcomment("file.moddate
changed should return 'false' = " + err2); // the reason it expects false is we're comparing // the return 'time stamp' value for // file1.txt with the actual file1.txt itself.
...And 2 more matches
mozbrowsercaretstatechanged
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsercaretstate
changed event is fired when the user selects content in a page loaded in a browser <iframe>.
...lectall command is available (true) or not (false.) cancut: a boolean indicating whether the cut command is available (true) or not (false.) cancopy: a boolean indicating whether the copy command is available (true) or not (false.) canpaste: a boolean indicating whether the paste command is available (true) or not (false.) reason a domstring that defines the reason for the state being
changed.
...And 2 more matches
mozbrowserselectionstatechanged
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowserselectionstate
changed event is fired when the text selected inside the browser <iframe> content
changes.
... note that this is deprecated, and current implementations should use mozbrowsercaretstate
changed instead.
...And 2 more matches
Document: fullscreenchange event - Web APIs
the fullscreen
change event is fired immediately after the browser switches into or out of full-screen mode.
... bubbles yes cancelable no interface event event handler property onfullscreen
change the event is sent to the element that is transitioning into or out of full-screen mode, and this event then bubbles up to the document.
... examples in this example, a handler for the fullscreen
change event is added to the document.
...And 2 more matches
Element.onfullscreenchange - Web APIs
the element interface's onfullscreen
change property is an event handler for the fullscreen
change event that is fired when the element has transitioned into or out of full-screen mode.
... syntax targetdocument.onfullscreen
change = fullscreen
changehandler; value an event handler for the fullscreen
change event, indicating that the element has
changed in or out of full-screen mode.
... example this example establishes a fullscreen
change event handler, handlefullscreen
change().
...And 2 more matches
GlobalEventHandlers.onselectionchange - Web APIs
the onselection
change property of the globaleventhandlers mixin is an eventhandler that processes selection
change events.
... the selection
change event fires when the text selected on a webpage
changes.
... syntax object.onselection
change = functionref; value functionref is a function name or a function expression.
...And 2 more matches
PaymentMethodChangeEvent.methodDetails - Web APIs
the read-only methoddetails property of the paymentmethod
changeevent interface is an object containing any data the payment handler may provide to describe the
change the user has made to their payment method.
... syntax details = paymentmethod
changeevent.methodname; value an object containing any data needed to describe the
changes made to the payment method.
... example this example uses the paymentmethod
change event to watch for
changes to the payment method selected for apple pay, in order to compute a discount if the user chooses to use a visa card as their payment method.
...And 2 more matches
PaymentRequest: shippingaddresschange event - Web APIs
the shippingaddress
change event is sent to the paymentrequest object when the user selects a shipping address or
changes details of their shipping address.
... bubbles no cancelable no interface paymentrequestupdateevent event handler property onshippingaddress
change usage notes depending on the browser, the shipping address information may be redacted for privacy reasons.
... example in this example, a handler for the shippingaddress
change event is set up to validate that the address meets requirements set by the web application.
...And 2 more matches
PaymentRequest: shippingoptionchange event - Web APIs
for payment requests that request shipping information, and for which shipping options are offered, the shippingoption
change event is sent to the paymentrequest whenever the user chooses a shipping option from the list of available options.
... bubbles no cancelable no interface paymentrequestupdateevent event handler property onshippingoption
change examples this code snippet sets up a handler for the shippingoption
change event.
...for example, if there are three options (such as "free ground shipping", "2-day air", and "next day"), each time the user chooses one of those options, this event handler is called to recalculate the total based on the
changed shipping option.
...And 2 more matches
RTCIceTransport.ongatheringstatechange - Web APIs
the ongatheringstate
change event handler for the rtcicetransport interface specifies an event handler that is to be called when the gatheringstate
change event occurs on the transport.
... this event is delivered whenever the transport's gatheringstate property
changes.
... syntax rtcicetransport.ongatheringstate
change = state
changehandler; value a function to be called when the rtcicetransport object's gathering state
changes.
...And 2 more matches
RTCIceTransport.onstatechange - Web APIs
the onstate
change event handler for the rtcicetransport interface is a property which specifies a function to serve as the eventhandler for the state
change event that is fired whenever the transport's state
changes.
... syntax rtcicetransport.onstate
change = state
changehandler; value set this property to reference a function you provide that is called by the webrtc layer when the rtcicetransport object's state
changes.
... the event handler receives as its sole input an event object describing the state
change event which occurred.
...And 2 more matches
RTCPeerConnection: iceconnectionstatechange event - Web APIs
an iceconnectionstate
change event is sent to an rtcpeerconnection object each time the ice connection state
changes during the negotiation process.
... bubbles no cancelable no interface event event handler property oniceconnectionstate
change one common task performed by the iceconnectionstate
change event listener: to trigger ice restart when the state
changes to failed.
... examples an event handler for this event can be added using the rtcpeerconnection.oniceconnectionstate
change property or by using addeventlistener() on the rtcpeerconnection.
...And 2 more matches
RTCPeerConnection.onconnectionstatechange - Web APIs
the rtcpeerconnection.onconnectionstate
change property specifies an eventhandler which is called to handle the connectionstate
change event when it occurs on an instance of rtcpeerconnection.
... this happens whenever the aggregate state of the connection
changes.
... syntax rtcpeerconnection.onconnectionstate
change = eventhandler; value a function which is called by the browser when the connectionstate
change event occurs on the rtcpeerconnection.
...And 2 more matches
RTCPeerConnection.oniceconnectionstatechange - Web APIs
the rtcpeerconnection.oniceconnectionstate
change property is an event handler which specifies a function to be called when the iceconnectionstate
change event is fired on an rtcpeerconnection instance.
... this happens when the state of the connection's ice agent, as represented by the iceconnectionstate property,
changes.
... syntax rtcpeerconnection.oniceconnectionstate
change = eventhandler; value this event handler can be set to function which is passed a single input parameter: an event object describing the iceconnectionstate
change event which occurred.
...And 2 more matches
RTCPeerConnection.onicegatheringstatechange - Web APIs
the rtcpeerconnection.onicegatheringstate
change property is an eventhandler which specifies a function to be called when the icegatheringstate
change event is sent to an rtcpeerconnection instance.
... this happens when the ice gathering state—that is, whether or not the ice agent is actively gathering candidates—
changes.
... syntax rtcpeerconnection.onicegatheringstate
change = eventhandler; value a function you provide which is passed a single parameter: an event object containing the icegatheringstate
change event.
...And 2 more matches
ScreenOrientation.onchange - Web APIs
the on
change property of the screenorientation is an event handler fired whenever is the eventhandler called when the screen
changes orientation.
... syntax screenorientation.addeventlistener('
change', function(e) { ...
... }) screenorientation.on
change = function(e) { ...
...And 2 more matches
SourceBuffer.changeType() - Web APIs
the
changetype() method of the sourcebuffer interface sets the mime type that future calls to appendbuffer() should expect the new media data to conform to.
... this makes it possible to
change codecs or container type mid-stream.
... one scenario in which this is helpful is to support adapting the media source to changing bandwidth availability, by transitioning from one codec to another as resource constraints
change.
...And 2 more matches
TextTrack: cuechange event - Web APIs
the cue
change event fires when a texttrack has
changed the currently displaying cues.
... bubbles no cancelable no interface event event handler property globaleventhandlers.oncue
change examples on the texttrack you can set up a listener for the cue
change event on a texttrack using the addeventlistener() method: track.addeventlistener('cue
change', function () { let cues = track.activecues; // array of current cues }); or you can just set the oncue
change event handler property: track.oncue
change = function () { let cues = track.activecues; // array of current cues } on the track element the underlying texttrack, indicated by the track property, receives a cue
change event every time the currently-presented cue ...
...is
changed.
...And 2 more matches
TextTrackList.onchange - Web APIs
the texttracklist property on
change is an event handler which is called when the
change event occurs, indicating that a
change has occurred on a texttrack in the videotracklist.
... note: you can also add a handler for the
change event using addeventlistener().
... syntax texttracklist.on
change = eventhandler; example this snippet establishes a handler for the
change event that looks at each of the tracks in the list, calling a function to update the state of a user interface control that indicates the current state of the track.
...And 2 more matches
Atomics.compareExchange() - JavaScript
the static atomics.compareex
change() method ex
changes a given replacement value at a given position in the array, if a given expected value equals the old value.
... syntax atomics.compareex
change(typedarray, index, expectedvalue, replacementvalue) parameters typedarray an integer typed array.
... index the position in the typedarray to ex
change a value.
...And 2 more matches
Atomics.exchange() - JavaScript
the static atomics.ex
change() method stores a given value at a given position in the array and returns the old value at that position.
... syntax atomics.ex
change(typedarray, index, value) parameters typedarray an integer typed array.
... index the position in the typedarray to ex
change a value.
...And 2 more matches
Planned changes to shared memory - JavaScript
there is standardization work ongoing that enables developers to create sharedarraybuffer objects again, but
changes are needed in order to be use these across threads (i.e., postmessage() for sharedarraybuffer objects throws by default).
... these
changes provide further isolation between sites and help reduce the impact of attacks with high-resolution timers, which can be created with shared memory.
...no further
changes are needed for same-origin nested documents and subresources.
...And 2 more matches
XUL Changes for Firefox 1.5 - Archive of obsolete content
this lists the most notable
changes to xul in firefox 1.5 (gecko 1.8).
... for other
changes you should be aware of, see adapting xul applications for firefox 1.5.
...setting this property
changes the default button of the dialog.
...this has been fixed in firefox 1.5 and all code depending on this non zero-based behaviour should be
changed.
mozbrowserfindchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowserfind
change event is fired when a search method is invoked in the browser <iframe> content.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserfind
change", function(event) { console.log("currently highlighted: " + event.details.activematchordinal + " out of " + event.details.numberofmatches); }); related events mozbrowserasyncscroll mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalpr...
...ompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserscrollareachanged
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowserscrollarea
changed event is fired when the available scrolling area in the browser <iframe>
changes.
... this can occur on resize and when the page size
changes (while loading for example.) general info specification non standard interface customevent bubbles yes cancelable yes target <iframe> default action none properties property type description target read only eventtarget the browser iframe type read only domstring the type of event.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserscrollarea
changed", function( event ) { console.log("the new scroll area is " + event.details.width + " x " + event.details.height + "."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameand...
mozbrowsertitlechange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsertitle
change event is fired when the title of a browser <iframe> (i.e.
... the contents of the <title> element)
changes.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsertitle
change", function( event ) { console.log("the title of the document is:" + event.detail); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowserusernameandpasswordrequired ...
mozbrowservisibilitychange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowservisibility
change event is fired when the visibility state of the current browser iframe <iframe>
changes, for example due to a call to setvisible().
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowservisibility
change", function( event ) { if(event.details.visible) { console.log("the browser is visible."); } else { console.log("the browser is hidden."); } }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbro...
...wsertitle
change ...
MozScrolledAreaChanged
the mozscrolledarea
changed event is fired when the document view has been scrolled or resized.
... note: while you can poll the values of document.scrollwidth and document.scrollheight to watch for
changes to the document size, reading these properties can trigger document reflow, which can make them computationally expensive.
... this event, introduced in gecko 1.9.2, is fired whenever either or both of these values
change.
... example document.addeventlistener("mozscrolledarea
changed", event => { // find something useful to do with those values event.width; event.height; event.x; event.y; }, false); ...
BaseAudioContext.onstatechange - Web APIs
the onstate
change property of the baseaudiocontext interface defines an event handler function to be called when the state
change event fires: this occurs when the audio context's state
changes.
... syntax baseaudiocontext.onstate
change = function() { ...
... }; example the following snippet is taken from our audiocontext states demo (see it running live.) the onstate
change hander is used to log the current state to the console every time it
changes.
... audioctx.onstate
change = function() { console.log(audioctx.state); } specifications specification status comment web audio apithe definition of 'onstate
change' in that specification.
Document.onfullscreenchange - Web APIs
the document interface's onfullscreen
change property is an event handler for the fullscreen
change event that is fired immediately before a document transitions into or out of full-screen mode.
... syntax targetdocument.onfullscreen
change = fullscreen
changehandler; value an event handler which is invoked whenever the document receives a fullscreen
change event, indicating that the document is transitioning into or out of full-screen mode.
... usage notes the fullscreen
change event does not directly specify whether the transition is into or out of full-screen mode, so your event handler should look at the value of document.fullscreenelement.
... example document.onfullscreen
change = function ( event ) { console.log("full screen
change") }; document.documentelement.onclick = function () { // requestfullscreen() must be in an event handler or it will fail document.documentelement.requestfullscreen(); } specifications specification status comment fullscreen apithe definition of 'onfullscreen
change' in that specification.
Document: visibilitychange event - Web APIs
the visibility
change event is fired at the document when the content of its tab have become visible or have been hidden.
... bubbles yes cancelable no interface event event handler property onvisibility
change usage notes the event doesn't include the document's updated visibility status, but you can get that information from the document's visibilitystate property.
... document.addeventlistener("visibility
change", function() { if (document.visibilitystate === 'visible') { backgroundmusic.play(); } else { backgroundmusic.pause(); } }); specifications specification status comment page visibility (second edition)the definition of 'visibility
change' in that specification.
...please contribute data for "api.document.visibility
change" (depth: 1) to the mdn compatibility data repository.
GlobalEventHandlers.oncuechange - Web APIs
the oncue
change property of the globaleventhandlers mixin is the eventhandler for processing cue
change events.
... the cue
change event fires when a texttrack has
changed the currently displaying cues.
... syntax element.oncue
change = handlerfunction; var handlerfunction = element.oncue
change; handlerfunction is either null or a javascript function specifying the handler for the event.
... specification specification status comment html living standardthe definition of 'oncue
change' in that specification.
GlobalEventHandlers.ondurationchange - Web APIs
the onduration
change property of the globaleventhandlers mixin is the eventhandler for processing duration
change events.
... the duration
change event is fired when the duration attribute has been updated.
... syntax element.onduration
change = handlerfunction; var handlerfunction = element.onduration
change; handlerfunction is either null or a javascript function specifying the handler for the event.
... specification specification status comment html living standardthe definition of 'onduration
change' in that specification.
HTMLMediaElement: durationchange event - Web APIs
the duration
change event is fired when the duration attribute has been updated.
... bubbles no cancelable no interface event target element default action none event handler property globaleventhandlers.onduration
change specification html5 media examples these examples add an event listener for the htmlmediaelement's duration
change event, then post a message when that event handler has reacted to the event firing.
... using addeventlistener(): const video = document.queryselector('video'); video.addeventlistener('duration
change', (event) => { console.log('not sure why, but the duration of the video has
changed.'); }); using the onduration
change event handler property: const video = document.queryselector('video'); video.onduration
change = (event) => { console.log('not sure why, but the duration of the video has
changed.'); }; specifications specification status html living standardthe definition of 'duration
change media event' in that specification.
... living standard html5the definition of 'duration
change media event' in that specification.
HTMLMediaElement: ratechange event - Web APIs
the rate
change event is fired when the playback rate has
changed.
... bubbles no cancelable no interface event target element default action none event handler property globaleventhandlers.onrate
change specification html5 media examples these examples add an event listener for the htmlmediaelement's rate
change event, then post a message when that event handler has reacted to the event firing.
... using addeventlistener(): const video = document.queryselector('video'); video.addeventlistener('rate
change', (event) => { console.log('the playback rate
changed.'); }); using the onrate
change event handler property: const video = document.queryselector('video'); video.onrate
change = (event) => { console.log('the playback rate
changed.'); }; specifications specification status html living standardthe definition of 'rate
change media event' in that specification.
... living standard html5the definition of 'rate
change media event' in that specification.
HTMLMediaElement: volumechange event - Web APIs
the volume
change event is fired when the volume has
changed.
... bubbles no cancelable no interface event target element default action none event handler property globaleventhandlers.onvolume
change specification html5 media examples these examples add an event listener for the htmlmediaelement's volume
change event, then post a message when that event handler has reacted to the event firing.
... using addeventlistener(): const video = document.queryselector('video'); video.addeventlistener('volume
change', (event) => { console.log('the volume
changed.'); }); using the onvolume
change event handler property: const video = document.queryselector('video'); video.onvolume
change = (event) => { console.log('the volume
changed.'); }; specifications specification status html living standardthe definition of 'volume
change media event' in that specification.
... living standard html5the definition of 'volume
change media event' in that specification.
HTMLTrackElement: cuechange event - Web APIs
the cue
change event fires when a texttrack has
changed the currently displaying cues.
... bubbles no cancelable no interface event event handler oncue
change examples on the texttrack you can set up a listener for the cue
change event on a texttrack using the addeventlistener() method: track.addeventlistener('cue
change', function () { let cues = track.activecues; // array of current cues }); or you can just set the oncue
change event handler property: track.oncue
change = function () { let cues = track.activecues; // array of current cues } on the track element the underlying texttrack, indicated by the track property, receives a cue
change event every time the currently-presented cue is
changed.
... if the track is associated with a media element, using the <track> element as a child of the <audio> or <video> element, the cue
change event is also sent to the htmltrackelement.
... let texttrackelem = document.getelementbyid("texttrack"); texttrackelem.addeventlistener("cue
change", (event) => { let cues = event.target.track.activecues; }); in addition, you can use the oncue
change event handler: let texttrackelem = document.getelementbyid("texttrack"); texttrackelem.oncue
change = (event) => { let cues = event.target.track.activecues; }); specifications specification status html living standardthe definition of 'cue
change' in that specification.
IDBDatabase: versionchange event - Web APIs
the version
change event is fired when a database structure
change (idbopendbrequest.onupgradeneeded event or idbfactory.deletedatabase) was requested.
... bubbles no cancelable no interface event event handler property onversion
change examples this example opens a database and, on success, adds a listener to version
change: // 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', 'mo...
...nth', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.addeventlistener('success', event => { const db = event.target.result; db.addeventlistener('version
change', event => { console.log('the version of this database has
changed'); }); }); the same example, using the onversion
change 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.createinde...
...x('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstore.createindex('month', 'month', { unique: false }); objectstore.createindex('year', 'year', { unique: false }); }; dbopenrequest.onsuccess = event => { const db = event.target.result; db.onversion
change = event => { console.log('the version of this database has
changed'); }; }; ...
IDBVersionChangeRequest - Web APIs
the idbversion
changerequest interface the indexeddb api represents a request to
change the version of a database.
... methods inherits from: idbrequest idbversion
changerequest.setversion updates the version of the database.
... returns immediately and runs a version
change transaction on the connected database in a separate thread.
... desktopmobilechromeedgefirefoxinternet exploreroperasafariandroid webviewchrome for androidfirefox for androidopera for androidsafari on iossamsung internetidbversion
changerequest deprecatednon-standardchrome no support 12 — 23prefixed no support 12 — 23prefixed prefixed implemented with the vendor prefix: webkitedge ?
NetworkInformation.onchange - Web APIs
the networkinformation.on
change event handler contains the code that is fired when connection information
changes, and the
change is received by the networkinformation object.
... syntax netinfo.on
change = function() { ...
...var type = navigator.connection.type; function
changehandler(e) { // handle
change of connection type here.
... } // register for event
changes: navigator.connection.on
change =
changehandler; // another way: navigator.connection.addeventlistener('
change',
changehandler); specifications specification status comment network information apithe definition of 'on
change' in that specification.
PaymentMethodChangeEvent - Web APIs
the paymentmethod
changeevent interface of the payment request api describes the paymentmethod
change event which is fired by some payment handlers when the user switches payment instruments (e.g., a user selects a "store" card to make a purchase while using apple pay).
... constructor paymentmethod
changeevent() creates and returns a new paymentmethod
changeevent object, optionally initialized with values taken from a given paymentmethod
changeeventinit dictionary.
... methoddetails read only secure context an object containing payment method-specific data useful when handling a payment method
change.
... specifications specification status comment payment request apithe definition of 'paymentmethod
changeevent' in that specification.
PermissionStatus.onchange - Web APIs
the on
change event handler of the permissionstatus interface is called whenever the permissionstatus.state property
changes.
... syntax permissionstatus.on
change = function() { ...
... } permissionstatus.addeventlistener('
change', function() { ...
... }) example navigator.permissions.query({name:'geolocation'}).then(function(permissionstatus) { console.log('geolocation permission state is ', permissionstatus.state); permissionstatus.on
change = function() { console.log('geolocation permission state has
changed to ', this.state); }; }); specification specification status comment permissionsthe definition of 'on
change' in that specification.
RTCDTMFSender.ontonechange - Web APIs
the ontone
change property of the rtcdtmfsender interface is used to set the event handler for the tone
change event, which is sent to the rtcdtmfsender each time a tone begins or ends.
... the event handler receives as input a single parameter of type rtcdtmftone
changeevent, which describes the
change.
... syntax rtcdtmfsender.ontone
change = tone
changehandlerfunction; value a function which is called when a tone
change event is sent to the rtcdtmfsender, indicating that a dtmf tone has either started playing, or if all tones have finished playing.
... example tbd specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'ontone
change' in that specification.
RTCDTMFSender: tonechange event - Web APIs
the tone
change event is sent to an rtcdtmfsender by the webrtc api to indicate when dtmf tones previously queued for sending (by calling rtcdtmfsender.insertdtmf()) begin and end.
... bubbles no cancelable no interface rtcdtmftone
changeevent event handler property ontone
change to determine what tone started playing, or if a tone stopped playing, check the value of the event's tone property.
... examples this example establishes a handler for the tone
change event which updates an element to display the currently playing tone in its content, or, if all tones have played, the string "<none>".
... this can be done using addeventlistener(): dtmfsender.addeventlistener("tone
change", ev => { let tone = ev.tone; if (tone === "") { tone = "<none>"; } document.getelementbyid("playingtone").innertext = tone; }, false); you can also just set the ontone
change event handler property directly: dtmfsender.ontone
change = function( ev ) { let tone = ev.tone; if (tone === "") { tone = "<none>" } document.getelementbyid("playingtone").innertext = tone; }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'tone
change' in that specification.
RTCIceTransport.onselectedcandidatepairchange - Web APIs
the rtcicetransport interface's onselectedcandidatepair
change event handler specifies a function to be called to handle the selectedcandidatepair
change event, which is fired when the ice agent selects a new candidate pair to be used for the connection.
... syntax rtcicetransport.onselectedcandidatepair
change = candidatepairhandler; value this propoerty should be set to reference an event handler function to be called by the ice agent when it discovers a new candidate pair that the rtcicetransport will be using for communication with the remote peer.
... example in this example, an event handler for selectedcandidatepair
change is set up to update an on-screen display showing the protocol used by the currently selected candidate pair.
... var icetransport = pc.getsenders()[0].transport.icetransport; var localproto = document.getelementbyid("local-protocol"); var remoteproto = document.getelementbyid("remote-protocol"); icetransport.onselectedcandidatepair
change = function(event) { var pair = icetransport.getselectedcandidatepair(); localprotocol.innertext = pair.local.protocol.touppercase(); remoteprotocol.innertext = pair.remote.protocol.touppercase(); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcicetransport.onselectedcandidatepair
change' in that specification.
RTCIceTransport: selectedcandidatepairchange event - Web APIs
a selectedcandidatepair
change event is sent to an rtcicetransport when the ice agent selects a new pair of candidates that describe the endpoints of a viable connection.
... bubbles no cancelable no interface event event handler property onselectedcandidatepair
change examples this example creates an event handler for selectedcandidatepair
change that updates a display providing the user information about the progress of the ice negotiation for an rtcpeerconnection called pc.
... let icetransport = pc.getsenders[0].transport.icetransport; let localprotoelem = document.getelementbyid("local-protocol"); let remoteprotoelem = document.getelementbyid("remote-protocol"); icetransport.addeventlistener("selectedcandidatepair
change", ev => { let pair = icetransport.getselectedcandidatepair(); localprotoelem.innertext = pair.local.protocol.touppercase(); remoteprotoelem.innertext = pair.remote.protocol.touppercase(); }, false) this can also be done by setting the onselectedcandidatepair
change event handler property directly.
... let icetransport = pc.getsenders[0].transport.icetransport; let localprotoelem = document.getelementbyid("local-protocol"); let remoteprotoelem = document.getelementbyid("remote-protocol"); icetransport.onselectedcandidatepair
change = ev => { let pair = icetransport.getselectedcandidatepair(); localprotoelem.innertext = pair.local.protocol.touppercase(); remoteprotoelem.innertext = pair.remote.protocol.touppercase(); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'selectedcandidatepair
change' in that specification.
RTCPeerConnection: connectionstatechange event - Web APIs
the connectionstate
change event is sent to the ontrack event handler on an rtcpeerconnection object after a new track has been added to an rtcrtpreceiver which is part of the connection.
... bubbles no cancelable no interface event event handler onconnectionstate
change examples for an rtcpeerconnection, pc, this example sets up a handler for connectionstate
change messages to handle
changes to the connectivity of the webrtc session.
... pc.onconnectionstate
change = ev => { switch(pc.connectionstate) { case "new": case "checking": setonlinestatus("connecting..."); break; case "connected": setonlinestatus("online"); break; case "disconnected": setonlinestatus("disconnecting..."); break; case "closed": setonlinestatus("offline"); break; case "failed": setonlinestatus("error"); break; default: setonlinestatus("unknown"); break; } } you can also create a handler for connectionstate
change by using addeventlistener(): pc.addeventlistener("connectionstate
change", ev => { switch(pc.connectionstate) { /* ...
... */ } }, false); specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'connectionstate
change' in that specification.
Screen.onorientationchange - Web APIs
use screenorientation.on
change instead.
... an event handler for the orientation
change events sent to the screen object.
... syntax screen.onorientation
change = funcref; where funcref is a reference to a function.
... specifications specification status comment screen orientation apithe definition of 'onorientation
change' in that specification.
ServiceWorkerGlobalScope.onpushsubscriptionchange - Web APIs
the serviceworkerglobalscope.onpushsubscription
change event of the serviceworkerglobalscope interface is fired to indicate a
change in push subscription that was triggered outside the application's control, e.g.
... syntax serviceworkerglobalscope.onpushsubscription
change = function() { ...
... } self.addeventlistener('pushsubscription
change', function() { ...
... }) example self.addeventlistener('pushsubscription
change', function() { // do something, usually resubscribe to push and // send the new subscription details back to the // server via xhr or fetch }); specifications specification status comment push apithe definition of 'onpushsubscription
change' in that specification.
XMLHttpRequest.onreadystatechange - Web APIs
an eventhandler that is called whenever the readystate attribute
changes.
...the xmlhttprequest.onreadystate
change property contains the event handler to be called when the readystate
change event is fired, that is every time the readystate property of the xmlhttprequest
changes.
... syntax xmlhttprequest.onreadystate
change = callback; values callback is the function to be executed when the readystate
changes.
... examples const xhr = new xmlhttprequest(), method = "get", url = "https://developer.mozilla.org/"; xhr.open(method, url, true); xhr.onreadystate
change = function () { // in local files, status is 0 upon success in mozilla firefox if(xhr.readystate === xmlhttprequest.done) { var status = xhr.status; if (status === 0 || (status >= 200 && status < 400)) { // the request has been completed successfully console.log(xhr.responsetext); } else { // oh no!
XRInputSourcesChangeEvent.added - Web APIs
the read-only xrinputsources
changeevent property added is a list of zero or more input sources, each identified using an xrinputsource object, which have been newly made available for use.
... syntax let addedinputs = xrinputsources
changeevent.added; value an array of zero or more xrinputsource objects, each representing one input device added to the xr system.
... examples the example below creates a handler for the inputsources
change event that processes the lists of added and removed from the webxr system.
... xrsession.oninputsourcesc
change = event => { for (let input of event.added) { if (input.targetraymode == "tracked-pointer") { addedpointerdevice(input); } } for (let input of event.removed) { if (input.targetraymode == "tracked-pointer") { removedpointerdevice(input); } } }; specifications specification status comment webxr device apithe definition of 'xrinputsources
changeevent.added' in that specification.
XRInputSourcesChangeEvent.removed - Web APIs
the read-only xrinputsources
changeevent property removed is an array of zero or more xrinputsource objects representing the input sources which have been removed from the xrsession.
... syntax removedinputs = xrinputsources
changeevent.removed; value an array of zero or more xrinputsource objects, each representing one input device removed from the xr system.
... examples the example below creates a handler for the inputsources
change event that processes the lists of added and removed from the webxr system.
... xrsession.oninputsourcesc
change = event => { for (let input of event.added) { if (input.targetraymode == "tracked-pointer") { addedpointerdevice(input); } } for (let input of event.removed) { if (input.targetraymode == "tracked-pointer") { removedpointerdevice(input); } } }; specifications specification status comment webxr device apithe definition of 'xrinputsources
changeevent.removed' in that specification.
XRSession: inputsourceschange event - Web APIs
the inputsources
change event is sent to an xrsession when the set of available webxr input devices
changes.
... the received event, of type xrinputsources
changeevent, contains a list of any newly added and/or removed input devices.
... bubbles yes cancelable no interface xrinputsources
changeevent event handler property oninputsources
change the event object contains lists of the newly-added and/or removed input devices in its added and removed properties.
... examples specifications specification status comment webxr device apithe definition of 'inputsources
change event' in that specification.
XRSession: visibilitychange event - Web APIs
the visibility
change event is sent to an xrsession to inform it when it becomes visible or hidden, or when it becomes visible but not currently focused.
... bubbles yes cancelable no interface xrsessionevent event handler property onvisibility
change when the xrsession receives this event, the visibility state has already been
changed.
... examples this example demonstrates how to listen for a visibility
change event on a webxr session, using addeventlistener() to begin listening for the event: navigator.xr.requestsession("inline").then((xrsession) => { xrsession.addeventlistener("visibility
change", e => { switch(e.session.visiblitystate) { case "visible": case "visible-blurred": mysessionvisible(true); break; case "hidden": mysessionvisible(false); break; } }); }); when a visibility state
change occurs, the event is received and dispatched to a function mysessionvisible(), with a boolean parameter indicating whether or not the session is presently being displayed to the user.
... you can also create the event handler by assigning it to the xrsession's onvisibility
change event handler property, like this: xrsession.onvisibility
change = (e) => { /* event handled here */ }; specifications specification status comment webxr device apithe definition of 'visibility
change event' in that specification.
Updating addons broken by private browsing changes - Archive of obsolete content
after reading this document, contact josh matthews with further questions or clarifications, or file a bug if your extension has stopped working due to a
change described here and you are having trouble updating it.
... how do i know if my addon is affected by these
changes?
...sihttpauthmanager nsistricttransportsecurityservice ff 20: nsiprivatebrowsingservice nsirecentbadcertservice furthermore, if your code uses any of these common chrome apis: ff 19: saveurl saveinternal openlinkin ff 20: openbrowserwindow gprivatebrowsingui finally, if your code watches for any of these observer notifications: private-browsing private-browsing-cancel-vote private-browsing-
change-granted private-browsing-transition-complete then your addon will require updating to correctly support the new per-window private browser feature in firefox 20 (and will require updating to work correctly in releases of firefox since the ones listed).
chargingchange - Archive of obsolete content
the charging
change event is fired when the charging attribute of the battery api has
changed.
..."yes" : "no")); battery.addeventlistener('charging
change', function() { console.log("battery charging?
..."yes" : "no")); }); }); related events chargingtime
change dischargingtime
change level
change ...
onchange - Archive of obsolete content
« xul reference home overview an on
change attribute is an event listener to the object for the event
change.
... a
change event is fired in different ways for different xul input elements as listed below: on
change 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.
...ef="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" on
change="return myfunction(event);"/> </window> ...
mozbrowseraudioplaybackchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowseraudioplayback
change event is fired when audio starts or stops playing within a browser <iframe>.
... examples var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowseraudioplayback
change", function(event) { console.log(event.details); }); related events mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsericonchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsericon
change event is sent when a new icon (e.g.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsericon
change", function( event ) { console.log("the url of the new favicon is:" + event.details.href); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserlocationchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowserlocation
change event is fired when a browser <iframe>'s location
changes — it is fired every time navigation occurs.
... var browser = document.queryselector("iframe"); browser.addeventlistener('mozbrowserlocation
change', function (event) { urlbar.value = event.detail.url; }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsermanifestchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsermanifest
change event is fired when the manifest location of the app loaded in the browser <iframe>
changes.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsermanifest
change", function(event) { console.log("new manifest url: " + event.details.href); }); related events mozbrowserasyncscroll mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserscrollviewchange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowserscrollview
change event is fired when asynchronous scrolling (i.e.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserscrollview
change", function( event ) { console.log("scrolling has " + event.details.state + "."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsersecuritychange
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the mozbrowsersecurity
change event is fired when the browser <iframe> has connected to the server, and when the mixed content state
changes.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsersecurity
change", function( event ) { console.log("the ssl state is:" + event.details.state); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
Status, Recent Changes, and Plans
i put this section at the top so that checking for recent
changes will be easy.
... recent
changes to nscomptr most recent first made == and != between an nscomptr and a raw pointer (or a literal 0 or nsnull) work correctly on all compilers.
... recent
changes to this document removed the statement that == and != between an nscomptr and a raw pointer or literal 0 does not work on some compilers since it is no longer true.
AudioTrackList: change event - Web APIs
the
change event is fired when an audio track is enabled or disabled, for example by changing the track's enabled property.
... bubbles no cancelable no interface event event handler property on
change examples using addeventlistener(): const videoelement = document.queryselector('video'); videoelement.audiotracks.addeventlistener('
change', (event) => { console.log(`'${event.type}' event fired`); }); // changing the value of `enabled` will trigger the `
change` event const toggletrackbutton = document.queryselector('.toggle-track'); toggletrackbutton.addeventlistener('click', () => { const track = videoelement.audiotracks[0]; track.enabled = !track.enabled; }); using the on
change event handler property: const videoelement = document.queryselector('video'); videoelement.audiotracks.on
change = (event) => { console.log(`'${event.type}' event fired`); }...
...; // changing the value of `enabled` will trigger the `
change` event const toggletrackbutton = document.queryselector('.toggle-track'); toggletrackbutton.addeventlistener('click', () => { const track = videoelement.audiotracks[0]; track.enabled = !track.enabled; }); specifications specification status html living standardthe definition of '
change' in that specification.
BatteryManager.onchargingchange - Web APIs
specifies an event listener to receive charging
change events.
... syntax battery.oncharging
change = funcref where battery is a batterymanager object, and funcref is a function to be called when the charging
change event occurs.
... example html content <div id="level">(battery level unknown)</div> <div id="chargingtime">(charging time unknown)</div> javascript content navigator.getbattery().then(function(battery) { battery.oncharging
change = charging
change(); function charging
change() { document.queryselector('#level').textcontent = battery.level; document.queryselector('#chargingtime').textcontent = battery.chargingtime; } }); specifications specification status comment battery status api candidate recommendation initial definition ...
BatteryManager.onchargingtimechange - Web APIs
specifies an event listener to receive chargingtime
change events.
... syntax battery.onchargingtime
change = funcref where battery is a batterymanager object, and funcref is a function to be called when the chargingtime
change event occurs.
... example html content <div id="level">(battery level unknown)</div> <div id="chargingtime">(charging time unknown)</div> javascript content navigator.getbattery().then(function(battery) { battery.onchargingtime
change = chargingtime
change(); function chargingtime
change(){ document.queryselector('#level').textcontent = battery.level; document.queryselector('#chargingtime').textcontent = battery.chargingtime; } }); specifications specification status comment battery status api candidate recommendation initial definition ...
BatteryManager.ondischargingtimechange - Web APIs
specifies an event listener to receive dischargingtime
change events.
... syntax battery.ondischargingtime
change = funcref where battery is a batterymanager object, and funcref is a function to be called when the dischargingtime
change event occurs.
... example html content <div id="level">(battery level unknown)</div> <div id="chargingtime">(charging time unknown)</div> javascript content navigator.getbattery().then(function(battery) { battery.ondischargingtime
change = dischargingtime
change; function dischargingtime
change(){ document.queryselector('#level').textcontent = battery.level; document.queryselector('#chargingtime').textcontent = battery.chargingtime; } }); specifications specification status comment battery status api candidate recommendation initial definition ...
BatteryManager.onlevelchange - Web APIs
the batterymanager.onlevel
change property specifies an event listener to receive level
change events.
... syntax navigator.battery.onlevel
change = funcref where battery is a batterymanager object, and funcref is a function to be called when the level
change event occurs.
... example html <div id="level">(battery level unknown)</div> <div id="statebaterry">(charging state unknown)</div> javascript navigator.getbattery().then(function(battery) { battery.onlevel
change = function(){ document.queryselector('#level').textcontent = battery.level; if(battery.charging) { document.queryselector('#statebaterry').textcontent = "charging time: " + (battery.chargingtime / 60); } else { document.queryselector('#statebaterry').textcontent = "discharging time: " + (battery.dischargingtime / 60); } }; }); specifications specification status comment battery status api candidate recommendation initial definition ...
Document.onvisibilitychange - Web APIs
the document.onvisibility
change property represents the event handler that is called when a visibility
change event reaches this object.
... syntax obj.onvisibility
change = function; function is the name of a user-defined function, without the () suffix or any parameters, or an anonymous function declaration.
... example document.onvisibility
change = function() { console.log("visibility of page has
changed!"); }; specifications specification status comment page visibility (second edition)the definition of 'onvisibility
change' in that specification.
Document: readystatechange event - Web APIs
the readystate
change event is fired when the readystate attribute of a document has
changed.
... bubbles no cancelable no interface event event handler property onreadystate
change examples live example html <div class="controls"> <button id="reload" type="button">reload</button> </div> <div class="event-log"> <label>event log:</label> <textarea readonly class="event-log-contents" rows="8" cols="30"></textarea> </div> css body { display: grid; grid-template-areas: "control log"; } .controls { grid-area: control; display: flex; align-items: center; justify-content: center; } .event-log { grid-area: log; } .event-log-contents { resize: none; } label, button { display: block; } #reload { height: 2rem; } js const log = document.queryselector('.event-log-contents'); const reload = document.queryse...
...lector('#reload'); reload.addeventlistener('click', () => { log.textcontent =''; window.settimeout(() => { window.location.reload(true); }, 200); }); window.addeventlistener('load', (event) => { log.textcontent = log.textcontent + 'load\n'; }); document.addeventlistener('readystate
change', (event) => { log.textcontent = log.textcontent + `readystate: ${document.readystate}\n`; }); document.addeventlistener('domcontentloaded', (event) => { log.textcontent = log.textcontent + `domcontentloaded\n`; }); result specifications specification status comment html living standardthe definition of 'readystate
change' in that specification.
onMSVideoFormatChanged - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... onmsvideoformat
changed is an event which occurs when the video format
changes.
... syntax value description event property object.onmsvideoformat
changed = handler; attachevent method object.attachevent("onmsvideoformat
changed", handler) addeventlistener method object.addeventlistener("", handler, usecapture) event handler parameters val[in], type=function see also htmlvideoelement microsoft api extensions ...
onMSVideoOptimalLayoutChanged - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... onmsvideooptimallayout
changed is an event which occurs when the msislayoutoptimalforplayback state
changes.
... syntax value description event property object.onmsvideooptimallayout
changed = handler; attachevent method object.attachevent("onmsvideooptimallayout
changed", handler) addeventlistener method object.addeventlistener("", handler, usecapture) synchronous no bubbles no cancelable no see also msislayoutoptimalforplayback htmlvideoelement microsoft api extensions ...
IDBVersionChangeEvent.newVersion - Web APIs
the newversion read-only property of the idbversion
changeevent interface returns the new version number of the database.
... syntax var newversion = idbversion
changeevent.newversion value a 64-bit integer.
...these events are fired via the custom idbversion
changeevent interface.
IDBVersionChangeRequest.setVersion() - Web APIs
the idbversion
changerequest.setversion method updates the version of the database, returning immediately and running a version
change transaction on the connected database in a separate thread.
... syntax idbversion
changerequest setversion ([treatnullas=emptystring] in domstring version); example tbd parameters version the version to store in the database.
... returns idbversion
changerequest the request to
change the version of a database.
MediaKeySession.onkeystatuseschange - Web APIs
the onkeystatuses
change property of the mediakeysession is an event handler, fired whenever a keystatus
change event ocurrs, denoting there has been a
change in the keys or their statuses within a session.
...et="_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">mediakeysession</text></a></svg></div> a:hover text { fill: #0095dd; pointer-events: all;} syntax mediakeysession.onkeystatuses
change = function(keystatus
change) { ...
... } specifications specification status comment encrypted media extensionsthe definition of 'onkeystatuses
change' in that specification.
MediaQueryList.onchange - Web APIs
the on
change property of the mediaquerylist interface is an event handler property representing a function that is invoked when the
change event fires, i.e when the status of media query support
changes.
... syntax mediaquerylist.on
change = function() { ...
... }; example var mql = window.matchmedia('(max-width: 600px)'); mql.addeventlistener( "
change", (e) => { if (e.matches) { /* the viewport is 600 pixels wide or less */ console.log('this is a narrow screen — less than 600px wide.') } else { /* the viewport is more than than 600 pixels wide */ console.log('this is a wide screen — more than 600px wide.') } }) specifications specification status comment css object model (cssom) view modulethe definition of 'on
change' in that specification.
RTCDTMFToneChangeEvent.tone - Web APIs
the read-only property rtcdtmftone
changeevent.tone returns the dtmf character which has just begun to play, or an empty string ("").
... syntax var tone = dtmftone
changeevent.tone; example this example establishes a handler for the tone
change event which updates an element to display the currently playing tone in its content, or, if all tones have played, the string "<none>".
... dtmfsender.ontone
change = function( ev ) { let tone = ev.tone; if (tone === "") { tone = "<none>" } document.getelementbyid("playingtone").innertext = tone; }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcdtmftone
changeevent.tone' in that specification.
RTCIceTransport: statechange event - Web APIs
a state
change event occurs when the rtcicetransport
changes state.
... bubbles no cancelable no interface event event handler property rtcicetransport.onstate
change examples given an rtcpeerconnection, pc, the following code creates an event handler that calls a function named handlefailure() if the ice transport enters a failure state.
... let icetransport = pc.getsenders()[0].transport.icetransport; icetransport.addeventlistener("state
change", ev => { if (icetransport.state === "failed") { handlefailure(pc); } }, false); the same code, using the onstate
change event handler property, looks like this: let icetransport = pc.getsenders()[0].transport.icetransport; icetransport.onstate
change = ev => { if (icetransport.state === "failed") { handlefailure(pc); } }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'state
change' in that specification.
RTCPeerConnection: signalingstatechange event - Web APIs
an signalingstate
change event is sent to an rtcpeerconnection to notify it that its signaling state, as indicated by the signalingstate property, has
changed.
... bubbles no cancelable no interface event event handler property rtcpeerconnection.onsignalingstate
change examples given an rtcpeerconnection, pc, and an updatestatus() function that presents status information to the user, this code sets up an event handler to let the user know when the ice negotiation process finishes up.
... pc.addeventlistener("signalingstate
change", ev => { switch(pc.signalingstate) { case "stable": updatestatus("ice negotiation complete"); break; } }, false); using onsignalingstate
change, it looks like this: pc.onsignalingstate
change = ev => { switch(pc.signalingstate) { case "stable": updatestatus("ice negotiation complete"); break; } }; specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'signalingstate
change' in that specification.
ServiceWorkerContainer.oncontrollerchange - Web APIs
the oncontroller
change property of the serviceworkercontainer interface is an event handler fired whenever a controller
change event occurs — when the document's associated serviceworkerregistration acquires a new active worker.
... syntax serviceworkercontainer.oncontroller
change = function(controller
changeevent) { ...
... } example // tbd specifications specification status comment service workersthe definition of 'serviceworkercontainer: oncontroller
change' in that specification.
SpeechSynthesis.onvoiceschanged - Web APIs
the onvoices
changed property of the speechsynthesis interface represents an event handler that will run when the list of speechsynthesisvoice objects that would be returned by the speechsynthesis.getvoices() method has
changed (when the voices
changed event fires.) this may occur when speech synthesis is being done on the server-side and the voices list is being determined asynchronously, or when client-side voices are installed/uninstalled while a speech synthesis application is running.
... syntax speechsynthesisinstance.onvoices
changed = function() { ...
... var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.appendchild(option); } } populatevoicelist(); if (speechsynthesis.onvoices
changed !== undefined) { speechsynthesis.onvoices
changed = populatevoicelist; } specifications specification status comment web speech apithe definition of 'onvoices
changed' in that specification.
VideoTrackList: change event - Web APIs
the
change event is fired when a video track is made active or inactive, for example by changing the track's selected property.
... bubbles no cancelable no interface event event handler property on
change examples using addeventlistener(): const videoelement = document.queryselector('video'); videoelement.videotracks.addeventlistener('
change', (event) => { console.log(`'${event.type}' event fired`); }); // changing the value of `selected` will trigger the `
change` event const toggletrackbutton = document.queryselector('.toggle-track'); toggletrackbutton.addeventlistener('click', () => { const track = videoelement.videotracks[0]; track.selected = !track.selected; }); using the on
change event handler property: const videoelement = document.queryselector('video'); videoelement.videotracks.on
change = (event) => { console.log(`'${event.type}' event fired`)...
...; }; // changing the value of `selected` will trigger the `
change` event const toggletrackbutton = document.queryselector('.toggle-track'); toggletrackbutton.addeventlistener('click', () => { const track = videoelement.videotracks[0]; track.selected = !track.selected; }); specifications specification status html living standardthe definition of '
change' in that specification.
WindowEventHandlers.onlanguagechange - Web APIs
the onlanguage
change property of the windoweventhandlers mixin is the eventhandler for processing language
change events.
... syntax object.onlanguage
change = function; value function is the name of a user-defined function, without the () suffix or any parameters, or an anonymous function declaration, such as function(event) {...}.
... example window.onlanguage
change = function(event) { console.log('language
change event detected!'); }; specifications specification status comment html living standardthe definition of 'windoweventhandler.onlanguage
change' in that specification.
WorkerGlobalScope.onlanguagechange - Web APIs
the onlanguage
change property of the workerglobalscope interface represents an eventhandler to be called when the language
change event occurs and bubbles through the worker.
... syntax self.onlanguage
change = function() { ...
... }; example the following code snippet shows an onlanguage
change handler set inside a worker: self.onlanguage
change = function() { console.log('your preferred language settings have been
changed'); } specifications specification status comment html living standardthe definition of 'workerglobalscope.onlanguage
change' in that specification.
XRInputSourcesChangeEvent.session - Web APIs
the xrinputsources
changeevent property session specifies the xrsession to which the input source list
change event applies.
... syntax let inputssession = xrinputsources
changeevent.session; value an xrsession indicating the webxr session to which the input source list
change applies.
... specifications specification status comment webxr device apithe definition of 'xrinputsources
changeevent.session' in that specification.
XRInputSourcesChangeEventInit.added - Web APIs
the xrinputsources
changeeventinit property added specifies a list of input sources, each identified using an xrinputsource object, which the represented inputsources
change event is to indicate are newly available for use.
... syntax let inputsourceseventinit = { session: xrsession, added: [newdevice1, ..., newdevicen], removed: [removeddevice1, ..., newdevicen], }; myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", inputsourceseventinit); myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", { session: xrsession, added: addeddevicelist, removed: removeddevicelist }); value an array of zero or more xrinputsource objects, each representing one input device added to the xr system.
... specifications specification status comment webxr device apithe definition of 'xrinputsources
changeeventinit.added' in that specification.
XRInputSourcesChangeEventInit.removed - Web APIs
the xrinputsources
changeeventinit property removed is an array of zero or more xrinputsource objects, each representing one input source which has been removed from the xrsession.
... syntax let inputsourceseventinit = { session: xrsession, added: [newdevice1, ..., newdevicen], removed: [removeddevice1, ..., newdevicen], }; myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", inputsourceseventinit); myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", { session: xrsession, added: addeddevicelist, removed: removeddevicelist }); value an array of zero or more xrinputsource objects, each representing one input device removed from the xr system.
... specifications specification status comment webxr device apithe definition of 'xrinputsources
changeeventinit.removed' in that specification.
XRInputSourcesChangeEventInit.session - Web APIs
the xrinputsources
changeeventinit property session specifies the xrsession to which the input source list
change event applies.
... syntax let inputsourceseventinit = { session: xrsession, added: [newdevice1, ..., newdevicen], removed: [removeddevice1, ..., newdevicen], }; myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", inputsourceseventinit); myinputsources
changeevent = new xrinputsources
changeeventinit("inputsources
change", { session: xrsession, added: addeddevicelist, removed: removeddevicelist }); value an xrsession indicating the webxr session to which the input source list
change applies.
... specifications specification status comment webxr device apithe definition of 'xrinputsources
changeeventinit.session' in that specification.
XRSession.oninputsourceschange - Web APIs
the oninputsource
change attribute of the xrsession object is the event handler for the inputsource
change event, which is dispatched when session's list of active xr input sources has
changed.
... syntax xrsession.oninputsources
change = function(event) { ...
... } example xrsession.oninputsources
change = function(event) { console.log("the list of active xr input sources has
changed.") } specifications specification status comment webxr device apithe definition of 'xrsession.oninputsources
change' in that specification.
XRSession.onvisibilitychange - Web APIs
the onvisibility
change attribute of the xrsession object is the event handler for the visibility
change event, which is dispatched when the visibility state of the xr session
changes.
... syntax xrsession.onvisibility
change = function(event) { ...
... } example xrsession.onvisibility
change = function(event) { console.log("the visibility the xr session
changed.") } specifications specification status comment webxr device apithe definition of 'xrsession.onvisibility
change' in that specification.
XRSystem: ondevicechange - Web APIs
the ondevice
change property of the xrsystem interface is passed a device
change event whenever availability of an immersive device
changes.
... syntax navigator.xr.ondevice
change = function(event) { ...
... }; value undefined example navigator.xr.ondevice
change = function(ev) { console.log("the availability of immersive xr devices has
changed.") }; specifications specification status comment webxr device apithe definition of 'ondevice
change ' in that specification.
chargingtimechange - Archive of obsolete content
the chargingtime
change event is fired when the chargingtime attribute of the battery api has
changed.
... example navigator.getbattery().then(function(battery) { console.log("battery charging time: " + battery.chargingtime + " seconds"); battery.addeventlistener('chargingtime
change', function() { console.log("battery charging time: " + battery.chargingtime + " seconds"); }); }); related events charging
change dischargingtime
change level
change ...
dischargingtimechange - Archive of obsolete content
the dischargingtime
change event is fired when the dischargingtime attribute of the battery api has
changed.
... example navigator.getbattery().then(function(battery) { console.log("battery discharging time: " + battery.dischargingtime + " seconds"); battery.addeventlistener('dischargingtime
change', function() { console.log("battery discharging time: " + battery.dischargingtime + " seconds"); }); }); related events charging
change dischargingtime
change level
change ...
levelchange - Archive of obsolete content
the level
change event is fired when the level attribute of the battery api has
changed.
... example navigator.getbattery().then(function(battery) { console.log("battery level: " + battery.level * 100 + " %"); battery.addeventlistener('level
change', function() { console.log("battery level: " + battery.level * 100 + " %"); }); }); related events charging
change chargingtime
change dischargingtime
change ...
nsIAccessibleTextChangeEvent
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview boolean isinserted(); attributes attribute type description length unsigned long returns length of
changed text.
... start long returns offset of
changed text in accessible.
Bluetooth.onavailabilitychanged - Web APIs
the onavailability
changed property of the bluetooth interface is an eventhandler that processes availability
changed events that fire when the bluetooth system as a whole becomes available or unavailable to the user agent.
... syntax bluetooth.onavailability
changed = functionref; value functionref is the handler function to be called when the bluetooth availability
changed event fires.
Document: pointerlockchange event - Web APIs
the pointerlock
change event is fired when the pointer is locked/unlocked.
... bubbles yes cancelable no interface event event handler property onpointerlock
change examples using addeventlistener(): document.addeventlistener('pointerlock
change', (event) => { console.log('pointer lock
changed'); }); using the onpointerlock
change event handler property: document.onpointerlock
change = (event) => { console.log('pointer lock
changed'); }; specifications specification status pointer lock candidate recommendation ...
Document: selectionchange event - Web APIs
the selection
change event of the selection api is fired when the current text selection on a document is
changed.
... bubbles no cancelable no interface event event handler property onselection
change examples // addeventlistener version document.addeventlistener('selection
change', () => { console.log(document.getselection()); }); // onselection
change version document.onselection
change = () => { console.log(document.getselection()); }; specifications specification status comment selection apithe definition of 'selection
change' in that specification.
Element: MSManipulationStateChanged event - Web APIs
msmanipulationstate
changed fires when the state of an element being manipulated has
changed (ie.
... examples // listen for panning state
change events outerscroller.addeventlistener("msmanipulationstate
changed", function(e) { // check to see if they lifted while pulled to the top if (e.currentstate == ms_manipulation_state_inertia && outerscroller.scrolltop === 0) { refreshitemsasync(); } }); specifications not part of any specification.
Element: webkitmouseforcechanged event - Web APIs
the non-standard webkitmouseforce
changed event is fired by safari each time the amount of pressure
changes on the trackpad/touchscreen.
... bubbles unknown cancelable unknown interface mouseevent webkitmouseforce
changed is a proprietary, webkit-specific event introduced by apple to support their force touch events feature.
HashChangeEvent.newURL - Web APIs
the newurl read-only property of the hash
changeevent interface returns the new url to which the window is navigating.
... example window.addeventlistener('hash
change', function(event) { console.log('hash
changed to ' + event.newurl); }); specifications specification status comment html living standardthe definition of 'hash
changeevent: newurl' in that specification.
HashChangeEvent.oldURL - Web APIs
the oldurl read-only property of the hash
changeevent interface returns the previous url from which the window was navigated.
... example window.addeventlistener('hash
change', function(event) { console.log('hash
changed from ' + event.oldurl); }); specifications specification status comment html living standardthe definition of 'hash
changeevent: oldurl' in that specification.
IDBVersionChangeEvent.oldVersion - Web APIs
the oldversion read-only property of the idbversion
changeevent interface returns the old version number of the database.
... syntax var oldversion = idbversion
changeevent.oldversion value a 64-bit integer.
MediaDevices: devicechange event - Web APIs
a device
change event is sent to a mediadevices instance whenever a media device such as a camera, microphone, or speaker is connected to or removed from the system.
... bubbles no cancelable no interface event event handler ondevice
change example you can use the device
change event in an addeventlistener method: navigator.mediadevices.addeventlistener('device
change', function(event) { updatedevicelist(); }); or use the ondevice
change event handler property: navigator.mediadevices.ondevice
change = function(event) { updatedevicelist(); } specifications specification status media capture and streamsthe definition of 'device
change' in that specification.
SpeechSynthesis: voiceschanged event - Web APIs
the voices
changed event of the web speech api is fired when the list of speechsynthesisvoice objects that would be returned by the speechsynthesis.getvoices() method has
changed (when the voices
changed event fires.) bubbles no cancelable no interface event event handler property onvoices
changed examples this could be used to repopulate a list of voices that the user can choose between when the event fires.
... you can use the voices
changed event in an addeventlistener method: var synth = window.speechsynthesis; synth.addeventlistener('voices
changed', function() { var voices = synth.getvoices(); for(i = 0; i < voices.length ; i++) { var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.appendchild(option); } }); or use the onvoices
changed event handler property: synth.onvoices
changed = function() { var voices = synth.getvoices(); for(i = 0; i < voices.length ; i++) { var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; option.s...
TextTrackList: change event - Web APIs
the
change event is fired when a text track is made active or inactive, or a texttracklist is otherwise
changed.
... bubbles no cancelable no interface event event handler property on
change examples using addeventlistener(): const mediaelement = document.queryselectorall('video, audio')[0]; mediaelement.texttracks.addeventlistener('
change', (event) => { console.log(`'${event.type}' event fired`); }); using the on
change event handler property: const mediaelement = document.queryselector('video, audio'); mediaelement.texttracks.on
change = (event) => { console.log(`'${event.type}' event fired`); }; specifications specification status html living standardthe definition of '
change' in that specification.
Window: clipboardchange event - Web APIs
the clipboard
change event fires when the system clipboard content
changes.
... bubbles no cancelable no interface clipboardevent event handler property none examples javascript window.addeventlistener('clipboard
change', () => { console.log('clipboard contents
changed'); }); specifications specification status clipboard api and eventsthe definition of 'clipboard
change event' in that specification.
Window: hashchange event - Web APIs
the hash
change event is fired when the fragment identifier of the url has
changed (the part of the url beginning with and following the # symbol).
... bubbles yes cancelable no interface hash
changeevent event handler onhash
change examples you can use the hash
change event in an addeventlistener method: window.addeventlistener('hash
change', function() { console.log('the hash has
changed!') }, false); or use the onhash
change event handler property: function locationhash
changed() { if (location.hash === '#cool-feature') { console.log("you're visiting a cool feature!"); } } window.onhash
change = locationhash
changed; specifications specification status comment html living standardthe definition of 'hash
change' in that specification.
Window: languagechange event - Web APIs
the language
change event is fired at the global scope object when the user's preferred language
changes.
... bubbles no cancelable no interface event event handler onlanguage
change examples you can use the language
change event in an addeventlistener method: window.addeventlistener('language
change', function() { console.log('language
change event detected!'); }); or use the onlanguage
change event handler property: window.onlanguage
change = function(event) { console.log('language
change event detected!'); }; specification specification status html living standardthe definition of 'language
change' in that specification.
Window: orientationchange event - Web APIs
the orientation
change event is fired when the orientation of the device has
changed.
... bubbles no cancelable no interface event event handler onorientation
change example you can use the orientation
change event in an addeventlistener method: window.addeventlistener("orientation
change", function(event) { console.log("the orientation of the device is now " + event.target.screen.orientation.angle); }); or use the onorientation
change event handler property: window.onorientation
change = function(event) { console.log("the orientation of the device is now " + event.target.screen.orientation.angle); }; specifications specification status compatibility standardthe definition of 'orientation
change' in that specification.
WorkerGlobalScope: languagechange event - Web APIs
the language
change event is fired at the global scope object when the user's preferred language
changes.
... bubbles no cancelable no interface event event handler onlanguage
change examples you can use the language
change event in an addeventlistener method: worker.addeventlistener('language
change', function() { console.log('language
change event detected!'); }); or use the onlanguage
change event handler property: worker.onlanguage
change = function(event) { console.log('language
change event detected!'); }; specification specification status html living standardthe definition of 'language
change' in that specification.
XRInputSourcesChangeEventInit - Web APIs
the xrinputsources
changeeventinit dictionary is used to provide options to the xrinputsources
changeevent() constructor in order to set the initial state of the new xrinputsources
changeevent object.
... examples <tbd> specifications specification status comment webxr device apithe definition of 'xrinputsources
changeeventinit' in that specification.
nsIAccessibleStateChangeEvent
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview boolean isenabled(); boolean isextrastate(); attributes attribute type description state unsigned long returns the state of accessible (see constants declared in nsiaccessiblestates).
nsIAccessibleTableChangeEvent
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) attributes attribute type description numrowsorcols long return the number of rows or cols.
Index - Web APIs
46 ambient light events ambient light the ambient light events are a handy way to make a web page or an application aware of any
change in the light intensity.
... it allows them to react to such a
change, for example by changing the color contrast of the user interface (ui) or by changing the exposure necessary to take a picture.
...it is an audionode that passes the audio stream un
changed from the input to the output, but allows you to take the generated data, process it, and create audio visualizations.
...And 264 more matches
Index - Archive of obsolete content
100 preferences/event-target add-on sdk listen to
changes to the preferences system in firefox.
...this document is a guide to common code patterns that may need to
change to work with frozen linkage.
... 255 offering a context menu for form controls add-ons, extensions, mozilla, xul firefox 3
changed the behavior of right-click on form controls to no longer display a context menu by default.
...And 70 more matches
Event reference
view events event name fired when fullscreen
change an element was toggled to or from fullscreen mode.
... pointerlock
change the pointer was locked or released.
... duration
change the duration attribute has been updated.
...And 61 more matches
Index
this is often sufficient if you encrypt data for yourself, but as soon as you need to ex
change signed/encrypted data with communication partners, using public key encryption simplifies the key management.
...the public keys that are ex
changed between parties are transported using a container; the container is called a certificate, following standard x.509 version 3.
... a cryptographic transaction, such as encryption or decryption related to a data ex
change, usually involves working with the x.509 certs of your communication partners (peer).
...And 48 more matches
nsIAccessibleEvent
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description accessible nsiaccessible the nsiaccessible associated with the event.
... event_reorder 0x8004 0x005c 0x0003 an object's children have
changed.
... event_active_decendent_
changed 0x0007 0x0004 the active descendant of a component has
changed.
...And 43 more matches
IME handling guide
ecompositionupdate this is dispatched by textcomposition when an ecompoition
change will
change the composition string.
... ecomposition
change this is used internally only.
... mranges representing dom event ecompositionstart selected string before starting composition textcomposition nullptr compositionstart ecompositionupdate new composition string textcomposition nullptr compositionupdate ecompositionend commit string textcomposition nullptr compositionend ecomposition
change new composition string widget (or textcomposition) must not be nullptr text ecompositioncommitasis n/a (must be empty) nobody nullptr none ecompositioncommit commit string widget (or textcomposition) nullptr none presshell presshell receives the widget events and decides an event target from focused document and element.
...And 42 more matches
Gecko events
is supported: yes event_dom_significant_
change an object's properties or content have
changed significantly so that the type of object has really
changed, and therefore the accessible should be destroyed or recreated.
... is supported: yes event_asynch_show a hidden object is shown -- this is a layout occurance and is thus asynchronous is supported: yes event_asynch_hide an object is hidden -- this is a layout occurance and is thus asynchronous is supported: yes event_asynch_significant_
change an object had a significant layout
change which could affect the type of accessible object -- this is a layout occurance and is thus asynchronous is supported: yes event_active_decendent_
changed the active descendant of a component has
changed.
... is supported: yes event_state_
change an object's state has
changed.
...And 40 more matches
Signaling and video calling - Web APIs
webrtc allows real-time, peer-to-peer, media ex
change between two devices.
... webrtc is a fully peer-to-peer technology for the real-time ex
change of audio, video, and data, with one central caveat.
...through this third server, the two devices can locate one another, and ex
change negotiation messages.
...And 36 more matches
nsIWebProgressListener
inherits from: nsisupports last
changed in gecko 15 (firefox 15 / thunderbird 15 / seamonkey 2.12) nsiwebprogress describes the parent-child relationship of nsiwebprogress instances.
... method overview void onlocation
change(in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri alocation, [optional] in unsigned long aflags); void onprogress
change(in nsiwebprogress awebprogress, in nsirequest arequest, in long acurselfprogress, in long amaxselfprogress, in long acurtotalprogress, in long amaxtotalprogress); void onsecurity
change(in nsiwebprogress awebprogress, in nsirequest arequest, in unsigned long astate); void onstate
change(in nsiwebprogress awebprogress, in nsirequest arequest, in unsigned long astateflags, in nsresult astatus); void onstatus
change(in nsiwebprogress awebprogress, in nsirequest arequest, in nsresult astatus, in wstring amessage); constants state transition flags these flags indicate the vari...
... for any given request, onstate
change() is called once with the state_start flag, zero or more times with the state_transferring flag or once with the state_redirecting flag, and then finally once with the state_stop flag.
...And 35 more matches
Index
the more likely case is that the component uses "unfrozen" interfaces and those interfaces can
change between gecko versions.
... 42 components.utils.isxraywrapper when privileged javascript in gecko accesses objects belonging to less-privileged code (such as untrusted web content), it does so, by default, with "xray vision": a mechanism that filters out certain
changes to the objects that could cause them to behave in unexpected ways.
... 83 status, recent
changes, and plans xpcom no summary!
...And 32 more matches
nsINavHistoryResultObserver
toolkit/components/places/nsinavhistoryservice.idlscriptable lets clients observe
changes to a result as the result updates itself according to bookmark and history system events.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1), this interface replaced the older nsinavhistoryresultviewer interface, which only allowed one client at a time.
... method overview void batching(in boolean atogglemode); void containerclosed(in nsinavhistorycontainerresultnode acontainernode); deprecated since gecko 2.0 obsolete since gecko 11.0 void containeropened(in nsinavhistorycontainerresultnode acontainernode); deprecated since gecko 2.0 obsolete since gecko 11.0 void containerstate
changed(in nsinavhistorycontainerresultnode acontainernode, in unsigned long aoldstate, in unsigned long anewstate); void invalidatecontainer(in nsinavhistorycontainerresultnode acontainernode); void nodeannotation
changed(in nsinavhistoryresultnode anode, in autf8string aannoname); void nodedateadded
changed(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodehistorydetails
changed(in nsinavhistoryresultnode anode, in prtime anewvisitdate, in un...
...And 31 more matches
Gecko info for Windows accessibility vendors
however, exposing the entire dom to external software packages is quite involved, partially because
changes to the dom in firefox must occur on the main thread.
...events such as focus
changes must be tracked through msaa events, rather than dom events.
... gecko also helps determine when to load a new window by firing two event_state_
change's on the root role_document accessible -- the first state
change indicates the document pane is now busy loading.
...And 29 more matches
source-editor.jsm
, [optional] object options); number findnext(boolean awrap); number findprevious(boolean awrap); event management void addeventlistener(string aeventtype, function acallback); void removeeventlistener(string aeventtype, function acallback); undo stack operations boolean canredo(); boolean canundo(); void endcompound
change(); boolean redo(); void resetundo(); void startcompound
change(); boolean undo(); display management operations void focus(); number gettopindex(); boolean hasfocus(); void settopindex(number atopindex); content management operations number getcharcount(); string getindentationstring(); ...
...end); breakpoint management void addbreakpoint(number alineindex, [optional] string acondition); array getbreakpoints(); boolean removebreakpoint(number alineindex); properties attribute type description dirty boolean set this value to false whenever you save the text; the editor will update it to true when the content is
changed.
...in addition, when this value
changes, the "dirty
changed" event is sent.
...And 29 more matches
nsINavHistoryResultViewer
toolkit/components/places/public/nsinavhistoryservice.idlscriptable lets nsinavhistoryresult instances notify places views of
changes in the results.
... 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 / seamonkey 2.1)this feature is obsolete.
... method overview void containerclosed(in nsinavhistorycontainerresultnode acontainernode); void containeropened(in nsinavhistorycontainerresultnode acontainernode); void invalidatecontainer(in nsinavhistorycontainerresultnode acontainernode); void nodeannotation
changed(in nsinavhistoryresultnode anode, in autf8string aannoname); void nodedateadded
changed(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodelastadded
changed(in nsinavhistoryresultnode anode, in prtime anewvalue); void nodehistorydetails
changed(in nsinavhistoryresultnode anode, in prtime anewvisitdate, in unsigned long anewaccesscount); void nod...
...And 28 more matches
Document - Web APIs
has the value null until the style sheet is
changed by setting the value of selectedstylesheetset.
... document.onfullscreen
change is an eventhandler representing the code to be called when the fullscreen
change event is raised.
... document.onreadystate
change represents the event handling code for the readystate
change event.
...And 25 more matches
Python binding for NSS
the (indent, text) pairs allow you to insert the item into a gui tree structure or simply
change the indentation formatting.
...this is primarily so the developers can make
changes to the api as experiece grows with it.
... release information release 1.0.1 release date 2017-02-28 scm tag pynss_release_1_0_1 source download https://ftp.mozilla.org/pub/mozilla.org/security/python-nss/releases/pynss_release_1_0_1/src/
change log add tls 1.3 cipher suites ssl_cipher_info.py now attempts to enable tls 1.3 fix build issue in setup.py.
...And 24 more matches
sslfnc.html
ssl_optionsetdefault
changes the default value of a specified ssl option for all subsequently opened sockets as long as the current application program is running.
...the factory setting for this option (which is the default, unless the application
changes the default) is off (pr_false), which means that the application will not do simultaneous reads and writes.
... description this function
changes the default values for all subsequently opened sockets as long as the current application program is running.
...And 24 more matches
Observer Notifications
if your component requires access to the user profile, or any services which require access to the profile (preferences, bookmarks, and so on) then a common pattern is to register with the nsicategorymanager for the app-startup topic which can be done in the component's registration code, and then in that notification register with the observer service for the profile-after-
change notification.
... starting in firefox 3.5 components can simply register for the profile-after-
change notification in nsicategorymanager.
...see xpcom
changes in gecko 2.0 for details.
...And 24 more matches
nsIDownloadProgressListener
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) to use simply implement this interface in your code, then call nsidownloadmanager.addlistener() to start listening.
... as the states of downloads
change, the methods described here are called by the download manager so your code can take whatever steps it needs to.
... method overview void ondownloadstate
change(in short astate, in nsidownload adownload); void onlocation
change(in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri alocation, in nsidownload adownload); obsolete since gecko 1.9.1 void onprogress
change(in nsiwebprogress awebprogress, in nsirequest arequest, in long long acurselfprogress, in long long amaxselfprogress, in long long acurtotalprogress, in long long amaxtotalprogress, in nsidownload adownload); void onsecurity
change(in nsiwebprogress awebprogress, in nsirequ...
...And 23 more matches
RTCPeerConnection - Web APIs
been set, this is null.peeridentity read only the read-only rtcpeerconnection property peeridentity returns a javascript promise that resolves to an rtcidentityassertion which contains a domstring identifying the remote peer.pendinglocaldescription read only the read-only property rtcpeerconnection.pendinglocaldescription returns an rtcsessiondescription object describing a pending configuration
change for the local end of the connection.
...for details on the difference, see pending and current descriptions in webrtc connectivity.pendingremotedescription read only the read-only property rtcpeerconnection.pendingremotedescription returns an rtcsessiondescription object describing a pending configuration
change for the remote end of the connection.
...the event is sent immediately after the call setremotedescription() and doesn't wait for the result of the sdp negotiation.onconnectionstate
changethe rtcpeerconnection.onconnectionstate
change property specifies an eventhandler which is called to handle the connectionstate
change event when it occurs on an instance of rtcpeerconnection.
...And 22 more matches
ARIA Test Cases - Accessibility
also, as a clever feature for at testing, the firing of events (like event_object_state
change) can be invoked from the examples.
... markup used: role="checkbox" aria-checked="true" or "false" notes: need testcase where aria-checked attribute is removed instead of set to false results: at firefox ie opera safari jaws 9 - - n/a n/a jaws 10 pass fail (
changes not spoken) fail fail voiceover (leopard) n/a n/a - fail window-eyes pass pass fail (unchecked presented as checked, ie exposing incorrect state for no aria-checked attribute) fail fail nvda fail on #2 -- repetitive text spoken, first checkbox toggle speaks incorrect state n/a fail fail zoom (l...
... fail -
changes not spoken fail fail voiceover (leopard) n/a n/a - fail window-eyes pass fail (unchecked presented as checked, ie exposing incorrect state for no aria-checked attribute) fail fail nvda fail -- for
change from mixed to fully checked, nothing spoken n/a fail fail zoom (leopard) pass n/a pass pass zoo...
...And 22 more matches
XUL Events - Archive of obsolete content
xul event reference subpages broadcastthe broadcast event is executed when the attributes of the element (such as a broadcaster) being listened to are
changed.
... the event handler should be placed on an observer.checkboxstate
changethe checkboxstate
change event is executed when the state of a <checkbox> element has
changed.closethe close event is executed when a request has been made to close the window when the user presses the close button.commandthe command event is executed when an element is activated.commandupdatethe commandupdate event is executed when a command update occurs on a <commandset>.
...the default action of the event can be prevented to prevent the popup to appear.popupshownthe popupshown event is executed when a <menupopup>, <panel> or <tooltip> has become visible.radiostate
changethe radiostate
change event is executed when the state of a <radio> element has
changed.value
changethe value
change event is executed when the value of an element, <progress> for example, has
changed.
...And 21 more matches
RDF Modifications - Archive of obsolete content
« previousnext » one of the most useful aspects of using templates with rdf datasources is that when the rdf datasource
changes, for instance a new triple is added, or a triple is removed, the template updates accordingly, adding or removing result output as needed.
...when the datasource is modified, the datasource will notify any observers of the
change.
...you don't need to implement this observer yourself, although you may add an observer to the datasource if you want to be notified when the data
changes.
...And 21 more matches
Index - MDN Web Docs Glossary: Definitions of Web-related terms
8 ascii glossary, infrastructure ascii (american standard code for information inter
change) is one of the most popular coding method used by computers for converting letters, numbers, punctuation and control codes into digital form.
... 47 cms cms, composing, content management system, glossary a cms (content management system) is software that allows users to publish, organize,
change, or remove various kinds of content, not only text but also embedded images, video, audio, and interactive code.
... 76 cipher suite cryptography, glossary, security a cipher suite is a combination of a key ex
change algorithm, authentication method, bulk encryption cipher, and message authentication code.
...And 21 more matches
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
rue); lockpref("ldap_2.servers.ldapint.auth.savepassword", true); lockpref("ldap_2.servers.ldapint.description", "ldap int"); lockpref("ldap_2.servers.ldapint.filename", "abook-1.mab"); lockpref("ldap_2.servers.ldapint.uri", "ldap://ldap1.int-evry.fr:389/ou=people,dc=int-evry,dc=fr??sub"); lockpref("ldap_2.servers.history.filename", "history.mab"); lockpref("ldap_2.servers.history.replication.last
changenumber", 0); lockpref("ldap_2.servers.pab.filename", "abook.mab"); lockpref("ldap_2.servers.pab.replication.last
changenumber", 0); //account lockpref("mail.account.account1.server", "server1"); lockpref("mail.account.account2.identities", "id1"); lockpref("mail.account.account2.server", "server2"); lockpref("mail.accountmanager.accounts", "account1,account2"); lockpref("mail.accountmanager.defaul...
... my tests were on windows vista, and i noticed at least one difference, it is that paths
changed; now the profile is in (for my procacci user sample): c:\users\procacci\appdata\roaming\thunderbird\profiles\v6we4uku.default start in debug mode in comand line interface: debug with displayerror() here's the result, i used the displayerror() method ( not the best way :-( see bug 206294 ) to show environment and ldap variables in order to check that it worked fine.
...bug 206294: ------- comment #14 from daniel wang 2003-11-06 09:06 pdt [reply] ------- jehan procaccia, you need to
change 5.8 to reflect what i said in comment 21.
...And 20 more matches
ui/button/toggle - Archive of obsolete content
toggle buttons have two extra features: they emit a
change event when clicked, as well as a click event.
... usage creating buttons to create a button you must give it an id, an icon, and a label: var { togglebutton } = require("sdk/ui/button/toggle"); var button = togglebutton({ id: "my-button", label: "my button", icon: { "16": "./firefox-16.png", "32": "./firefox-32.png" }, on
change: function(state) { console.log(state.label + " checked state: " + state.checked); } }); by default, the button appears in the firefox toolbar: however, users can move it to the firefox menu panel: badged buttons new in firefox 36.
...by default the badge's color is red, but you can set your own color using the badgecolor property, specified as a css <color> value: var { togglebutton } = require("sdk/ui/button/toggle"); var button = togglebutton({ id: "my-button1", label: "my button1", icon: "./icon-16.png", on
change:
changed, badge: 0, badgecolor: "#00aaaa" }); function
changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying multiple icons you can specify just one icon, or multiple icons in different sizes.
...And 18 more matches
Chapter 5: Let's build a Firefox extension - Archive of obsolete content
setting up your development environment in order to develop (and test) extensions in a most convenient way it is recommended to apply some
changes to firefox.
...
change your preferences for more efficient development before you get to work developing your extension, you’ll want to
change some of your firefox preferences.
... true javascript.options.strict (present in firefox 3.5+) enforces strict error output from javascript true table 1: preferences to set for developing extensions to make these
changes, start your development profile, type about:config into firefox’s location bar and open the preferences window; find the preferences listed in table 1 and double-click on them to set them accordingly.
...And 18 more matches
React interactivity: Events and state - Learn web development
previous overview: client-side javascript frameworks next with our component plan worked out, it's now time to start updating our app from a completely static ui to one that actually allows us to interact and
change things.
...in form.js,
change your very first line so that it reads like this: import react, { usestate } from "react"; this allows us to import the usestate() function by itself, and utilize it anywhere in this file.
... <input type="text" id="new-todo-input" classname="input input__lg" name="text" autocomplete="off" value={name} />
change "use hooks!" to an empty string once you're done; this is what we want for our initial state.
...And 18 more matches
AddonManager
startup
change types these constants represent the lists of types of
changes that can occur to add-ons during startup; they're used with the getstartup
changes(), addstartup
change(), and removestartup
change() methods.
... constant description startup_
change_installed a list of add-ons that were detected as newly-installed during application startup.
... startup_
change_
changed a list of add-ons that were detected as having
changed during startup.
...And 18 more matches
Application Translation with Mercurial
mozilla-aurora.hg) from https://ftp.mozilla.org/pub/mozilla.org/firefox/bundles/ the file is not small, but after initially downloading it, you only need to download the latest
changes in the future.
...for a windows user, it looks like c:\users\myname , depending on your windows version: cd /c/users/myname now list all the files here: ls -a if there is no file called .hgrc , create it with > .hgrc this file stores your general mercurial settings (mercurial is the tool which manages the source code and its history of
changes).
...other localizers will likely have done
changes to the translation, either adding new texts, removing obsolete ones or improving the current texts.
...And 18 more matches
Intersection Observer API - Web APIs
the intersection observer api provides a way to asynchronously observe
changes in the intersection of a target element with an ancestor element or with a top-level document's viewport.
... the intersection observer api lets code register a callback function that is executed whenever an element they wish to monitor enters or exits another element (or the viewport), or when the amount by which the two intersect
changes by a requested amount.
...nd usage the intersection observer api allows you to configure a callback that is called: (1) whenever one element, called the target, intersects either the device viewport or a specified element; for the purpose of this api, this is called the root element or root (2) and whenever the observer is asked to watch a target for the very first time typically, you'll want to watch for intersection
changes with regard to the element's closest scrollable ancestor, or, if the element isn't a descendant of a scrollable element, the viewport.
...And 17 more matches
Creating a Skin - Archive of obsolete content
for example,
change references of 'classic/1.0' to 'blueswayedshoes/1.0'.
... adding style rules first, let's decide what kind of
changes we want to make.
... we'll make some simple color
changes, modify the button styles, and modify the spacing a bit.
...And 16 more matches
Accessibility/LiveRegionDevGuide
as always, we're open to questions and suggestions for
changes in community forums.
... event types the table for web page mutation event types lists the two major event types associated with live regions, namely text-
changed and object
changed events.
... object
changed the object
changed events are slightly different in at-spi and iaccessible2.
...And 16 more matches
Browser API
api extensions: the api includes several new methods and events to manipulate and listen for
changes to the embedded content's state, interited by the htmliframeelement interface.
... htmliframeelement.goback()
changes the location of the <iframe> for the previous location in its browsing history.
... htmliframeelement.goforward()
changes the location of the <iframe> for the next location in its browsing history.
...And 16 more matches
SpiderMonkey 1.8.5
many jsapi types, functions, and callback signatures have
changed, though most of them still have the same names and do the same things.
... applications will need significant
changes, but most of those
changes will be detected by the c/c++ compiler, so they are easy to detect and updating the code is a fairly straightforward job.
... here is a list of the most significant
changes.
...And 16 more matches
Notes on HTML Reflow - Archive of obsolete content
these are dispatched directly from the presentation shell (e.g., nsipresshell::style
changereflow), and affect the entire frame tree.
... incremental, when something in the frame tree
changes; for example, when more content is read from the network, or some script manipulates the dom.
...during an incremental reflow, a frame can assume that none of the constraints computed "from above" (for example, available width) have
changed; instead, something "within" the frame has
changed, which may have bottom-up impact to the frame hierarchy.
...And 15 more matches
Index - Archive of obsolete content
218 on
change needshelp, reference, référence(2), xul attributes, xul reference an on
change attribute is an event listener to the object for the event
change.
... a
change event is fired in different ways for different xul input elements as listed below: 219 onclick xul attributes, xul reference no summary!
... 375 textbox.on
change xul attributes, xul reference no summary!
...And 15 more matches
Deploying our app - Learn web development
netlify, amongst other things, also allows you to run pre-deployment tasks, which in our case means that all the production code build processes can be performed inside of netlify and if the build is successful, the website
changes will be deployed.
...if all is well, we get a live
change deployed automatically.
... this is where our code, github, and netlify need to be set up to talk to one another, so that each time we update our github code repository, netlify will automatically pick up the
changes, run the build tasks, and finally release a new update.
...And 15 more matches
Localization content best practices
when you have to
change a key id, adding a progressive number to the existing key should always be used as a last resort.
... for example, suppose this string needs to be
changed from "event" to "add new event": new-event-header = event add-new-event-header is definitely a better choice for the new string than new-event-header1.
...this would waste everybody's time and create unnecessary frustration: localizers have to translate strings that are destined to
change, developers will need to use new ids later to update them.
...And 15 more matches
WebRTC API - Web APIs
webrtc (web real-time communication) is a technology which enables web applications and sites to capture and optionally stream audio and/or video media, as well as to ex
change arbitrary data between browsers without requiring an intermediary.
... webrtc concepts and usage webrtc serves multiple purposes; together with the media capture and streams api, they provide powerful multimedia capabilities to the web, including support for audio and video conferencing, file ex
change, screen sharing, identity management, and interfacing with legacy telephone systems including support for sending dtmf (touch-tone dialing) signals.
... you can also use the connection between two peers to ex
change arbitrary binary data using the rtcdatachannel interface.
...And 15 more matches
Working with Svelte stores - Learn web development
components can subscribe to stores and receive notifications when their values
change.
... a store is simply an object with a subscribe() method that allows interested parties to be notified whenever the store value
changes, and an optional set() method that allows you to set new values for the store.
...whenever the value of the store
changes, the callback function will be called with the new value as its parameter.
...And 14 more matches
sslerr.html
it can be due to a server being misconfigured to use a non-rsa certificate with the rsa key ex
change algorithm.
...possible causes include: (a) both ssl2 and ssl3 are disabled, (b) all the individual ssl cipher suites are disabled, or (c) the socket is configured to handshake as a server, but the certificate associated with that socket is inappropriate for the key ex
change algorithm selected.
... "no cipher suites are present and enabled in this program." possible causes: (a) all cipher suites have been configured to be disabled, (b) the only cipher suites that are configured to be enabled are those that are disallowed by cipher export policy, (c) the socket is configured to handshake as a server, but the certificate associated with that socket is inappropriate for the key ex
change algorithm selected.
...And 14 more matches
SpiderMonkey 1.8.7
many jsapi types, functions, and callback signatures have
changed, though most of them still have the same names and do the same things.
... applications will need significant
changes, but most of those
changes will be detected by the c/c++ compiler, so they are easy to detect and updating the code is a fairly straightforward job.
... here is a list of the most significant
changes.
...And 14 more matches
nsINavBookmarkObserver
toolkit/components/places/nsinavbookmarksservice.idlscriptable this interface is an observer for bookmark
changes.
... 1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamonkey 2.18) method overview void onbeforeitemremoved(in long long aitemid, in unsigned short aitemtype, in long long aparentid, in acstring aguid, in acstring aparentguid); obsolete since gecko 21.0 void onbeginupdatebatch(); void onendupdatebatch(); void onfolderadded(in print64 folder, in print64 parent, in print32 index); obsolete since gecko 1.9 void onfolder
changed(in print64 folder, in acstring property); obsolete since gecko 1.9 void onfoldermoved(in print64 folder, in print64 oldparent, in print32 oldindex, in print64 newparent, in print32 newindex); obsolete since gecko 1.9 v...
...oid onfolderremoved(in print64 folder, in print64 parent, in print32 index); obsolete since gecko 1.9 void onitemadded(in long long aitemid, in long long aparentid, in long aindex, in unsigned short aitemtype, in nsiuri auri, in autf8string atitle, in prtime adateadded, in acstring aguid, in acstring aparentguid); void onitem
changed(in long long aitemid, in acstring aproperty, in boolean aisannotationproperty, in autf8string anewvalue, in prtime alastmodified, in unsigned short aitemtype, in long long aparentid, in acstring aguid, in acstring aparentguid); void onitemmoved(in long long aitemid, in long long aoldparentid, in long aoldindex, in long long anewparentid, in long anewindex, in unsigned short aitemtype, in acstring aguid, in acstring aoldparentguid, in acstri...
...And 14 more matches
JavaScript Client API - Archive of obsolete content
tracker entity that tracks
changes to data.
... each engine has a corresponding tracker which listens for
changes to data or events it is interested in.
...depending of what type of data you're working with, you might already have guids built into your data that you can make use of (note that guids must be allowed to
change and should be url friendly).
...And 13 more matches
Broadcasters and Observers - Archive of obsolete content
« previousnext » there may be times when you want several elements to respond to events or
changes of state easily.
... <broadcasterset> <broadcaster id="isoffline" label="offline"/> </broadcasterset> any elements that are watching the broadcaster will be modified automatically whenever the broadcaster has its label attribute
changed.
...if the value of the label attribute on the broadcaster
changes, the observers will update the values of their label attributes also.
...And 13 more matches
The Implementation of the Application Object Model - Archive of obsolete content
they are likely to
change following the first release of nglayout, and when they do, anyone that implemented one of those interfaces will have to
change as well in order to upgrade to the new world.
... statement #1 the two points raised in the previous two paragraphs, namely (1) redundancy of methods in the interfaces as well as a likely code redundancy in the implementation of some of those methods, and (2) the desire to be insulated from the layout dll should those interfaces
change, imply that a layer needs to exist between the pluggable content and the content tree interfaces.
...furthermore, should the content tree interfaces
change, only this layer would need to be updated.
...And 13 more matches
Introduction to SSL - Archive of obsolete content
the ssl handshake protocol involves using the ssl record protocol to ex
change a series of messages between an ssl-enabled server and an ssl-enabled client when they first establish an ssl connection.
... this ex
change of messages is designed to facilitate the following actions: authenticate the server to the client.
... key-ex
change algorithms like kea and rsa key ex
change govern the way in which the server and client determine the symmetric keys they will both use during an ssl session.
...And 13 more matches
Using the Web Animations API - Web APIs
the css version here’s a tumbling animation written in css showing alice falling down the rabbit hole that leads to wonderland (see the full code on codepen): notice that the background moves, alice spins, and her color
changes at an offset from her spinning.
...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.
...And 13 more matches
@font-feature-values - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 9.1webview android no support nochrome android no support nofirefox android ...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 9.3samsung internet android no support no@annotationchrome no support noedge no support nofirefox full support 34 ...
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 9.1webview android no support nochrome android no support nofirefox android full support 34 full support 34 full sup...
...And 13 more matches
<input type="color"> - HTML: Hypertext Markup Language
value a 7-character domstring specifying a <color> in lower-case hexadecimal notation events
change and input supported common attributes autocomplete and list idl attributes list and value methods select() value the value of an <input> element of type color is always a domstring which contains a 7-character string specifying an rgb color in hexadecimal format.
...because users can write colors in many different ways (such as rgb(255, 255, 0)), one way to work around this is to set a pattern attribute equal to either #[0-9a-f]{6} or #[0-9a-fa-f]{6} (preferably the latter because some users may not expect a different result with just a letter-case
change) and set a placeholder attribute equal to a color representing the expected format of the user's input, such as #ff0000.
... tracking color
changes as is the case with other <input> types, there are two events that can be used to detect
changes to the color value: input and
change.
...And 13 more matches
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
version 2 contains a lot of
changes regarding the last stable version svg 1.1.
... those
changes are listed below including their support status within mozilla applications.
... general
change notes length attribute and indexed property for list interfaces implementation status unknown <script> element in content model of all elements implementation status unknown initialize(), appenditem(), replaceitem(), and insertitembefore() on list objects making a copy of any list item being inserted that is already in another list implementation status unknown crossorigin attribute for <image> and <script> elements not implemented yet (at least for <image>; bug 1240357) rendering model
change notes svg root and <foreignobject> not overflow:hidden in ua style sheet implementation status unknown allow overflow: auto; to clip and show scroll bars implementation status u...
...And 13 more matches
Eclipse CDT
keeping the index up-to-date as the source
changes from day-to-day, you'll want to update the index to keep the code assistance working well.
... since the compiler options used to build the source
change relatively infrequently, the "build" step above doesn't need to be rerun all that often.
... rebuilding the index itself is required much more frequently since the source
changes more frequently.
...And 12 more matches
Performance best practices for Firefox front-end engineers
always keep in mind the side effects your
changes may have, from blocking other tasks, to interfering with other user interface elements.
...this allows you to put all of your dom writes (most importantly, anything that could
change the size or position of things in the dom) just before the style and layout steps of the pipeline, combining all the style and layout calculations into a single batch so it all happens once, in a single frame tick, instead of across multiple frames.
... javascript code might, for example,
change dom node attributes (either directly or by adding or removing classes from elements), and can also add, remove, or delete dom nodes.
...And 12 more matches
Finishing the Component
this puts you in the same situation as many developers using mozilla - you want to use some specific functionality, but the interfaces seem to
change on a daily basis.
...if you use "stuff" that isn't frozen, that stuff is subject to
change in future versions of gecko.
... if you want to be protected against
changes in gecko, you must only use interfaces and apis that are clearly marked as frozen.
...And 12 more matches
Mail event system
mozilla mail requires an event system to notify different subsystems that data has
changed.
...the folder pane needs to know that this
changed so that it can update the message count so the user can see it.
... nsifolderlistener.idl is an interface that an object can implement if it is interested in listening to
changes on single folder or on all folders.
...And 12 more matches
Window - Web APIs
window.ondevicelight an event handler property for any ambient light levels
changes window.ondevicemotion called if accelerometer detects a
change (for mobile devices) window.ondeviceorientation called when the orientation is
changed (for mobile devices) window.ondeviceorientationabsolute an event handler property for any device orientation
changes.
... globaleventhandlers.on
change an event handler property for
change events on the window.
... windoweventhandlers.onhash
change an event handler property for hash
change events on the window; called when the part of the url after the hash mark ("#")
changes.
...And 12 more matches
Implementing a Microsoft Active Accessibility (MSAA) Server - Accessibility
they need to know about focus
changes and other events, and it needs to know what objects are contained in the current document or dialog box.
... using this information, a screen reader will speak out loud important
changes to the document or ui, and allow the user to track where they navigate.
... a set of system messages that confer accessibility-related events such as focus
changes,
changes to document content and state
changes in ui objects like checkboxes.
...And 12 more matches
JavaScript modules - JavaScript
to
change preferences in firefox, visit about:config.ie no support noopera full support 48safari full support 10.1webview android full support 61chrome android full support 61firefox a...
...to
change preferences in firefox, visit about:config.opera android full support 45safari ios full support 10.3samsung internet android full support 8.0nodejs full support 13.2.0notes full support 13.2.0notes notes modules must either have a filename ending in .mjs, or the nea...
...to
change preferences in firefox, visit about:config.ie no support noopera full support 50safari full support 11.1webview android full support 63chrome android full support 63firefox a...
...And 12 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.
...rearranging the tab order you can
change the order in which elements are focused when the user presses the tab key by adding a tabindex attribute to an element.
...you can respond to focus
changes by adding an onfocus or onblur attribute on an element.
...And 11 more matches
Introduction to events - Learn web development
note: event handlers are sometimes called event listeners — they are pretty much inter
changeable for our purposes, although strictly speaking, they work together.
...in the following example, we have a single <button>, which when pressed, makes the background
change to a random color: <button>
change color</button> button { margin: 10px }; the javascript looks like so: const btn = document.queryselector('button'); function random(number) { return math.floor(math.random() * (number+1)); } btn.onclick = function() { const rndcol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')'; document.body.style.backgroundcolor = rndcol; } i...
...the following works just the same: const btn = document.queryselector('button'); function bg
change() { const rndcol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')'; document.body.style.backgroundcolor = rndcol; } btn.onclick = bg
change; there are many different event handler properties available.
...And 11 more matches
Advanced Svelte: Reactivity, lifecycle, accessibility - Learn web development
these frameworks, by default, basically re-run all our javascript on every
change against this virtual dom, and apply different methods to cache expensive calculations and optimize execution.
... sometimes svelte cannot detect
changes to variables being watched.
... remember that to tell svelte that a variable has
changed, you have to assign it a new value.
...And 11 more matches
nsIMsgDatabase
last
changed in gecko 1.9 (firefox 3) inherits from: nsidb
changeannouncer 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 getmsghdrforkey(in nsmsgkey key); nsimsgdbhdr getmsghdrformessageid(in string messageid); boolean containskey(in nsmsgkey key); nsimsgdbhdr createnewhdr(in nsmsgkey key)...
... nsisimpleenumerator enumeratemessages(); nsisimpleenumerator enumeratethreads(); void synccounts; nsimsgthread getthreadcontainingmsghdr(in nsimsgdbhdr msghdr); void markhdrread(in nsimsgdbhdr msghdr, in boolean bread, in nsidb
changelistener instigator); void markhdrreplied(in nsimsgdbhdr msghdr, in boolean breplied, in nsidb
changelistener instigator); void markhdrmarked(in nsimsgdbhdr msghdr, in boolean mark,in nsidb
changelistener instigator); void markmdnneeded(in nsmsgkey key, in boolean bneeded,in nsidb
changelistener instigator); boolean ismdnneeded(in nsmsgkey key); void markmdnsent(in nsmsgkey key, in boolean ...
...bneeded, in nsidb
changelistener instigator); boolean ismdnsent(in nsmsgkey key); void markread(in nsmsgkey key, in boolean bread, in nsidb
changelistener instigator); void markreplied(in nsmsgkey key, in boolean breplied, in nsidb
changelistener instigator); void markforwarded(in nsmsgkey key, in boolean bforwarded, in nsidb
changelistener instigator); void markhasattachments(in nsmsgkey key, in boolean bhasattachments, in nsidb
changelistener instigator); void markthreadread(in nsimsgthread thread, in nsidb
changelistener instigator, in nsmsgkeyarrayptr thosemarked); native code only!
...And 11 more matches
WebIDL bindings
if you do,
change to using // ns_impl_cycle_collection_wrappercache.
...the spec on these is likely to
change drastically anyway.
...this means we don't know anything about the return value's dependencies and hence can't rearrange other code that might
change values around the method or attribute.
...And 11 more matches
BasicCardResponse - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...And 11 more matches
BluetoothCharacteristicProperties - Web APIs
examples the following example shows how tell if a gatt characteristic supports value
change notifications.
... let device = await navigator.bluetooth.requestdevice({ filters: [{services: ['heart_rate']}] }); let gatt = await device.gatt.connect(); let service = await gatt.getprimaryservice('heart_rate'); let characteristic = await service.getcharacteristic('heart_rate_measurement'); if (characteristic.properties.notify) { characteristics.addeventlistener('characteristicvalue
changed', function(event) { console.log(`received heart rate measurement: ${event.target.value}`); } await characteristic.startnotifications(); } specifications specification status comment web bluetooththe definition of 'bluetoothcharacteristicproperties' in that specification.
...to
change preferences in chrome, visit chrome://flags.
...And 11 more matches
Fullscreen API - Web APIs
in other words, you cannot specify event handlers for fullscreen
change and fullscreenerror in the html content.
... event handlers on documents document.onfullscreen
change an event handler for the fullscreen
change event that's sent to a document when that document is placed into full-screen mode, or when that document exits full-screen mode.
... event handlers on elements element.onfullscreen
change an event handler which is called when the fullscreen
change event is sent to the element, indicating that the element has been placed into, or removed from, full-screen mode.
...And 11 more matches
Using DTMF with WebRTC - Web APIs
each time a tone is sent, the rtcpeerconnection receives a tone
change event with a tone property specifying which tone finished playing, which is an opportunity to update interface elements, for example.
... when the tone buffer is empty, indicating that all the tones have been sent, a tone
change event with its tone property set to "" (an empty string) is delivered to the connection object.
... function connectanddial() { callerpc = new rtcpeerconnection(); hasaddtrack = (callerpc.addtrack !== undefined); callerpc.onicecandidate = handlecallericeevent; callerpc.onnegotiationneeded = handlecallernegotiationneeded; callerpc.oniceconnectionstate
change = handlecallericeconnectionstate
change; callerpc.onsignalingstate
change = handlecallersignalingstate
changeevent; callerpc.onicegatheringstate
change = handlecallergatheringstate
changeevent; receiverpc = new rtcpeerconnection(); receiverpc.onicecandidate = handlereceivericeevent; if (hasaddtrack) { receiverpc.ontrack = handlereceivertrackevent; } else { receiverpc.onaddstream ...
...And 11 more matches
Migrating from webkitAudioContext - Web APIs
as the specification evolved and
changes were made to the spec, some of the old implementation pieces were not removed from the webkit (and blink) implementations due to backwards compatibility reasons.
... note: there is a library called webkitaudiocontext monkeypatch, which automatically fixes some of these
changes to make most code targetting webkitaudiocontext to work on the standards based audiocontext out of the box, but it currently doesn't handle all of the cases below.
...
changes to the creator methods three of the creator methods on webkitaudiocontext have been renamed in audiocontext.
...And 11 more matches
ARIA live regions - Accessibility
using javascript, it is possible to dynamically
change parts of a page without requiring the entire page to reload — for instance, to update a list of search results on the fly, or to display a discreet alert or notification which does not require user interaction.
... while these
changes are usually visually apparent to users who can see the page, they may not be obvious to users of assistive technologies.
... aria live regions fill this gap and provide a way to programmatically expose dynamic content
changes in a way that can be announced by assistive technologies.
...And 11 more matches
Video player styling basics - Developer guides
html markup there are a few
changes that were made to the html markup shown in the previous article.
...this has now been
changed to use a data-state attribute, which this code already uses to handle its fullscreen implementation.
...'); } when the data-state of the button is
changed, the appropriate image will also be
changed.
...And 11 more matches
HTTP Index - HTTP
2 a typical http session http in client-server protocols, like http, sessions consist of three phases: 3 an overview of http html, http, overview, webmechanics, l10n:priority http isthe foundation of any data ex
change on the web and it is a client-server protocol, which means requests are initiated by the recipient, usually the web browser.
...http has evolved from an early protocol to ex
change files in a semi-trusted laboratory environment, to the modern maze of the internet, now carrying images, videos in high resolution and 3d.
... 14 configuring servers for ogg media audio, http, media, ogg, video this guide covers a few server configuration
changes that may be necessary for your web server to correctly serve ogg media files.
...And 11 more matches
Progress Listeners - Archive of obsolete content
example create an object which implements nsiwebprogresslistener: const state_start = ci.nsiwebprogresslistener.state_start; const state_stop = ci.nsiwebprogresslistener.state_stop; var mylistener = { queryinterface: xpcomutils.generateqi(["nsiwebprogresslistener", "nsisupportsweakreference"]), onstate
change: function(awebprogress, arequest, aflag, astatus) { // if you use mylistener for more than one tab/window, use // awebprogress.domwindow to obtain the tab/window which triggers the state
change if (aflag & state_start) { // this fires when the load event is initiated } if (aflag & state_stop) { // this fires when the load finishes ...
... } }, onlocation
change: function(aprogress, arequest, auri) { // this fires when the location bar
changes; that is load event is confirmed // or when the user switches tabs.
... if you use mylistener for more than one tab/window, // use aprogress.domwindow to obtain the tab/window which triggered the
change.
...And 10 more matches
Search Extension Tutorial (Draft) - Archive of obsolete content
changing default search setting from extensions many add-ons, for monetization or other reasons,
change several search-related settings at install time.
...due to the large volume of user complaints regarding hidden settings being
changed against their will, and not being restored after the add-ons responsible are disabled, mozilla will take any steps necessary to mitigate the impact of offending add-ons.
...the most technically sound method of achieving this, and the only acceptable way of changing preferences such that they are automatically restored on add-on uninstall, is to make such
changes in the default preference branch, as explained below.
...And 10 more matches
Layout System Overview - Archive of obsolete content
this paged presentation presents several challenges not present in the galley presentation, namely how to break up elements that are larger than a single page, and how to handle
changes to page dimensions.
...another responsibility of layout is to manage dynamic
changes to the content model,
changes that occur after the document has been loaded and (possibly) presented.
... these dynamic
changes are caused by manipulations of the content model via the dom (generally through javascript).
...And 10 more matches
Custom toolbar button - Archive of obsolete content
change the text between double-quote characters on these three lines.
...
change the text between double-quote characters on these two lines.
... if necessary, uninstall the button and start again, this time without making any
changes to the files.
...And 10 more matches
Table Reflow Internals - Archive of obsolete content
style
changes through the dom - javascript, browser
change font (ctrl+/-), a preference
changes, etc.
...resize - reflowee gets a
change in available space only.
...incremental - has a reflow path (tree) where each node has a command with a target frame, reflow command types are: dirty - something
changed inside a target (e.g.
...And 10 more matches
Mozilla’s UAAG evaluation report
(p1) c can be
changed through preferences, zooming or user style sheet.
... zooming can be controlled via hotkeys ctrl+plus and ctrl+minus the prefs are at preferences, appearances, fonts there is also a hidden pref line that can be added to prefs.js, if you just want to
change the minimum font size for a certain font: user_pref("font.minimum-size.x-western", newfontsizeinpoints); for other i18n charsets,
change x-western to x-central-euro, x-cyrillic, x-unicode, x-user-def, x-baltic, el, tr, he, ar, th, ja, zh-cn or zh-tw 4.2 configure font family.
... (p1) c can be
changed through preferences or user style sheet the prefs are at preferences, appearances, fonts 4.3 configure text colors.
...And 10 more matches
Listening to events on all tabs
removing a listener to remove a previously installed progress listener, call removetabsprogresslistener(): gbrowser.removetabsprogresslistener(myprogresslistener); implementing a listener the listener object itself has five methods it can implement to handle various events: onlocation
change called when the uri of the document displayed in the tab
changes.
... void onlocation
change( nsidomxulelement abrowser, nsiwebprogress awebprogress, nsirequest arequest, nsiuri alocation [optional] in unsigned long aflags ); parameters abrowser the browser representing the tab whose location
changed.
... aflags optional: this is a value which explains the situation or the reason why the location has
changed.
...And 10 more matches
Release phase
otherwise, in order to be able to make any
changes to the localization files, you will need to clone the repository on your local machine and work in the local clone.
...phasized line): [paths] default = hg.mozilla.org/releases/l10n-central/x-testing default-push = ssh://hg.mozilla.org/releases/l10n-central/x-testing if you haven't already cloned the remote repository, enter this command: hg clone ssh://hg.mozilla.org/releases/l10n-central/x-testing mercurial will let you know that it's cloning the repository: destination directory: x-testing requesting all
changes adding
changesets adding manifests adding file
changes added 4
changesets with 242
changes to 239 files updating to branch default 239 files updated, 0 files merged, 0 files removed, 0 files unresolved the default push url is the same as the default pull url (i.e., ssh://hg.mozilla.org/releases/l10n-central/x-testing).
...keep in mind that the hg commit command will save your
changes locally (in the local clone).
...And 10 more matches
nsIMsgFolder
void emptytrash(in nsimsgwindow amsgwindow, in nsiurllistener alistener); void rename(in astring name, in nsimsgwindow msgwindow); void renamesubfolders( in nsimsgwindow msgwindow, in nsimsgfolder oldfolder); astring generateuniquesubfoldername(in astring prefix,in nsimsgfolder otherfolder); void updatesummarytotals(in boolean force); void summary
changed(); long getnumunread(in boolean deep); long gettotalmessages(in boolean deep); void clearnewmessages(); void clearrequirescleanup(); void setflag(in unsigned long flag); void clearflag(in unsigned long flag); boolean getflag(in unsigned long flag); void toggleflag(in unsigned long flag); void onflag
change(in unsigne...
..., in nsimsgwindow window); nsimsgfolder getchildwithuri(in acstring uri, in boolean deep, in boolean caseinsensitive); void downloadallforoffline(in nsiurllistener listener, in nsimsgwindow window); void enablenotifications(in long notificationtype, in boolean enable, in boolean dbbatching); boolean iscommandenabled(in acstring command); boolean matchor
changefilterdestination(in nsimsgfolder folder,in boolean caseinsensitive); boolean confirmfolderdeletionforfilter(in nsimsgwindow msgwindow); void alertfilter
changed(in nsimsgwindow msgwindow); void throwalertmsg(in string msgname, in nsimsgwindow msgwindow); astring getstringwithfoldernamefrombundle(in string msgname); void notifycompactcompleted(); ...
...lue); boolean isancestorof(in nsimsgfolder folder); boolean containschildnamed(in astring name); nsimsgfolder getchildnamed(in astring aname); nsimsgfolder findsubfolder(in acstring escapedsubfoldername); void addfolderlistener(in nsifolderlistener listener); void removefolderlistener(in nsifolderlistener listener); void notifyproperty
changed(in nsiatom property, in acstring oldvalue, in acstring newvalue); void notifyintproperty
changed(in nsiatom property, in long oldvalue, in long newvalue); void notifyboolproperty
changed(in nsiatom property, in boolean oldvalue, in boolean newvalue); void notifypropertyflag
changed(in nsimsgdbhdr item, in nsiatom property, in unsigned long oldvalue, in unsigned long newva...
...And 10 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 / seamonkey 2.11) implemented by: @mozilla.org/browser/nav-bookmarks-service;1.
... to use this service, use: var navbookmarksservice = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.interfaces.nsinavbookmarksservice); method overview void addobserver(in nsinavbookmarkobserver observer, in boolean ownsweak); void beginupdatebatch(); obsolete since gecko 1.9 void
changebookmarkuri(in long long aitemid, in nsiuri anewuri); long long createdynamiccontainer(in long long aparentfolder, in autf8string aname, in astring acontractid, in long aindex); note: renamed from createcontainer in gecko 1.9 obsolete since gecko 13.0 long long createfolder(in long long aparentfolder, in autf8string name, in long index); void endupdatebatch(); obsolete since gecko 1.9 ...
... beginupdatebatch() obsolete since gecko 1.9 (firefox 3) causes observers to be notified of a beginupdatebatch when a lot of things are about to
change.
...And 10 more matches
AudioParam - Web APIs
an audioparam can be set to a specific value or a
change in value, and can be scheduled to happen at a specific time and following a specific pattern.
... each audioparam has a list of events, initially empty, that define when and how values
change.
... when this list is not empty,
changes using the audioparam.value attributes are ignored.
...And 10 more matches
EventTarget.addEventListener() - Web APIs
for example, an event handler callback that can be used to handle both fullscreen
change and fullscreenerror might look like this: function eventhandler(event) { if (event.type == 'fullscreen
change') { /* handle a full screen toggle */ } else /* fullscreenerror */ { /* handle a full screen toggle error */ } } safely detecting option support in older versions of the dom specification, the third parameter of addeventlistener() was a boolean value indicating whether or ...
...rather than adding more parameters to the function (complicating things enormously when dealing with optional values), the third parameter was
changed to an object that can contain various properties defining the values of options to configure the process of removing the event listener.
... html <table id="outside"> <tr><td id="t1">one</td></tr> <tr><td id="t2">two</td></tr> </table> javascript // function to
change the content of t2 function modifytext() { const t2 = document.getelementbyid("t2"); if (t2.firstchild.nodevalue == "three") { t2.firstchild.nodevalue = "two"; } else { t2.firstchild.nodevalue = "three"; } } // add event listener to table const el = document.getelementbyid("outside"); el.addeventlistener("click", modifytext, false); in this code, modifytext() is a listener for c...
...And 10 more matches
Using IndexedDB - Web APIs
creating or updating the version of the database when you create a new database or increase the version number of an existing database (by specifying a higher version number than you did previously, when opening a database), the onupgradeneeded event will be triggered and an idbversion
changeevent object will be passed to any onversion
change event handler set up on request.result (i.e., db in the example).
...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.
...next, you need to decide if you're going to make
changes to the database or if you just need to read from it.
...And 10 more matches
Timing element visibility with the Intersection Observer API - Web APIs
if you
change this to -1, it will appear on the right (although some other elements will need some adjustments made to their margins to get the spacing just right).
... setting up to set things up, we run the startup() function below when the page loads: window.addeventlistener("load", startup, false); function startup() { contentbox = document.queryselector("main"); document.addeventlistener("visibility
change", handlevisibility
change, false); let observeroptions = { root: null, rootmargin: "0px", threshold: [0.0, 0.75] }; adobserver = new intersectionobserver(intersectioncallback, observeroptions); buildcontents(); refreshintervalid = window.setinterval(handlerefreshinterval, 1000); } first, a reference to the content wrapping <main> element is obtained, s...
...then we set up an event listener for the visibility
change event.
...And 10 more matches
WebRTC connectivity - Web APIs
it’s any sort of channel of communication to ex
change information before setting up a connection, whether by email, post card or a carrier pigeon...
... the information we need to ex
change is the offer and answer which just contains the sdp mentioned below.
...this information is ex
changed and stored using session description protocol (sdp); if you want details on the format of sdp data, you can find it in rfc 2327.
...And 10 more matches
WAI ARIA Live Regions/API Support - Developer guides
firefox 3 contains important improvements to the way the mozilla engine exposes live
changes in a document.
...as always, we're open to questions and suggestions for
changes in community forums.
... events fired for web page mutations what
changed in document?
...And 10 more matches
Preferences - Archive of obsolete content
using preference observers
changes a user makes to your extension's preferences, such as through an options dialog, may not take effect until the browser is restarted (e.g., if you have initialized local variables when the browser loads).
... you may wish for such
changes to be applied immediately in your extension.
... in this case, you can use the nsiprefbranch2 interface to "listen" for
changes to preferences in a certain branch.
...And 9 more matches
Getting Started - Archive of obsolete content
now all of the css and images are extracted, but if you make some
changes and run mozilla as it is, you will not see them because it's still set to look at the files in the jar files.
...on every line that references <code>classic.jar we need to make some
changes (there are about 5 lines).
...the default widgets are defined here, and anything that is modified will
change throughout mozilla.
...And 9 more matches
Style System Overview - Archive of obsolete content
dynamic
changes to content framemanager::reresolvestylecontext destroys and recreates style contexts for existing frames (rule node pointer immutable).
... dynamic
changes to content reresolvestylecontext calculates differences (repaint, reflow, reframe, etc.) between style old and new style contexts and does appropriate cleanup it uses nsistylecontext::calcstyledifference, which only computes differences for structs that have been requested.
... (i'll call this the data-struct-based hint mechanism.) caller of nsiframemanager::computestyle
changefor processes the
change list, which has been built to avoid duplication.
...And 9 more matches
Array.observe() - Archive of obsolete content
the array.observe() method was used for asynchronously observing
changes to arrays, similar to object.observe() for objects.
... it provided a stream of
changes in order of occurrence.
... callback the function called each time
changes are made, with the following argument:
changes an array of objects each representing a
change.
...And 9 more matches
Object.observe() - Archive of obsolete content
the object.observe() method was used for asynchronously observing the
changes to an object.
... it provided a stream of
changes in the order in which they occur.
... callback the function called each time
changes are made, with the following argument:
changes an array of objects each representing a
change.
...And 9 more matches
The box model - Learn web development
padding, margin and border will cause other elements to be pushed away from the box unless we decide to
change the display type to inline, elements such as headings (e.g.
... we can, however,
change the inner display type by using display values like flex.
... if we set display: flex; on an element, the outer display type is block, but the inner display type is
changed to flex.
...And 9 more matches
JavaScript basics - Learn web development
the heading text
changed to hello world!
... after declaring a variable, you can give it a value: myvariable = 'bob'; also, you can do both these operations on the same line: let myvariable = 'bob'; you retrieve the value by calling the variable name: myvariable; after assigning a value to a variable, you can
change it later in the code: let myvariable = 'bob'; myvariable = 'steve'; note that variables may hold values that have different data types: variable explanation example string this is a sequence of text known as a string.
...if values couldn't
change, then you couldn't do anything dynamic, like personalize a greeting message or
change an image displayed in an image gallery.
...And 9 more matches
Making decisions in your code — conditionals - Learn web development
weather type today: </label> <select id="weather"> <option value="">--make a choice--</option> <option value="sunny">sunny</option> <option value="rainy">rainy</option> <option value="snowing">snowing</option> <option value="overcast">overcast</option> </select> <p></p> const select = document.queryselector('select'); const para = document.queryselector('p'); select.addeventlistener('
change', setweather); function setweather() { const choice = select.value; if (choice === 'sunny') { para.textcontent = 'it is nice and sunny outside today.
... in the javascript, we are storing a reference to both the <select> and <p> elements, and adding an event listener to the <select> element so that when its value is
changed, the setweather() function is run.
...weather type today: </label> <select id="weather"> <option value="">--make a choice--</option> <option value="sunny">sunny</option> <option value="rainy">rainy</option> <option value="snowing">snowing</option> <option value="overcast">overcast</option> </select> <p></p> const select = document.queryselector('select'); const para = document.queryselector('p'); select.addeventlistener('
change', setweather); function setweather() { const choice = select.value; switch (choice) { case 'sunny': para.textcontent = 'it is nice and sunny outside today.
...And 9 more matches
Componentizing our Svelte app - Learn web development
that's because the filter variable flows down from the todos component to the filterbutton component through the prop, but
changes occurring in the filterbutton component don't flow back up to its parent — the data binding is one-way by default.
... sharing data between components: passing a handler as a prop one way to let child components notify their parents of any
changes is to pass a handler as a prop.
... using bind, we will tell svelte that any
changes made to the filter prop in the filterbutton component should propagate back up to the parent component, todos.
...And 9 more matches
Localizing with Koala
introduction this tutorial will guide you through making a couple of
changes to firefox's user interface using koala, an add-on for komodo edit created to help localizing mozilla.
...the easy way involves opening the console and issuing the following commands: c:\users\stas> cd c:\mozilla\l10n\application\firefox c:\mozilla\l10n\application\firefox> rmdir 3.6 c:\mozilla\l10n\application\firefox> hg clone http://hg.mozilla.org/releases/mozilla-1.9.2 3.6 requesting all
changes adding
changesets adding manifests adding file
changes added 33099
changesets with 158636
changes to 50664 files (+9 heads) updating working directory 40357 files updated, 0 files merged, 0 files removed, 0 files unresolved configure the locale locale id: x-testing (put your locale's code) version: 3.6 location: choose the folder where you want to keep the localized files or leave empty for...
...for example: c:\users\stas> cd c:\mozilla\l10n\locale\x-testing c:\mozilla\l10n\locale\x-testing> rmdir 3.6 c:\mozilla\l10n\locale\x-testing> hg clone http://bitbucket.org/mozillal10n/x-testing 3.6 otherwise, it's a good idea to create your local repository in order to be able to track
changes you make to the localization files.
...And 9 more matches
SVN for Localizers
it's a handy tool that allows us to grab,
change, and store versions of source files in one location.
...you use it to copy files from the server to your computer and to push
changed or localized files back onto the server.
...also, we use https instead of http because
changes can only be pushed back to the mozilla svn repository through a secure connection.
...And 9 more matches
Component; nsIPrefBranch
inherits from: nsisupports last
changed in gecko 58 (firefox 58 / thunderbird 58 / seamonkey 2.55) this object is created with a "root" value which describes the base point in the preferences "tree" from which this "branch" stems.
... methods addobserver() adds a preference
change observer.
... on preference
changes, the following arguments will be passed to nsiobserver.observe(): asubject - the nsiprefbranch object (this).
...And 9 more matches
Mail and RDF
reflecting data to rdf in order to have a dynamic ui that updates when the underlying content
changes, a datasource must implement two key methods of reflecting data into rdf.
... asynchronously notifying rdf when the data itself
changes, rdf needs to be notified.
...sages"); function gettarget(target, property, unused) { var folder = target.queryinterface(components.interfaces.nsimsgfolder); if (property == msgcountarc) { var msgcount = folder.gettotalmessages(false); var result = rdf.getliteral(msgcount.tostring()); return result; } } asynchronously notifying rdf when a mail object's data
changes and the data is reflected in rdf by notifying all of the observers that rdf has registered with the datasource.
...And 9 more matches
Examine and edit CSS - Firefox Developer Tools
examine css rules the rules view lists all the rules that apply to the selected element, ordered from most-specific to least-specific: the four buttons on the right top of the rules view allow you to
change the display of certain css and rules view features.
... you can: toggle pseudo-classes; toggle classes; add a new rule;
change the display based on the color scheme preference (as of firefox 72, you must set devtools.inspector.color-scheme-simulation.enabled to true in the configuration editor to enable this feature);
change the display based on print media rules.
...any
changes you make are temporary: reloading the page will restore the original styling.
...And 9 more matches
GlobalEventHandlers - Web APIs
globaleventhandlers.on
change is an eventhandler representing the code to be called when the
change event is raised.
... globaleventhandlers.oncue
change is an eventhandler representing the code to be called when the cue
change event is raised.
... globaleventhandlers.onduration
change is an eventhandler representing the code to be called when the duration
change event is raised.
...And 9 more matches
Adapting to the new two-value syntax of display - CSS: Cascading Style Sheets
this guide explains the
change to the syntax, including the reasoning behind this
change.
... what happens when we
change the value of the display property?
...only when the value of display is
changed do the children become flex or grid items and begin to respond to the other properties in the grid or flexbox specifications.
...And 9 more matches
Redirections in HTTP - HTTP
code text method handling typical use case 301 moved permanently get methods un
changed.
... others may or may not be
changed to get.[1] reorganization of a web site.
... 308 permanent redirect method and body not
changed.
...And 9 more matches
dominant-baseline - SVG: Scalable Vector Graphics
no-
change the dominant-baseline, the baseline-table, and the baseline-table font-size remain the same as that of the parent text content element.
... reset-size the dominant-baseline and the baseline-table remain the same, but the baseline-table font-size is
changed to the value of the font-size attribute on this element.
... ideographic the baseline-identifier for the dominant-baseline is set to be ideographic, the derived baseline-table is constructed using the ideographic baseline-table in the font, and the baseline-table font-size is
changed to the value of the font-size attribute on this element.
...And 9 more matches
Handling Preferences - Archive of obsolete content
preferences are used to store settings and information to
change their default behavior.
...if you need to refer to the term "preference" in any of your locale files, you must
change the string depending on the operating system.
...in addition, certain preferences may be locked such that users cannot
change them.
...And 8 more matches
New Skin Notes - Archive of obsolete content
if you go to your user preferences, you can
change the skin to "devmo".
...--nickolay 01:34, 31 aug 2005 (pdt) ok, so i'm asking just to
change this color.
... --gandalf 04:55, 31 aug 2005 (pdt) fine,
changed.
...And 8 more matches
XBL Example - Archive of obsolete content
this makes it easy to
change the labels on the buttons.
...similarly, when setting this property, it will need to
change the selectedindex attribute of the deck.
... an oncommand handler will need to be added to the previous and next buttons so that the page is
changed when the buttons are pressed.
...And 8 more matches
Sunbird Theme Tutorial - Archive of obsolete content
introduction a theme is a package that users can install in an application to
change the appearance of the application, without changing how the application works.
... for example, a theme can
change the size and colour of the toolbar buttons, and provide different icons on the buttons.
...
change the next six lines to describe your theme.
...And 8 more matches
Accessibility in React - Learn web development
change the import statement at the top of todo.js so that it includes useref: import react, { useref, usestate } from "react"; then, create two new constants beneath the hooks in your todo() function.
... the textbox <input> in your editing template should be updated like this: <input id={props.id} classname="todo-text" type="text" value={newname} on
change={handle
change} ref={editfieldref} /> the "edit" button in your view template should read like this: <button type="button" classname="btn" onclick={() => setediting(true)} ref={editbuttonref} > edit <span classname="visually-hidden">{props.name}</span> </button> focusing on our refs with useeffect to use our refs for their intended purpose, we need to import another react hook: use...
...
change the import statement of todo.js again to add useeffect: import react, { useeffect, useref, usestate } from "react"; useeffect() takes a function as an argument; this function is executed after the component renders.
...And 8 more matches
React interactivity: Editing, filtering, conditional rendering - Learn web development
we'll use array.prototype.map() instead of array.prototype.filter() because we want to return a new array with some
changes, instead of deleting something from the array.
...> <button type="submit" classname="btn btn__primary todo-edit"> save <span classname="visually-hidden">new name for {props.name}</span> </button> </div> </form> ); const viewtemplate = ( <div classname="stack-small"> <div classname="c-cb"> <input id={props.id} type="checkbox" defaultchecked={props.completed} on
change={() => props.toggletaskcompleted(props.id)} /> <label classname="todo-label" htmlfor={props.id}> {props.name} </label> </div> <div classname="btn-group"> <button type="button" classname="btn"> edit <span classname="visually-hidden">{props.name}</span> </button> <button type="button" classname="btn ...
... conditional rendering in jsx, we can use a condition to
change what is rendered by the browser.
...And 8 more matches
Mozilla accessibility architecture
accessibility apis are used by 3rd party software like screen readers, screen magnifiers, and voice dictation software, which need information about document content and ui controls, as well as important events like
changes of focus.
...the toolkit-specific classes then use these xpcom interfaces to gather information about the objects they want to expose, make any necessary
changes, and then expose the information using microsoft com on windows, or through gtk2's atk api's on linux and unix.
... dommenuitemactive, dommenubaractive mozilla dom event_focus domnodeinserted w3c dom mutation event event_create (atk) event_reorder (msaa) domsubtreemodified w3c dom mutation event event_reorder domnoderemoved w3c dom mutation event event_destroy (atk) event_reorder (msaa) checkboxstate
change, radiostate
change mozilla dom event_state_
change popupshowing mozilla dom event_menustart popuphiding mozilla dom event_menuend nsdocaccessible::scrollpositiondid
change(), then nsdocaccessible::scrolltimercallback() nsiscrollpositonlistener and nsitimer callbacks event_scrollingend (quick timer is used...
...And 8 more matches
AsyncShutdown.jsm
for instance, at the end of phase profilebefore
change, no service is permitted to write to the profile directory (with the exception of telemetry).
... consequently, if any service has requested i/o to the profile directory before or during phase profilebefore
change, the system must be informed that these requests need to be completed before the end of phase profilebefore
change.
...since the data is saved to the profile, this must be completed during phase profilebefore
change.
...And 8 more matches
NSS 3.14 release notes
oduction 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.
... the nss license has
changed to mpl 2.0.
...new in nss 3.14 the sections that follow discuss specific
changes in nss 3.14 in more detail.
...And 8 more matches
NSS tools : modutil
modutil can add and delete pkcs #11 modules,
change passwords on security databases, set defaults, list module contents, enable or disable slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -
changepw tokenname
change the password on the named token.
... -newpwfile new-password-file specify a text file containing a token's new or replacement password so that a password can be entered automatically with the -
changepw option.
...And 8 more matches
NSS tools : modutil
modutil can add and delete pkcs #11 modules,
change passwords on security databases, set defaults, list module contents, enable or disable slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -
changepw tokenname
change the password on the named token.
... -newpwfile new-password-file specify a text file containing a token's new or replacement password so that a password can be entered automatically with the -
changepw option.
...And 8 more matches
SpiderMonkey 1.8.8
many jsapi types, functions, and callback signatures have
changed, though most of them still have the same names and do the same things.
... applications will need significant
changes, but most of those
changes will be detected by the c/c++ compiler, so they are easy to detect and updating the code is a fairly straightforward job.
... here is a list of the most significant
changes.
...And 8 more matches
SpiderMonkey 17
many jsapi types, functions, and callback signatures have
changed, though most of them still have the same names and do the same things.
... applications will need significant
changes, but most of those
changes will be detected by the c/c++ compiler, so they are easy to detect and updating the code is a fairly straightforward job.
... here is a list of the most significant
changes.
...And 8 more matches
SpiderMonkey 24
(this
change was motivated by garbage collector improvements, which lean quite heavily on c++'s support for raii through constructors and destructors.) if you are compiling with microsoft's visual studio, note that the minimum supported version is msvc10/2010: msvc8/9 support has been dropped.
...many jsapi types, functions, and callback signatures have
changed, though most of them still have the same names and do the same things.
... applications will need significant
changes, but most of those
changes will be detected by the c/c++ compiler, so they are easy to detect and updating the code is a fairly straightforward job.
...And 8 more matches
nsIPrefBranch2
method overview void addobserver(in string adomain, in nsiobserver aobserver, in boolean aholdweak); void removeobserver(in string adomain, in nsiobserver aobserver); methods addobserver() add a preference
change observer.
... on preference
changes, the following arguments will be passed to nsiobserver.observe(): asubject - the nsiprefbranch object (this).
... atopic - the string defined by ns_prefbranch_pref
change_topic_id adata - the name of the preference which has
changed, relative to the "root" of the asubject branch.
...And 8 more matches
nsIWebProgress
last
changed in gecko 1.8.0 inherits from: nsisupports method overview void addprogresslistener(in nsiwebprogresslistener alistener, in unsigned long anotifymask); void removeprogresslistener(in nsiwebprogresslistener alistener); attributes attribute type description domwindow nsidomwindow the dom window associated with this nsiwebprogress instance.
...these flags indicate the state transistions to observe, corresponding to nsiwebprogresslistener.onstate
change().
... constant value description notify_state_request 0x00000001 only receive the nsiwebprogresslistener.onstate
change() event if the astateflags parameter includes nsiwebprogresslistener::state_is_request.
...And 8 more matches
Web Console remoting - Firefox Developer Tools
this document describes the latest protocol, with
changes that have been made since then.
... prior to firefox 20 the web console actor provided a location
change listener, with an associated location
changed notification.
... this is no longer the case: we have made
changes to allow the web console client to reuse the tabnavigated notification (bug 792062).
...And 8 more matches
Background Tasks API - Web APIs
certainly most if not all code that is capable of making
changes to the dom is running in the main thread, since it's common for user interface
changes to only be available to the main thread.
... avoid making
changes to the dom within your idle callback.
...if you make
changes that affect layout, you may force a situation in which the browser has to stop and do recalculations that would otherwise be unnecessary.
...And 8 more matches
MediaQueryList - Web APIs
the resulting object handles sending notifications to listeners when the media query state
changes (i.e.
... this is very useful for adaptive design, since this makes it possible to observe a document to detect when its media queries
change, instead of polling the values periodically, and allows you to programmatically make
changes to a document based on media query status.
... addlistener() adds to the mediaquerylist a callback which is invoked whenever the media query status—whether or not the document matches the media queries in the list—
changes.
...And 8 more matches
Resize Observer API - Web APIs
the resize observer api provides a performant mechanism by which code can monitor an element for
changes to its size, with notifications being delivered to the observer each time the size
changes.
... concepts and usage there are a whole raft of use cases for responsive design techniques (and others besides) that respond to
changes in an element's size, but previously their implementations have often been hacky and/or brittle.
... for example, media queries / window.matchmedia are great for updating layouts at specific points when the viewport
changes sizes, but what if you want to
change layout in response to a specific element's size changing, which isn't the outer container?
...And 8 more matches
Controlling multiple parameters with ConstantSourceNode - Web APIs
this article demonstrates how to use a constantsourcenode to link multiple parameters together so they share the same value, which can be
changed by simply setting the value of the constantsourcenode.offset parameter.
... you may have times when you want to have multiple audio parameters be linked so they share the same value even while being
changed in some way.
...you could use a loop and
change the value of each affected audioparam one at a time, but there are two drawbacks to doing it that way: first, that's extra code that, as you're about to see, you don't have to write; and second, that loop uses valuable cpu time on your thread (likely the main thread), and there's a way to offload all that work to the audio rendering thread, which is optimized for this kind of work and may run at a more appropriate priority level than your code.
...And 8 more matches
Using the Web Audio API - Web APIs
we'll briefly look at some concepts, then study a simple boombox example that allows us to load an audio track, play and pause it, and
change its volume and stereo panning.
...you have input nodes, which are the source of the sounds you are manipulating, modification nodes that
change those sounds as desired, and output nodes (destinations), which allow you to save or hear those sounds.
...we have a play button that
changes to a pause button when the track is playing: <button data-playing="false" role="switch" aria-checked="false"> <span>play/pause</span> </button> before we can play our track we need to connect our audio graph from the audio source/input node to the destination.
...And 8 more matches
Ordering Flex Items - CSS: Cascading Style Sheets
in this article we will take a look at ways in which you can
change the visual order of your content when using flexbox.
... if you are using a reverse value, or otherwise reordering your items, you should consider whether you actually need to
change the logical order in the source.
...if you
change the order using flex-direction you can see how the tab order continues to follow the order that the items are listed in the source.
...And 8 more matches
Cross-Origin Resource Sharing (CORS) - HTTP
code of this sort might be used in javascript deployed on foo.example: const xhr = new xmlhttprequest(); const url = 'https://bar.other/resources/public-data/'; xhr.open('get', url); xhr.onreadystate
change = somehandler; xhr.send(); this performs a simple ex
change between the client and the server, using cors headers to handle the privileges: let's look at what the browser will send to the server in this case, and let's see how the server responds: get /resources/public-data/ http/1.1 host: bar.other user-agent: mozilla/5.0 (macintosh; intel mac os x 10.14; rv:71.0) gecko/20100101 firefox/71.
... the following is an example of a request that will be preflighted: const xhr = new xmlhttprequest(); xhr.open('post', 'https://bar.other/resources/post-here/'); xhr.setrequestheader('x-pingother', 'pingpong'); xhr.setrequestheader('content-type', 'application/xml'); xhr.onreadystate
change = handler; xhr.send('<person><name>arun</name></person>'); the example above creates an xml body to send with the post request.
... let's look at the full ex
change between client and server.
...And 8 more matches
Strict mode - JavaScript
strict mode makes several
changes to normal javascript semantics: eliminates some javascript silent errors by changing them to throw errors.
... see transitioning to strict mode, if you want to
change your code to work in the restricted variant of javascript.
... function strict() { // because this is a module, i'm strict by default } export default strict;
changes in strict mode strict mode
changes both syntax and runtime behavior.
...And 8 more matches
simple-prefs - Archive of obsolete content
getting and setting preferences unless you've marked them as hidden, the user will be able to see and
change the preferences in the add-on manager.
... you can also see them and
change them programmatically using the prefs property, and listen for
changes to a preference using on().
...erences are stored in a preference like: extensions.<addon-id>.<preference-name> for example, if you had a simple-pref named "somepreference" then you could get its value like so: require('sdk/preferences/service').get(['extensions', require('sdk/self').id, 'somepreference'].join('.')) this would give you the same value as: require('sdk/simple-prefs').prefs['somepreference'] the ability to
change the default preferences branch is new in add-on sdk 1.15.
...And 7 more matches
jpm - Archive of obsolete content
jpm watchpost package your add-on as an xpi file whenever there is a file
change and post that to some url.
... create a new directory,
change into it, and run jpm init.
... --no-copy use with caution because jpm run|test
changes many preferences, never use with your main profile.
...And 7 more matches
Adding preferences to an extension - Archive of obsolete content
by and large, the
changes are simply changing the id of the extension.
... the javascript code in order to monitor
changes to our preferences, we need to install an observer using the nsiprefbranch2 interface.
...its job is to start up the observer to watch for
changes to our preferences, instantiate an object to use to manage our preferences, and install an interval routine to update the stock information periodically.
...And 7 more matches
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
browser sniffing is usually done through the useragent, such as: mozilla/5.0 (x11; u; linux i686; en-us; rv:1.5) gecko/20031016 while using the useragent to sniff the browser provides detailed information on the browser in use, code that handles useragents often can make mistakes when new browser versions arrive, thus requiring code
changes.
...for example, rather than: if (ismozilla || isie5) you would use: if (document.getelementbyid) this would allow other browsers that support that w3c standard method, such as opera or safari, to work without any
changes.
...you can access, remove, and
change an element's css rules through the element's style member: <div id="mydiv" style="border: _fckstyle="border: 1px solid black;"> text </div> <script> var myelm = document.getelementbyid("mydiv"); myelm.style.width = "40px"; </script> you can reach every css attribute that way.
...And 7 more matches
MenuItems - Archive of obsolete content
you might do this if the key associated with the item
changes, for instance a list of open windows displayed on a window menu.
...from within a command listener, you can execute code which will
change the state of the toolbar or status bar or whatever it is that need changing.
... <script> function
changetoolbarstate(event) { if (event.target.getattribute("checked") == "true") showtoolbar(); else hidetoolbar(); } </script> ...
...And 7 more matches
Tree View Details - Archive of obsolete content
also note the use of the javascript get operator to bind a property to a function, so to have the value of the rowcount property that can
change dynamically over time, as rowcount has to be a read-only attribute as defined in nsitreeview.
...m = this.visibledata[idx]; if (!item[1]) return; if (item[2]) { item[2] = false; var thislevel = this.getlevel(idx); var deletecount = 0; for (var t = idx + 1; t < this.visibledata.length; t++) { if (this.getlevel(t) > thislevel) deletecount++; else break; } if (deletecount) { this.visibledata.splice(idx + 1, deletecount); this.treebox.rowcount
changed(idx + 1, -deletecount); } } else { item[2] = true; var label = this.visibledata[idx][0]; var toinsert = this.childdata[label]; for (var i = 0; i < toinsert.length; i++) { this.visibledata.splice(idx + i + 1, 0, [toinsert[i], false]); } this.treebox.rowcount
changed(idx + 1, toinsert.length); } this.treebox.invalidaterow(idx); } first we will need to ch...
... item[2] = true; var label = this.visibledata[idx][0]; var toinsert = this.childdata[label]; for (var i = 0; i < toinsert.length; i++) { this.visibledata.splice(idx + i + 1, 0, [toinsert[i], false]); } this.treebox.rowcount
changed(idx + 1, toinsert.length); the first line makes the row open in the array so that we will know the next time the toggleopenstate function is called that the row will need to be closed instead.
...And 7 more matches
datepicker - Archive of obsolete content
to
change the selected date, the value property may be used to set a new value in the form yyyy-mm-dd.
... !!attention: there is also a datepicker in tb-calendar with differing definitions for members (value is a date there) the
change event is fired whenever the date is
changed.
... 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.
...And 7 more matches
preference - Archive of obsolete content
attributes disabled, instantapply, inverted, name, on
change, readonly, tabindex, type properties defaultvalue, disabled, hasuservalue, inverted, locked, name, preferences, readonly, tabindex, type, value, valuefrompreferences methods reset examples <preferences> <preference id="pref_id" name="preference.name" type="int"/> </preferences> see preferences system for a complete example.
... instantapply type: boolean if true, the preference will be
changed as soon as the user interface is modified.
... name type: string the name of the preference to
change.
...And 7 more matches
Introduction to CSS layout - Learn web development
the methods that can
change how elements are laid out in css are as follows: the display property — standard values such as block, inline or inline-block can
change how elements behave in normal flow, for example making a block-level element behave like an inline element (see types of css boxes for more information).
...this property allows us to
change the default way something displays.
... you can
change this default display behavior.
...And 7 more matches
Experimental features in Firefox
nightly 53 yes developer edition 53 no beta 53 no release 53 no preference name dom.dialog_element.enabled global attribute: inputmode our implementation of the inputmode global attribute has been updated as per the whatwg spec (bug 1509527), but we still need to make other
changes too, like making it available on contenteditable content.
... nightly 73 no developer edition 73 no beta 73 no release 73 no preference name dom.webgpu.enabled html dom api global event: beforeinput the global beforeinput event is sent to an <input> element—or any element whose contenteditable attribute is enabled—immediately before the element's value
changes.
...the value
changes over time depending on what the user is doing, their preferences, and the state of the browser in general.
...And 7 more matches
CustomizableUI.jsm
if consumers make a
change to the placements in an area, customizableui will update the actual nodes in each area instance for them.
...this can be useful if other parts of the code need to react to
changes in the customization of the user interface.
... onwidgetbeforedom
change(anode, anextnode, acontainer, aisremoval) fired before a widget's dom node is acted upon by customizableui (to add, move or remove it).
...And 7 more matches
Localizing with Mercurial
mercurial allows localizers to work locally (on their machines) and then push (an hg term)
changes to a remote repository, which usually is hosted on the mozilla servers (hg.mozilla.org).
...for example, to clone your firefox nightly l10n repo, run the following command, replacing ab-cd with your locale code: hg clone https://hg.mozilla.org/l10n-central/ab-cd/ updating your local repos to update your working copy of mozilla-central, go to your local mozilla-central directory and run: hg pull -u this will both get new
changesets from mozilla-central and apply those
changes in your working copy.
... to update your working copy of comm-central, go to your comm-central directory and run: python client.py checkout this will both get new
changesets from comm-central, mozilla-central and the other appropriate locations and apply those
changes in your working copy.
...And 7 more matches
QA phase
also at this point, you shouldn't have any uncommitted
changes (i.e., running the hg status command should show nothing).
... enter the following command: $ hg log -l 1 you should see an output similar to the one below:
changeset: 0:7c543e8f3a6a tag: tip user: your name <email@example.com> date: mon nov 23 18:08:25 2009 +0100 summary: added search bar strings now compare the local repository on your machine with the remote hg repository by entering this command: $ hg outgoing http://hg.mozilla.org/l10n-central/x-testing the hg outgoing command compares the two repositories and lists all
changesets that are present locally, but not in the remote repository.
... these
changesets will need to be "pushed" to the remote repository.
...And 7 more matches
NSS Tools modutil
you can use the tool to add and delete pkcs #11 modules,
change passwords, set defaults, list module contents, enable or disable slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
... -
changepw tokenname
change the password on the named token.
... -pwfile old-password-file specify a text file containing a token's existing password so that a password can be entered automatically when the -
changepw tokenname option is used to
change passwords.
...And 7 more matches
Property cache
(informally: if another property shadows x'.p, the shape of x' will
change.) o---->o---->o---->o ^x ^x' ^object.prototype, perhaps (----> indicates the proto relation) scope chain shadowing guarantee — if at time t0 the object x has shape s and a name lookup for p starting at scope chain head x finds p on an object x' of shape s', where x !== x'; and the lookup called no resolve hooks or non-native lookup ops; and each object examined along t...
...(informally: if another variable or property shadows x'.p, the shape of x' will
change.) o this object is x, perhaps a call object.
...(the existence of this property is guaranteed by the basic layout guarantee above.) (informally: branded objects have unique shapes, and if x is branded, changing any of x's own methods will
change its shape.) extensibility guarantee — if at time t0 an object x of shape s is extensible, and at time t1 an object y has shape s, and no shape-regenerating gc occurred, then at t1 y is extensible.
...And 7 more matches
SpiderMonkey 31
migrating to spidermonkey 31 the first
change most embedders will notice is that spidermonkey must now be initialized before it can be used, using the newly-repurposed js_init method.
... a major
change to spidermonkey in 31 is that its apis support a moving garbage collector.
...
changes to introduce handles to the jsapi are not individually documented, because of the breadth of the
changes involved.
...And 7 more matches
SpiderMonkey 38
a major
change to spidermonkey in 38 is that its apis support a moving garbage collector.
...
changes to introduce handles to the jsapi are not individually documented, because of the breadth of the
changes involved.
...many jsapi types, functions, and callback signatures have
changed, though most functions that have
changed still have the same names and implement essentially un
changed functionality.
...And 7 more matches
nsINavHistoryObserver
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 21.0 (firefox 21.0 / thunderbird 21.0 / seamonkey 2.18) warning: if you are in the middle of a batch transaction, there may be a database transaction active.
...method overview void onbeforedeleteuri(in nsiuri auri, in acstring aguid); obsolete since gecko 21.0 void onbeginupdatebatch(); void onclearhistory(); void ondeleteuri(in nsiuri auri, in acstring aguid); void ondeletevisits(in nsiuri auri, in prtime avisittime, in acstring aguid); void onendupdatebatch(); void onpage
changed(in nsiuri auri, in unsigned long awhat, in astring avalue); void onpageexpired(in nsiuri auri, in prtime avisittime, in boolean awholeentry); obsolete since gecko 2.0 void ontitle
changed(in nsiuri auri, in astring apagetitle); void onvisit(in nsiuri auri, in long long avisitid, in prtime atime, in long long asessionid, in long long areferringid, in unsigned long atrans...
...itiontype, in acstring aguid, out unsigned long aadded); constants constant value description attribute_favicon 3 the page's favicon
changed.
...And 7 more matches
XPIDL
after that, it doesn't need to be
changed any more.
...in other words, some
changes made to idl interfaces require the author to modify the unique identifier (iid) in order to make it clear to plugins that utilize these interfaces that they have
changed, and thus their plugin must be recompiled.
... common
changes to an interface, such as
changes to a method signature, number of arguments, and number or type of attributes, automatically require an iid
change.
...And 7 more matches
AddressErrors - Web APIs
addresserrors is the type of the object returned by shippingaddresserrors in the paymentdetailsupdate passed into paymentrequestupdateevent.updatewith() by the shippingaddress
change event handler if a
change to the address resulted in a validation error occurring.
...try to avoid asking the user to make corrections to things they can't
change, and there may be situations in which you need to allow validation errors to be accepted anyway (for example, if you validate addresses against a postal service database and a new home has been built and its address is not yet in the database).
... examples snippet: limiting destination countries this first example is just a snippet showing an implementation of the event handler for the shippingaddress
change event which checks to be sure the chosen address is located within one of a limited number of countries.
...And 7 more matches
Pointer Lock API - Web APIs
more than that, the api is useful for any applications that require significant mouse input to control movements, rotate objects, and
change entries, for example allowing users to control the viewing angle simply by moving the mouse around without any button clicking.
... example of using pointerlockelement: if(document.pointerlockelement === canvas || document.mozpointerlockelement === canvas) { console.log('the pointer lock status is now locked'); } else { console.log('the pointer lock status is now unlocked'); } the document.exitpointerlock() method is used to exit pointer lock, and like requestpointerlock, works asynchronously using the pointerlock
change and pointerlockerror events, which you'll see more about below.
... document.exitpointerlock = document.exitpointerlock || document.mozexitpointerlock; // attempt to unlock document.exitpointerlock(); pointerlock
change event when the pointer lock state
changes—for example, when calling requestpointerlock(), exitpointerlock(), the user pressing the esc key, etc.—the pointerlock
change event is dispatched to the document.
...And 7 more matches
Slottable - Web APIs
to
change preferences in firefox, visit about:config.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 40safari full support 10.1webview android full support 53chrome android full support 53firefox android full support 63 full support 63 ...
...to
change preferences in firefox, visit about:config.
...And 7 more matches
A simple RTCDataChannel sample - Web APIs
set up the local peer localconnection = new rtcpeerconnection(); sendchannel = localconnection.createdatachannel("sendchannel"); sendchannel.onopen = handlesendchannelstatus
change; sendchannel.onclose = handlesendchannelstatus
change; the first step is to create the "local" end of the connection.
...in a real application, this would require a signaling server to ex
change the description object.
...again, this would normally be ex
changed through a signalling server.
...And 7 more matches
Viewpoints and viewers: Simulating cameras in WebXR - Web APIs
there's no magic object provided by either the webgl or the webxr api that represents the viewer that you can simply rotate and move around to automatically
change what's seen on the screen.
... some 3d games offer the ability to
change your point of view, such as to look out the various windows of an aircraft in a flight simulator, or to see the views from all the security cameras within the game level (a common feature of spy and stealth-based games).
... composing multiple transforms if your camera needs to be performing multiple transforms simultaneously, such as zooming and panning at the same time, you can multiply the transform matrices together to compose them into a single matrix that applies both
changes at once.
...And 7 more matches
ARIA Screen Reader Implementors Guide - Accessibility
interpreting wai-aria live region markup live
changes are hints: in general live region markup is provided by the author as hints, and the assistive technology may allow for global, site or even region-specific settings, as well as heuristics to help with live
changes on pages that have no wai-aria hints.
... busy regions: any
changes in a region marked with aria-busy="true" should not be added to the queue until that attribute is cleared.
... atomic (aria-atomic="true") regions with multiple
changes should not be presented twice with the same content.
...And 7 more matches
Color picker tool - CSS: Cascading Style Sheets
s here to compare"; width: 40%; padding: 30px 9% 70px 11%; background-image: url('https://mdn.mozillademos.org/files/6075/drop.png'); background-repeat: no-repeat; background-position: left 35px top 60%; text-align: right; border: 3px dashed rgb(221, 221, 221); border-radius: 15px; position: absolute; top: 50px; left: 20%; } #canvas[data-tutorial='drop']:after { content: "adjust,
change or modify"; width: 40%; font-size: 24px; position: absolute; top: 130px; left: 32%; z-index: 2; } #canvas [data-tutorial='dblclick'] { background-color: #999 !important; } #canvas [data-tutorial='dblclick']:before { content: "double click to activate"; width: 80px; color: #fff; position: absolute; top: 10%; left: 20%; z-index: 2; } #canvas .sample { width: 100px; height: 100px;...
...'hsl' : 'hsv'; this.color.setformat(this.picker_mode); this.createpickingarea(); this.createhuearea(); this.newinputcomponent('h', 'hue', this.input
changehue.bind(this)); this.newinputcomponent('s', 'saturation', this.input
changesaturation.bind(this)); this.newinputcomponent('v', 'value', this.input
changevalue.bind(this)); this.newinputcomponent('l', 'lightness', this.input
changelightness.bind(this)); this.createalphaarea(); this.newinputcomponent('r', 'red', this.input
changered.bind(this)); this.newinputcomponent('g', 'green', this.i...
...nput
changegreen.bind(this)); this.newinputcomponent('b', 'blue', this.input
changeblue.bind(this)); this.createpreviewbox(); this.create
changemodebutton(); this.newinputcomponent('alpha', 'alpha', this.input
changealpha.bind(this)); this.newinputcomponent('hexa', 'hexa', this.input
changehexa.bind(this)); this.setcolor(this.color); pickers[topic] = this; } /*************************************************************************/ // function for generating the color-picker /*************************************************************************/ colorpicker.prototype.createpickingarea = function createpickingarea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'picking-area'; picker.classname = 'picker...
...And 7 more matches
Linear-gradient Generator - CSS: Cascading Style Sheets
'hsl' : 'hsv'; this.color.setformat(this.picker_mode); this.createpickingarea(); this.createhuearea(); this.newinputcomponent('h', 'hue', this.input
changehue.bind(this)); this.newinputcomponent('s', 'saturation', this.input
changesaturation.bind(this)); this.newinputcomponent('v', 'value', this.input
changevalue.bind(this)); this.newinputcomponent('l', 'lightness', this.input
changelightness.bind(this)); this.createalphaarea(); this.newinputcomponent('r', 'red', this.input
changered.bind(this)); this.newinputcomponent('g', 'green', this.i...
...nput
changegreen.bind(this)); this.newinputcomponent('b', 'blue', this.input
changeblue.bind(this)); this.createpreviewbox(); this.create
changemodebutton(); this.newinputcomponent('alpha', 'alpha', this.input
changealpha.bind(this)); this.newinputcomponent('hexa', 'hexa', this.input
changehexa.bind(this)); this.setcolor(this.color); pickers[topic] = this; } /*************************************************************************/ // function for generating the color-picker /*************************************************************************/ colorpicker.prototype.createpickingarea = function createpickingarea() { var area = document.createelement('div'); var picker = document.createelement('div'); area.classname = 'picking-area'; picker.classname = 'picker...
...{ var preview_box = document.createelement('div'); var preview_color = document.createelement('div'); preview_box.classname = 'preview'; preview_color.classname = 'preview-color'; this.preview_color = preview_color; preview_box.appendchild(preview_color); this.node.appendchild(preview_box); }; colorpicker.prototype.newinputcomponent = function newinputcomponent(title, topic, on
changefunc) { var wrapper = document.createelement('div'); var input = document.createelement('input'); var info = document.createelement('span'); wrapper.classname = 'input'; wrapper.setattribute('data-topic', topic); info.textcontent = title; info.classname = 'name'; input.setattribute('type', 'text'); wrapper.appendchild(info); wrapper.appendchild(input); this.node.appendchild...
...And 7 more matches
Getting Started - Developer guides
ajax’s most appealing characteristic is its "asynchronous" nature, which means it can communicate with the server, ex
change data, and update the page without having to refresh the page.
...at this stage, you need to tell the xmlhttp request object which javascript function will handle the response, by setting the onreadystate
change property of the object and naming it after the function to call when the request
changes state, like this: httprequest.onreadystate
change = nameofthefunction; note that there are no parentheses or parameters after the function name, because you're assigning a reference to the function, rather than actually calling it.
... alternatively, instead of giving a function name, you can use the javascript technique of defining functions on the fly (called "anonymous functions") to define the actions that will process the response, like this: httprequest.onreadystate
change = function(){ // process the server response here.
...And 7 more matches
HTTP conditional requests - HTTP
http has a concept of conditional requests, where the result, and even the success of a request, can be
changed by comparing the affected resources with the value of a validator.
... if the resource has not
changed, the server sends back a 304 not modified response.
... if the resource has
changed, the server just sends back a 200 ok response, with the new version of the resource, like if the request wasn't conditional and the client uses this new resource (and caches it).
...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.
... this method allows these extra details to be
changed from their defaults.
...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.
...And 7 more matches
Transport Layer Security - Web security
the transport layer security (tls) protocol is the standard for enabling two networked applications or devices to ex
change information privately and robustly.
...tls-encrypted web traffic is by convention ex
changed on port 443 by default, while unencrypted http uses port 80 by default.
... http over tls tls provides three primary services that help ensure the safety and security of data ex
changed with it: authentication authentication lets each party to the communication verify that the other party is who they claim to be.
...And 7 more matches
Setting Up a Development Environment - Archive of obsolete content
you should take some time to read it and understand it, or at least identify the parts that you should
change to get a project of your own going.
... in most cases you'll only need to
change the first lines in makefile.
...making
changes on source files will make make run the necessary steps to build the xpi again.
...And 6 more matches
Building Trees - Archive of obsolete content
on the other hand, you could use a stylesheet to
change the default height of the tree rows.
... you cannot make each row a different height, but you can
change the height of all rows with some css: treechildren::-moz-tree-row { height: 150px; } since no elements are constructed by the tree builder, you cannot use the style or class attributes to
change the style of a cell (this is the case with all trees).
... you must use syntax like that above to
change the appearance.
...And 6 more matches
Modifying the Default Skin - Archive of obsolete content
by applying a different skin, you can
change the look of a window without changing its functionality.
... for a simple personalized look to a firefox window, you can easily
change the style sheets associated with it.
... larger
changes can be done by creating an entirely new skin.
...And 6 more matches
timepicker - Archive of obsolete content
the value may be retrieved and
changed using the value property or the datevalue property.
... the
change event is fired whenever the time is
changed.
... 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.
...And 6 more matches
Creating XULRunner Apps with the Mozilla Build System - Archive of obsolete content
for example, you may be fixing bugs in xulrunner, applying patches from bugzilla that aren't yet checked into the main repository or making your own
changes to deploy as part of a customized xulrunner build.
...in this case we're creating a debug build, so you'd have to
change the relevant options if you want a release build instead.
...you shouldn't have to
change this.
...And 6 more matches
RDF in Mozilla FAQ - Archive of obsolete content
how do i
change information in the datasource?
...refer to mozilla rdf back end architecture ds.assert(homepage, fv_quality, value, true); ds.unassert(homepage, fv_quality, value, true); how do i save back
changes to an rdf/xml datasource?
...flush() only writes the datasource if its contents have
changed.
...And 6 more matches
How to build custom form controls - Learn web development
once we know how to
change states, it is important to define how to
change the control's value: the value
changes when: the user clicks on an option when the control is in the open state.
... the value does not
change when: the user hits the up arrow key when the first option is selected.
...on the other hand, if you consider that the active state and the open state overlap a bit, the value may
change but the option will definitely not be highlighted accordingly, once again because we did not define any keyboard interactions over options when the control is in its opened state (we have only defined what should happen when the control is opened, but nothing after that).
...And 6 more matches
Using Vue computed properties - Learn web development
these work similarly to methods, but only re-run when one of their dependencies
changes.
...computed properties work similarly to methods, but only re-run when one of their dependencies
changes.
... in our case, this would only re-run when the todoitems array
changes.
...And 6 more matches
Using the Browser API
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... api extensions: the api includes several new methods and events to manipulate and listen for
changes to the embedded content's state, interited by the htmliframeelement interface.
... there's another event listener added later on in the code that listens for the mozbrowserlocation
change event.
...And 6 more matches
Embedding the editor
editor assumes xul document structure there is c++ and js code in the editor that assumes that the editor is living in a xul document, and that there are xul document nodes out there whose attributes can be tweaked to
change the state of the ui (e.g.
...this needs to be
changed to allow embedders to provide their own, possibly native ui.
...embedding objectives editor requires design
changes such that the embedding applications above can be fulfilled, and these
changes will need to address the current problems.
...And 6 more matches
Localization sign-off reviews
in principle, they share basic elements, but sign-off reviews are only for evaluating the
changes between your latest approved revision and the new revision you've submitted for release approval.
... hence, unless a localizer makes a
change within the new revision that nullifies the approved work in the previous revision, the sign-off criteria will be significantly less comprehensive than a technical review.
... encoding some tools add bom to utf-8 encoded files, and some
change the encoding altogether.
...And 6 more matches
Creating localizable web applications
in some cases, the code snippets were slightly
changed to better illustrate the recommendations or for clarity.
... always give the user a possibility to
change the locale (e.g.
...you can achieve this by setting a cookie when the user
changes the locale with the language dropdown, or by looking for locale code in the url.
...And 6 more matches
What every Mozilla translator should know
when you create a bug, if you want the person in charge of the l10n to follow up your bug you should cc: l10n@mozilla.com if you choose to make
changes to your localization, you should make the
changes local to your disk, push them to your hg repository on merucial, test the
changes on a nightly/tinderbox build, fix any errors if some are found and test again, and send the new
changeset id as your "opt-in" revisions to the l10-drivers.
... if you choose to make any
changes to the productization elements (i.e.
... search plugins, protocol handlers, rss/live bookmarks), you will need to upload a patch with the suggested
changes to bugzilla and get approval before pushing those
changes to your hg repository.
...And 6 more matches
PKCS11 FAQ
by convention, all certificates making up a single personality should have the same label (that is, a pair of certificates, one for signing and one for key ex
change, should have the same label).
...nss never attempts to cache this information, because login state can
change instantly without nss knowing about it (for example, when the user removes the card).
... you must update all sessions correctly when the state
changes.
...And 6 more matches
NSS tools : certutil
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.
... --rename
change the database nickname of a certificate.
... -w
change the password to a key database.
...And 6 more matches
Index
whenever practical, new code and
changes should move code closer to the ideal future.
... and of course, the idea of the future is always evolving in time as things
change and we learn more.
...this page is intended to explain the
changes that are happening, with a focus on how they will affect gecko code that uses jsapi.
...And 6 more matches
Web Replay
timeline the timeline is shown above the developer tools and provides several features to help with navigating the recording: the timeline
changes color depending on whether the tab is currently recording (red) or replaying (blue).
... the debugger is not allowed to
change the replaying process's observable state.
...for example, script compilation involves gc thing allocation, and observing
changes in an object will
change its shape.
...And 6 more matches
Animated PNG graphics
dispose_op specifies how the output buffer should be
changed at the end of the delay (before rendering the next frame).
...
changed 'fram' chunk offsets and delay into signed integers.
... from 0.2
changed 'fram' chunk to 'afra' to avoid conflict with mng 'fram' chunk.
...And 6 more matches
Gecko object attributes
applied to: listitem, option exposed in aria: aria-setsize live region attribues atomic true when the entire region should be presented as a whole, when
changes within it are considered important enough to automatically present.
... applied to: any role exposed via aria: aria-atomic live a hint as to whether
changes within the current region or subtree should be automatically presented.
...other possible values are "polite", "assertive", and "rude", which is a suggestion for the policy when interrupting the user for
changes to this region.
...And 6 more matches
Places Developer Guide
resultcontainernode.containeropen = true; for (var i=0; i < resultcontainernode.childcount; ++i) { var childnode = resultcontainernode.getchild(i); // accessing properties of matching bookmarks var title = childnode.title; var uri = childnode.uri; } updating bookmark items for all items: setitemtitle(aitemid, atitle) -
changes an item's title.
... setitemindex(aitemid, aindex) -
changes an item's position.
... for bookmarks:
changebookmarkuri(aitemid, auri) -
change a bookmark's uri.
...And 6 more matches
nsICookieService
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) see nsicookiemanager and nsicookiemanager2 for methods to manipulate the cookie database directly.
... var cookiesvc = components.classes["@mozilla.org/cookieservice;1"] .getservice(components.interfaces.nsicookieservice); notifications this service broadcasts the following notifications when the cookie list is
changed, or a cookie is rejected: topic subject data cookie-
changed broadcast whenever the cookie list
changes in some way.
... there are four possible data strings for this notification; one notification will be broadcast for each
change.
...And 6 more matches
Debugger.Object - Firefox Developer Tools
note that this returns primitive values un
changed.
...ifvalue is a primitive, we return it un
changed; ifvalue is an object, we return the debugger.object instance representing that object, wrapped appropriately for use in this debugger.object's referent's compartment.
...
change(frame,name,olddescriptor,newdescriptor) the existing property namedname on the referent is being
changed from those given byolddescriptor to those given bynewdescriptor.
...And 6 more matches
Managing screen orientation - Web APIs
adjusting layout based on the orientation one of the most common cases for orientation
changes is when you want to revise the layout of your content based on the orientation of the device.
... some devices (mainly mobile devices) can dynamically
change the orientation of the screen based on their own orientation, ensuring that the user will always be able to read what's on the screen.
... while this behavior is perfectly suited for text content, there is some content that can be negatively affected by such a
change.
...And 6 more matches
CanvasRenderingContext2D.filter - Web APIs
a value of 0 leaves the input un
changed.
...a value of 0% will create an image that is completely black, while a value of 100% leaves the input un
changed.
...a value of 100% leaves the drawing un
changed.
...And 6 more matches
Detecting device orientation - Web APIs
increasingly, web-enabled devices are capable of determining their orientation; that is, they can report data indicating
changes to their orientation with relation to the pull of gravity.
...the first one is the deviceorientationevent, which is sent when the accelerometer detects a
change to the orientation of the device.
... by receiving and processing the data reported by these orientation events, it's possible to interactively respond to rotation and elevation
changes caused by the user moving the device.
...And 6 more matches
HTMLSlotElement.name - Web APIs
examples the following snippet is taken from our slot
change example (see it live also).
... let slots = this.shadowroot.queryselectorall('slot'); slots[1].addeventlistener('slot
change', function(e) { let nodes = slots[1].assignednodes(); console.log('element in slot "' + slots[1].name + '"
changed to "' + nodes[0].outerhtml + '".'); }); here we grab references to all the slots, then add a slot
change event listener to the 2nd slot in the template — which is the one that keeps having its contents
changed in the example.
... every time the element inserted in the slot
changes, we log a report to the console saying which slot has
changed, and what the new node inside the slot is.
...And 6 more matches
Basic concepts - Web APIs
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.
...the only way to
change the version is by opening it with a greater version than the current one.
... this will start a version
change transaction and fire an upgradeneeded event.
...And 6 more matches
MutationObserver.MutationObserver() - Web APIs
dom observation does not begin immediately; the observe() method must be called first to establish which portion of the dom to watch and what kinds of
changes to watch for.
... syntax const observer = new mutationobserver(callback) parameters callback a function which will be called on each dom
change that qualifies given the observed node or subtree and options.
... the callback function takes as input two parameters: an array of mutationrecord objects, describing each
change that occurred; and the mutationobserver which invoked the callback.
...And 6 more matches
MutationObserverInit.attributes - Web APIs
the mutationobserverinit dictionary's optional attributes property is used to specify whether or not to watch for attribute value
changes on the node or nodes being observed.
... syntax var options = { attributes: true | false } value a boolean value indicating whether or not to report through the callback any
changes to the values of attributes on the node or nodes being monitored.
... if true, the callback specified when observe() was used to start observing the node or subtree will be called any time one or more attributes have
changed on observed nodes.
...And 6 more matches
Inputs and input sources - Web APIs
let inputsourcelist = xrsession.inputsources; due to the fact that the contents of the xrinputsource objects representing each input source in the list are read-only,
changes to these inputs are made by the webxr system by deleting the source's record and adding a new one to replace it.
... an inputsources
change event is sent to your xrsession whenever one or more of the input sources
change, or when an input source is added to or removed from the list.
... for example, if you need to keep up with which controller is held in each of the player's hands, you might do something like this: let inputsourcelist = null; let lefthandsource = null; let righthandsource = null; xrsession.addeventlistener("inputsources
change", event => { inputsourcelist = event.session.inputsources; inputsourcelist.foreach(source => { switch(source) { case "left": lefthandsource = source; break; case "right": righthandsource = source; break; } }); }); the inputsources
change event is also fired once when the session's creation callback first completes execution, so you can use it to fetch the input source list as soon as it's available at startup time.
...And 6 more matches
Starting up and shutting down a WebXR session - Web APIs
additionally, it is updated to maintain compatibility with browsers as their support for webxr and other technologies related to it and to the implementation of the polyfill
change over time.
... if you use xr input controllers, watch the inputsources
change event to detect the addition or removal of xr input controllers, and the various select and squeeze action events.
... you may want to watch for the xrsystem event device
change so you can be advised when the set of available immersive devices
changes.
...And 6 more matches
Using XMLHttpRequest - Web APIs
in this guide, we'll take a look at how to use xmlhttprequest to issue http requests in order to ex
change data between the web site and a server.
...it starts with "xml" because when it was created the main format that was originally used for asynchronous data ex
change were xml handling responses there are several types of response attributes defined by the living standard specification for the xmlhttprequest() constructor.
...however, this method is a "last resort" since if the xml code
changes slightly, the method will likely fail.
...And 6 more matches
Understandable - Accessibility
success criteria how to conform to the criteria practical resource 3.2.1 on focus (a) when a control or other page feature receives focus, it should not
change the context in a way that may confuse or disorientate the user.
...for example, focusing a navigation menu option should not
change the displayed page — it should be activated before the display
changes.
... 3.2.2 on input (a) when data is inputted into a control, or a setting is
changed, context should not be
changed unexpectedly.
...And 6 more matches
Aligning Items in a Flex Container - CSS: Cascading Style Sheets
change the size of the container or nested element and the nested element always remains centered.
...you can
change the value of align-items or
change the values of align-self on the individual items to see how this works.
... if we
change our flex-direction to column, align-items and align-self will align the items to the left and right.
...And 6 more matches
Testing media queries programmatically - CSS: Cascading Style Sheets
once you've created a mediaquerylist object, you can check the result of the query or receive notifications when the result
changes.
...ing the result of a query once you've created your media query list, you can check the result of the query by looking at the value of its matches property: if (mediaquerylist.matches) { /* the viewport is currently in portrait orientation */ } else { /* the viewport is not currently in portrait orientation, therefore landscape */ } receiving query notifications if you need to be aware of
changes to the evaluated result of the query on an ongoing basis, it's more efficient to register a listener than to poll the query's result.
... to do this, call the addlistener() method on the mediaquerylist object, with a callback function to invoke when the media query status
changes (e.g., the media query test goes from true to false): // create the query list.
...And 6 more matches
Challenge solutions - Developer guides
cascading and inheritance inherited styles challenge
change your stylesheet so that only the red letters are underlined.
... both paragraphs blue challenge now
change the rule you have just added (without changing anything else), to make the first paragraph blue too.
... solution
change the selector of the new rule to be a tag selector using p: p { color: blue; } the rules for the other colors all have more specific selectors, so they override the blue of the paragraph.
...And 6 more matches
Browser detection using the user agent - HTTP
while user agent sniffing can sometimes detect these, not all devices are the same: some mobile devices have big screen sizes, some desktops have a small touchscreen, some people use smart tv's which are an entirely different ballgame altogether, and some people can dynamically
change the width and height of their screen by flipping their tablet on its side!
...using this information of whether the device has a touchscreen, do not
change the entire layout of the website just for touch devices: you will only create more work and maintenance for yourself.
...always be very deliberate about choosing the right media query and choosing the right >=, <=, >, or < in any corresponding javascript because it is very easy to get these mixed up, resulting in the website looking wonking right at the screen size where the layout
changes.
...And 6 more matches
Details of the object model - JavaScript
you cannot
change the number or the type of properties of a class after you define the class.
...the newly-created object simply gets the default values, which you can
change at a later time.
...you cannot
change the superclass outside the class definition.
...And 6 more matches
Enhanced Extension Installation - Archive of obsolete content
extension installation and registration is also prohibitively difficult/annoying for developers, who are forced to either dangerously hand-edit all the appropriate manifest files, or package their code as a xpi and install it that way every time they make a
change.
... when
changes are made to the extensions datasource - new items are installed, old items uninstalled, enabled or disabled, a .autoreg file is written to the profile directory as well, which tells the startup code that the system has been modified, so that it destroys the component registries, finishes pending transactions and regenerates metadata appropriately.
...the system also writes a .autoreg file to the profile folder which tells the startup system that something has
changed on the next restart.
...And 5 more matches
The Essentials of an Extension - Archive of obsolete content
if our extension needed to look differently on different systems, we could
change the manifest file so that it looks like this: content xulschoolhello content/ skin xulschoolhello classic/1.0 skin/unix/ skin xulschoolhello classic/1.0 skin/mac/ os=darwin skin xulschoolhello classic/1.0 skin/win/ os=winnt locale xulschoolhello en-us locale/ this way we can have separate skins for windows, mac os x, and linux (plus other unix-lik...
...this division allows other developers to create themes that replace skins, and translators to create localizations in different languages, all of this without having to
change your extension or your code.
... if you have too many files in the content and you want to organize them in subdirectories, there's nothing you need to
change in chrome.manifest, all you need is to add the right path after content in the uri.
...And 5 more matches
How to Write and Land Nanojit Patches - Archive of obsolete content
repository: http://hg.mozilla.org/projects/nanojit-central (or clone ssh://hg.mozilla.org/projects/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 tracemonkey, one in tamarin-redux.
... these follow-up landings on tracemonkey and tamarin-redux will overwrite any
changes made to nanojit in tracemonkey and tamarin-redux!
... so, do not land nanojit
changes directly to the tracemonkey and tamarin-redux repositories!
...And 5 more matches
Textbox (XPFE autocomplete) - Archive of obsolete content
completesearch, autocompletesearchparam, autofill, autofillaftermatch, autofill, completedefaultindex, crop, disableautocomplete, disableautocomplete, disabled, disablehistory, enablehistory, focused, forcecomplete, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, ignoreblurwhilesearching, inputtooltiptext, label, maxlength, maxrows, minresultsforpopup, minresultsforpopup, nomatch, on
change, onerrorcommand, oninput, onsearchcomplete, ontextcommand, ontextentered, ontextrevert, ontextreverted, open, readonly, searchsessions, showcommentcolumn, showcommentcolumn, showpopup, size, tabindex, tabscrolling, tabscrolling, timeout, type, useraction, value properties accessible, alwaysopenpopup, autofill, autofillaftermatch, completedefaultindex, crop, disableautocomplete, di...
...you might use a script to
change this attribute.
...you might use a script to
change this attribute.
...And 5 more matches
Splitters - Archive of obsolete content
an example is the mozilla browser window, where you can
change the size of the sidebar panel by dragging the bar in-between the two frames.
...this attribute can also be set to grow, in which case the elements to the right of the splitter do not
change size when the splitter is dragged, but instead the entire box
changes size.
...this means that when the splitter is dragged, the farthest element after it will
change size.
...And 5 more matches
tree - Archive of obsolete content
however, the content view will automatically update the tree if treeitems are
changed.
...also tree widget
changes.
... enablecolumndrag type: boolean when set to true, the user may drag the column headers around to
change the order in which they are displayed.
...And 5 more matches
Responsive design - Learn web development
it is an idea that
changed the way we design for a multi-device web, and in this article, we'll help you understand the main techniques you need to know to master it.
...again, observe the result as you
change the browser window size.
...rather than having one layout for all screen sizes, the layout could be
changed.
...And 5 more matches
Basic math in JavaScript — numbers and operators - Learn web development
active learning: sizing a canvas box in this exercise, you will manipulate some numbers and operators to
change the size of a box.
...let's try the following:
change the line that calculates x so the box is still 50px wide, but the 50 is calculated using the numbers 43 and 7 and an arithmetic operator.
...
change the line that calculates y so the box is 75px high, but the 75 is calculated using the numbers 25 and 3 and an arithmetic operator.
...And 5 more matches
Getting started with React - Learn web development
you very much should
change the text inside the <title> element in this file to reflect the title of your application.
... take a moment to
change the <p> tag on line 6 so that it reads "hello, world!", then save your file.
... you'll notice that this
change is immediately rendered in the development server running at http://localhost:3000 in your browser.
...And 5 more matches
Deployment and next steps - Learn web development
it also starts a development server and watches for
changes, recompiling the app and refreshing the page when a
change occurs.
...in this case, svelte won't lunch a web server or keep watching for
changes.
... in the file package.json you can see that the dev and start scripts are just calling rollup: "scripts": { "build": "rollup -c", "dev": "rollup -c -w", "start": "sirv public" }, in the dev script we are passing the -w argument, which tells rollup to watch files and rebuild on
changes.
...And 5 more matches
Introducing a complete toolchain - Learn web development
netlify is a hosting service for static websites (that is, websites that entirely consist of files that do not
change in real time), which lets us deploy multiple times a day and freely hosts static sites of all kinds.
...you will probably want to review this part of the toolchain semi-regularly and consider if there's any upgrades or
changes you should introduce, but this shouldn't be required too often.
...it offers a way to "commit" blocks of work as you progress, along with comments such as "x new feature implemented", or "bug z now fixed due to y
changes".
...And 5 more matches
Creating reftest-based unit tests
but an operating system does
change with time.
...and a browser may
change the visual effect produced by a tag while still being compliant with relevant standards.
...if a browser
changes the depth of the indenting and the visual construct is tested against an invariant, the test would appear to fail.
...And 5 more matches
AddonListener
addonlisteners can be registered with addaddonlistener() and will then receive notification of
changes to the add-ons currently installed.
... void ondisabling(in addon addon, in boolean needsrestart) void ondisabled(in addon addon) void oninstalling(in addon addon, in boolean needsrestart) void oninstalled(in addon addon) void onuninstalling(in addon addon, in boolean needsrestart) void onuninstalled(in addon addon) void onoperationcancelled(in addon addon) void onproperty
changed(in addon addon, in string properties[]) methods onenabling() called when an add-on is about to be enabled.
... void onenabling( in addon addon, in boolean needsrestart ) parameters addon the addon that is being enabled needsrestart true if an application restart is necessary for the
change to take effect onenabled() called when an add-on has been enabled.
...And 5 more matches
PopupNotifications.jsm
method overview void location
change(); notification getnotification(id, browser); void remove(notification); notification show(browser, id, message, anchorid, mainaction, secondaryactions, options); properties attribute type description ispanelopen boolean returns true if the notification panel is currently visible, false if it is not.
... methods location
change() the consumer can call this method to let the popup notification module know that the current browser's location has
changed.
... void location
change(); parameters none.
...And 5 more matches
NSS API Guidelines
for example, pkcs #7 is used to encrypt certificate data to ex
change between applications, or to encrypt s/mime message data.
...these data structures need to be examined on a case by case basis, to determine if they are truly stable and will not
change in future release it is necessary for the callers of the api to know the size of these structures, as they may allocate new ones and pass them down.
... experience shows that users of the security library expect arenas to be threadsafe, so we added locking, and other useful
changes.
...And 5 more matches
NSS tools : ssltab
-p port
change the default rendezvous port (1924) to another port.
...type = 12 (server_key_ex
change) 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_ex
change) length = 64 (0x000040) clientkeyex
change { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
...And 5 more matches
NSS tools : ssltap
-p port
change the default rendezvous port (1924) to another port.
...type = 12 (server_key_ex
change) 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_ex
change) length = 64 (0x000040) clientkeyex
change { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
...And 5 more matches
certutil
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.
... -w
change the password to a key database.
... certutil -v -n certificate-name [-b time] [-e] [-u cert-usage] -d [sql:]directory for example, to validate an email certificate: $ certutil -v -n "john smith's email cert" -e -u s,r -d sql:/home/my/sharednssdb modifying certificate trust settings the trust settings (which relate to the operations that a certificate is allowed to be used for) can be
changed after a certificate is created or added to the database.
...And 5 more matches
NSS tools : ssltap
-p port
change the default rendezvous port (1924) to another port.
... type = 12 (server_key_ex
change) 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_ex
change) length = 64 (0x000040) clientkeyex
change { message = {...} } } } ] --> [ sslrecord { 0: 14 03 00 00 01 |.....
...And 5 more matches
nsISelectionPrivate
inherits from: nsisupports last
changed in gecko 35 (firefox 35 / thunderbird 35 / seamonkey 2.32) warning: the content of this article may be out of date.
... method overview void addselectionlistener(in nsiselectionlistener newlistener); void endbatch
changes(); void getcachedframeoffset(in nsiframe aframe, in print32 inoffset, in nspointref apoint); native code only!
... void startbatch
changes(); wstring tostringwithformat(in string formattype, in unsigned long flags, in print32 wrapcolumn); attributes attribute type description cancacheframeoffset boolean frame offset cache can be used just during calling nseditor::endplaceholdertransaction.
...And 5 more matches
nsIWindowMediator
inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) the two most common uses of nsiwindowmediator are, enumerating all windows of a given type and getting the most recent / any window of a given type.
... methods addlistener() register a listener for window status
changes.
...ten to tab select and will fire alert in that window if (domwindow.gbrowser && domwindow.gbrowser.tabcontainer) { domwindow.gbrowser.tabcontainer.addeventlistener('tabselect', function () { domwindow.alert('tab was selected') }, false); } }, false); }, onclosewindow: function (awindow) {}, onwindowtitle
change: function (awindow, atitle) {} }; //to register services.wm.addlistener(windowlistener); //services.wm.removelistener(windowlistener); //once you want to remove this listener execute removelistener, currently its commented out so you can copy paste this code in scratchpad and see it work native code only!calculatezposition a window wants to be moved in z-order.
...And 5 more matches
Examine and edit HTML - Firefox Developer Tools
subtree modification attribute modification node removal use in console show dom properties show accessibility properties
change pseudo-class hover active focus focus-within visited screenshot node scroll into view copy inner html outer html css selector css path xpath image data-url attribute paste inner html outer html before after as first child as last child expand all collapse all open link in new tab * open file in debugger * open ...
... (
change pseudo-class) hover set the :hover css pseudo-class.
... (
change pseudo-class) active set the :active css pseudo-class.
...And 5 more matches
Style Editor - Firefox Developer Tools
you can save any
changes you've made to the style sheet to your local computer by clicking the save button in the bottom-right corner of each sheet's entry in the list.
...any
changes you make are immediately applied to the page.
... this makes it easy to experiment with, revise, and test
changes.
...And 5 more matches
BluetoothRemoteGATTDescriptor - Web APIs
to
change preferences in chrome, visit chrome://flags.
...to
change preferences in chrome, visit chrome://flags.
...to
change preferences in chrome, visit chrome://flags.
...And 5 more matches
ByteLengthQueuingStrategy - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support 46safari ?
...to
change preferences in firefox, visit about:config.opera android full support 43safari ios ?
...to
change preferences in firefox, visit about:config.ie no support noopera full support 46safari ?
...And 5 more matches
CountQueuingStrategy - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support 46safari ?
...to
change preferences in firefox, visit about:config.opera android full support 43safari ios ?
...to
change preferences in firefox, visit about:config.ie no support noopera full support 46safari ?
...And 5 more matches
Guide to the Fullscreen API - Web APIs
notification when fullscreen mode is successfully engaged, the document which contains the element receives a fullscreen
change event.
... when fullscreen mode is exited, the document again receives a fullscreen
change event.
... note that the fullscreen
change event doesn't provide any information itself as to whether the document is entering or exiting fullscreen mode, but if the document has a non null fullscreenelement, you know you're in fullscreen mode.
...And 5 more matches
MutationObserver.observe() - Web APIs
the mutationobserver method observe() configures the mutationobserver callback to begin receiving notifications of
changes to the dom that match the given options.
... syntax mutationobserver.observe(target, options) parameters target a dom node (which may be an element) within the dom tree to watch for
changes, or to be the root of a subtree of nodes to be watched.
... (for example, if mutationobserverinit.childlist, mutationobserverinit.attributes, and mutationobserverinit.characterdata are all false.) the value of options.attributes is false (indicating that attribute
changes are not to be monitored), but attributeoldvalue is true and/or attributefilter is present.
...And 5 more matches
MutationObserverInit.attributeFilter - Web APIs
the mutationobserverinit dictionary's optional attributefilter property is an array of strings specifying the names of the attributes whose values are to be monitored for
changes.
... if the attributes permission is true but no attributefilter is included in the options object, all attributes' values are watched for
changes.
... syntax var options = { attributefilter: [ "list", "of", "attribute", "names" ] } value an array of domstring objects, each specifying the name of one attribute whose value is to be monitored for
changes.
...And 5 more matches
PannerNode - Web APIs
while this audioparam cannot be directly
changed, its value can be altered using its value property.
...while this audioparam cannot be directly
changed, its value can be altered using its value property.
...while this audioparam cannot be directly
changed, its value can be altered using its value property.
...And 5 more matches
TouchEvent - Web APIs
the touchevent interface represents an uievent which is sent when the state of contacts with a touch-sensitive surface
changes.
... touchevent.
changedtouches read only a touchlist of all the touch objects representing individual points of contact whose states
changed between the previous touch event and this one.
... touchevent.touches read only a touchlist of all the touch objects representing all current points of contact with the surface, regardless of target or
changed status.
...And 5 more matches
Touch events - Web APIs
interfaces touchevent represents an event that occurs when the state of touches on the surface
changes.
... function handlestart(evt) { evt.preventdefault(); console.log("touchstart."); var el = document.getelementbyid("canvas"); var ctx = el.getcontext("2d"); var touches = evt.
changedtouches; for (var i = 0; i < touches.length; i++) { console.log("touchstart:" + i + "..."); ongoingtouches.push(copytouch(touches[i])); var color = colorfortouch(touches[i]); ctx.beginpath(); ctx.arc(touches[i].pagex, touches[i].pagey, 4, 0, 2 * math.pi, false); // a circle at the start ctx.fillstyle = color; ctx.fill(); console.log("touchstart:" + i + "."); ...
...then we get the context and pull the list of
changed touch points out of the event's touchevent.
changedtouches property.
...And 5 more matches
Establishing a connection: The WebRTC perfect negotiation pattern - Web APIs
it could be as simple as assigning the polite role to the first peer to connect to the signaling server, or you could do something more elaborate like having the peers ex
change random numbers and assigning the polite role to the winner.
...to avoid races, we'll use this value later instead of the signaling state to determine whether or not an offer is being processed because the value of signalingstate
changes asynchronously, introducing a glare opportunity.
...here, we'll look at each
change made to the webrtc api and to best practice recommendations to make perfect negotiation possible.
...And 5 more matches
Using the Web Speech API - Web APIs
demo to show simple usage of web speech recognition, we've written a demo called speech color
changer.
... when the screen is tapped/clicked, you can say an html color keyword, and the app's background color will
change to that color.
... <h1>speech color
changer</h1> <p>tap/click then say a color to
change the background color of the app.</p> <div> <p class="output"><em>...diagnostic messages</em></p> </div> the css provides a very simple responsive styling so that it looks ok across devices.
...And 5 more matches
Cognitive accessibility - Accessibility
"essential" means that removing the moving, blinking, scrolling, or auto-updating information would fundamentally
change the meaning of the content and/or functionality, and information and functionality cannot be achieved in another way that would conform.
... use activation, not focus to
change context creating a
change in context should be intentional.
...rather, users should need to "activate" a feature to trigger the
change.
...And 5 more matches
Border-image generator - CSS: Cascading Style Sheets
*/ var inputslidermanager = (function inputslidermanager() { var subscribers = {}; var sliders = []; var inputcomponent = function inputcomponent(obj) { var input = document.createelement('input'); input.setattribute('type', 'text'); input.style.width = 50 + obj.precision * 10 + 'px'; input.addeventlistener('click', function(e) { this.select(); }); input.addeventlistener('
change', function(e) { var value = parsefloat(e.target.value); if (isnan(value) === true) setvalue(obj.topic, obj.value); else setvalue(obj.topic, value); }); return input; }; var slidercomponent = function slidercomponent(obj, sign) { var slider = document.createelement('div'); var startx = null; var start_value = 0; slider.addeventlistener("click", function(e) { d...
...d = id; checkbox.setattribute('type', 'checkbox'); checkbox.checked = state; label.setattribute('for', id); if (name) { label.classname = 'text'; if (align) label.classname += ' ' + align; label.textcontent = name; } node.appendchild(checkbox); node.appendchild(label); this.node = node; this.topic = topic; this.checkbox = checkbox; checkbox.addeventlistener('
change', function(e) { notify.call(this); }.bind(this)); buttons[topic] = this; }; var getnode = function getnode(topic) { return buttons[topic].node; }; var setvalue = function setvalue(topic, value) { var obj = buttons[topic]; if (obj === undefined) return; obj.checkbox.checked = value; notify.call(obj); }; var subscribe = function subscribe(topic, callback) { if (sub...
...s.length === 0) return; var file = browse.files[0]; if (file.type.slice(0, 5) !== 'image') return; freader.readasdataurl(file); return false; }; freader.onload = function(e) { imagecontrol.loadremoteimage(e.target.result); }; var load = function load() { browse.click(); }; browse.setattribute('type', 'file'); browse.style.display = 'none'; browse.on
change = loadimage; return { load: load }; })(); var imagecontrol = (function imagecontrol() { var scale = 0.5; var imgsource = new image(); var imgstate = null; var selected = null; var topics = ['slice', 'width', 'outset']; var properties = {}; properties['border1'] = { fill : false, slice_values : [27, 27, 27, 27], width_values : [20, 20, 20, 20], outset_va...
...And 5 more matches
CSS Grid Layout and Accessibility - CSS: Cascading Style Sheets
we can use the order property, which will
change how items auto-place.
... if you reorder things visually using grid layout, this will not
change how the items are ordered if the content is being read out by a screen reader, or other text to speech user agent.
... in addition, the reordering will not
change tab order.
...And 5 more matches
Using CSS transitions - CSS: Cascading Style Sheets
instead of having property
changes take effect immediately, you can cause the
changes in a property to take place over a period of time.
... for example, if you
change the color of an element from white to black, usually the
change is instantaneous.
... with css transitions enabled,
changes occur at time intervals that follow an acceleration curve, all of which can be customized.
...And 5 more matches
<blend-mode> - CSS: Cascading Style Sheets
a black layer leads to a black final layer, and a white layer leads to no
change.
... a black layer leads to no
change, and a white layer leads to a white final layer.
... a black foreground leads to no
change.
...And 5 more matches
filter - CSS: Cascading Style Sheets
a value of 100% leaves the input un
changed.
...a value of 100% leaves the input un
changed.
...a value of 0% leaves the input un
changed.
...And 5 more matches
HTTP caching - HTTP
on the other side, it has to be configured properly as not all resources stay identical forever: it is important to cache a resource only until it
changes, not longer.
...for the files in the application that will not
change, you can usually add aggressive caching.
...on the other side, some resources may
change on the server so the cache should be updated.
...And 5 more matches
The building blocks of responsive design - Progressive web apps (PWAs)
for web developers, it is now fairly common to be called upon to create a web site or app that
changes its user interface depending on the browser or device accessing the site to provide an optimized experience.
...you don't get caught in the situation of having to bring out more new site versions as more new browsers and platforms come out, and adjust code as feature support in existing browsers
changes.
...if the content, layout, and functionality need to
change greatly for different devices, it may not be such a good approach.
...And 5 more matches
tabs - Archive of obsolete content
called "style.css" and is located in the add-on's "data" directory: var tabs = require("sdk/tabs"); var { attach, detach } = require('sdk/content/mod'); var { style } = require('sdk/stylesheet/style'); var { togglebutton } = require("sdk/ui/button/toggle"); var style = style({ uri: './style.css' }); var button = togglebutton({ id: "stylist", label: "stylist", icon: "./icon-16.png", on
change: function(state) { if (state.checked) { attach(style, tabs.activetab); } else { detach(style, tabs.activetab); } } }); private windows if your add-on has not opted into private browsing, then you won't see any tabs that are hosted by private browser windows.
... a single tab will emit this event every time the dom is loaded: so it will be emitted again if the tab's location
changes or the content is reloaded.
... title the title of the tab (usually the title of the page currently loaded in the tab) this property can be set to
change the tab title.
...And 4 more matches
Bookmarks - Archive of obsolete content
you can easily
change this code to insert the new folder into the bookmarks toolbar by changing bookmarksmenufolder to another folder attribute.
... manipulating existing items there are a number of convenient methods you can use to make
changes to existing bookmarks and bookmark folders.
... the item title to
change the title of a bookmark or bookmark folder, you use the nsinavbookmarksservice.setitemtitle() method.
...And 4 more matches
Adding Toolbars and Toolbar Buttons - Archive of obsolete content
this can be
changed in the customize dialog by the user.
...the toolbarbutton element has the type attribute that allows you to
change the behavior of the button in many ways.
...the other types, checkbox and radio are useful when you have buttons that
change state when the user clicks on them.
...And 4 more matches
XPCOM Objects - Archive of obsolete content
well, those are applications that, simply put, take the underlying platform with perhaps a few
changes and additions, and then write their own chrome layer.
...but in this case we need to
change the interface to nsiprefbranch2, which is the one that includes the method that adds a preference observer.
... then we
change it back, because after that we only need to get and set preferences, and those methods are in nsiprefbranch.
...And 4 more matches
In-Depth - Archive of obsolete content
it has a -moz-image-region style in there which you can
change.
...
change those to match your new image as well.
... just continue this process for everything that you wish to
change and you'll have a new skin in no time.
...And 4 more matches
Creating a Skin for Firefox/Getting Started - Archive of obsolete content
see theme
changes in firefox 4 for details on how to extract skin files from firefox 4 or later.
... install your new theme before you can see the
changes you make to a firefox theme (since live edits are restrictively difficult to set up) you must first learn how to repackage the classic theme to make it installable.
...if we also had skins for chatzilla, we would need to add another line resembling the other ones and
change it to point to chatzilla.
...And 4 more matches
Content states and the style system - Archive of obsolete content
we will focus on describing how
changes in content state are handled.
... generally, whenever a node's content state
changes, style has to be reresolved (recomputed) for that node and all of its descendants.
...to this end, when a <code>contentstates
changed</code> notification is dispatched for a content node the first thing that's done is to is to check whether the content state
change something could affect any styles.
...And 4 more matches
Menu - Archive of obsolete content
beforeshow may modify the menu, and when the menu is shown, it will reflect the
changes.
...if the menu is hidden, it will reflect the
changes when it is next shown.
... if the menu is visible, it will reflect the
changes immediately.
...And 4 more matches
Tamarin build documentation - Archive of obsolete content
the work for that fix also included some
changes to the configure.py default behavior to decouple the --target switch from sdk choice: there is a new switch, --mac-sdk, that selects the 10.4u, 10.5 or 10.6 sdk.
...this sdk/ndk *must* be used if you've cloned tamarin at
changeset 5844:92ad3ca84a0b or later and will be using the cross-compile build method.
... -
change the variable android_device in the makefile (near line 65) to point to your sdk/ndk top folder.
...And 4 more matches
Sorting Results - Archive of obsolete content
the user can
change the sort column and direction by clicking the column headers, however, you can programmatically
change the sort as well.
...if the tree is sorted by name, and the user clicks on the date column header, the sort will
change to the date column.
...these attributes are modified when the user
changes the sort.
...And 4 more matches
Template Logging - Archive of obsolete content
the first debugging method involves logging all new results that apply to the template due to the data changing as well as logging results that are
changed or removed.
...this logging of result
changes is not done by default; it must be enabled with a flag.
...the template's generated content will not
change in this example as an active result is not changing.
...And 4 more matches
textbox (Toolkit autocomplete) - Archive of obsolete content
attributes accesskey, autocompletepopup, autocompletesearch, autocompletesearchparam, completedefaultindex, completeselectedindex,crop, disableautocomplete, disabled, disablekeynavigation, enablehistory, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputtooltiptext, label, maxlength, maxrows, minresultsforpopup, nomatch, on
change, oninput, onsearchcomplete, ontextentered, ontextreverted, open, readonly,showcommentcolumn, showimagecolumn, size, tabindex, tabscrolling, timeout, type, value properties accessibletype, completedefaultindex, controller, crop, disableautocomplete, disablekeynavigation, disabled, editable, focused, forcecomplete, highlightnonmatches, ignoreblurwhilesearching, inputfield, label, maxlengt...
...you might use a script to
change this attribute.
... overview an on
change attribute is an event listener to the object for the event
change.
...And 4 more matches
Box Objects - Archive of obsolete content
unless you
change the style for an element, most xul elements will usually use the box layout object or one of its subtypes.
...naturally, this will
change the appearance and function of the element.
...for example, a flexible element will
change in size and the box object dimensions will update accordingly.
...And 4 more matches
Using Spacers - Archive of obsolete content
if you place a spacer directly inside a window, the spacer will grow in size when the size of the window is
changed.
... if you
change the size of the find files window, you can see that the elements have remained where they started.
...the flex attribute is used to specify if an element can
change size to fit the box (in this case, the window) it is in.
...And 4 more matches
colorpicker - Archive of obsolete content
attributes disabled, color, on
change, preference, tabindex, type properties accessibletype, color, disabled, open, tabindex, value examples <colorpicker/> attributes disabled type: boolean indicates whether the element is disabled or not.
...you can assign a string of the form #rrggbb to this property to
change the selected color.
... overview an on
change attribute is an event listener to the object for the event
change.
...And 4 more matches
prefwindow - Archive of obsolete content
on platforms where the convention is to apply
changes immediately, the preferences are adjusted as soon as the user interface element is
changed.
...the following values can be used in the list: accept: the ok button, which will accept the
changes when pressed.
...if it is set to true any
changes to settings are supposed to be applied immediately.
...And 4 more matches
textbox - Archive of obsolete content
attributes cols, decimalplaces, disabled, emptytext, hidespinbuttons, increment, label, max, maxlength, min, multiline, newlines, onblur, on
change, onfocus, oninput, placeholder, preference, readonly, rows, searchbutton, size, spellcheck, tabindex, timeout, type, value, wrap, wraparound properties accessibletype, clickselectsall, decimalplaces, decimalsymbol, defaultvalue, disabled, editor, emptytext, increment, inputfield, label, max, maxlength, min, placeholder, readonly, searchbutton, selectionend, selectionstart, size, spinbuttons,...
... increment type: integer the amount by which the curpos (for scroll bars) or value (for number boxes and scale) attribute
changes when the arrows are clicked(or scales are dragged).
... possible values: pasteintact paste newlines un
changed pastetofirst paste text up to the first newline, 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:...
...And 4 more matches
wizard - Archive of obsolete content
the pages are displayed in the order that they are placed in the wizard, unless you use the next and pageid attributes on the pages to
change the sequence.
...you can modify this value to
change the current page.
...you can
change the selected page by modifying this property.
...And 4 more matches
Audio for Web games - Game development
note: playing part of your file at zero volume could also work if the browser allows you to
change volume (see below).
... note: adding a web app to your mobile's homescreen may
change its capabilities.
... note: volume
changeability is tested with our volume test example.
...And 4 more matches
Implementing controls using the Gamepad API - Game development
the gamepad api achieves this by providing an interface exposing button presses and axis
changes that can be used inside javascript code to handle the input.
... api status and browser support the gamepad api is still at the working draft stage in the w3c process, which means its implementation might still
change, but saying that the browser support is already quite good.
...the theme for the competition was "
change", so they submitted a game where you have to feed the hungry fridge by tapping the healthy food (apples, carrots, lettuces) and avoid the "bad" food (beer, burgers, pizza.) a countdown
changes the type of food the fridge wants to eat every few seconds, so you have to be careful and act quickly.
...And 4 more matches
WAI-ARIA basics - Learn web development
states differ from properties in that properties don't
change throughout the lifecycle of an app, whereas states can
change, generally programmatically via javascript.
... accessibility of non-semantic controls: when a series of nested <div>s along with css/javascript is used to create a complex ui-feature, or a native control is greatly enhanced/
changed via javascript, accessibility can suffer — screenreader users will find it difficult to work out what the feature does if there are no semantics or other clues.
... accessibility of non-semantic controls this follows on from the previous section — when a series of nested <div>s along with css/javascript is used to create a complex ui-feature, or a native control is greatly enhanced/
changed via javascript, not only can keyboard accessibility suffer, but screenreader users will find it difficult to work out what the feature does if there are no semantics or other clues.
...And 4 more matches
Cascade and inheritance - Learn web development
the live example below allows you to play with the css and see what happens when you make
changes.
...if you remove the rule how does it
change the color of the link?
... which of the links will
change color if you define a new color for the <a> element — for example a { color: red; }?
...And 4 more matches
Beginner's guide to media queries - Learn web development
for example, to
change the body text color to red if the viewport is exactly 600 pixels, you would use the following media query.
...to
change the body text color if the device is in landscape orientation, use the following media query.
...this means that instead of targetting specific sizes for all designs, a better approach is to
change the design at the size where the content starts to break in some way.
...And 4 more matches
Getting started with CSS - Learn web development
this can be done by simply choosing the html element that you want to
change, and using a css rule to
change the way it looks.
... looking at that page you will discover that in addition to removing the list bullets you can
change them — try changing them to square bullets by using a value of square.
...so in your example document, you should find that the <em> in the third list item is now purple, but the one inside the paragraph is un
changed.
...And 4 more matches
Drawing graphics - Learn web development
you can't do anything to
change this, so you have to think carefully about the order in which you draw the graphics.
... add the following to the previous example, again below the previous javascript lines: ctx.strokestyle = 'rgb(255, 255, 255)'; ctx.strokerect(25, 25, 175, 200); the default width of strokes is 1 pixel; you can adjust the linewidth property value to
change this (it takes a number representing the number of pixels wide the stroke is).
...if you were to
change true to false and then re-run the code, only the 90 degree slice of the circle would be drawn.
...And 4 more matches
Componentizing our React app - Learn web development
that second bullet is especially valuable: making a component out of common ui elements allows you to
change your code in one place and see those
changes everywhere that component is used.
...the problem is, we don't typically want to reuse all of each component; we want to reuse most parts, and
change small pieces.
...once again, we want to reuse most of the ui that makes up a <todo /> component, but
change one thing.
...And 4 more matches
TypeScript support in Svelte - Learn web development
just take into account that the svelte community is constantly improving svelte typescript support, so you should run npm update regularly to take advantage of the latest
changes.
...to use it from regular javascript files, just
change the file extension from .js to .ts.
... we can also see that the setuptypescript.js file made a couple of
changes to our project.
...And 4 more matches
Getting started with Svelte - Learn web development
svelte will watch for file updates, and automatically recompile and refresh the app for you when
changes are made to the source files.
...label, and choosing inspect: when compiling the app, svelte
changes our h1 styles definition to h1.svelte-1tky8bj, and then modifies every <h1> element in our component to <h1 class="svelte-1tky8bj">, so that it picks up the styles as required.
... making a couple of
changes now that we have a general idea of how it all fits together, we can start making a few
changes.
...And 4 more matches
Dynamic behavior in Svelte: working with variables and props - Learn web development
svelte will use it to diff the list when data
changes, rather than adding or removing items at the end, and it's a good practice to always specify one.
...svelte will generate the code to automatically update them whenever data they depend on is
changed.
...this is another example in which svelte takes advantage of valid javascript syntax and gives it a new purpose — in this case to to mean "re-run this code whenever any of the referenced values
change".
...And 4 more matches
Vue conditional rendering: editing existing todos - Learn web development
<template> <div class="stack-small"> <div class="custom-checkbox"> <input type="checkbox" class="checkbox" :id="id" :checked="isdone" @
change="$emit('checkbox-
changed')" /> <label :for="id" class="checkbox-label">{{label}}</label> </div> <div class="btn-group"> <button type="button" class="btn" @click="toggletoitemeditform"> edit <span class="visually-hidden">{{label}}</span> </button> <button type="button" class="btn btn__danger" @click="deletetodo"> delete <span class="visually-hidden"...
... update the <to-do-item></to-do-item> call inside the app.vue template to look like this: <to-do-item :label="item.label" :done="item.done" :id="item.id" @checkbox-
changed="updatedonestatus(item.id)" @item-deleted="deletetodo(item.id)" @item-edited="edittodo(item.id, $event)"> </to-do-item> and there you have it — you should now be able to edit and delete items from the list!
...if you try checking (or unchecking) it again, the completed count will
change in the opposite way to what you'd expect.
...And 4 more matches
Focus management with Vue refs - Learn web development
any updates are first performed on the in-memory nodes, and then all the
changes that need to be made to the actual nodes on the page are synced in a batch.
... well, remember that when we
change isediting to true, we no longer render the section of the component featuring the "edit" button.
...because vue is trying to optimize and batch
changes, it won't immediately update the dom when we set isediting to false.
...And 4 more matches
What to do and what not to do in Bugzilla
changing the bug information fields summary you should
change the summary if the current one is unclear or does not correctly describe the issue covered by the bug.
... you should not
change the summary in order to morph the bug to describe a different issue.
...if a bug is windows-only,
change the field to the oldest affected operating system.
...And 4 more matches
Old Thunderbird build
this will only recompile files that
changed, but it's still a long haul.
... rebuilding to build after making
changes, run ./mozilla/mach build again.
... this will only rebuild what is necessary for these
changes.
...And 4 more matches
Simple Thunderbird build
this will only recompile files that
changed, but it's still a long haul.
... rebuilding to build after making
changes, run ./mach build again.
... this will only rebuild what is necessary for these
changes.
...And 4 more matches
Eclipse CDT Manual Setup
before you proceed any further, check that your
changes to eclipse's memory limits have taken effect and are present in eclipse/help > about eclipse > installation details > configuration.
... select "general > workspace" and select "refresh using native hooks or polling" and "refresh on access" to prevent eclipse giving you annoying "resource is out of sync" messages when files
change from under it due to mercurial or other external activity.
...the "active profile" field should then automatically
change to "mozilla".
...And 4 more matches
Embedding Tips
watch for
changes in nsiuricontentlistener::onstarturiopen().
...as the operation progresses, methods on the listener such as onstate
change, onprogress
change etc.
...when the operation is completed, the onstate
change will be notified by a combination of state_stop | state_is_network state flags.
...And 4 more matches
How to implement a custom autocomplete search component
note: when copying the examples below,
change the uuid that uniquely identifies the component, otherwise you might have problems if your component gets installed along another component derived from those same examples.
...ecause: it has no specific logic (it just returns a dummy array of choices) it doesn't care about compatibility with older gecko versions first copy the following javascript code into a file named basic_autocomplete.js into the components directory (or whatever components folder is appropriate in your case): warning: the uuid used below in chrome.manifest and assigned to class_id must be
changed before use.
... const ci = components.interfaces; const cu = components.utils; cu.import('resource://gre/modules/xpcomutils.jsm'); const class_id = components.id('x753d830-ba1e-11e0-962b-0800200c9a66'); // ←
change this const class_name = "basic autocomplete"; const contract_id = '@mozilla.org/autocomplete/search;1?name=basic-autocomplete'; /** * @constructor * * @implements {nsiautocompleteresult} * * @param {string} searchstring * @param {number} searchresult * @param {number} defaultindex * @param {string} errordescription * @param {array.<string>} results * @param {array.<string>|null=} comments */ function providerautocompleteresult(searchstring, searchresult, defaultindex, errordescription, results, comments) { this._searchstring = searchstring; this._searchresult = searchresult; ...
...And 4 more matches
Bootstrapping a new locale
hg allows localizers to work locally on their machines and then "push"
changes to their official mozilla repository.
...les/ ab-cd/dom cp -r mozilla-1.9.x/editor/locales/ ab-cd/editor cp -r mozilla-1.9.x/extensions/reporter/locales/chrome ab-cd/extensions cp -r mozilla-1.9.x/netwerk/locales/ ab-cd/netwerk cp -r mozilla-1.9.x/other-licenses/branding/firefox/locales/ ab-cd/other-licenses cp -r mozilla-1.9.x/security/manager/locales/ ab-cd/security cp -r mozilla-1.9.x/toolkit/locales/ ab-cd/toolkit getting started
change your directory to the new working directory so you are in the ~/[your working directory]/[ab-cd]/ path and can start localizing.
...$ hg pull -u # to pull
changes and update $ hg push # to push
changes to this repo import existing data?
...And 4 more matches
Localization formats
you may choose to present just the html for localization: we give an html file which lists several pieces of content like, <h1>getting started</h1> and the localizer translates to <h1>débuter avec firefox</h1> the localizer then submits the translated html or php back to us by either checking in
changes to svn or sending us a patch that pascal checks in.
...rtl or wider display) gives the possibility to customize content per locale simple workflow, just put the file on svn and it can appear on the staging server disadvantages to html very hard for qa if localizer
changes something incorrectly (i.e.
... can be hard to tell what has
changed .lang files historically, mozilla has used a gettext-like file to present content for localization.
...And 4 more matches
An overview of NSS Internals
this is often sufficient if you encrypt data for yourself, but as soon as you need to ex
change signed/encrypted data with communication partners, using public key encryption simplifies the key management.
...the public keys that are ex
changed between parties are transported using a container; the container is called a certificate, following standard x.509 version 3.
... a cryptographic transaction, such as encryption or decryption related to a data ex
change, usually involves working with the x.509 certs of your communication partners (peer).
...And 4 more matches
NSS 3.35 release notes
this includes a large number of
changes since 3.34, which supported only draft -18.
... for the sslsignaturescheme enum, the enumerated values ssl_sig_rsa_pss_sha* are deprecated in response to a
change in tls 1.3.
... notable
changes in nss 3.35 previously, nss used the dbm file format by default.
...And 4 more matches
NSS Developer Tutorial
the function prototype of an exported function, cannot be
changed, with these exceptions: a foo * parameter can be
changed to const foo *.
... this
change is always safe.
... sometimes an int parameter can be
changed to unsigned int, or an int * parameter can be
changed to unsigned int *.
...And 4 more matches
NSS Tools ssltap
-p port
change the default rendezvous port (1924) to another port.
... type = 12 (server_key_ex
change) 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_ex
change) length = 64 (0x000040) clientkeyex
change { message = {...} } }}]--> [sslrecord { 0: 14 03 00 00 01 |.....
...And 4 more matches
TPS Bookmark Lists
changes: an object containing new properties to be set for this bookmark when this asset list is used in a modify action.
...
changes: an object containing new properties to be set for this livemark when this asset list is used in a modify action.
...
changes: an object containing new properties to be set for this folder when this asset list is used in a modify action.
...And 4 more matches
TPS Tests
yes, this is cludgey, but it's effective enough and nobody has
changed it.
... // phase declarations var phases = { "phase1": "profile1", "phase2": "profile2", "phase3": "profile1" }; // asset list // the initial list of bookmarks to be added to the browser var bookmarks_initial = { "menu": [ { uri: "http://www.google.com", title "google.com",
changes: { // these properties are ignored by calls other than bookmarks.modify title: "google" } }, { folder: "foldera" }, { folder: "folderb" } ], "menu/foldera": [ { uri: "http://www.yahoo.com", title: "testing yahoo",
changes: { location: "menu/folderb" } } ] }; // the state of bookmarks after the first 'modify' action has be...
...note that it's equivalent to what you get after applying the properties // from "
changes" var bookmarks_after_first_modify = { "menu": [ { uri: "http://www.google.com", title "google" }, { folder: "foldera" }, { folder: "folderb" } ], "menu/folderb": [ { uri: "http://www.yahoo.com", title: "testing yahoo" } ] }; // phase implementation phase('phase1', [ [bookmarks.add, bookmarks_initial], [sync, sync_wipe_server] ]); phase('phase2', [ [sync], [bookmarks.verify, bookmarks_initial], [bookmarks.modify, bookmarks_initial], [bookmarks.verify, bookmarks_after_first_modify], [sync] ]); phase('phase3', [ [sync], [bookmarks.verify, bookmarks_after_first_modify] ]); the effects of this test file will be: firefo...
...And 4 more matches
Manipulating bookmarks using Places
you can easily
change this code to insert the new folder into the bookmarks toolbar by changing bookmarksmenufolder to another folder attribute.
... manipulating existing items there are a number of convenient methods you can use to make
changes to existing bookmarks and bookmark folders.
... the item title to
change the title of a bookmark or bookmark folder, you use the nsinavbookmarksservice.setitemtitle() method.
...And 4 more matches
nsIAccessibilityService
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsiaccessibleretrieval method overview nsiaccessible createouterdocaccessible(in nsidomnode anode); nsiaccessible createrootaccessible(in nsipresshell ashell, in nsidocument adocument); nsiaccessible createhtml4buttonaccessible(in nsisupports aframe); nsiaccessible createhypertextaccessible(in nsisupports aframe); nsiaccessible createhtmlbraccessible(in nsisupports aframe); nsiaccessible createhtmlbuttonaccessible(in nsisupports aframe); nsiaccessible createhtmlaccessiblebymarkup(in nsiframe aframe, in nsiweakreference aweakshell, in nsidomnode adomnode); nsiaccessible cre...
...le(in nsisupports aframe); nsiaccessible getaccessible(in nsidomnode anode, in nsipresshell apresshell, in nsiweakreference aweakshell, inout nsiframe framehint, out boolean aishidden); nsiaccessible addnativerootaccessible(in voidptr aatkaccessible); void removenativerootaccessible(in nsiaccessible arootaccessible); void invalidatesubtreefor(in nsipresshell apresshell, in nsicontent a
changedcontent, in pruint32 aevent); methods removenativerootaccessible() void removenativerootaccessible( in nsiaccessible arootaccessible ); invalidatesubtreefor() invalidate the accessibility cache associated with apresshell, for accessibles that were generated for acontainercontent and it's subtree.
... the container content node for the
change is passed in, rather than the
changed presentation for the content node itself.
...And 4 more matches
nsIContentPrefService
last
changed in gecko 2 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsisupports implemented by: @mozilla.org/content-pref/service;1.
... methods addobserver() adds an observer that monitors a preference for
changes.
...you may specify null to add a generic observer that is notified of all preference
changes.
...And 4 more matches
nsILoginManagerPrompter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/login-manager/prompter;1.
... to call this service, use: var loginmanagerprompter = components.classes["@mozilla.org/login-manager/prompter;1"] .getservice(components.interfaces.nsiloginmanagerprompter); method overview void init(in nsidomwindow awindow); void promptto
changepassword(in nsilogininfo aoldlogin, in nsilogininfo anewlogin); void promptto
changepasswordwithusernames([array, size_is(count)] in nsilogininfo logins, in pruint32 count, in nsilogininfo anewlogin); void prompttosavepassword(in nsilogininfo alogin); methods init() initialize the prompter.
... promptto
changepassword() ask the user if they want to
change a login's password.
...And 4 more matches
nsINavHistoryResult
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) places results use a model-view-controller (mvc) design pattern.
...the result indicates to the view when something
changes by using the nsinavhistoryresultviewer interface.
... when a result goes out of scope it will continue to observe
changes till it is cycle collected.
...And 4 more matches
nsIPushService
inherits from: nsisupports last
changed in gecko 46.0 (firefox 46.0 / thunderbird 46.0 / seamonkey 2.43) push lets a remote server send payloads to a web site, add-on, or component running in the browser.
... serviceworkerglobalscope.onpush push-subscription-
change null scope fired when the push server drops a subscription, or the subscription identifier
changes.
... serviceworkerglobalscope.onpushsubscription
change please make sure you listen for push-subscription-
change.
...And 4 more matches
nsITreeView
inherits from: nsisupports last
changed in gecko 22 (firefox 22 / thunderbird 22 / seamonkey 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.
...long row, in nsitreecolumn col); boolean isselectable(in long row, in nsitreecolumn col); boolean isseparator(in long index); boolean issorted(); void performaction(in wstring action); void performactiononcell(in wstring action, in long row, in nsitreecolumn col); void performactiononrow(in wstring action, in long row); void selection
changed(); void setcelltext(in long row, in nsitreecolumn col, in astring value); void setcellvalue(in long row, in nsitreecolumn col, in astring value); void settree(in nsitreeboxobject tree); void toggleopenstate(in long index); attributes attribute type description rowcount long the total number of rows in the tree (including ...
... selection
changed() should be called from a xul onselect handler whenever the selection
changes.
...And 4 more matches
nsIWindowsRegKey
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) the interface represents a single key in the registry.
...method overview void close(); void create(in unsigned long rootkey, in astring relpath, in unsigned long mode); nsiwindowsregkey 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 has
changed(); boolean haschild(in astring name); boolean hasvalue(in astring name); boolean iswatching(); void open(in unsigned long rootkey, in astring relpath, in unsigned long mode); nsiwindowsregkey openchild(in astring relpath, in unsigned long mode); acstring readbinaryvalue(in astring name); unsigned long long readint64value(in astring n...
...has
changed() boolean has
changed(); parameters none.
...And 4 more matches
EffectTiming.easing - Web APIs
the effecttiming dictionary's easing property in the web animations api specifies the timing function used to scale the time to produce easing effects, where easing is the rate of the animation's
change over time.
...available values include: linear a constant rate of
change, neither accelerating nor deccelerating.
... ease a decelerated rate of
change, going from fast to slow.
...And 4 more matches
Element.classList - Web APIs
see https://bugzilla.mozilla.org/show_bug.cgi?id=814014 polyfill the legacy onproperty
change event can be used to create a living classlist mockup thanks to a element.prototype.classname property that fires the specified event once it is
changed.
...implement the barebones domtokenlist livelyness polyfill if (typeof domtokenlist !== "function") (function(window){ var document = window.document, object = window.object, hasownprop = object.prototype.hasownproperty; var defineproperty = object.defineproperty, allowtokenlistconstruction = 0, skipprop
change = 0; function domtokenlist(){ if (!allowtokenlistconstruction) throw typeerror("illegal constructor"); // internally let it through } domtokenlist.prototype.tostring = domtokenlist.prototype.tolocalestring = function(){return this.value}; domtokenlist.prototype.add = function(){ a: for(var v=0, arglen=arguments.length,val="",ele=this[" ucl"],proto=ele[" uclp"]; v!=...
...=arglen; ++v) { val = arguments[v] + "", checkifvalidclasslistentry("add", val); for (var i=0, len=proto.length, resstr=val; i !== len; ++i) if (this[i] === val) continue a; else resstr += " " + this[i]; this[len] = val, proto.length += 1, proto.value = resstr; } skipprop
change = 1, ele.classname = proto.value, skipprop
change = 0; }; domtokenlist.prototype.remove = function(){ for (var v=0, arglen=arguments.length,val="",ele=this[" ucl"],proto=ele[" uclp"]; v !== arglen; ++v) { val = arguments[v] + "", checkifvalidclasslistentry("remove", val); for (var i=0, len=proto.length, resstr="", is=0; i !== len; ++i) if(is){ this[i-1]=this[i] }else{ if(this[i] !== val){ resstr+=this...
...And 4 more matches
Element - Web APIs
this
change is implemented in chrome since version 46.0 and firefox since version 48.0.
... event handlers element.onfullscreen
change an event handler for the fullscreen
change event, which is sent when the element enters or exits full-screen mode.
... this can be used to watch both for successful expected transitions, but also to watch for unexpected
changes, such as when your app is running in the background.
...And 4 more matches
Working with the History API - Web APIs
adding and modifying history entries using pushstate()
changes the referrer that gets used in the http header for xmlhttprequest objects created after you
change the state.
... if the user clicks back once again, the url will
change to http://mozilla.org/foo.html, and the document will get a popstate event, this time with a null state object.
... here too, going back doesn't
change the document's contents from what they were in the previous step, although the document might update its contents manually upon receiving the popstate event.
...And 4 more matches
Key Values - Web APIs
this will be
changed in firefox per bug 1232918.
... gdk_key_iso_prev_group (0xfe0a) "mode
change" [5] the mode
change key.
... vk_mode
change (0x1f) gdk_key_mode_switch (0xff7e) gdk_key_script_switch (0xff7e) qt::key_mode_switch (0x0100117e) keycode_switch_charset (95) "nextcandidate" the next candidate function key.
...And 4 more matches
MediaStreamTrack - Web APIs
if the track has been disconnected, this value can be
changed but has no more effect.
...it doesn't
change if the track is deassociated from its source.
...when the track is deassociated from its source, the label is not
changed.
...And 4 more matches
MutationObserverInit.attributeOldValue - Web APIs
the mutationobserverinit dictionary's optional attributeoldvalue property is used to specify whether or not to record the prior value of the altered attribute in mutationrecord objects denoting attribute value
changes.
... syntax var options = { attributeoldvalue: true | false } value a boolean value indicating whether or not the prior value of a
changed attribute should be included in the mutationobserver.oldvalue property when reporting attribute value
changes.
... example in this example, a mutation observer is set up to watch for
changes to the status and username attributes in any elements contained within a subtree that displays the names of users in a chat room.
...And 4 more matches
RTCIceTransport - Web APIs
it's possible that a better pair will be found and selected later; if you need to keep up with this, watch for the selectedcandidatepair
change event.
... gatheringstate
change sent to the rtcicetransport object to indicate that the value of the gatheringstate property has
changed, indicating a
change in this transport's ice candidate negotiation process.
... also available through the ongatheringstate
change event handler property.
...And 4 more matches
Selection API - Web APIs
you can run code in response to the selection being
changed, or a new selection being started, using the globaleventhandlers.onselection
change and globaleventhandlers.onselectstart event handlers.
... globaleventhandlers.onselection
change represents the event handler that is called when a selection
change event is fired on the current object (i.e.
... when the selected text range
changes).
...And 4 more matches
TreeWalker - Web APIs
if no such node exists, or if it is before that the root node defined at the object construction, returns null and the current node is not
changed.
...if no such child exists, returns null and the current node is not
changed.
...if no such child exists, null is returned and the current node is not
changed.
...And 4 more matches
Lifetime of a WebRTC session - Web APIs
the problem for users is that each individual computer on the internet no longer necessarily has a unique ip address, and, in fact, each device’s ip address may
change not only if they move from one network to another, but if their network’s address is
changed by nat and/or dhcp.
... in order to ex
change signaling information, you can choose to send json objects back and forth over a websocket connection, or you could use xmpp or sip over an appropriate channel, or you could use xmlhttprequest over https with polling, or any other combination of technologies you can come up with.
... information ex
changed during signaling there are three basic types of information that need to be ex
changed during signaling: control messages used to set up, open, and close the communication channel, and to handle errors.
...And 4 more matches
WebXR Device API - Web APIs
xrrenderstate provides a set of configurable properties which
change how the imagery output by an xrsession is composited.
...the xrreferencespace coordinate system is expected to remain un
changed through the lifespan of the xrsession.the world has no boundaries and extends infinitely in every direction.
... xrinputsourceevent sent when the state of an xrinputsource
changes.
...And 4 more matches
Window: popstate event - Web APIs
the popstate event of the window interface is fired when the active history entry
changes while the user navigates the session history.
... it
changes the current history entry to that of the last page the user visited or, if history.pushstate() has been used to add a history entry to the history stack, that history entry is used instead.
... note: when writing functions that process popstate event it is important to take into account that properties like window.location will already reflect the state
change (if it affected the current url), but document might still not.
...And 4 more matches
ARIA: switch role - Accessibility
if the role is applied to a non-focusable element, use the tabindex attribute to
change this.
...the developer is required to
change the value of the aria-checked attribute dynamically when the switch is toggled.
...a value of false means that the user can
change the widget's state; a value of true means that the user cannot
change the widget's state.
...And 4 more matches
ARIA: tab role - Accessibility
the common user experience pattern is a group of visual tabs above, or to the side of, a content area, and selecting a different tab
changes the content and makes the selected tab more prominent than the other tabs.
...the first tab has tabindex=0 on it, which we will later
change to whatever tab has aria-selected=true.
... all of the tabpanel elements have tabindex=0 to make them tabbable, and all but the currently active one have the hidden attribute, which we will
change with javascript.
...And 4 more matches
An overview of accessible web applications and widgets - Accessibility
presentational
changes dynamic presentational
changes include using css to
change the appearance of content (such as a red border around invalid data, or changing the background color of a checked checkbox), as well as showing or hiding content.
... state
changes aria provides attributes for declaring the current state of a ui widget.
... that an element is visible, but not editable or otherwise operable aria-grabbed: indicates the 'grabbed' state of an object in a drag-and-drop operation (for a full list of aria states, consult the aria list of states and properties.) developers should use aria states to indicate the state of ui widget elements and use css attribute selectors to alter the visual appearance based on the state
changes (rather than using script to
change a class name on the element).
...And 4 more matches
Accessibility documentation index - Accessibility
7 aria live regions aria, accessibility, arialive using javascript, it is possible to dynamically
change parts of a page without requiring the entire page to reload — for instance, to update a list of search results on the fly, or to display a discreet alert or notification which does not require user interaction.
... while these
changes are usually visually apparent to users who can see the page, they may not be obvious to users of assistive technologies.
... aria live regions fill this gap and provide a way to programmatically expose dynamic content
changes in a way that can be announced by assistive technologies.
...And 4 more matches
Web Accessibility: Understanding Colors and Luminance - Accessibility
luckily, css media queries level 5 will be a game-
changer in accessibility initiatives, because it will allow users to select settings that accomodate their needs best.
...if using other color spaces, see understanding success criterion 1.4.3." css color module level 4 will likely
change the domination of the srgb color space in the future.
... see the stack ex
change article, "formula to determine the brightness of rgb color".
...And 4 more matches
CSS grids, logical values, and writing modes - CSS: Cascading Style Sheets
i’ll be using the writing-mode property to make
changes to the writing mode applied to our grid, in order to demonstrate how the logical values work.
...the other properties will
change the way that text flows in our document, matching the different writing modes found around the world.
...r; display: grid; grid-template-columns: repeat(3, 100px); grid-template-rows: repeat(2, 100px); grid-gap: 10px; } <div class="wrapper"> <div class="item1">item 1</div> <div class="item2">item 2</div> <div class="item3">item 3</div> <div class="item4">item 4</div> <div class="item5">item 5</div> </div> logical values for alignment with the block and inline axis able to
change direction, the logical values for the alignment properties start to make more sense.
...And 4 more matches
font - CSS: Cascading Style Sheets
*/ p { font: bold italic large serif } /* use the same font as the status bar of the window */ p { font: status-bar } live sample html <p>
change the radio buttons below to see the generated shorthand and it's effect.
... </p> <form action="createshorthand()"> <div class="cf"> <div class="setpropcont"> font-style<br/> <input type="radio" id="font-style-none" name="font_style" checked="" value="" on
change="setcss()"> <label for="font-style-none">none</label><br/> <input type="radio" id="font-style-normal" name="font_style" value="normal" on
change="setcss()"> <label for="font-style-normal">normal</label><br/> <input type="radio" id="font-style-italic" name="font_style" value="italic" on
change="setcss()"> <label for="font-style-italic">italic</label><br/> <input type="radio" id="font-style-oblique" name="font_style" value="oblique" on
change="setcss()"> <label for="font-style-oblique">oblique</label> </div> <div class="setpropco...
...nt"> font-variant<br> <input type="radio" id="font-variant-none" name="font_variant" checked="" value=" " on
change="setcss()"> <label for="font-variant-none">none</label><br/> <input type="radio" id="font-variant-normal" name="font_variant" value="normal" on
change="setcss()"> <label for="font-variant-normal">normal</label><br/> <input type="radio" id="font-variant-small-caps" name="font_variant" value="small-caps" on
change="setcss()"> <label for="font-variant-small-caps">small-caps</label> </div> <div class="setpropcont"> font-weight<br/> <input type="radio" id="font-weight-none" name="font_weight" value="" on
change="setcss()"> <label for="font-weight-none">none</label><br/> <input type="radio" i...
...And 4 more matches
Web Audio playbackRate explained - Developer guides
the playbackrate property of the <audio> and <video> elements allows us to
change the speed, or rate, at which a piece of web audio or video is playing.
...oad = function () { var v = document.getelementbyid("myvideo"); var p = document.getelementbyid("pbr"); var c = document.getelementbyid("currentpbr"); p.addeventlistener('input',function(){ c.innerhtml = p.value; v.playbackrate = p.value; },false); }; finally, we listen for the input event firing on the <input> element, allowing us to react to the playback rate control being
changed.
... defaultplaybackrate and rate
change in addition to playbackrate, we also have a defaultplaybackrate property available, which lets us set the default playback rate: the playback rate to which the media resets; for example, if we
change the source of the video, or (in some browsers) when an ended event is generated.
...And 4 more matches
Overview of events and handlers - Developer guides
the displayed page remains un
changed until the browser requests a new page.
... with the
change to dynamic page rendering, browsers loop continuously between processing, drawing, presenting content, and waiting for some new event trigger.
...douglas crockford explains this
change effectively in several lectures, notably his talk, an inconvenient api: the theory of the dom, which shows the
change in flow from the original browser flow to the event driven browser.
...And 4 more matches
Rich-Text Editing in Mozilla - Developer guides
starting in firefox 3, mozilla also supports internet explorer's contenteditable attribute which allows any element to become editable or non-editable (the latter for when preventing
change to fixed elements in an editable environment).
...internet explorer, however, does not allow javascript to
change the current document's designmode.
... figure 2 : first example html: <body contenteditable="true" onload="load()"> javascript: function load(){ window.document.designmode = "on"; } example 2 the second example is a simple rich text editing page, where text can be bolded/italicized/underlined, new links can be added and the color of text
changed.
...And 4 more matches
Using the application cache - HTML: Hypertext Markup Language
reduced server load the browser only downloads resources that have
changed from the server.
...note that if you
change any cached resources on the server, you must also
change the manifest file itself, so that the browser knows it needs to fetch all the resources again.
... if the manifest file has
changed, all the files listed in the manifest—as well as those added to the cache by calling applicationcache.add()—are fetched into a temporary cache, following the appropriate http caching rules.
...And 4 more matches
Closures - JavaScript
one way of doing this is to specify the font-size of the body element (in pixels), and then set the size of the other elements on the page (such as headers) using the relative em unit: body { font-family: helvetica, arial, sans-serif; font-size: 12px; } h1 { font-size: 1.5em; } h2 { font-size: 1.2em; } such interactive text size buttons can
change the font-size property of the body element, and the adjustments are picked up by other elements on the page thanks to the relative units.
... var counter = (function() { var privatecounter = 0; function
changeby(val) { privatecounter += val; } return { increment: function() {
changeby(1); }, decrement: function() {
changeby(-1); }, value: function() { return privatecounter; } }; })(); console.log(counter.value()); // 0.
...the lexical environment contains two private items: a variable called privatecounter, and a function called
changeby.
...And 4 more matches
JavaScript data types and data structures - JavaScript
primitive values all types except objects define immutable values (that is, values which can't be
changed).
... bigints cannot be operated on inter
changeably with numbers.
... undefined [[writable]] boolean if false, the property's [[value]] cannot be
changed.
...And 4 more matches
Object.freeze() - JavaScript
a frozen object can no longer be
changed; freezing an object prevents new properties from being added to it, existing properties from being removed, prevents changing the enumerability, configurability, or writability of existing properties, and prevents the values of existing properties from being
changed.
... in addition, freezing an object also prevents its prototype from being
changed.
... for data properties of a frozen object, values cannot be
changed, the writable and configurable attributes are set to false.
...And 4 more matches
Codecs used by WebRTC - Web media technologies
this is due to a
change in google play store requirements that prevent firefox from downloading and installing the openh264 codec needed to handle h.264 in webrtc connections.
... the entire range of bit rates supported by opus (6 kbps to 510 kbps) is supported in webrtc, with the bit rate allowed to be dynamically
changed.
... if the connection is in the process of starting up, you can use the icegatheringstate
change event to watch for the completion of ice candidate gathering, then fetch the list.
...And 4 more matches
SVG documentation index - SVG: Scalable Vector Graphics
for example, this allows alphabetic baselines in roman text to stay aligned across font size
changes.
... 27 attributename needscompattable, svg, svg attribute the attributename attribute indicates the name of the css property or attribute of the target element that is going to be
changed during an animation.
...by default, only the spacing between characters is adjusted, but the glyph size can also be adjusted if you
change lengthadjust.
...And 4 more matches
SDK API Lifecycle - Archive of obsolete content
developers using the sdk's apis need to know how far they can trust that a given api will not
change in future releases.
...it has two main components: a stability index that defines how stable each module is a deprecation process that defines when and how stable sdk apis can be
changed or removed from future versions of the sdk while giving developers enough time to update their code.
...you can try it out and provide feedback, but we may
change or remove it in future versions without having to pass through a formal deprecation process.
...And 3 more matches
widget - Archive of obsolete content
first, in the content script,
change self to addon, and wrap it in a function: function init() { var play_button = document.getelementbyid("play-button"); play_button.onclick = function() { addon.port.emit("play"); } var pause_button = document.getelementbyid("pause-button"); pause_button.onclick = function() { addon.port.emit("pause"); } var stop_button = document.getelementbyid("stop-button"); stop_butto...
...widgets.widget({ id: "google-link", label: "widget with an image and a click handler", contenturl: "http://www.google.com/favicon.ico", onclick: function() { require("sdk/tabs").activetab.url = "http://www.google.com/"; } }); // a widget that
changes display on mouseover.
...this string has to be unique and must not be
changed over time.
...And 3 more matches
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 un
changed on other gecko-based platforms like thunderbird or seamonkey.
...well, the fact that you're also using c++ components doesn't
change that one whit.
...you also have to make one small
change to the makefile in the same directory, adding the following line: use_extension_manifest = 1 this tells make to create a single manifest file called chrome.manifest instead of creating separate manifests with goofy names for each package.
...And 3 more matches
Inline options - Archive of obsolete content
2" type="radio" title="options 2"> <radiogroup> <radio value="false" label="disabled"/> <radio value="true" label="enabled"/> </radiogroup> </setting> <!-- button example - not tied to a preference, but attached to a command --> <setting title="do something" type="control"> <button id="myaddon-button" label="click me" oncommand="alert('thank you!');"/> </setting> setting element
changed notifications most of the setting elements (it might be all i havent really looked), support oninput
changed attribute.
... so like for the type="file", once a user browses and picks a file, when it updates the label it will trigger the oninput
changed attribute.
... so if you would like to do some
changes to the xul on the inline options page you can do so.
...And 3 more matches
Custom XUL Elements with XBL - Archive of obsolete content
a field holds a value that can be
changed, except when the readonly attribute is set.
... a more common inheritance use case is when you want to
change the behavior of some methods and properties.
... with inheritance you could take the richlistbox element and modify it to make a rich item tree, or create a switch button that
changes state everytime it's clicked.
...And 3 more matches
Setting up an extension development environment - Archive of obsolete content
explore this profile a little:
change some settings, install any additional extensions, and finally close this instance of firefox.
... accessing firefox development preferences to
change preference settings in firefox or seamonkey, type about:config in the location bar.
... accessing thunderbird development preferences to
change preference settings in thunderbird, open the "preferences" (unix) or "options" (windows) interface.
...And 3 more matches
An Interview With Douglas Bowman of Wired News - Archive of obsolete content
wired news redesign in a nutshell driven by xhtml 1.0 transitional and css; allows centralized control over layout and appearance for thousands of pages; simple markup allows for rapid
changes to templates; average page weight dropped by almost half; page layout accomplished with simple css positioning; vastly increased accessibility without special coding or user agent detection.
...a few
changes to the css can completely alter the presentation of thousands of pages.
...since we had a separate template to work with, we
changed the media attribute of the linked print style sheet to "all", and eliminated the links to normal screen media files.
...And 3 more matches
CSS3 - Archive of obsolete content
experimental parts are vendor-prefixed and should either be avoided in production environments, or used with extreme caution as both their syntax and semantics can
change in the future.
... though today no module with a level greater than 3 is standardized, this will
change in the future.
...these should be no more
changes.
...And 3 more matches
Getting Started - Archive of obsolete content
install your new theme before you can see the
changes you make to a seamonkey theme (since live edits are restrictively difficult to set up) you must first learn how to repackage the classic theme to make it installable.
...if we also had skins for chatzilla, we would need to add another line resembling the other ones and
change it to point to chatzilla.
... but this list includes everything that we
changed, so just modify the blue text to point to match the name/version that you used in the sections before this.
...And 3 more matches
Venkman Introduction - Archive of obsolete content
at the time if this writing, the order and grouping of file names cannot be
changed.
...you may need to close and re-open any objects you had open to see the
change.
... double-clicking on a stack frame will
change the "current" frame.
...And 3 more matches
Building accessible custom components in XUL - Archive of obsolete content
r/xhtml2" xmlns:wairole="http://www.w3.org/2005/01/wai-rdf/guiroletaxonomy#" xmlns:waistate="http://www.w3.org/2005/01/wai-rdf/guistatetaxonomy#" onload="install_handlers()" > <script src="accjax.js"/> </code> by adding this javascript code and these css rules, we can tab to the spreadsheet see which cell, row header, or column header has focus click on other cells or headers to
change focus within the spreadsheet tab off the spreadsheet by pressing tab once tab back to the spreadsheet and automatically set focus to the previously focused cell or header inspect32 confirms that all of this really works; it's not just visual smoke and mirrors.
... when you click a spreadsheet cell, assistive technologies track the focus
change and know which cell has received focus.
... <caption>cells really get focus</caption> clicking a row or column headers also
changes the focus properly.
...And 3 more matches
Introduction to XUL - Archive of obsolete content
this will
change: tags and attributes will, as a rule, always be lower case as suggested in the xhtml working draft.
...(for standards purposes, we will probably need to
change the the mime type to something like "text/x-xul".) these files are processed using the same parser as "text/xml" files (and therefore subject to xml syntax rules, as they should be).
...these are currently nonstandard, of course, and subject to
change for now.
...And 3 more matches
Skinning XUL Files by Hand - Archive of obsolete content
to skin a xul file means to
change the overall look of that file by changing its style information.
... since the purpose of the global skin is to create a look for the entire application or chrome that can be
changed dynamically, you should not create style information in a custom css file that controverts the global skin unless you really mean to.
... if your xul file is to be a part of a larger application that can be skinned, like mozilla, you probably want your xul file to pick up the global
changes when the application is dynamically reskinned.
...And 3 more matches
Updating Commands - Archive of obsolete content
in addition, you will need to consider when the state could
change and when the commands should be updated.
...the command will become enabled whenever a textbox is focused and when the clipboard contents
change.
... focus: occurs when the focused element
changes.
...And 3 more matches
tabs - Archive of obsolete content
activating them will not
change the selectedindex.
... onselect type: script code this event is sent to the tabs element when this tab is
changed.
...if this attribute is false, the focus does not
change during navigation.
...And 3 more matches
Extentsions FAQ - Archive of obsolete content
; //css #myexten-toolbar-button[myexten-toolbar-button="on"] { list-style-image: url("chrome://myexten/skin/toolbar-button.png"); -moz-image-region: rect(0px 24px 24px 0px);} #myexten-toolbar-button[myexten-toolbar-button="off"] { list-style-image: url("chrome://myexten/skin/toolbar-button-off.png"); -moz-image-region: rect(0px 24px 24px 0px);} to implement a third i would simply
change add an attribute and the corresponding css see http://www.w3.org/tr/rec-css2/cascade.html#cascade friday, october 13 - 20, 2006 (↑ top) how to get a refenece to the sidebar window assuming you have chrome privileges, this should work: var ci = components.interfaces; var toplevelwindow = window.queryinterface(ci.nsiinterfacerequestor) .getinterface(ci.nsiwebnavigation) .qu...
...if you turn off the xul cache you don't even need to restart to see
changes, simply open a new window.
... firefox will clean all those preferences which are still "default", that is not
changed by the user or the application/extension.
...And 3 more matches
Common Firefox theme issues and solutions - Archive of obsolete content
toolbars and menus firefox application button application button doesn't
change styling for private browsing mode when in private browsing mode there needs to be a visual difference to the firefox app button that is displayed when tabs are on top and the menu bar is disabled.
... address bar identity box is missing padlock icons for secure sites in firefox 14 and later the identity box has been significantly
changed and the favicon has been replaced by an icon that indicates the website's status.
...this issue is fixed by adding the following css instructions to the file browser/preferences/aboutpermissions.css: .site-favicon { height: 16px; width: 16px; -moz-margin-end: 4px; list-style-image: url("chrome://mozapps/skin/places/defaultfavicon.png"); } web developer tools web developer toolbar {to be added} web console web console buttons do not
change appearance on the web console (tools > web developer > web console), the toolbar buttons on the left-hand side do not
change their appearance between their toggled on and toggled off status as a result it is not possible to determine which buttons are enabled.
...And 3 more matches
Using workers in extensions - Archive of obsolete content
this is used to initialize the worker, and to
change which stock is being monitored.
... the main thread the
changes here are also relatively minor, but crucial.
...let's take a look: startup: function() { // register to receive notifications of preference
changes this.prefs = components.classes["@mozilla.org/preferences-service;1"] .getservice(components.interfaces.nsiprefservice) .getbranch("stockwatcher2."); this.prefs.queryinterface(components.interfaces.nsiprefbranch2); this.prefs.addobserver("", this, false); this.tickersymbol = this.prefs.getcharpref("symbol").touppercase(); this.worker = new worker("chrome://stockwatcher2/content/ticker_worker.js"); // small little dance to get 'this' to refer to stockwatcher, not the // worker, when a message is recei...
...And 3 more matches
New in JavaScript 1.3 - Archive of obsolete content
the following is a
changelog for javascript from netscape navigator 4.0 to 4.5.
... the most significant
change in javascript 1.3 was compliance with ecma-262 and unicode by removing inconsistencies between javascript 1.2 and the new ecma standard (which was published in june 1997).
...
changed functionality in javascript 1.3
changes to date to conform with ecma-262 new constructor date(year, month, day, [,hours [, minutes [, seconds [, milliseconds ]]]]) additional method parameters: setmonth(month[, date]) sethours(hours[, min[, sec[, ms]]]) setminutes(min[, sec[, ms]]) setseconds(sec[, ms]) the length of an array (property length)...
...And 3 more matches
Debugging CSS - Learn web development
for inspecting the properties and values applied to elements on your page, and making
changes to them from the editor.
...the browser will also normalize all of the html, and the dom will also show any
changes made by javascript.
...in a similar fashion, you could
change the width or style of the border.
...And 3 more matches
Handling different text directions - Learn web development
you don't need to be working in a language which uses a vertical writing mode to want to do this — you could also
change the writing mode of parts of your layout for creative purposes.
... due to the fact that writing mode and direction of text can
change, newer css layout methods do not refer to left and right, and top and bottom.
... if you
change the writing mode of the boxes by switching the writing-mode property on .box to vertical-rl, you will see how the physical properties stay tied to their physical direction, whereas the logical properties switch with the writing mode.
...And 3 more matches
CSS values and units - Learn web development
the terms are basically inter
changeable — when you see something in css referred to as a data type, it is really just a fancy way of saying value.
...as an absolute unit this width will remain the same no matter what else
changes.
...if you
change the width of your browser window, the size of the box should
change, however this example is embedded into the page using an <iframe>, so this won't work.
...And 3 more matches
Grids - Learn web development
they help us to create designs where elements don’t jump around or
change width as we move from page to page, providing greater consistency on our websites.
...we will be working with this file for the first part of this lesson, making
changes to see how grid behaves.
...
change your track listing to the following definition, creating three 1fr tracks.
...And 3 more matches
Normal Flow - Learn web development
previous overview: css layout next this article explains normal flow, or the way that webpage elements lay themselves out if you have not
changed their layout.
... prerequisites: the basics of html (study introduction to html), and an idea of how css works (study introduction to css.) objective: to explain how browsers layout web pages by default, before we begin to make
changes.
... as detailed in the last lesson introducing layout, elements on a webpage lay out in the normal flow, if you have not applied any css to
change the way they behave.
...And 3 more matches
Storing the information you need — Variables - Learn web development
but one special thing about variables is that their contained values can
change.
...if we
changed var to let in the above example, it would fail with an error.
... updating a variable once a variable has been initialized with a value, you can
change (or update) that value by simply giving it a different value.
...And 3 more matches
Adding features to our bouncing balls demo - Learn web development
creating our new objects first of all,
change your existing ball() constructor so that it becomes a shape() constructor and add a new ball() constructor: the shape() constructor should define the x, y, velx, and vely properties in the same way as the ball() constructor did originally, but not the color and size properties.
...you should then make the following
changes: we want the evil circle to not be filled in, but rather just have an outer line (stroke).
...again, you can mostly just copy the ball.prototype.update definition, but there are a few
changes you should make: get rid of the last two lines — we don't want to automatically update the evil circle's position on every frame, because we will be moving it in some other way, as you'll see below.
...And 3 more matches
Client-Server Overview - Learn web development
you might for example use a head request to find out the last time a resource was updated, and then only use the (more "expensive") get request to download the resource if it has
changed.
...url parameters are inherently "insecure" as they can be
changed by users and then resubmitted.
...you would repeat a lot of code across each page (the basic page template, structure, etc.), and if you wanted to
change anything about the page structure — like add a new "related products" section for example — then you'd have to
change every page individually.
...And 3 more matches
Routing in Ember - Learn web development
because that application template is the entry point to our todo app, we'll need to make some
changes to allow for routing.
... in this file,
change <todolist /> to <todolist @todos={{ @model.alltodos }}/> the completed route model now update todomvc/app/routes/completed.js so it looks as follows: import route from '@ember/routing/route'; import { inject as service } from '@ember/service'; export default class completedroute extends route { @service('todo-data') todos; model() { let todos = this.todos; return { get ...
... in this file,
change <todolist /> to <todolist @todos={{ @model.completedtodos }}/> the active route model finally for the routes, let's sort out our active route.
...And 3 more matches
Introduction to client-side frameworks - Learn web development
the real problem is this: every time we
change our application’s state, we need to update the ui to match.
... the verbosity of dom
changes building html elements and rendering them in the browser at the appropriate time takes a surprising amount of code.
... working directly with the dom, as in this example, requires understanding many things about how the dom works: how to make elements; how to
change their properties; how to put elements inside of each other; how to get them on the page.
...And 3 more matches
Frequently Asked Questions for Lightweight themes
lightweight themes are easy-to-install, easy-to-use skins that
change the look of your firefox web browser.
... lightweight themes
change the header area of your browser, including the tab text color and the background tab colors.
... using lightweight themes how do i
change my current lightweight theme?
...And 3 more matches
Debugging on Windows
changing/setting the executable to debug vc++ 6.0: to
change or set the executable to debug, go to project > settings..., debug tab and select general from the drop down list.
... command line parameters and environment variables vc++ 6.0: to
change or set the command line options, go to project > settings..., debug tab and select general from the drop down list.
...you can
change this behaviour, and make visual c++ display whatever data member you want in whatever order, formatter however you like instead of just "{...}".
...And 3 more matches
Interface Compatibility
as we add new features to the web and to our applications, programming interfaces
change.
... the rules which govern interface
changes are different depending on the consumers and the languages involved.
...any
changes, including new features, must have super-review.
...And 3 more matches
Dict.jsm
note: the order in which items are returned is arbitrary, and may
change without notice.
... in addition, if the dictionary
changes during iteration, no guarantees are made as to what will happen.
... note: the order in which items are returned is arbitrary, and may
change without notice.
...And 3 more matches
Writing localizable code
if you
change the semantics of a localized string,
change the key.
... this will more likely be a good key name, and it will help tools to pick up that the
change you do is different from just a spell fix.
... l10n impact on frozen trees, there is the rule to not check in l10n-impact
changes.
...And 3 more matches
Gecko Profiler FAQ
this can
change some performance characteristics, but is a decent way to get a sense of which parts of a large function are expensive.
... overview of the
changes in the last (year?) to cleopatra/etc faster, hopefully more reliable has a timeline tab lets you hide threads with a context menu supports symbolication for local builds on windows if you run “mach buildsymbols” first profiling non-nsthreads?
... how can i run (micro-?) benchmarks on the memory allocator to see if
changes in it (or entire allocator replacements) are slower/faster?
...And 3 more matches
Introduction to NSPR
in nspr, a mutual exclusion lock (or mutex) of type prlock controls locking, and associated condition variables of type prcondvar communicate
changes in state among threads.
...a thread may wait on notification of a condition that signals
changes in the state of the associated data.
... other threads may notify the condition when
changes occur.
...And 3 more matches
NSS Config Options
ormat 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 ex
change 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 config="disallow=md5(ssl):sha1(ssl)...
...flags: turn on the following flags: ssl-lock: turn off the ability for applications to
change policy with the ssl_setcipherpolicy (or ssl_setpolicy).
... policy-lock: turn off the ability for applications to
change policy with the call nss_setalgorithmpolicy.
...And 3 more matches
Getting SpiderMonkey source code
the following command line downloads the entire mozilla repository, including the full
change history and a lot of gecko and firefox source code that isn't part of spidermonkey.
... it also
changes to the spidermonkey directory (js/src).
... hg clone https://hg.mozilla.org/mozilla-central/ cd js/src to avoid getting the full
change history, click the zip or gz links at https://hg.mozilla.org/index.cgi/mozilla-central/file/tip.
...And 3 more matches
IAccessibleTable
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) typically all accessible objects that represent cells or cell-clusters of a table will be at the same time children of the table.
...ssibletable, [out] long startingrowindex ); [propget] hresult columnindex([in] long cellindex, [out] long columnindex ); [propget] hresult iscolumnselected([in] long column, [out] boolean isselected ); [propget] hresult isrowselected([in] long row, [out] boolean isselected ); [propget] hresult isselected([in] long row, [in] long column, [out] boolean isselected ); [propget] hresult model
change([out] ia2tablemodel
change model
change ); [propget] hresult ncolumns([out] long columncount ); [propget] hresult nrows([out] long rowcount ); [propget] hresult nselectedchildren([out] long cellcount ); [propget] hresult nselectedcolumns([out] long columncount ); [propget] hresult nselectedrows([out] long rowcount ); [propget] hresult rowcolumnextentsatindex([in] long index, [out] long ...
...model
change() returns the type and extents describing how a table
changed.
...And 3 more matches
IAccessibleTable2
1.0 66 introduced gecko 1.9.2 inherits from: iunknown last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) please also refer to the iaccessibletablecell interface.
...get] hresult caption([out] iunknown accessible ); [propget] hresult cellat([in] long row, [in] long column, [out] iunknown cell ); [propget] hresult columndescription([in] long column, [out] bstr description ); [propget] hresult iscolumnselected([in] long column, [out] boolean isselected ); [propget] hresult isrowselected([in] long row, [out] boolean isselected ); [propget] hresult model
change([out] ia2tablemodel
change model
change ); [propget] hresult ncolumns([out] long columncount ); [propget] hresult nrows([out] long rowcount ); [propget] hresult nselectedcells([out] long cellcount ); [propget] hresult nselectedcolumns([out] long columncount ); [propget] hresult nselectedrows([out] long rowcount ); [propget] hresult rowdescription([in] long row, [out] bstr description );...
...model
change() returns the type and extents describing how a table
changed.
...And 3 more matches
imgIContainerObserver
1.0 66 introduced gecko 1.7 inherits from: nsisupports last
changed in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamonkey 2.9) if you wish to listen for activities on an imgicontainer, you should implement the frame
changed() method.
... method overview void frame
changed(in imgirequest arequest, in imgicontainer acontainer, [const] in nsintrect adirtyrect); native code only!
... methods native code only!frame
changed called when the frame for an image container has
changed.
...And 3 more matches
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 / seamonkey 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.
... void handleerror( in nsresult aresultcode, in moziplaceinfo aplaceinfo ); parameters aresultcode nsresult indicating the reason why the
change failed.
... handleresult() called for each visit added, title
change, or guid
change when passed to moziasynchistory.updateplaces().
...And 3 more matches
nsIFile
inherits from: nsisupports last
changed in gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamonkey 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.
...much of the documentation has not been updated to reflect this
change.
...it only
changes what this nsifile references.
...And 3 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 / seamonkey 2.2) implemented by: @mozilla.org/focus-manager;1 as a service: var focusmanager = components.classes["@mozilla.org/focus-manager;1"] .getservice(components.interfaces.nsifocusmanager); method overview void clearfocus(in nsidomwindow awindow); void contentremoved(in nsidocument adocument, in nsicontent aelement); native code only!
...setting the focusedwindow
changes the focused window and raises the toplevel window it is in.
... flag_noswitchframe 4 if attempting to
change focus in a window that is not focused, do not switch focus to that window.
...And 3 more matches
nsIMsgIncomingServer
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 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 strin...
...etnewmessages(in nsimsgfolder afolder, in nsimsgwindow amsgwindow, in nsiurllistener aurllistener); acstring getpasswordwithui(in astring apromptstring, in astring aprompttitle, in nsimsgwindow amsgwindow, out boolean okayvalue); astring getunicharattribute(in string name); astring getunicharvalue(in string attr); boolean isnewhdrduplicate(in nsimsgdbhdr anewhdr); void onuserorhostname
changed(in acstring oldname, in acstring newname); void performbiff(in nsimsgwindow amsgwindow); void performexpand(in nsimsgwindow amsgwindow); void removefiles(); void setboolattribute(in string name, in boolean value); void setboolvalue(in string attr, in boolean value); void setcharattribute(in string name, in acstring value); void setcharvalue(in string attr, in acstring value); voi...
... realhostname acstring real hostname of the server (if server name is
changed it is stored here) realusername acstring real username of the server (if username is
changed it is stored here) redirectortype string obsolete since gecko 1.9 rememberpassword boolean retentionsettings nsimsgretentionsettings rootfolder nsimsgfolder rootmsgfolder nsimsgfolder read only.
...And 3 more matches
nsITreeBoxObject
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports to get the treeboxobject for a tree: let boxobject = tree.boxobject; boxobject.queryinterface("components.interfaces.nsitreeboxobject"); or simply: let boxobject = tree.treeboxobject; method overview long getfirstvisiblerow(); long getlastvisiblerow(); long getpagelength(); void ensurerowisvisible(in long index); void ensurecellisvisible(in long row, in nsitreecolumn col); void scrolltorow(in long index); ...
...mn col); long getrowat(in long x, in long y); void getcellat(in long x, in long y, out long row, out nsitreecolumn col, out acstring childelt); void getcoordsforcellitem(in long row, in nsitreecolumn col, in acstring element, out long x, out long y, out long width, out long height); boolean iscellcropped(in long row, in nsitreecolumn col); void rowcount
changed(in long index, in long count); void beginupdatebatch(); void endupdatebatch(); void clearstyleandimagecaches(); attributes attribute type description columns nsitreecolumns readonly: obtain the columns.
... boolean iscellcropped(in long row, in nsitreecolumn col); parameters row the index of the row col the nsitreecolumn rowcount
changed() notify the tree that the number of rows
changed.
...And 3 more matches
Mailnews and Mail code review requirements
getting early ui-reviews this reduces the chance that work is rejected due to needing further user experience
changes, and hence is aimed at saving time for the developer and reviewers.
... peers may grant review in any area covered by mailnews/, provided they feel confident in their knowledge of the code being
changed.
... super-review is required in certain situations: significant architectural refactoring, any
change to any api, all
changes that affect how code modules interact.
...And 3 more matches
Thunderbird Binaries
trunk builds contain the very latest bleeding-edge
changes and updates, as well as 64-bit builds for windows.
...trunk builds contain the very latest bleeding-edge
changes and updates.
...at conception, a branch contains everything that the trunk contains, but from that point onwards, only certain fixes or
changes will be accepted.
...And 3 more matches
Thunderbird Configuration Files
double-click on a preference to
change its value.
...there are three files you should know about: userchrome.css used to
change the appearance of the browser.
... usercontent.css used to
change the appearance of web pages.
...And 3 more matches
Responsive Design Mode - Firefox Developer Tools
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.
... the mouse wheel
changes the size values by 1 pixel at a time you can also
change the device's screen size by grabbing the bottom-right corner of the viewport and dragging it to the size you want.
... dpr (pixel ratio) - beginning with firefox 68, the dpr is no longer editable; create a custom device in order to
change the dpr throttling - a drop-down list where you can select the connection throttling to apply, for example 2g, 3g, or lte enable/disable touch simulation - toggles whether or not responsive design mode simulates touch events.
...And 3 more matches
about:debugging (before Firefox 68) - Firefox Developer Tools
the big advantages of this method, compared with installing an add-on from an xpi, are: you don't have to rebuild an xpi and reinstall when you
change the add-on's code you can load an add-on without signing it and without needing to disable signing.
... before firefox 48 if you
change files that are loaded on demand, like content scripts or popups, then
changes you make are picked up automatically, and you'll see them the next time the content script is loaded or the popup is shown.
... if you
change files that stay loaded the whole time, like background scripts, then you can pick up
changes you've made by disabling and then re-enabling the add-on in the about:addons page.
...And 3 more matches
about:debugging - Firefox Developer Tools
starting in firefox 78, the url bar is editable, so that you can
change the url used by the browser on the remote device, by typing in firefox for desktop.
... the major advantages of this method, compared with installing an add-on from an xpi, are: you don't have to rebuild an xpi and reinstall when you
change the add-on's code; you can load an add-on without signing it and without needing to disable signing.
...this is handy when you have made
changes to the extension.
...And 3 more matches
Battery Status API - Web APIs
the battery status api, more often referred to as the battery api, provides information about the system's battery charge level and lets you be notified by events that are sent when the battery level or charging status
change.
... this can be used to adjust your app's resource usage to reduce battery drain when the battery is low, or to save
changes before the battery runs out in order to prevent data loss.
... example in this example, we watch for
changes both to the charging status (whether or not we're plugged in and charging) and for
changes to the battery level and timing.
...And 3 more matches
Using the CSS Painting API - Web APIs
while you can't play with the worklet's script, you can alter the background-size and background-position to
change the size and location of the background image.
... we've
changed the dimensions and positioning of our rectangle to be relative to the size of the element box rather than absolute values.
... our header now has a highlight that
changes according to it's size.
...And 3 more matches
Transformations - Web APIs
until now, we only used the default grid and
changed the size of the overall canvas for our needs.
... function draw() { var ctx = document.getelementbyid('canvas').getcontext('2d'); ctx.fillrect(0, 0, 150, 150); // draw a rectangle with default settings ctx.save(); // save the default state ctx.fillstyle = '#09f'; // make
changes to the settings ctx.fillrect(15, 15, 120, 120); // draw a rectangle with new settings ctx.save(); // save the current state ctx.fillstyle = '#fff'; // make
changes to the settings ctx.globalalpha = 0.5; ctx.fillrect(30, 30, 90, 90); // draw a rectangle with new settings ctx.restore(); // restore previous state ctx.fillrect(45, 45, 60, 60); ...
...next we save this state and make
changes to the fill color.
...And 3 more matches
Document.execCommand() - Web APIs
commands backcolor
changes the document background color.
...(not supported by internet explorer.) defaultparagraphseparator
changes the paragraph separator used when new paragraphs are created in editable text regions.
... fontname
changes the font name for the selection or at the insertion point.
...And 3 more matches
Using files from web applications - Web APIs
accessing the first selected file using a classical dom selector: const selectedfile = document.getelementbyid('input').files[0]; accessing selected file(s) on a
change event it is also possible (but not mandatory) to access the filelist through the
change event.
... you need to use eventtarget.addeventlistener() to add the
change event listener, like this: const inputelement = document.getelementbyid("input"); inputelement.addeventlistener("
change", handlefiles, false); function handlefiles() { const filelist = this.files; /* now you can work with the file list */ } getting information about selected file(s) the filelist object provided by the dom lists all of the files selected by the user, each specified as a file object.
...r (nmultiple = 0, napprox = nbytes / 1024; napprox > 1; napprox /= 1024, nmultiple++) { soutput = napprox.tofixed(3) + " " + amultiples[nmultiple] + " (" + nbytes + " bytes)"; } // end of optional code document.getelementbyid("filenum").innerhtml = nfiles; document.getelementbyid("filesize").innerhtml = soutput; } document.getelementbyid("uploadinput").addeventlistener("
change", updatesize, false); </script> </body> </html> using hidden file input elements using the click() method you can hide the admittedly ugly file <input> element and present your own interface for opening the file picker and displaying which file or files the user has selected.
...And 3 more matches
MutationObserverInit - Web APIs
attributes optional set to true to watch for
changes to the value of attributes on the node or nodes being monitored.
...if this property isn't included,
changes to all attributes cause mutation notifications.
... attributeoldvalue optional set to true to record the previous value of any attribute that
changes when monitoring the node or nodes for attribute
changes; see monitoring attribute values in mutationobserver for details on watching for attribute
changes and value recording.
...And 3 more matches
MutationRecord - Web APIs
for attributes, it is the element whose attribute
changed.
... for childlist, it is the node whose children
changed.
... mutationrecord.attributename string returns the local name of the
changed attribute, or null.
...And 3 more matches
Page Visibility API - Web APIs
when the user minimizes the window or switches to another tab, the api sends a visibility
change event to let listeners know the state of the page has
changed.
...hiding an <iframe> using css properties (such as display: none;) doesn't trigger visibility events or
change the state of the document contained within the frame.
... the example, which pauses the video when you switch to another tab and plays again when you return to its tab, was created with the following code: // set the name of the hidden property and the
change event for visibility var hidden, visibility
change; if (typeof document.hidden !== "undefined") { // opera 12.10 and firefox 18 and later support hidden = "hidden"; visibility
change = "visibility
change"; } else if (typeof document.mshidden !== "undefined") { hidden = "mshidden"; visibility
change = "msvisibility
change"; } else if (typeof document.webkithidden !== "undefined") { hidden = "...
...And 3 more matches
PaymentRequest - Web APIs
paymentmethod
change secure context with some payment handlers (e.g., apple pay), dispatched whenever the user
changes payment instrument, like switching from a credit card to a debit card.
... also available using the onpaymentmethod
change event handler property.
... shippingaddress
change secure context dispatched whenever the user
changes their shipping address.
...And 3 more matches
PaymentRequestUpdateEvent - Web APIs
the paymentrequestupdateevent interface is used for events sent to a paymentrequest instance when
changes are made to shipping-related information for a pending paymentrequest.
... those events are: shippingaddress
change secure context dispatched whenever the user
changes their shipping address.
... also available using the onshippingaddress
change event handler property.
...And 3 more matches
RTCPeerConnection.setLocalDescription() - Web APIs
the rtcpeerconnection method setlocaldescription()
changes the local description associated with the connection.
...the method takes a single parameter—the session description—and it returns a promise which is fulfilled once the description has been
changed, asynchronously.
...because descriptions will be ex
changed until the two peers agree on a configuration, the description submitted by calling setlocaldescription() does not immediately take effect.
...And 3 more matches
Slottable: assignedSlot - Web APIs
to
change preferences in firefox, visit about:config.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 40safari full support 10.1webview android full support 53chrome android full support 53firefox android full support 63 full support 63 ...
...to
change preferences in firefox, visit about:config.
...And 3 more matches
StorageEvent - Web APIs
a storageevent is sent to a window when a storage area it has access to is
changed within the context of another document.
...</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.
...And 3 more matches
WebGL model view projection - Web APIs
the view matrix is responsible for moving the objects in the scene to simulate the position of the camera being
changed, altering what the viewer is currently able to see.
...the added fourth dimension
changes this point into a homogeneous coordinate.
...the scale factor
changes the final w value to be either higher or lower overall.
...And 3 more matches
Rendering and the WebXR frame animation callback - Web APIs
when your callback returns, the browser transfers that backbuffer to the display or xr device, along with anything else that's
changed since the last time the screen was refreshed.
... when a frame is dropped, the contents of the affected display area simply don't
change for that pass through the frame loop.
... drawbacks to this approach since it's important to minimize how much time you spend in this function as much as possible, the more time you spend handling state
changes, the less time you have to actually draw things.
...And 3 more matches
Background audio processing using AudioWorklet - Web APIs
by specification, each block of audio your process() function receives contains 128 frames (that is, 128 samples for each channel), but it is planned that this value will
change in the future, and may in fact vary depending on circumstances, so you should always check the array's length rather than assuming a particular size.
...however, once this chrome issue is fixed, you will want to
change this behavior if possible as it may have a slight negative impact on performance.
... a-rate parameters for a-rate parameters—parameters whose values automatically
change over time—the parameter's entry in the parameters object is an array of audioparam objects, one for each frame in the block being processed.
...And 3 more matches
Web audio spatialization basics - Web APIs
when we move the boombox, the sound it produces
changes accordingly, panning as it moves to the left or right of the room, or becoming quieter as it is moved away from the user or is rotated so the speakers are facing away from them, etc.
...these are also the parameters we're going to
change when the controls on our interface are used.
...first, we'll get references to the elements we want to move, then we'll store references to the values we'll
change when we set up css transforms to actually do the movement.
...And 3 more matches
Using the Web Storage API - Web APIs
we have also provided an event output page — if you load this page in another tab, then make
changes to your choices in the landing page, you'll see the updated storage information outputted as a storageevent is fired.
... we've also included an on
change handler on each form element so that the data and styling are updated whenever a form value is
changed: bgcolorform.on
change = populatestorage; fontform.on
change = populatestorage; imageform.on
change = populatestorage; responding to storage
changes with the storageevent the storageevent is fired whenever a
change is made to the storage object (note that this event is not fired for sessionstora...
...ge
changes).
...And 3 more matches
Typical use cases of Flexbox - CSS: Cascading Style Sheets
this is something that may well
change once box alignment is implemented in block layout.
...you can
change how the space is distributed using the space-around value, or where supported, space-evenly.
...you can move the class from one item to another to
change where the split happens.
...And 3 more matches
Cross-browser audio basics - Developer guides
myaudio.addeventlistener("loadstart", function() { //grabbing the file }); duration
change if you just want to know as soon as the duration of your media is established, this is the event for you.
... myaudio.addeventlistener("duration
change", function() { //you can display the duration now }); loadedmetadata metadata can consist of more than just duration — if you want to wait for all the metadata to download before doing something, you can detect the loadedmetadata event.
... myaudio.addeventlistener("canplaythrough", function() { //audio is ready to play all the way through }); media loading event order to recap, the order of the media loading events are: loadstart > duration
change > loadedmetadata > loadeddata > progress > canplay > canplaythrough loading interruption events we also have a few events available that will fire when there is some kind of interruption to the media loading process.
...And 3 more matches
Media events - Developer guides
canplaythrough sent when the readystate
changes to have_enough_data, indicating that the entire media can be played without interruption, assuming the download rate remains at least at the current level.
... duration
change the metadata has loaded or
changed, indicating a
change in duration of the media.
... pause sent when the playback state is
changed to paused (paused property is true).
...And 3 more matches
HTML5 Parser - Developer guides
it controls how your html source code is turned into web pages and, as such,
changes to it are rare.
...
changed parser behaviors some
changes to the way that the gecko 2 parser behaves, as compared to earlier versions of gecko, may affect web developers, depending on how you've written your code in the past and what browsers you've tested it on.
... some contexts from which you should not call document.write() include: scripts created using document.createelement() event handlers settimeout() setinterval() <script async src="..."> <script defer src="..."> if you use the same mechanism for loading script libraries for all browsers including ie, then your code probably will not be affected by this
change.
...And 3 more matches
Applying color to HTML elements using CSS - HTML: Hypertext Markup Language
as the user adjusts the color, the border around the example
changes to reflect the new color.
... let colorpicker = document.getelementbyid("colorpicker"); let box = document.getelementbyid("box"); let output = document.getelementbyid("output"); box.style.bordercolor = colorpicker.value; colorpicker.addeventlistener("input", function(event) { box.style.bordercolor = event.target.value; }, false); colorpicker.addeventlistener("
change", function(event) { output.innertext = "color set to " + colorpicker.value + "."; }, false); the input event is sent every time the value of the element
changes; that is, every time the user adjusts the color in the color picker.
... the
change event is received when the color picker's value is finalized.
...And 3 more matches
<input type="number"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, placeholder, readonly idl attributes list, value, valueasnumber methods select(), stepup(), stepdown() value any floating-point number, or empty.
...its value can, however, still be
changed by javascript code directly setting the htmlinputelement.value property.
...you can
change this by providing a step attribute, which takes as its value a number specifying the step amount.
...And 3 more matches
<input type="tel"> - HTML: Hypertext Markup Language
value a domstring representing a telephone number, or empty events
change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, readonly, and size idl attributes list, selectionstart, selectionend, selectiondirection, and value methods select(), setrangetext(), setselectionrange() value the <input> element's value attribute contains a domstring that either represents a telephone...
...its value can, however, still be
changed by javascript code directly setting the htmlinputelement.value property.
...to see the status of the
change being implemented in firefox, see bug 1490661.
...And 3 more matches
<input type="time"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, readonly, and step idl attributes value, valueasdate, valueasnumber, and list.
... in this example, you can see the time input's value by entering a time and seeing how it
changes afterward.
... </p> </form> the javascript code adds code to the time input to watch for the input event, which is triggered every time the contents of an input element
change.
...And 3 more matches
<tr>: The Table Row element - HTML: Hypertext Markup Language
html the html is similar to the previous example's, except for the addition of the new column in each data row, and the
changes to the header.
... those
changes make the html look like this: <table> <tr> <th rowspan="2">name</th> <th rowspan="2">id</th> <th colspan="2">membership dates</th> <th rowspan="2">balance</th> </tr> <tr> <th>joined</th> <th>canceled</th> </tr> <tr> <th>margaret nguyen</td> <td>427311</td> <td><time datetime="2010-06-03">june 3, 2010</time></td> <td>n/a</td> <td>0.00</td> </tr> <tr> <th>edvard galinski</td> <td>533175</td> <td><time datetime="2011-01013">january 13, 2011</time></td> <td><time datetime="2017-04008">april 8, 2017</time></td> <td>37.00</td> </tr> <tr> <th>hoshi nakamura</td> <td>601942</td> <td><time datetime="2012-07-23">july 23, 2012</time></td> <td>n/a</td> <td>15.00</td> </tr> </table> the di...
... the css is un
changed from before.
...And 3 more matches
Inline elements - HTML: Hypertext Markup Language
because the <span> element is inline, the paragraph correctly renders as a single, unbroken text flow, like this: for looks, this css (not displayed in standard reading mode) is also used: body { margin: 0; padding: 4px; border: 1px solid #333; } .highlight { background-color:#ee3; } block-level now let's
change that <span> into a block-level element, such as <p>: <div>the following paragraph is a <p class="highlight">block-level element;</p> its background has been colored to display both the beginning and end of the block-level element's influence.</div> the css (not displayed in standard reading mode) is also used: body { margin: 0; padding: 4px; border: 1px solid #333; } .highlight { bac...
...the <p> element totally
changes the layout of the text, splitting it into three segments: the text before the <p>, then the <p>'s text, and finally the text following the <p>.
... changing element levels you can
change the visual presentation of an element using the css display property.
...And 3 more matches
Evolution of HTTP - HTTP
developed by tim berners-lee and his team between 1989-1991, http has seen many
changes, keeping most of the simplicity and further shaping its flexibility.
... http has evolved from an early protocol to ex
change files in a semi-trusted laboratory environment, to the modern maze of the internet, now carrying images, videos in high resolution and 3d.
... a simple protocol to ex
change these documents, the hyperttext transfer protocol (http).
...And 3 more matches
Object.seal() - JavaScript
values of present properties can still be
changed as long as they are writable.
...making all properties non-configurable also prevents them from being converted from data properties to accessor properties and vice versa, but it does not prevent the values of data properties from being
changed.
...objects sealed with object.seal() can have their existing properties
changed.
...And 3 more matches
ui/button/action - Archive of obsolete content
by default the badge's color is red, but you can set your own color using the badgecolor property, specified as a css <color> value: var { togglebutton } = require("sdk/ui/button/toggle"); var button = togglebutton({ id: "my-button1", label: "my button1", icon: "./icon-16.png", on
change:
changed, badge: 0, badgecolor: "#00aaaa" }); function
changed(state) { button.badge = state.badge + 1; if (state.checked) { button.badgecolor = "#aa00aa"; } else { button.badgecolor = "#00aaaa"; } } specifying multiple icons you can specify just one icon, or multiple icons in different sizes.
...you can also add, or
change, the listener afterwards: var { actionbutton } = require("sdk/ui/button/action"); var button = actionbutton({ id: "my-button", label: "my button", icon: { "16": "./firefox-16.png", "32": "./firefox-32.png" }, onclick: firstclick }); function firstclick(state) { console.log("you clicked '" + state.label + "'"); button.removelistener("click", firstclick); ...
... for example, if you have a button like this: var { actionbutton } = require('sdk/ui/button/action'); var button = actionbutton({ id: "my-button", label: "default", icon: "./firefox-16.png" }); you can
change its label for only the currently active window like this: button.state("window", { "label" : "window-specific label" }); you can
change its label for only the currently active tab like this: button.state("tab", { "label" : "tab-specific label" }); to fetch the button state for a specific window or tab, call state(), passing it the window or tab you're interested in, and it will return a ...
...And 2 more matches
JavaScript Daemons Management - Archive of obsolete content
if the rate property has been
changed, the daemon will be updated with the new rate value.
...nclick="orecompose.makesteps(29);">makesteps(29)</button> <button onclick="orecompose.fixposition(-13);">fixposition(-13)</button> <button onclick="orecompose.play();">play</button> <button onclick="orecompose.turn();">turn</button> <button onclick="orecompose.pause();">pause</button> <button onclick="orecompose.reverseplay();">reverseplay</button> <button onclick="orecompose.reversals = 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;" onkeypress="return event.
...1)</button> <button onclick="ounhide.makesteps(29);">makesteps(29)</button> <button onclick="ounhide.fixposition(-13);">fixposition(-13)</button> <button onclick="ounhide.play();">play</button> <button onclick="ounhide.turn();">turn</button> <button onclick="ounhide.pause();">pause</button> <button onclick="ounhide.reverseplay();">reverseplay</button> <button onclick="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;" onkeypress="return event.charcode===0...
...And 2 more matches
Extension Versioning, Update and Compatibility - Archive of obsolete content
in particular you should never specify a maxversion that is larger than the currently available version of the application since you do not know what api and ui
changes are just around the corner.
... note: starting in gecko 2.0, the automatic add-on update process properly supports cases in which the add-on's guid
changes by uninstalling the old version and then installing the new one.
...about="urn:mozilla:extension:foobar@developer.mozilla.org:2.2"> <em:version>2.2</em:version> <!-- trimmed the rest of the contents here --> </rdf:description> <rdf:description about="urn:mozilla:extension:foobar@developer.mozilla.org:2.5"> <em:version>2.5</em:version> <!-- trimmed the rest of the contents here --> </rdf:description> </rdf:rdf> note: it is possible to
change the id of add-on through add-on update.
...And 2 more matches
Appendix: What you should know about open-source software licenses - Archive of obsolete content
the software that microsoft sells, such as windows, comes with a license that permits only limited duplication in ex
change for a fee, so, although customers can install it on their computers, they cannot modify it.
... gpl license declaration template if you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software that everyone can redistribute and
change under these terms.
... can you
change the type of license?
...And 2 more matches
Chapter 3: Introduction to XUL—How to build a more intuitive UI - Archive of obsolete content
you can explicitly set or
change this layout using the orient attribute, with options for horizontal and vertical.
... persist the persist attribute is an easy way to record and store a xul element’s state after it has been
changed by a user operation.
... these mostly act the same as button elements, but as shown in listing 13, you can
change the behavior of toolbarbutton elements using the type attribute.
...And 2 more matches
JXON - Archive of obsolete content
the object.freeze() method prevents new properties from being added to it, prevents existing properties from being removed and prevents existing properties, or their enumerability, configurability, or writability, from being
changed.
...the object.freeze() method prevents new properties from being added to it, prevents existing properties from being removed and prevents existing properties, or their enumerability, configurability, or writability, from being
changed.
...the object.freeze() method prevents new properties from being added to it, prevents existing properties from being removed and prevents existing properties, or their enumerability, configurability, or writability, from being
changed.
...And 2 more matches
Images, Tables, and Mysterious Gaps - Archive of obsolete content
the markup of both table and cell remains un
changed-- it's the rendering mode that's different.
...it isn't possible for an author to
change the baseline's position directly, so wherever it ends up is where it will be.
...this placement can be
changed with vertical-align-- we'll talk about that in a bit-- but almost nobody ever
changes the value from its default.
...And 2 more matches
Repackaging Firefox - Archive of obsolete content
a "distro" extension that makes the
changes you desire.
... the distro extension all the
changes you will want to make (for example, changing the default homepage or adding default bookmarks) can be encapsulated into a firefox extension.
...using an extension makes it far easier to keep track of your
changes easily when the time comes to upgrade to new versions of firefox, and also ensures, when set-up correctly, that users are able to safely receive firefox updates from mozilla.
...And 2 more matches
Merging TraceMonkey Repo - Archive of obsolete content
otherwise, you can run hg parents filename to find the
changesets which may have contributed to the conflict.
... inspecting the files at those two
changesets can be helpful: hg cat -c
changeset filename once all the conflict markers are removed, you've performed the manual resolution, which you tell to mercurial by running hg resolve -m filename.
...for each bug in the results, find the corresponding
changesets that we just merged (i.e.
...And 2 more matches
Code Samples - Archive of obsolete content
change the first line to specify the file that you want to launch.
...
change the first line to specify the page that you want to open: const url = "http://www.mozilla.org/" document .getelementbyid("content") .webnavigation .loaduri(url, 0, null, null, null) if your button is in thunderbird or sunbird, use code like this to open a web page.
...
change the first line to specify the page that you want to open: const url = "http://www.mozilla.org/" var uri = components .classes["@mozilla.org/network/simple-uri;1"] .getservice(components.interfaces.nsiuri) uri.spec = url components .classes["@mozilla.org/uriloader/external-protocol-service;1"] .getservice(components.interfaces.nsiexternalprotocolservice) .loadurl(uri) compose an e-mail to compose an e-mail, use the same code as in the section open a web page above.
...And 2 more matches
Toolbar customization events - Archive of obsolete content
you can use window.addeventlistener() to listen for these events in order to keep abreast of
changes to toolbars.
... customization
change this event is delivered when the user makes a
change to a toolbar while editing the toolbars, either by dragging an item to the toolbar or by dragging an item out of it.
...you can look at the contents of that element and its children to determine what
changes were made.
...And 2 more matches
Content Panels - Archive of obsolete content
sometimes, you will want to
change part of the window.
...it would be much better if just the content area of the wizard
changed.
...you can use a script to
change the contents of the iframe without affecting the main window.
...And 2 more matches
Element Positioning - Archive of obsolete content
an inflexible element never
changes size even when space is available, so the button can't grow either.
...this unit is useful for textboxes so that the font can
change and the textboxes would always be a suitable size, even if the font is very large.
...this way, it will grow if the user
changes the size of the dialog.
...And 2 more matches
Manifest Files - Archive of obsolete content
of course, you will need to restart the browser for the
changes to take effect.
...this is good for development since you don't have to package up all the files every time you
change them.
...this flag was added to prevent this problem and should always be used for newer extensions, but is left out for older extensions that might not be compatible with the
change.
...And 2 more matches
More Wizards - Archive of obsolete content
you can
change these attributes as needed to navigate to different pages.
...remember to return false in this case, because you have already
changed the page yourself.
... note that the goto() method, because it causes a page
change, will fire the events again, so you'll have to make sure you handle that case.
...And 2 more matches
Scroll Bars - Archive of obsolete content
increment the value here specifies how much the value of curpos
changes by when the user clicks on one of the scroll bar arrows.
... pageincrement the value here specifies how much the value of curpos
changes by when the user clicks pages through the scroll bar, which can be done by clicking on the tray between the box and the arrows.
...when clicking on one of the scroll bar arrows, the value would
change by 1 either up or down.
...And 2 more matches
XUL Structure - Archive of obsolete content
however, because of this, the xul will be not be reloaded even when the source files are
changed.
... to disable this mechanism, it is necessary to
change the preference nglayout.debug.disable_xul_cache.
...the xul part remains the same but the skin part
changes independently.
...And 2 more matches
XUL Questions and Answers - Archive of obsolete content
(server can just send the xul code to use for popup - alternatively it can send generic xml describing the attributes of the items in the menu and you generate the xul on client by applying an xslt transform.) can i
change a xul tree cell/row/item background color with javascript?
... an event is initiated when the application starts up and when the profile is
changed.
... the object, something like this: listobj = new object(); listobj.wpl = components.interfaces.nsiwebprogresslistener; listobj.queryinterface = function(aiid) { if (aiid.equals(listobj.wpl) || aiid.equals(components.interfaces.nsisupportsweakreference) || aiid.equals(components.interfaces.nsisupports)) return this; throw components.results.ns_nointerface; } listobj.onstate
change = function(aprogress, arequest, aflag, astatus) { if (aflag & listobj.wpl.state_start) { // this fires when the load event is initiated } else { if (aflag & listobj.wpl.state_stop) { if ( aflag & listobj.wpl.state_is_window ) { // this fires when all load finish } if ( aflag & listobj.wpl.state_is_network ) { // fires when all load are really over, ...
...And 2 more matches
XUL element attributes - Archive of obsolete content
if the size of the box
changes, the children stretch to fit.
...if an attribute
changes in the broadcaster it is also
changed in the observer.
...the ordinal attribute can be used to
change the order.
...And 2 more matches
prefpane - Archive of obsolete content
to
change the selected pane, use the prefwindow's showpane method.
... void user
changedvalue(in domelement element); the user
changed the value in a widget that the preferences system does not automatically track state
changes for (1) and the preference element associated with the widget should be updated based on the state held by the widget.
... for example, if you are using a listbox and the user
changes the contents of the listbox (such as adding or removing an item) and you want to sync the
changes back to a preference, you must write an onsynctopreference handler for your listbox that returns the value to be written to the preference element, and then call the user
changedvalue function every time you edit the list in a way that should cause the preference's value to
change.
...And 2 more matches
window - Archive of obsolete content
the window receives a "fullscreen" event once the
change has been made.
... setting this attribute does not
change the window state.
... use window.maximize(), window.restore(), or window.minimize() to
change the window state.
...And 2 more matches
CommandLine - Archive of obsolete content
example notice the
changes since gecko 2.0 (component registration has moved into the manifest file).
...isupports)) return this; throw components.results.ns_error_no_interface; }, /* nsicommandlinehandler */ handle : function clh_handle(acmdline) { var observerservice = components.classes["@mozilla.org/observer-service;1"] .getservice(components.interfaces.nsiobserverservice); observerservice.notifyobservers(acmdline, "commandline-args-
changed", null); }, helpinfo : " -test <value> a test attribute\n", /* nsifactory */ createinstance : function mdh_ci(aouter, aiid) { if (aouter != null) { throw components.results.ns_error_no_aggregation; } return this.queryinterface(aiid); }, lockfactory : function mdh_lock(alock) { /* no-op */ } }; var apphandlermodule = { /* nsisupports */ que...
... var catman = components.classes["@mozilla.org/categorymanager;1"] .getservice(nsicategorymanager); catman.deletecategoryentry("command-line-handler", cld_category); }, canunload : function (acompmgr) { return true; } }; function nsgetmodule(acompmgr, afilespec) { return apphandlermodule; } create an observer that will get notified when arguments
change: chrome/content/cmdline.js function commandlineobserver() { this.register(); } commandlineobserver.prototype = { observe: function(asubject, atopic, adata) { var cmdline = asubject.queryinterface(components.interfaces.nsicommandline); var test = cmdline.handleflagwithparam("test", false); alert("test = " + test); }, register: function() { var observerservice = compone...
...And 2 more matches
Debugging a XULRunner Application - Archive of obsolete content
/* debugging prefs */ pref("browser.dom.window.dump.enabled", true); pref("javascript.options.showinconsole", true); pref("javascript.options.strict", true); pref("nglayout.debug.disable_xul_cache", true); pref("nglayout.debug.disable_xul_fastload", true); don't forget to
change these preferences back to their defaults when you've finished debugging; leaving them as-is can significantly harm performance and usability.
... debuggerserver.addbrowseractors("myxulrunnerappwindowtype"); } debuggerserver.openlistener(6000); for xulrunner version 37+ the code to enable the debugger has
changed: components.utils.import('resource://gre/modules/devtools/dbg-server.jsm'); if (!debuggerserver.initialized) { debuggerserver.init(); debuggerserver.addbrowseractors(); debuggerserver.allowchromeprocess = true; } let dbglistener=debuggerserver.createlistener(); dbglistener.portorpath=6000; dbglistener.open(); add the following to your prefs.js: (in recent ffox, edit about:config inst...
... when adding a component to a xulrunner application,
change the buildid in application.ini.
...And 2 more matches
Getting started with XULRunner - Archive of obsolete content
if you need to
change xulrunner itself or integrate it with external binaries you may need to read that article.
...first
change the file extension to zip and then use your normal filesystem's decompression tool to open it up.
...part of this
change means the /chrome/chrome.manifest is no longer considered the "root" manifest.
...And 2 more matches
Mozilla release FAQ - Archive of obsolete content
originally, the plan was just to re-stabilize the code and release 5.0, but it was decided within the community that the more ambitious
changes that were planned for later integration were close to being ready.
...here are a few representative systems (please send your specs in to me) removed because the tree has
changed enough that we'll probably need new times for all the builds.
...the current best way to do this is to post it in bugzilla, either attached to the bug it fixes or a new entry describing what it
changes.
...And 2 more matches
Building a Theme - Archive of obsolete content
note: firefox for mac os x has
changed some directories so the guide may be obsolete.
...to
change its style within our theme, we need to write a selector rule to select this class.
...rather than load the browser from disk using a file:// uri (since the location of firefox on the system can
change from platform to platform and system to system), mozilla developers came up with a solution for creating uris to content that the installed add-on knows about.
...And 2 more matches
New in JavaScript 1.8.5 - Archive of obsolete content
the following is a
changelog for javascript 1.8.5.
...bug 492845 object.freeze() freezes an object: other code can't delete or
change any properties.
... other standardization work various non-standard syntaxes for defining getters and setters have been removed; ecmascript 5 defined syntax has not been
changed.
...And 2 more matches
Backgrounds and borders - Learn web development
change the length units used to modify the size of the background.
... if your image is smaller than the box, you can
change the value of background-repeat to repeat the image.
...or play with the other properties to
change the position, size, or repeat values.
...And 2 more matches
Pseudo-classes and pseudo-elements - Learn web development
as we tend not to know how many words will fit on a line — as that will
change if the screen width or font-size
changes — it is impossible to robustly do this by adding html.
... it acts as if a <span> was magically wrapped around that first formatted line, and updated each time the line length
changed.
...try changing the text value of the content property and see it
change in the output.
...And 2 more matches
Positioning - Learn web development
go ahead and update the position declaration in your code: position: relative; if you save and refresh at this stage, you won't see a
change in the result at all.
... second, notice that the position of the element has
changed — this is because top, bottom, left, and right behave in a different way with absolute positioning.
...we can
change the positioning context — which element the absolutely positioned element is positioned relative to.
...And 2 more matches
Practical positioning examples - Learn web development
your main web page contents would probably go here.</p> </section> note: you can feel free to
change the fake content for some real content if you like.
...
changes to the existing css next we need to make some small
changes to the existing css, to get the info-box placed and positioned.
...
change your .info-box rule to get rid of margin: 0 auto; (we no longer want the info-box centered), add position: fixed;, and stick it to the top of the browser viewport.
...And 2 more matches
How CSS is structured - Learn web development
with css in internal stylesheets, there is the risk that even one simple styling
change may require edits to multiple web pages.
...one styling
change might require multiple edits within in a single web page.
...next,
change the first p selector to .special to see how it
changes the styling.
...And 2 more matches
Client-side form validation - Learn web development
these automated messages have two drawbacks: there is no standard way to
change their look and feel with css.
...st email = document.getelementbyid("mail"); email.addeventlistener("input", function (event) { if (email.validity.typemismatch) { email.setcustomvalidity("i am expecting an e-mail address!"); } else { email.setcustomvalidity(""); } }); here we store a reference to the email input, then add an event listener to it that runs the contained code each time the value inside the input is
changed.
... emailerror.textcontent = `email should be at least ${ email.minlength } characters; you entered ${ email.value.length }.`; } // set the styling appropriately emailerror.classname = 'error active'; } the comments explain things pretty well, but briefly: every time we
change the value of the input, we check to see if it contains valid data.
...And 2 more matches
Manipulating documents - Learn web development
you can use this object to return and manipulate information on the html and css that comprises the document, for example get a reference to an element in the dom,
change its text content, apply new styles to it, create new elements and add them to the current element as children, or even delete it altogether.
...first of all, let's
change the text inside the link by updating the value of the node.textcontent property.
... add the following line below the previous one: link.textcontent = 'mozilla developer network'; we should also
change the url the link is pointing to, so that it doesn't go to the wrong place when it is clicked on.
...And 2 more matches
A first splash into JavaScript - Learn web development
constants are used to store values that are immutable or can't be
changed and are created with the keyword const.
... in this case, we are using constants to store references to parts of our user interface; the text inside some of them might
change, but the html elements referenced stay the same.
... because guessfield now contains a reference to an <input> element, it now has access to a number of properties (basically variables stored inside objects, some of which can't have their values
changed) and methods (basically functions stored inside objects).
...And 2 more matches
Inheritance in JavaScript - Learn web development
getters and setters there may be times when we want to
change the values of an attribute in the classes we create or we don't know what the final value of an attribute will be.
... using the teacher example, we may not know what subject the teacher will teach before we create them, or their subject may
change between terms.
...a getter returns the current value of the variable and its corresponding setter
changes the value of the variable to the one it defines.
...And 2 more matches
Object building practice - Learn web development
our little balls will bounce around on the screen, and
change color when they touch each other.
... open the browser's javascript console, and then refresh the page so that the canvas size
changes to the smaller visible viewport that remains when the console opens.
...so for example, if the ball was traveling upwards (positive vely), then the vertical velocity is
changed so that it starts to travel downwards instead (negative vely).
...And 2 more matches
Website security - Learn web development
when the attacker has the cookie, they can log into a site as though they were the user and do anything the user can, such as access their credit card details, see contact details, or
change passwords.
... this vulnerability is present if user input that is passed to an underlying sql statement can
change the meaning of the statement.
...however, a malicious user could completely
change the behavior of this sql statement to the new statement in the following example, by simply specifying the text in bold for the username.
...And 2 more matches
Ember Interactivity: Footer functionality, conditional rendering - Learn web development
we need to wire up the todo.hbs template to the service, so that checking the relevant checkbox
changes the state of each todo.
...e and add the following action just below the previous ones, which will allow us to toggle a completion state for each todo: @action togglecompletion(todo) { todo.iscompleted = !todo.iscompleted; } updating the template to show completed state finally, we will edit the todo.hbs template such that the checkbox's value is now bound to the iscompleted property on the todo, and so that on
change, the togglecompletion() method on the todo service is invoked.
...tent to add the class value if appropriate: <li class="{{ if @todo.iscompleted 'completed' }}"> next, find the following line: <input aria-label="toggle the completion of this todo" class="toggle" type="checkbox" > and replace it with this: <input class="toggle" type="checkbox" aria-label="toggle the completion of this todo" checked={{ @todo.iscompleted }} {{ on '
change' (fn this.todos.togglecompletion @todo) }} > note: the above snippet uses a new ember-specific keyword — fn.
...And 2 more matches
Client-side tooling overview - Learn web development
a typical vcs involves having a local version of the code that you make
changes to.
... you then "push"
changes to a "master" version of the code inside a remote repository stored on a server somewhere.
... there is usually a way of controlling and coordinating what
changes are made to the "master" copy of the code, and when, so a team of developers doesn’t end up overwriting each other’s work all the time.
...And 2 more matches
Accessibility API cross-reference
alert alert alert alert, alertdialog content
changes over time, such as animated gif animation n/a no spec n/a a section that forms an independent part of a document, page, or site.
... main <main> a type of live region where non-essential information
changes frequently.
...for receiving text input, see focused n/a armed armed available to javascript as document.activeelement indicates whether assistive technologies will present all, or only parts of, the
changed region based on the
change notifications defined by the aria-relevant attribute.
...And 2 more matches
Accessible Toolkit Checklist
the high contrast theme can be toggled dynamically with leftalt+leftshift+printscreen expose the spi_getscreenreader flag to xml/scripts so that apps can alter behavior use system highlight color where possible for item selection, but never use that exact color in more than 1 place at a time, otherwise screen reader will read everything with that color whenever highlight
changes pay attention to spi_getcaretwidth for the correct width of the caret pay attention to 'route mouse pointer to default button' setting it's possible that the user wants mnemonics hidden except when the alt key is pressed.
... in autocomplete text fields, make sure that the left or right arrow closes the popup and starts moving through the text letter by letter msaa support, including accessible value that holds text, protected for password fields and readonly for read-only fields checkboxes space bar to toggle msaa support, including checkbox state and state
change event sliders keyboard support for moving slider: arrow keys, home, end, pgup, pgdn msaa support including role_slider, accessible value, value
change events progress bars msaa support including accessible name, value, name and value
change events grouped navigation widgets menus arrow keys, enter, escape alt alone enter...
... msaa support, including checkbox state and state
change event tab panels ctrl+[shift]+tab or ctrl+pgup/pgdn to switch tabs tabs can be focused, and then left/right arrow to switch first click on a tab switches to it, second click focuses it msaa support.
...And 2 more matches
Creating Custom Events That Can Pass Data
what follows a list of the files you'll need to modify, as well as a discussion of each
change.
... mozilla/dom/base/nsdomclassinfoclasses.h the
change you make here is really rather small but it is incredibly important.
...mozilla/dom/src/base/nsdomclassinfo.cpp mozilla contains many convenience macros to make
changes like the one you're making easier.
...And 2 more matches
Displaying Places information using views
for simple queries whose uris do not
change over the life of the view, you might specify the place attribute directly in the xul.
... when a view's underlying data
changes, the view will automatically update itself so that it displays the new data.
...results themselves observe places
changes, and if on a places
change a result determines that its data specifically has
changed, it notifies its view by calling an appropriate method of nsinavhistoryresultviewer.
...And 2 more matches
DownloadList
the returned array does not
change when downloads are added or removed, though the download objects it contains are still updated in real time.
... note: when a download is added to the list, its on
change event is registered by the list, thus it cannot be used to monitor the download.
... to receive
change notifications for downloads that are added to the list, use the addview() method to register for ondownload
changed notifications.
...And 2 more matches
Localizing without a specialized tool
get the source
change your current directory to your working directory with the following command: $ cd /path/to/your/working/directory first, you will need to check out the sources of mozilla-1.9.2 together with the en-us strings.
...you can follow more detailed guidelines on compare-locale's page, but running the following command from the command line should be enough: $ sudo easy_install -u compare-locales to start, be sure to open your command line interface and
change your directory to where you are keeping your localization files, the en-us sources $ cd /path/to/your/working/directory now, you will need run compare locales.
... to do this, enter the following commands, keeping sure to
change "x-testing" to the actual locale code of your locale.
...And 2 more matches
Uplifting a localization from Central to Aurora
let's pretend it's at releases/l10n-mozilla-aurora/ab-cd here's how we do it: # set up a new local clone of your central repo hg clone l10n-central/ab-cd workrepo cd workrepo # pull in the
changesets you have on aurora hg pull -r default ../releases/l10n/mozilla-aurora/ab-cd now, there are two routes forward: 1) things are pretty silent.
...this looks something like searching for
changes adding
changesets adding manifests adding file
changes added 22
changesets with 23
changes to 46 files (+1 heads) (run 'hg heads' to see heads, 'hg merge' to merge) ok, let's make sure we're not talking relbranches: hg heads --template '{node} {branches}\n' this is printing something like 5131e147fa50c28ec858c7d9fd1ba201ea2a433b 4da525ed77699794c56081791bd46cc85983f6f8 9bc7e6c58fc091c8cd0e8d9e1dbc7e6f592772a7 gecko20b12_2011022218_relbranch 230e99fada602842d9630e673077ef9f1ab34247 gecko20b12pre_20110216_relbranch 41a4357884d7bcc50e69c71014124d3af2482afe ...
...comm20b11_20110203_relbranch 2ec6ad14e7168ebeb999b1e8ae10632ae4c9df23 gecko20b11_2011020209_relbranch d68e647ac3c0fee709c13abb0f03fac24a1a5d29 gecko20b11pre_20110126_relbranch 7ff37dc6837669363a51ad3fd2874ac845d312d5 gecko20b10_2011012115_relbranch 6c31fe9bc065a86aea2223ba48698f18ae7563ad gecko20b9_2011011018_relbranch here you can see that there are two
changesets without a branch.
...And 2 more matches
A brief guide to Mozilla preferences
preference
changes via user interface usually take effect immediately.
... preferences saving usually when the user specifically commits a preference
change via user interface such as the preferences dialog, the application saves the
change by overwriting prefs.js .
... note the application never
changes user.js, so on launch user.js overrides conflicting preferences from the previous application session.
...And 2 more matches
L20n Javascript API
alternatively, you can register callbacks to execute when the context is ready (or when globals
change and translations need to be updated) with ctx.localize.
... var ctx = l20n.getcontext(); ctx.addresource('<hello "hello, world!">'); ctx.requestlocales(); requestlocales can be called multiple times after the context instance emitted the ready event, in order to
change the current language fallback chain, for instance if requested by the user.
...this event is also fired after each
change to locale order (retranslation).
...And 2 more matches
NSS_3.12_release_notes.html
g_on_fresh_info cert_rev_mi_test_each_method_separately cert_rev_mi_test_all_local_information_first cert_rev_mi_no_overall_info_requirement cert_rev_mi_require_some_fresh_info_available cert_policy_flag_no_mapping cert_policy_flag_explicit cert_policy_flag_no_any cert_enable_ldap_fetch cert_enable_http_fetch new macro in utilrename.h: smime_aes_cbc_128 the nssckbi pkcs #11 module's version
changed to 1.70.
..._oid_x509_subject_info_access camellia oids (rfc3657) sec_oid_camellia_128_cbc sec_oid_camellia_192_cbc sec_oid_camellia_256_cbc pkcs 5 v2 oids sec_oid_pkcs5_pbkdf2 sec_oid_pkcs5_pbes2 sec_oid_pkcs5_pbmac1 sec_oid_hmac_sha1 sec_oid_hmac_sha224 sec_oid_hmac_sha256 sec_oid_hmac_sha384 sec_oid_hmac_sha512 sec_oid_pkix_timestamping sec_oid_pkix_ca_repository sec_oid_iso_sha1_with_rsa_signature
changed oids (see secoidt.h) sec_oid_pkcs12_key_usage
changed to sec_oid_bogus_key_usage sec_oid_ansix962_ecdsa_signature_with_sha1_digest
changed to sec_oid_ansix962_ecdsa_sha1_signature note: sec_oid_ansix962_ecdsa_signature_with_sha1_digest is also kept for compatibility reasons.
...bug 391292: shared database implementation slow bug 391294: shared database implementation really slow on network file systems bug 392521: automatic shared db update fails if user opens database r/w but never supplies a password bug 392522: integrity hashes must be updated when passwords are
changed.
...And 2 more matches
NSS 3.16.3 release notes
nss 3.16.3 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_16_3_rtm/src/ new in nss 3.16.3 this release consists primarily of ca certificate
changes as listed below, and fixes an issue with a recently added utility function.
... notable
changes in nss 3.16.3 the following 1024-bit ca certificates were removed cn = entrust.net secure server certification authority sha1 fingerprint: 99:a6:9b:e6:1a:fe:88:6b:4d:2b:82:00:7c:b8:54:fc:31:7e:15:39 cn = gte cybertrust global root sha1 fingerprint: 97:81:79:50:d8:1c:96:70:cc:34:d8:09:cf:79:44:31:36:7e:f4:74 ou = valicert class 1 policy validation authority sha1 fingerprint: e5:df:74:3c:b6:01:c4:9b:98:43:dc:ab:8c:e8:6a:81:10:9f:e4:8e ou = ...
... quovadis root ca 1 g3 sha1 fingerprint: 1b:8e:ea:57:96:29:1a:c9:39:ea:b8:0a:81:1a:73:73:c0:93:79:67 cn = quovadis root ca 2 g3 sha1 fingerprint: 09:3c:61:f3:8b:8b:dc:7d:55:df:75:38:02:05:00:e1:25:f5:c8:36 cn = quovadis root ca 3 g3 sha1 fingerprint: 48:12:bd:92:3c:a8:c4:39:06:e7:30:6d:27:96:e6:a4:cf:22:2e:7d the trust bits were
changed for the following ca certificates ou = class 3 public primary certification authority sha1 fingerprint: a1:db:63:93:91:6f:17:e4:18:55:09:40:04:15:c7:02:40:b0:ae:6b turned off websites and code signing trust bits (1024-bit root) ou = class 3 public primary certification authority sha1 fingerprint: 74:2c:31:92:e6:07:e4:24:eb:45:49:54:2b:e1:bb:c5:3e:61:74:...
...And 2 more matches
PKCS11 Implement
installing modules and informing the user of
changes in the cryptographic modules settings.
...(this is more restrictive than pkcs 2.0 and may
change in future versions of nss.).
...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 2 more matches
GCIntegration - SpiderMonkey Redirect 1
this page is intended to explain the
changes that are happening, with a focus on how they will affect gecko code that uses jsapi.
... overview before digging too deep, here are some quick rules of thumb for how to write code that will work smoothly with the gc regardless of
changes that happen in the future.
... to understand the problem more, let's consider some reasons why barriers are not needed in common areas of firefox: if a pointer is never
changed after it's initialized, then there's no need for a write barrier.
...And 2 more matches
JIT Optimization Strategies
this optimization makes the assumption that a property that has not
changed after it was first assigned, is likely a constant property.
...if so, it generates a new "stub" (or freestanding piece of jitcode) and
changes the inline cache to jump to the stub.
...if so, it generates a new "stub" (or freestanding piece of jitcode) and
changes the inline cache to jump to the stub.
...And 2 more matches
SpiderMonkey 45
many jsapi types; functions, and callback signatures, have
changed though most functions that have retain their previous name, providing relatively un
changed functionality.
... applications will require significant
changes, but most
changes will be automatically detected by the c/c++ compiler, making them easy to detect and updating the code a relatively straightforward job.
... here is a list of the most significant
changes: js::nullptr is obsolete.
...And 2 more matches
Using the Places history service
nsiautocompletesearch: url-bar autocomplete from history from 1.9.1 (firefox3.1) on, don't use any places service on (or after) quit-application has been notified, since the database connection will be closed to allow the last sync, and
changes will most likely be lost.
...this is used for bookmark titles.this function may be removed if the bookmark service is
changed.
... miscellaneous nsinavhistoryservice.addobserver: adds a history observer, which will be notified of
changes to the history system.
...And 2 more matches
Accessing the Windows Registry Using XPCOM
); wrk.removechild(name); } } var wrk = components.classes["@mozilla.org/windows-registry-key;1"] .createinstance(components.interfaces.nsiwindowsregkey); wrk.open(wrk.root_key_current_user, "software\\mdc\\test", wrk.access_all); removechildrenrecursive(wrk); wrk.close(); monitoring registry keys if you would like to know whether a registry key has
changed since you last checked it, you can use the startwatching(), stopwatching(), and has
changed() methods.
...after that, you can call has
changed() to determine whether or not you need to reread the value.
... calling has
changed() automatically resets the watch, so you can be sure that if it returns true there are
changes.
...And 2 more matches
IAccessibleText
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) this enum defines values which specify a text() boundary type.
...a
change of the selection() is notified to the accessibility event listeners with an ::ia2_event_text_selection_
changed event.
...setselection()
changes the bounds of an existing selection().
...And 2 more matches
mozISpellCheckingEngine
inherits from: nsisupports last
changed in gecko 1.7 this interface represents a spell checking engine.
... when this attribute's value is
changed, a "spellcheck-dictionary-update" notification is sent.
... when this
changes, the spell checker sends a "spellcheck-dictionary-update" notification.
...And 2 more matches
nsIGeolocationProvider
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) this must be called on the main thread interface provides location information to the nsgeolocator via the nsidomgeolocationcallback interface.
... after startup() is called, any geo location
change should call callback.update().
...after the provider has been initialized, any
changes to location should call callback.onrequest().
...And 2 more matches
nsILoginManager
toolkit/components/passwordmgr/public/nsiloginmanager.idlscriptable used to interface with the built-in password manager 1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) replaces nsipasswordmanager which was used in older versions of gecko.
...to
change a login, you have to use modifylogin().
... if newlogindata is a nsilogininfo, all of the old login's nsilogininfo properties are
changed to the values from newlogindata (but the old login's nsiloginmetainfo properties are unmodified).
...And 2 more matches
nsISelection
inherits from: nsisupports last
changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) interface for manipulating and querying the current selected range of nodes within the document.
... nsidomrange getrangeat(in long index); void modify(in domstring alter, in domstring direction, in domstring granularity); void removeallranges(); void removerange(in nsidomrange range); void selectallchildren(in nsidomnode parentnode); void selectionlanguage
change(in boolean langrtl); domstring tostring(); attributes attribute type description anchornode nsidomnode returns the node in which the selection begins.
... "extend()" leaves the start of the selection un
changed, and applies movement direction/granularity to the end of the selection.
...And 2 more matches
nsITaskbarPreviewController
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) clients should provide their own implementation of this interface.
...this value may
change at any time.
...this doesn't need to match the preview's aspect ratio, and is allowed to be
changed at any time.
...And 2 more matches
nsITextInputProcessor
dom/interfaces/base/nsitextinputprocessor.idlscriptable this interface is a text input events synthesizer and manages its composition and modifier state 1.0 66 introduced gecko 38 inherits from: nsisupports last
changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) the motivation of this interface is to provide better api than nsidomwindowutils to dispatch key events and create, modify, and commit composition in higher level.
...for solving that issue, methods of this interface have been designed for performing a key operation or representing a
change of composition state.
...this means that even when gecko
changes the dom event behavior, it may not be necessary that the users of this interface need to be updated, i.e., the implementation of this class can be a cushion from the impact of gecko's
change.
...And 2 more matches
nsITreeSelection
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void adjustselection(in long index, in long count); void clearrange(in long startindex, in long endindex); void clearselection(); void getrangeat(in long i, out long min, out long max); long getrangecount(); void invalidateselection(); void invertselection(); boolean isselected(in long index); void rangedselect(in long startindex, in long endindex, in boolean augment); void select(in long index); void selectall(); void timedselect(in long index, in l...
... selecteventssuppressed boolean this attribute is a boolean indicating whether or not the "select" event should fire when the selection is
changed using one of our methods.
... methods adjustselection() called when the row count
changes to adjust selection indices.
...And 2 more matches
nsIWifiMonitor
netwerk/wifi/nsiwifimonitor.idlscriptable this interface can be used to be alerted when the list of available wifi access points
changes.
... 1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) this is used, for example, by geolocation to use wifi access points for location detection.
... implemented by @mozilla.org/wifi/monitor;1 as a service: var wifimonitor = components.classes["@mozilla.org/wifi/monitor;1"] .getservice(components.interfaces.nsiwifimonitor); method overview void startwatching(in nsiwifilistener alistener); void stopwatching(in nsiwifilistener alistener); methods startwatching() starts listening for
changes to the wifi access point list.
...And 2 more matches
Mozilla
android-specific test suites there are several android-specific test suites that run on the firefox for android codebase: api
change rules until further notice, the following rules govern api
changes: application cache implementation overview this happens in nshttpchannel::opencacheentry().
...
changes to a document originate in the content tree (from dom modification by scripting, insertion of elements from the parser, etc.) and are propogated to the layout tree through magic that primarily resides in //github.com/realityripple/uxp/blob/master/layout/base/nscssframeconstructor.cpp getting started with chat no...
... supported build targets page moved to the in-tree documentation: https://firefox-source-docs.mozilla.org/build/buildsystem/supported-configurations.html task graph after a
change to the gecko source code is pushed to version-control, jobs for that
change appear on treeherder.
...And 2 more matches
Debugger.Source - Firefox Developer Tools
(on the web, the translator may provide the source map url in a specially formatted comment in the javascript source code, or via a header in the http reply that carried the generated javascript.) this property is writable, so you can
change the source map url by setting it.
... all debugger.source objects referencing the same source will see the
change.
... setting an empty string has no effect and will not
change existing value.
...And 2 more matches
Edit fonts - Firefox Developer Tools
for standard (static) fonts, you will be able to
change the settings listed below size the font-size for the inspected element.
... example: if 1rem is equivalent to 10 pixels, when you
change the unit of measurement from rem to px, 2rem becomes 20px.
... changing the unit of measure
changes the value relative to the font-size setting.
...And 2 more matches
Paint Flashing Tool - Firefox Developer Tools
whenever an event happens that might
change a visible part of the web page then the browser must repaint some portion of the page.
... for example, a repaint will be needed if the user scrolls the page or moves the mouse pointer over an element with a :hover pseudo-class that
changes the element's style.
...layers are painted independently and then composited, so a
change in the appearance of one layer does not trigger a repaint in any other layers, and when only the relation of two layers
changes (in an animation, for example) no repaints are required at all.
...And 2 more matches
AudioParam.setTargetAtTime() - Web APIs
the settargetattime() method of the audioparam interface schedules the start of a gradual
change to the audioparam value.
... description the
change starts at the time specified in starttime and exponentially moves towards the value given by the target parameter.
... choosing a good timeconstant as mentioned above, the value
changes exponentially, with each timeconstant bringing you another 63.2% toward the target value.
...And 2 more matches
AudioParam.setValueCurveAtTime() - Web APIs
the setvaluecurveattime() method of the audioparam interface schedules the parameter's value to
change following a curve defined by a list of values.
... syntax var paramref = param.setvaluecurveattime(values, starttime, duration); parameters values an array of floating-point numbers representing the value curve the audioparam will
change through along the specified duration.
... starttime a double representing the time (in seconds) after the audiocontext was first created that the
change in value will happen.
...And 2 more matches
AudioParam.value - Web APIs
in addition to processing audio buffers, each render quantum updates the value of each audioparam as needed given the current time and any established time-based parameter value
changes.
... during each render quantum, the browser does the following things related to managing the value of a parameter: if the value setter has been used, the parameter's value is
changed to the value given.
... if the current time equals or exceeds the time specified by a previous call to setvalueattime(), the value is
changed to the value passed into setvalueattime().
...And 2 more matches
AudioTrackList - Web APIs
on
change an event handler to be called when the
change event occurs.
... this occurs when one or more tracks have been enabled or disabled by their enabled flag being
changed.
...
change fired when a track has been enabled or disabled.
...And 2 more matches
BiquadFilterNode.type - Web APIs
frequencies lower than the frequency get a boost, or an attenuation; frequencies over it are un
changed.
...frequencies higher than the frequency get a boost or an attenuation; frequencies lower than it are un
changed.
... peaking frequencies inside the range get a boost or an attenuation; frequencies outside it are un
changed.
...And 2 more matches
BiquadFilterNode - Web APIs
frequencies lower than the frequency get a boost, or an attenuation; frequencies over it are un
changed.
...frequencies higher than the frequency get a boost or an attenuation; frequencies lower than it are un
changed.
... peaking frequencies inside the range get a boost or an attenuation; frequencies outside it are un
changed.
...And 2 more matches
Element.requestFullscreen() - Web APIs
if permission to enter full screen mode is granted, the returned promise will resolve and the element will receive a fullscreen
change event to let it know that it's now in full screen mode.
...check browser compatibility in fullscreen for specifics on when each browser made this
change.
... note: this method must be called while responding to a user interaction or a device orientation
change; otherwise it will fail.
...And 2 more matches
HTMLBodyElement - Web APIs
windoweventhandlers.onhash
change is an eventhandler representing the code to be called when the hash
change event is raised.
... windoweventhandlers.onlanguage
change is an eventhandler representing the code to be called when the language
change event is raised.
... living standard technically, the event-related properties onafterprint, onbeforeprint, onbeforeunload, onblur, onerror, onfocus, onhash
change, onlanguage
change, onload, onmessage, onoffline, ononline, onpopstate, onresize, onstorage, and onunload, have been moved to windoweventhandlers.
...And 2 more matches
HTMLElement: input event - Web APIs
the input event fires when the value of an <input>, <select>, or <textarea> element has been
changed.
...check compatibility, or use the
change event instead for elements of these types.
... note: the input event is fired every time the value of the element
changes.
...And 2 more matches
HTMLElement - Web APIs
input fired when the value of an <input>, <select>, or <textarea> element has been
changed.
...
change fired when the value of an <input>, <select>, or <textarea> element has been
changed and committed by the user.
... unlike the input event, the
change event is not necessarily fired for each alteration to an element's value.
...And 2 more matches
HTMLImageElement.sizes - Web APIs
this provides the ability to automatically select among different images—even images of different orientations or aspect ratios—as the document state
changes to match different media conditions.
...to
change preferences in firefox, visit about:config.ie no support noopera full support yessafari no support nowebview android full support 45chrome android full support 45firefox andr...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android full support 5.0legend full support full support no support no supportexperim...
...And 2 more matches
HTMLImageElement.srcset - Web APIs
if you happen to have both standard and high density displays, try moving this window between them and reloading the page to see the results
change.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 21safari full support 8webview android full support 37chrome android full support 34firefox andr...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 8samsung internet android full support 2.0legend full support full support no support no supportexperim...
...And 2 more matches
HTMLMediaElement - Web APIs
duration
change fired when the duration attribute has been updated.
... play fired when the paused property is
changed from true to false, as a result of the htmlmediaelement.play() method, or the autoplay attribute playing fired when playback is ready to start after having been paused or delayed due to lack of data progress fired periodically as the browser loads a resource.
... rate
change fired when the playback rate has
changed.
...And 2 more matches
HTMLModElement - Web APIs
htmlmodelement.cite is a domstring reflecting the cite html attribute, containing a uri of a resource explaining the
change.
... htmlmodelement.datetime is a domstring reflecting the datetime html attribute, containing a date-and-time string representing a timestamp for the
change.
... living standard no
change from html5.
...And 2 more matches
IDBIndex - Web APIs
when the object store
changes, all indexes that refers to the object store are automatically updated.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 35safari full support 10.1webview android full support 48chrome android full support 48firefox a...
...to
change preferences in firefox, visit about:config.opera android full support 35safari ios full support 10.3samsung internet android full support 5.0getkeychrome full support 24 full support 24 no support 23 — 24prefixed prefixed implemented with the vendor prefix: webkitedge full support ...
...And 2 more matches
IDBTransaction - Web APIs
methods inherits from: eventtarget idbtransaction.abort() rolls back all the
changes to objects in the database associated with this transaction.
...(bug 888598) transactions can have one of three modes: constant value description read_only "readonly" (0 in chrome) allows data to be read but not
changed.
... read_write "readwrite" (1 in chrome) allows reading and writing of data in existing data stores to be
changed.
...And 2 more matches
MutationObserverInit.characterData - Web APIs
the mutationobserverinit dictionary's optional characterdata property is used to specify whether or not to monitor the node or nodes being observed for
changes to their textual contents.
... character data
changes are detectable on any text node, including nodes based on the text, processinginstruction, and comment interfaces.
... syntax var options = { characterdata: true | false } value a boolean value indicating whether or not to call the observer's callback function when textual nodes' values
change.
...And 2 more matches
MutationObserverInit.characterDataOldValue - Web APIs
the mutationobserverinit dictionary's optional characterdataoldvalue property is used to specify whether or not the mutationrecord.oldvalue property for dom mutations should be set to the previous value of text nodes which
changed.
... character data
changes are detectable on any text node, including nodes based on the text, processinginstruction, and comment interfaces.
... syntax var options = { characterdataoldvalue: true | false } value a boolean value indicating whether or not to set the mutationrecord's oldvalue property to be a string containing the value of the character node's contents prior to the
change represented by the mutation record.
...And 2 more matches
MutationObserverInit.subtree - Web APIs
the default value, false, indicates only the target node itself is to be monitored for
changes.
...the default, false, indicates that only the target node specified when calling mutationobserver.observe() is to be monitored for
changes.
... changing this value to true causes the entire subtree rooted at the specified target node to be monitored for the
changes indicated by the other options.
...And 2 more matches
PaymentResponse.shippingAddress - Web APIs
when the paymentrequest.onshippingaddress
change is called, updatedetails() is called to update the details of the paymentrequest, using shippingaddress to set the correct shipping cost.
... var payment = new paymentrequest(supportedinstruments, details, options); request.addeventlistener('shippingaddress
change', function(evt) { evt.updatewith(new promise(function(resolve) { updatedetails(details, request.shippingaddress, resolve); })); }); payment.show().then(function(paymentresponse) { // processing of paymentresponse exerpted for the same of brevity.
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 56 ...
...And 2 more matches
PaymentResponse.shippingOption - Web APIs
syntax var shippingoption = paymentrequest.shippingoption; example in the example below, the paymentrequest.onshippingaoption
change event is called.
...var payment = new paymentrequest(supportedinstruments, details, options); request.addeventlistener('shippingoption
change', function(evt) { evt.updatewith(new promise(function(resolve, reject) { updatedetails(details, request.shippingoption, resolve, reject); })); }); payment.show().then(function(paymentresponse) { // processing of paymentresponse exerpted for the same of brevity.
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 56 ...
...And 2 more matches
Pinch zoom gestures - Web APIs
the pinch in (zoom out) gesture, which moves the two pointers toward each other,
changes the target element's background color to lightblue.
... the pinch out (zoom in) gesture, which moves the two pointers away from each other,
changes the target element's background color to pink.
...if two pointers are down, and the distance between the pointers is increasing (signifying a pinch out or zoom in), the element's background color is
changed to pink, and if the distance between the pointers is decreasing (a pinch in or zoom out), the background color is
changed to lightblue.
...And 2 more matches
RTCIceTransport.getSelectedCandidatePair() - Web APIs
as soon as it finds an acceptable matching pair of candidates, meeting the requirements for the connection, a selectedcandidatepair
change event is fired at the rtcicetransport.
... as ice negotiation continues, any time a pair of candidates is discovered that is better than the currently-selected pair, the new pair is selected, replacing the previous pairing, and the selectedcandidatepair
change event is fired again.
... note: it's possible for one of the configurations in the selected candidate pair to remain un
changed when a new pairing is chosen.
...And 2 more matches
RTCPeerConnection.pendingLocalDescription - Web APIs
the read-only property rtcpeerconnection.pendinglocaldescription returns an rtcsessiondescription object describing a pending configuration
change for the local end of the connection.
... syntax sessiondescription = rtcpeerconnection.pendinglocaldescription; return value if a local description
change is in progress, this is an rtcsessiondescription describing the proposed configuration.
... example this example looks at the pendinglocaldescription to determine whether or not there's a description
change being processed.
...And 2 more matches
RTCPeerConnection.pendingRemoteDescription - Web APIs
the read-only property rtcpeerconnection.pendingremotedescription returns an rtcsessiondescription object describing a pending configuration
change for the remote end of the connection.
... syntax sessiondescription = rtcpeerconnection.pendingremotedescription; return value if a remote description
change is in progress, this is an rtcsessiondescription describing the proposed configuration.
... example this example looks at the pendingremotedescription to determine whether or not there's a description
change being processed.
...And 2 more matches
RTCRtpSender.setParameters() - Web APIs
the setparameters() method of the rtcrtpsender interface applies
changes the configuration of sender's track, which is the mediastreamtrack for which the rtcrtpsender is responsible.
... transactionid a string containing a unique id for the last set of parameters applied; this value is used to ensure that setparameters() can only be called to alter
changes made by a specific previous call to getparameters().
...you cannot
change the number of encoding options once the sender has been created.
...And 2 more matches
ResizeObserver - Web APIs
the resizeobserver interface reports
changes to the dimensions of an element's content or border box, or the bounding box of an svgelement.
... examples in the resize-observer-text.html (see source) example, we use the resize observer to
change the font-size of a header and paragraph as a slider’s value is
changed causing the containing <div> to
change width.
... this shows that you can respond to
changes in an element’s size, even if they have nothing to do with the viewport.
...And 2 more matches
Screen Wake Lock API - Web APIs
// create a reference for the wake lock let wakelock = null; // create an async function to request a wake lock const requestwakelock = async () => { try { wakelock = await navigator.wakelock.request('screen'); //
change up our interface to reflect wake lock active statuselem.textcontent = 'wake lock is active!'; } catch (err) { // if wake lock request fails - usually system related, such as battery statuselem.textcontent = `${err.name}, ${err.message}`; } } releasing wake lock the following example shows how to release the previously acquired wake lock.
... wakelock.addeventlistener('release', () => { // the wake lock has been released statuselem.textcontent = 'wake lock has been released'; }); reacquiring a wake lock the following code reacquires the wake lock should the visibility of the document
change and the wake lock is released.
... document.addeventlistener('visibility
change', () => { if (wakelock !== null && document.visibilitystate === 'visible') { wakelock = await navigator.wakelock.request('screen'); } }); putting it all together you can find the complete code on github here.
...And 2 more matches
Selection - Web APIs
selection.modify()
changes the current selection.
... safari and chrome (unlike firefox) currently focus the element containing selection when modifying the selection programmatically; it's possible that this may
change in the future (see w3c bug 14383 and webkit bug 38696).
... behavior of selection api in terms of editing host focus
changes the selection api has a common behavior (i.e., shared between browsers) that governs how focus behavior
changes for editing hosts after certain methods are called.
...And 2 more matches
Touch.clientY - Web APIs
when the touchend event handler is invoked, the
changes in the touch.clientx and touch.clienty coordinates, from the starting touch point to the ending touch point, are calculated.
... // register touchstart and touchend listeners for element 'source' var src = document.getelementbyid("source"); var clientx, clienty; src.addeventlistener('touchstart', function(e) { // cache the client x/y coordinates clientx = e.touches[0].clientx; clienty = e.touches[0].clienty; }, false); src.addeventlistener('touchend', function(e) { var deltax, deltay; // compute the
change in x and y coordinates.
... // the first touch point in the
changedtouches // list is the touch point that was just removed from the surface.
...And 2 more matches
Using Touch Events - Web APIs
the touchevent interface represents an event sent when the state of contacts with a touch-sensitive surface
changes.
... the state
changes are starting contact with a touch surface, moving a touch point while maintaining contact with the surface, releasing a touch point and canceling a touch event.
...
changedtouches - a list of the touch points whose items depends on the associated event type: for the touchstart event, it is a list of the touch points that became active with the current event.
...And 2 more matches
Lighting a WebXR setting - Web APIs
in addition, the intensity of the light doesn't
change over distance.
...while sunlight does actually fall off in intensity with distance, the rate of
change is very low and is only noticed over vast distances, so the rate of intensity
change of sunlight doesn't typically matter for rendering a 3d scene.
...even if the surface is flat, the closest point to the light source is the center, with rays becoming increasingly long as the angle away from the normal
changes.
...And 2 more matches
Spaces and reference spaces: Spatial tracking in WebXR - Web APIs
offsetting or moving reference spaces while you can't
change a reference space since both xrreferencespace and xrboundedreferencespace are read-only, you can easily create new reference spaces by applying an offset transform to them.
... converting between webxr session types another common reason you may need to convert positional information from one reference space to another is when it's necessary to
change the session type from inline to immersive-vr or back.
... <<<--- more text and example about how to handle rendering during lost tracking --->>> when tracking resumes you can detect when tracking has resumed after being lost when the user position jumps while at the same time the value of emulatedposition
changes from true to false.
...And 2 more matches
Example and tutorial: Simple synth keyboard - Web APIs
function setup() { notefreq = createnotetable(); volumecontrol.addeventlistener("
change",
changevolume, false); mastergainnode = audiocontext.creategain(); mastergainnode.connect(audiocontext.destination); mastergainnode.gain.value = volumecontrol.value; // create the keys; skip any that are sharp or flat; for // our purposes we don't need them.
... an event handler is established (by calling our old friend addeventlistener() to handle
change events on the master gain control.
... changing the master volume the volume slider in the settings bar provides a simple interface to
change the gain value on the master gain node, thereby changing the loudness of all playing notes.
...And 2 more matches
Window.devicePixelRatio - Web APIs
you can use window.matchmedia() to check if the value of devicepixelratio
changes (which can happen, for example, if the user drags the window to a display with a different pixel density).
...var scale = window.devicepixelratio; //
change to 1 on retina screens to see blurry canvas.
...ctx.scale(scale, scale); ctx.fillstyle = "#bada55"; ctx.fillrect(10, 10, 300, 300); ctx.fillstyle = "#ffffff"; ctx.font = '18px arial'; ctx.textalign = 'center'; ctx.textbaseline = 'middle'; var x = size / 2; var y = size / 2; var textstring = "i love mdn"; ctx.filltext(textstring, x, y); monitoring screen resolution or zoom level
changes in this example, we'll set up a media query and watch it to see when the device resolution
changes, so that we can check the value of devicepixelratio to handle any updates we need to.
...And 2 more matches
WindowOrWorkerGlobalScope.setInterval() - Web APIs
it may be helpful to be aware that setinterval() and settimeout() share the same pool of ids, and that clearinterval() and cleartimeout() can technically be used inter
changeably.
... <!doctype html> <html> <head> <meta charset="utf-8" /> <title>setinterval/clearinterval example</title> <script> var nintervid; function
changecolor() { nintervid = setinterval(flashtext, 1000); } function flashtext() { var oelem = document.getelementbyid('my_box'); oelem.style.color = oelem.style.color == 'red' ?
... } function stoptextcolor() { clearinterval(nintervid); } </script> </head> <body onload="
changecolor();"> <div id="my_box"> <p>hello world</p> </div> <button onclick="stoptextcolor();">stop</button> </body> </html> example 3: typewriter simulation the following example simulates typewriter by first clearing and then slowly typing content into the nodelist that matches a specified group of selectors.
...And 2 more matches
XRSession - Web APIs
any properties not included in the given dictionary are left un
changed from their current values.
... inputsources
change an event of type xrinputsources
changeevent sent to the xrsession when the list of active xr input sources has
changed.
... also available through the oninputsources
change event handler property.
...And 2 more matches
Web APIs
ent htmlscriptelement htmlselectelement htmlshadowelement htmlslotelement htmlsourceelement htmlspanelement htmlstyleelement htmltablecaptionelement htmltablecellelement htmltablecolelement htmltableelement htmltablerowelement htmltablesectionelement htmltemplateelement htmltextareaelement htmltimeelement htmltitleelement htmltrackelement htmlulistelement htmlunknownelement htmlvideoelement hash
changeevent headers history hkdfparams hmacimportparams hmackeygenparams i idbcursor idbcursorsync idbcursorwithvalue idbdatabase idbdatabaseexception idbdatabasesync idbenvironment idbenvironmentsync idbfactory idbfactorysync idbindex idbindexsync idbkeyrange idblocaleawarekeyrange idbmutablefile idbobjectstore idbobjectstoresync idbopendbrequest idbrequest idbtransaction...
... idbtransactionsync idbversion
changeevent idbversion
changerequest iirfilternode idledeadline imagebitmap imagebitmaprenderingcontext imagecapture imagedata index inputdevicecapabilities inputevent installevent installtrigger intersectionobserver intersectionobserverentry interventionreportbody k keyboard keyboardevent keyboardlayoutmap keyframeeffect keyframeeffectoptions l largestcontentfulpaint layoutshift layoutshiftattribution linearaccelerationsensor linkstyle localfilesystem localfilesystemsync localmediastream location lock lockmanager lockedfile m midiaccess midiconnectionevent midiinput midiinputmap midimessageevent midioutputmap mscandidatewindowhide mscandidatewindowshow mscandidatewindowupdate msgestureevent msgraphicstrust msmanipulationevent m...
...half_float oes_texture_half_float_linear oes_vertex_array_object ovr_multiview2 offlineaudiocompletionevent offlineaudiocontext offscreencanvas orientationsensor oscillatornode overconstrainederror p pagetransitionevent paintworklet pannernode parentnode passwordcredential path2d payererrors paymentaddress paymentcurrencyamount paymentdetailsbase paymentdetailsupdate paymentitem paymentmethod
changeevent paymentrequest paymentrequestevent paymentrequestupdateevent paymentresponse paymentvalidationerrors pbkdf2params performance performanceentry performanceeventtiming performanceframetiming performancelongtasktiming performancemark performancemeasure performancenavigation performancenavigationtiming performanceobserver performanceobserverentrylist performancepainttiming performanceres...
...And 2 more matches
ARIA: checkbox role - Accessibility
if the role is applied to a non-focusable element, use the tabindex attribute to
change this.
... the developer is required to
change the value of the aria-checked attribute dynamically when the checkbox is activated.
... 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 onkeypress handle the case where the user presses the space key to
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 ...
...And 2 more matches
Coordinate systems - CSS: Cascading Style Sheets
it's actually possible to
change the definitions and orientations of these coordinate systems using css properties such as transform.
...in other words, scrolling the document will
change the client coordinates of a given position within the document.
...this means that the position of a given point within a document will
change if the containing window is moved, for example, or if the user's screen geometry
changes (by changing display resolution or by adding or removing monitors to their system).
...And 2 more matches
Box-shadow generator - CSS: Cascading Style Sheets
node.getattribute('data-topic'); var unit_type = node.getattribute('data-unit'); var input = document.createelement('input'); var unit = document.createelement('span'); unit.textcontent = unit_type; input.setattribute('type', 'text'); node.appendchild(input); node.appendchild(unit); input.addeventlistener('click', function(e) { this.select(); }); input.addeventlistener('
change', function(e) { setvalue(topic, e.target.value | 0); }); subscribe(topic, function(value) { node.children[0].value = value; }); } var increment = function increment(topic) { var slider = sliders[topic]; if (slider === null || slider === undefined) return; if (slider.value + slider.step <= slider.max) { slider.value += slider.step; setvalue(slider.topic, slider.valu...
...d = id; checkbox.setattribute('type', 'checkbox'); checkbox.checked = state; label.setattribute('for', id); if (name) { label.classname = 'text'; if (align) label.classname += ' ' + align; label.textcontent = name; } node.appendchild(checkbox); node.appendchild(label); this.node = node; this.topic = topic; this.checkbox = checkbox; checkbox.addeventlistener('
change', function(e) { notify.call(this); }.bind(this)); buttons[topic] = this; } var getnode = function getnode(topic) { return buttons[topic].node; } var setvalue = function setvalue(topic, value) { try { buttons[topic].checkbox.checked = value; notify.call(buttons[topic]); } catch(error) { console.log(error, topic, value); } } var subscribe = function subscribe(to...
... title; var input = document.createelement('input'); var info = document.createelement('span'); info.textcontent = title; input.setattribute('type', 'text'); input.setattribute('data-action', 'set-' + action + '-' + topic); node.appendchild(info); node.appendchild(input); input.addeventlistener('click', function(e) { this.select(); }); input.addeventlistener('
change', function(e) { if (action === 'hsv') input
changehsv(topic); if (action === 'rgb') input
changergb(topic); if (action === 'alpha') input
changealpha(topic); if (action === 'hexa') input
changehexa(topic); }); subscribe(topic, function(value) { node.children[1].value = value; }); } var input
changehsv = function actionhsv(topic) { var selector ...
...And 2 more matches
Backwards Compatibility of Flexbox - CSS: Cascading Style Sheets
the history of flexbox as with all css specifications the flexbox specification went through a large number of
changes before it became the candidate recommendation that we have today.
... as a candidate recommendation we should not see large
changes at this point to the spec, however this has not been the case with past flexbox iterations.
...however, prefixes ultimately were used in production code, and
changes to the experimental specification caused people to need to update their sites to keep up.
...And 2 more matches
Basic concepts of flexbox - CSS: Cascading Style Sheets
changing flex-direction adding the flex-direction property to the flex container allows us to
change the direction in which our flex items display.
... if we
change flex-direction to column the main axis switches and our items now display in a column.
... in the live example below try changing the first value to one of the allowable values for flex-direction - row, row-reverse, column or column-reverse, and also
change the second to wrap and nowrap.
...And 2 more matches
Mastering Wrapping of Flex Items - CSS: Cascading Style Sheets
thus, if a flex container has only one flex line, dynamically collapsing or uncollapsing items may
change the flex container’s main size, but is guaranteed to have no effect on its cross size and won’t cause the rest of the page’s layout to "wobble".
... flex line wrapping is re-done after collapsing, however, so the cross-size of a flex container with multiple lines might or might not
change.” - collapsed items this behaviour is useful if you want to target flex items using javascript to show and hide content for example.
...if you remove visibility: collapse from the css or
change the value to visible, you will see the item disappear and the space redistribute between non-collapsed items; the height of the flex container should not
change.
...And 2 more matches
Relationship of flexbox to other layout methods - CSS: Cascading Style Sheets
we need to be aware of how this will impact our flex layouts as writing mode
changes the direction that blocks are laid out in our document.
... it is worth noting that we might want to
change the writing mode of our document for reasons other than publishing content in a language that uses a different writing mode.
... the writing modes the writing modes specification defines the following values of the writing-mode property, which serve to
change the direction that blocks are laid out on the page, to match the direction that blocks lay out when content is formatted in that particular writing mode.
...And 2 more matches
Block and inline layout in normal flow - CSS: Cascading Style Sheets
in the css display model level 3, we can learn more about how the display property
changes the behaviour of boxes and the boxes they generate.
...it then has an inner display type which
changes the way its children behave.
...items nested inside our flex item lay themselves out as block and inline elements unless something
changes their display type.
...And 2 more matches
Variable fonts guide - CSS: Cascading Style Sheets
if you have set values using font-variation-settings and want to
change one of those values, you must redeclare all of them (in the same way as when you set opentype font features using font-feature-settings).
...italic and oblique are often used somewhat inter
changeably, but in truth are actually quite different.
... slant slant (represented by the slnt tag), or as it's often referred to, 'oblique' — is different to true italics in that it
changes the angle of the letterforms but doesn’t perform any kind of character substitution.
...And 2 more matches
Basic Shapes - CSS: Cascading Style Sheets
.shape { shape-outside: circle(50%) margin-box; } you can therefore
change this in order that your shape uses the different parts of the box model, for example to use the border.
...
change the offset values to see how the shape
changes.
...in the example below
change the reference box from margin-box to border-box, padding-box or content-box to see how the reference box used as the starting point before offsets are calculated
changes.
...And 2 more matches
Pseudo-classes - CSS: Cascading Style Sheets
for example, :hover can be used to
change a button's color when the user's pointer hovers over it.
...
changed :empty to behave like :-moz-only-whitespace .
... no significant
change for other pseudo-classes defined in selectors level 3 and html5 (though semantic meaning not taken over).
...And 2 more matches
DOM onevent handlers - Developer guides
further
changes to the html attribute value can be done via the setattribute method; making
changes to the javascript property will have no effect.
...</p> <div></div> javascript then this javascript demonstrates that the value of the html attribute is unaffected by
changes to the javascript object's property.
... let logelement = document.queryselector('div'); let el = document.queryselector("a"); function log(msg) { logelement.innerhtml += `${msg}<br>` }; function anchoronclick(event) { log("
changed onclick handler") }; // original handler log(`element's onclick as a javascript property: <code> ${el.onclick.tostring()} </code>`); //changing handler using .onclick log('<br>changing onclick handler using <strong> onclick property </strong> '); el.onclick = anchoronclick; log(`
changed the property to: <code> ${el.onclick.tostring()} </code>`); log(`but the html attribute is un
changed: <code> ${el.getattribute("onclick")} </code><br>`); //changing handler using .setattribute log('<hr/><br> changing onclick handler using <strong> setattribute method </strong> '); el.setattribute("onclick", 'anchoronc...
...And 2 more matches
Making content editable - Developer guides
if you want to use a different paragraph separator, the above browsers all support document.execcommand, which provides a defaultparagraphseparator command to allow you to
change it.
...low: scroll; } #textbox #sourcetext { padding: 0; margin: 0; min-width: 498px; min-height: 200px; } #editmode label { cursor: pointer; } </style> </head> <body onload="initdoc();"> <form name="compform" method="post" action="sample.php" onsubmit="if(validatemode()){this.mydoc.value=odoc.innerhtml;return true;}return false;"> <input type="hidden" name="mydoc"> <div id="toolbar1"> <select on
change="formatdoc('formatblock',this[this.selectedindex].value);this.selectedindex=0;"> <option selected>- formatting -</option> <option value="h1">title 1 <h1></option> <option value="h2">title 2 <h2></option> <option value="h3">title 3 <h3></option> <option value="h4">title 4 <h4></option> <option value="h5">title 5 <h5></option> <option value="h6">subtitle <h6></op...
...tion> <option value="p">paragraph <p></option> <option value="pre">preformatted <pre></option> </select> <select on
change="formatdoc('fontname',this[this.selectedindex].value);this.selectedindex=0;"> <option class="heading" selected>- font -</option> <option>arial</option> <option>arial black</option> <option>courier new</option> <option>times new roman</option> </select> <select on
change="formatdoc('fontsize',this[this.selectedindex].value);this.selectedindex=0;"> <option class="heading" selected>- size -</option> <option value="1">very small</option> <option value="2">a bit small</option> <option value="3">normal</option> <option value="4">medium-large</option> <option value="5">big</option> <option value="6">very big</option> <option value="7">maximum</option> </select> <select on...
...And 2 more matches
Writing forward-compatible websites - Developer guides
or, conversely, that they don't have support for some other feature (e.g., don't assume that a browser that supports onload on script elements will never support onreadystate
change on them).
... avoid depending on cutting-edge nonstandard features even if the feature is prefixed, using it could be dangerous: as the specification evolves the browser's prefixed implementation can likewise
change to track the specification.
...if you choose to use them, be prepared to need to frequently update your site to keep up with
changes.
...And 2 more matches
<audio>: The Embed Audio element - HTML: Hypertext Markup Language
if the audio's metadata isn't available yet—thereby preventing you from knowing the media's start time or duration—currenttime instead indicates, and can be used to
change, the time at which playback will begin.
... duration
change the duration attribute has been updated.
... rate
change the playback rate has
changed.
...And 2 more matches
<input type="text"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, readonly, required and size idl attributes list, value methods select(), setrangetext() and setselectionrange().
...constraint validation is only applied when the value is
changed by the user.
...constraint validation is only applied when the value is
changed by the user.
...And 2 more matches
<input type="url"> - HTML: Hypertext Markup Language
value a domstring representing a url, or empty events
change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, readonly, required and size idl attributes list, value, selectionend, selectiondirection methods select(), setrangetext() and setselectionrange().
...constraint validation is only applied when the value is
changed by the user.
...constraint validation is only applied when the value is
changed by the user.
...And 2 more matches
ETag - HTTP
it lets caches be more efficient and save bandwidth, as a web server does not need to resend a full response if the content has not
changed.
... if the resource at a given url
changes, a new etag value must be generated.
... for example, when editing mdn, the current wiki content is hashed and put into an etag in the response: etag: "33a64df551425fcc55e4d42a148795d9f25f89d4" when saving
changes to a wiki page (posting data), the post request will contain the if-match header containing the etag values to check freshness against.
...And 2 more matches
Index - HTTP
browsers set adequate values for this header according to their user interface language and even if a user can
change it, this happens rarely (and is frowned upon as it leads to fingerprinting).
...it allows caches to be more efficient, and saves bandwidth, as a web server does not need to send a full response if the content has not
changed.
... on the other side, if the content has
changed, etags are useful to help prevent simultaneous updates of a resource from overwriting each other ("mid-air collisions").
...And 2 more matches
An overview of HTTP - HTTP
it is the foundation of any data ex
change on the web and it is a client-server protocol, which means requests are initiated by the recipient, usually the web browser.
...these can be transparent, forwarding on the requests they receive without altering them in any way, or non-transparent, in which case they will
change the request in some way before passing it along to the server.
... before a client and server can ex
change an http request/response pair, they must establish a tcp connection, a process which requires several round-trips.
...And 2 more matches
HTTP response status codes - HTTP
(there is no standardized way of choosing one of the responses, but html links to the possibilities are recommended so the user can pick.) 301 moved permanently the url of the requested resource has been
changed permanently.
... 302 found this response code means that the uri of requested resource has been
changed temporarily.
... further
changes in the uri might be made in the future.
...And 2 more matches
Digital audio concepts - Web media technologies
not commonly used yet, but this will
change over time.
...factors such as the ability to sense the
change in frequency of a sound, the overall range of human hearing versus the frequencies of the audio signal, audio localization, and so forth all can be considered by a codec.
... note: while a high-quality lossy compression algorithm's effect on sound quality may be difficult for the average person to detect, certain people have exceptionally good hearing, or are particularly adept at noticing the kinds of
changes introduced to music by lossy compression techniques.
...And 2 more matches
Using custom elements - Web Components
for example, connectedcallback is invoked each time the custom element is appended into a document-connected element, while attribute
changedcallback is invoked when one of the custom element's attributes is added, removed, or
changed.
... attribute
changedcallback: invoked each time one of the custom element's attributes is added, removed, or
changed.
... which attributes to notice
change for is specified in a static get observedattributes method let's look at an example of these in use.
...And 2 more matches
dev/panel - Archive of obsolete content
when the panel's created, the framework passes it a debuggee: this is a messageport object that you can use to ex
change json messages with the browser that the developer tools are currently debugging.
... you can't directly manipulate the panel's content from main.js, but you can ex
change messages with scripts running in the panel.
... debuggee is a messageport object that you can use to ex
change messages with the debugger server.
...the setup method will be passed a debuggee object, which is a messageport that the add-on can use to ex
change messages with the debugger server.
ui/frame - Archive of obsolete content
communicating with frames you can ex
change messages between the main add-on code and scripts loaded into the frame using an api modeled on window.postmessage().
...origin: window.parent.postmessage("ping", "*"); if the frame script has received a message from the add-on already, it can use the origin property of the event object passed to the message hander: // listen for messages from the add-on, and send a reply window.addeventlistener("message", function(event) { event.source.postmessage("pong", event.origin) }, false); this frame script listens to
change events on the "city-selector" <select> element, and sends a message to the add-on containing the value for the newly selected element.
... // city-info.js var cityselector = window.document.getelementbyid("city-selector"); cityselector.addeventlistener("
change", city
changed); function city
changed() { window.parent.postmessage(cityselector.value, "*"); } to listen for these messages in the main add-on code, you can assign a listener to the frame's message event.
...you can specify the frame's url property as the targetorigin: frame.postmessage(message, frame.url); this add-on listens for a frame script to send the "city
changed" message above, and in response, updates all frames across all browser windows with that city's current weather (it just reads this from a dictionary, where in a real case it might ask a web service): var { frame } = require("sdk/ui/frame"); var { toolbar } = require("sdk/ui/toolbar"); var weather = { "london" : "rainy", "toronto" : "snowy", "san francisco" : "foggy" } var frame = new f...
Communication between HTML and your extension - Archive of obsolete content
the onreadystate
change was set to another little javascript function that would update a specific element on the html page with the result.
...there were only a handful of events that seemed relevant (load,
change, dominsertnode, dominsertnodeintodocument, domactivate) and i tried them all in many different ways.
...eventually i put the creation of the custom event into the state
changed function that was handling the receipt of the ajax request.
... if (doc && doc.addeventlistener) doc.addeventlistener("my-custom-event", myextension.customreceived, false); since the event is dispatched after the element in the html is updated by the status
changed function, the element that extension is looking for is there to find.
Migrating from Internal Linkage to Frozen Linkage - Archive of obsolete content
this document is a guide to common code patterns that may need to
change to work with frozen linkage.
... strings the most obvious
change required by frozen linkage is using the frozen string api.
...
changes to internal apis to make them compatible with the external api.
...
changes to external apis to make them compatible with the internal api.
Offering a context menu for form controls - Archive of obsolete content
firefox 3
changed the behavior of right-click on form controls to no longer display a context menu by default.
... this article describes how an extension can override this
change in a particular window, enabling context menus to work on form controls.
... <overlay id="formcontrolcontextmenu-overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="application/javascript" src="chrome://formcontrolcontextmenu/content/overlay.js"/> </overlay>
change the right-click behavior the overlaid code is responsible for adjusting the behavior of right-clicking on form controls.
... as a result, all controls in the window will support a context menu when right-clicked, since we've
changed the core behavior of context menus to override their default behavior of doing nothing on form controls.
Chapter 1: Introduction to Extensions - Archive of obsolete content
user style sheets (
change appearance through css) yes; you can
change the usercontent.css file, or use the stylish extension.
... yes; you can
change the userchrome.css file, or use the stylish extension.
... user scripts (
change appearance and functionality through javascript) yes; you can use the greasemonkey extension or "bookmarklets." yes; you can
change userchrome.js to add functionality through javascript.
... extensions (these can do anything) yes yes theming (this
changes the look of the browser) no yes let's build an extension table 1 shows the various customization options available to a user in firefox.
Adding Events and Commands - Archive of obsolete content
fired when the selection in a tree or listbox
changes.
...for example: <button label="&xulschoolhello.defaultgreeting.label;" oncommand="xulschoolchrome.browseroverlay.
changegreeting(event);" /> then on the javascript code you would have something like this:
changegreeting : function(aevent) { // more stuff aevent.target.setattribute("label", somenewgreeting); } the target in this example is the button element, so clicking on it will
change its text.
...it's common that you need to
change several elements at the same time, and this can be difficult to manage through javascript.
... the observes attribute: <menuitem id="xulschoolhello-hello-menu-item" label="&xulschoolhello.hello.label;" accesskey="&xulschoolhello.helloitem.accesskey;" observes="xulschoolhello-online-broadcaster" oncommand="xulschoolchrome.browseroverlay.sayhello(event);" /> the attribute value is set to be the id of the broadcaster element, indicating that this element will observe all attribute
changes that happen in the broadcaster.
Adding sidebars - Archive of obsolete content
on the other hand, if you need ui that behaves like a tabbox but doesn't look like one, you should still favor using a tabbox and use css to
change its look.
...--> </tabpanel> </tabpanels> </tabbox> the first tab is selected by default, but you can
change the default selection by setting the selected attribute to true in the « xul reference « element.
... a deck can be very useful when you have a large piece of xul code that only
changes in a small way depending on different circumstances.
...the alternative is to use a deck with the two labels, and
change the selected index depending on the purpose of the window.
Intercepting Page Loads - Archive of obsolete content
in a nutshell, there are a lot of state and status
changes going on when a page loads, and the notify constants allow you to filter out the events you don't need to listen to.
... here are a couple of common use cases and the ways to implement them with web progress listeners: if you want simple detection and filtering like in the page load events, you can use onlocation
change.
...in this case, your best bet is to use onstate
change, and filter to when the state flags indicate a document has begun being loaded: if ((astateflags & components.interfaces.nsiwebprogresslistener.state_start) && (astateflags & components.interfaces.nsiwebprogresslistener.state_is_document)) note the use of the binary mask & operator.
...canceling the request works just like with onlocation
change.
JavaScript Object Management - Archive of obsolete content
this allows you to manipulate and possibly
change elements in the window without the user noticing the
changes.
... */ init : function(aevent) { this._stringbundle = document.getelementbyid("xulschoolhello-string-bundle"); // you can make
changes to the window dom here.
... download this version of the hello world project with jsm to see the
changes you need to make to the build system in order to include the files in the modules folder.
...well, only if consumers of the class play nice and don't
change anything they shouldn't.
Index of archived content - Archive of obsolete content
ng menus and submenus adding sidebars adding windows and dialogs appendix a: add-on performance appendix b: install and uninstall scripts appendix c: avoiding using eval in add-ons appendix d: loading scripts appendix e: dom building and insertion (html & xul) appendix f: monitoring dom
changes connecting to remote content custom xul elements with xbl getting started with firefox extensions handling preferences intercepting page loads introduction javascript object management local storage mozilla documentation roadmap observer notifications ...
...ity best practices in extensions session store api setting up an extension development environment signing an xpi signing an extension supporting search suggestions in search plugins tabbed browser techniques promises updating addons broken by private browsing
changes using dependent libraries in extension components using the stylesheet service bookmarks.export() bookmarks.import() adding preferences to an extension an interview with douglas bowman of wired news archived mozilla and build documentation activex control for hosting netscape plug-ins...
...tracing build documentation the basics of web services themes building a theme common firefox theme issues and solutions creating a skin for firefox uuid contents.rdf install.rdf making sure your theme works with rtl locales theme
changes in firefox 2 theme
changes in firefox 3 theme
changes in firefox 3.5 theme
changes in firefox 4 updating an extension to support multiple mozilla applications using firebug and jquery (screencast) using io timeout and interrupt on nt using ssh to connect to cvs using web standards in your web pages...
... developing cross-browser and cross-platform pages references summary of
changes using the w3c dom using workers in extensions web standards choosing standards compliance over proprietary practices community correctly using titles with external stylesheets describing microformats in javascript displaying a graphic with audio samples fixing incorrectly sized list item markers fixing table inheritance in quirks mode issues arising from arbitrary-element hover mozilla's doctype sniffing parsing microformats in javascript popup window controls rdf in fifty words or less ...
Inner-browsing extending the browser navigation paradigm - Archive of obsolete content
if the data
changes, it will not update unless you reload the web page.
...data bind: mutation in the current document this step takes care of applying the
changes into the current document, based on the data loaded, and uses dom interfaces.
... the mechanism can be as simple as copying new content to the current document, or as complex as performing dynamic transformations on the data source before applying the
changes into the current document.
...note that the ticker data in this example is static because the html data (tickerdata.html) never
changes.
Localizing an extension - Archive of obsolete content
for example, in stockwatcher2.xul, we
change this line: <menuitem label="refresh now" oncommand="stockwatcher.refreshinformation()"/> to <menuitem label="&menu_refresh_now.label;" oncommand="stockwatcher.refreshinformation()"/> do this for every string used in each xul file.
...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 add to refreshinformation() the following code: var stringsbundle = document.getelementbyid("string-bundle"); var
changestring = stringsbundle.getstring('
changestring') + " "; var openstring = stringsbundle.getstring('openstring') + " "; var lowstring = stringsbundle.getstring('lowstring') + " "; var highstring = stringsbundle.getstring('highstring') + " "; var volumestring = stringsbundle.getstring('volumestring') + " "; this code gets a reference to the string bundle element we added to stockwatcher2.xul by ...
...then we replace any occurrences of the literal strings with the appropriate variables: samplepanel.tooltiptext =
changestring + fieldarray[4] + " | " + openstring + fieldarray[5] + " | " + lowstring + fieldarray[6] + " | " + highstring + fieldarray[7] + " | " + volumestring + fieldarray[8]; localizing the description in install.rdf see localizing extension descriptions.
Making a Mozilla installation modifiable - Archive of obsolete content
because of this, we can modify the files in the archive and see our
changes to the ui merely by restarting the application.
...
change them so they point to the extracted files by removing the leading jar: and the part in the middle that says something.jar!.
... if you have perl on your system, you can do this with the following command: perl -pi.orig -e 's/(jar:)|(\/[^.\/]+\.jar!)//g' chrome.rdf installed-chrome.txt for example, to convert the url jar:resource:/chrome/comm.jar!/content/necko/,
change it to resource:/chrome/content/necko/.
... after you make these
changes, try starting the copy of mozilla you have modified.
FAQ - Archive of obsolete content
every time there is a major
change made to the interface, either visible or behind the scenes, your skin will have problems.
... when the mozilla developers make
changes like this, they increase the skin version number.
...if a message appears in the preferences window telling you that it's an old skin, you're going to have to look over the code to see what
changed.
... developers try to keep
changes like this to a minimum, but sometimes it just can't be helped.
Monitoring downloads - Archive of obsolete content
handling download state
changes once the code above is run, our ondownloadstate
change() method is called whenever a download's state
changes.
... that code looks like this: ondownloadstate
change: function(astate, adownload) { var statement; switch(adownload.state) { case components.interfaces.nsidownloadmanager.download_downloading: // add a new row for the download being started; each row includes the // source uri, size, and start time.
... if the download's state indicates that the download is finished, canceled, or failed, we call our logtransfercompleted routine to update the log to indicate that state
change.
...since this is a simple example, it's a one-shot log window; it doesn't monitor for further
changes to the log.
Proxy UI - Archive of obsolete content
the preference
changes selecting the proxy "mode" all product's proxy preference panels share a basic design: a radio button that selects the proxy mode, then "related proxy mode" ui when needed.
...saving
changes click "ok" to save
changes to prefs.
... click "cancel" to discard
changes.
...but should be noted that if you cut and paste from ie, the semi-colons are automatically converted to commas when you save
changes (ff, tb, sm).
Space Manager Detailed Design - Archive of obsolete content
the height
change always applies to the bottom edge or the existing * rect.
... you specify whether the width
change applies to the left or right edge * * returns ns_ok if successful, ns_error_invalid_arg if there is no region * tagged with aframe */ enum affectededge {leftedge, rightedge}; nsresult resizerectregion(nsiframe* aframe, nscoord adeltawidth, nscoord adeltaheight, affectededge aedge = rightedge); /** * offset the region associated with aframe by the specified amount.
...the height
change always applies to the bottom edge or the existing * rect.
... you specify whether the width
change applies to the left or right edge * * returns ns_ok if successful, ns_error_invalid_arg if there is no region * tagged with aframe */ enum affectededge {leftedge, rightedge}; nsresult resizerectregion(nsiframe* aframe, nscoord adeltawidth, nscoord adeltaheight, affectededge aedge = rightedge); /** * offset the region associated with aframe by the specified amount.
Tamarin mercurial commit hook - Archive of obsolete content
the hook is located in the tamarin-redux repository in the file utils/hooks/tamarin-commit-hook.py this is a simple mercurial hook that checks the following filetypes ('.cpp', '.h', '.as', '.abs', '.py') for the following: tabs anywhere in the line trailing whitespace windows line endings (\r\n) "mark_security_
change" - looks for this text and warns user as security
changes should not be checked into the public tamarin-redux repository.
...hook use on every commit to your local repository, the hook will only check for violations in any new /
changed code.
... when a violation is found the following will be displayed: > hg commit -m "
change with a tab" tab(s) found in test/test.txt for rev 1458 (
change 53543674b8e6): @@ -65,4 +65,6 @@ +# tab here ^ (n)o, (y)es, (a)llow tabs for current file are you sure you want to commit this
change?
... this may
change in the future and be enforced for all checkins.
The life of an HTML HTTP request - Archive of obsolete content
nsicontent::appendchild() is used to build the content tree but appendchild takes a "anotify" argument that marks if it should notify the document about the content model
changes or not.
...the content sink tells the document about content model
changes (notifybody()) in places like nshtmlcontentsink::willinterrupt() and nshtmlcontentsink::didbuildmodel().
... (7) since the presentation shell (nspresshell) has registred as an documentobserver with the nsidocument it also gets notified of
changes in the document/content tree.
... todo: how are nsiframes reflowed after a
change when they already exist?
Using Breakpoints in Venkman - Archive of obsolete content
when a breakpoint is set, the margin will
change to the letter "b", as in figure 2.
...one of the most important aspects of debugging a script or software program is the ability to examine variables—function return values, errors, counters, variable scopes—as they
change over the course of the script execution.
... using breakpoints and the interactive view, you can
change the values of the variables that venkman displays (only in the context of the debugging environment itself) and see how these
changes affect the execution of the code.
...you can
change or delete this breakpoint just as you would a breakpoint created by hand.
events - Archive of obsolete content
focus: occurs when the focused element
changes.
... select: occurs when the selected text
changed.
... clipboard: occurs when the clipboard is
changed.
... undo: occurs when the undo buffer is
changed.
Getting File Information - Archive of obsolete content
two useful attributes filesize and lastmodifiedtime (nsifile.attributes) provide a means of retrieving the size of a file and the time when the file was last
changed.
...if the file is not present, the 'filesize' variable will not be
changed from the default value of 0.
... file.filesize = 5000; modified time the time that a file was last
changed may be retrieved using the lastmodifiedtime (nsifile.attributes) attribute.
... you can
change the modification time of a file by setting the lastmodifiedtime (nsifile.attributes) attribute, or you can just write to the file, in which case the value will be adjusted automatically.
Providing Command-Line Options - Archive of obsolete content
nehandler/general-startup;1?type=myapp {2991c315-b871-42cd-b33f-bfee4fcbf682} category command-line-handler m-myapp @mozilla.org/commandlinehandler/general-startup;1?type=myapp the javascript code const cc = components.classes; const ci = components.interfaces; components.utils.import("resource://gre/modules/xpcomutils.jsm"); components.utils.import("resource://gre/modules/services.jsm"); //
changeme: to the chrome uri of your extension or application const chrome_uri = "chrome://myapp/content/"; /** * utility functions */ /** * opens a chrome window.
...rgument an argument to pass to the window (may be null) */ function openwindow(achromeurispec, aargument) { services.ww.openwindow(null, achromeurispec, "_blank", "chrome,menubar,toolbar,status,resizable,dialog=no", aargument); } // command line handler function commandlinehandler() { }; commandlinehandler.prototype = { classdescription: "myapphandler", //
changeme: generate a unique id classid: components.id('{2991c315-b871-42cd-b33f-bfee4fcbf682}'), //
changeme:
change the type in the contractid to be unique to your application contractid: "@mozilla.org/commandlinehandler/general-startup;1?type=myapp", _xpcom_categories: [{ category: "command-line-handler", //
changeme: // category names are sorted alphabetically.
... entry: "m-myapp" }], queryinterface: xpcomutils.generateqi([ ci.nsicommandlinehandler ]), /* nsicommandlinehandler */ handle : function clh_handle(cmdline) { try { //
changeme:
change "viewapp" to your command line flag that takes an argument var uristr = cmdline.handleflagwithparam("viewapp", false); if (uristr) { // convert uristr to an nsiuri var uri = cmdline.resolveuri(uristr); openwindow(chrome_uri, uri); cmdline.preventdefault = true; } } catch (e) { components.utils.reporterror("incorrect parameter passed to -viewapp on the command line."); } //
changeme:
change "myapp" to your command line flag (no ...
...argument) if (cmdline.handleflag("myapp", false)) { openwindow(chrome_uri, null); cmdline.preventdefault = true; } }, //
changeme:
change the help info as appropriate, but // follow the guidelines in nsicommandlinehandler.idl // specifically, flag descriptions should start at // character 24, and lines should be wrapped at // 72 characters with embedded newlines, // and finally, the string should end with a newline helpinfo : " -myapp open my application\n" + " -viewapp <uri> view and edit the uri in my application,\n" + " wrapping this description\n" }; var nsgetfactory = xpcomutils.generatensgetfactory([commandlinehandler]); ...
The Joy of XUL - Archive of obsolete content
while such
changes are extensive and affect most (if not all) of the application, they are also isolated from one another, enabling the core xul definition and application logic to be shared among all of the custom versions.
...the netscape public license (npl) and mozilla public license (mpl) require developers who alter original work (source code files that are provided with mozilla) to release the source code for these
changes to their customers.
... separation of presentation from logic makes applications resilient to
change.the original ui implementation made extensive use of graphics for rendering the month and week views.
...the ui for the month and week views was practically rewritten while the application logic remained virtually un
changed.
Complete - Archive of obsolete content
the problem with this approach is that when
changes in an application do make the extension fail, users might have bad experiences ranging from error messages that they cannot understand to crashes and data loss.
...to tell the application that the files it needs are in a jar, there are
changes to chrome.manifest (for firefox etc.) and to install.js (for seamonkey).
... for example, chrome.manifest originally had: content custombutton chrome/ now it has: content allcustom jar:chrome/allcustom.jar!/content/allcustom/ you can see the other
changes if you unpack the xpi.
... themes a theme
changes the appearance of the user interface, affecting fonts, colours, graphics, and sometimes layout.
Adding Event Handlers to XBL-defined Elements - Archive of obsolete content
for example, a custom checkbox might have a checked property which needs to be
changed when the user clicks the checkbox: <handlers> <handler event="mouseup" action="this.checked=!this.checked"/> </handlers> when the user clicks and releases the mouse button over the check box, the mouseup event is sent to it, and the handler defined here is called, causing the state of the checked property to be reversed.
... similarly, you may wish to
change a property when the element is focused.
... you might have a need to
change whether an element can have the focus or not.
...the previous example could be extended so that the checked property of the check box is
changed when the space bar is pressed.
Adding Style Sheets - Archive of obsolete content
an example would be when a script
changes the style, or where a difference in layout might
change the meaning of the element.
...this will be
changed by a script so it was left in, as it doesn't really make sense to have the progress bar visible initially.
...however, it is much easier for someone to
change the look of the find files dialog now because they could add or modify the style declarations by either modifying the file or by changing the skin.
... if the user
changes the interface skin, the files in a directory other than default will be applied.
Custom Tree Views - Archive of obsolete content
note: the tree-related interfaces
changed in gecko 1.8.
... see tree widget
changes for details.
...we can assign a value to this property at any time to set or
change the view.
...you can
change the view at any time.
Document Object Model - Archive of obsolete content
for example, if the global object has a 'name' property, you can
change the name with the code 'name = 7', without having to specify any object to use.
... we'll
change the progress meter so that its initially hidden.
...the second line of the function body
changes the hidden state so that the element is visible again.
... these functions allow you to get and
change the value of an attribute at any time.
Numeric Controls - Archive of obsolete content
other numeric textbox attributes the increment attribute may be used to specify by how much the value
changes when the arrows are pressed.
... the default value is 1, but specifying a different value allows the number to
change by a larger amount.
...a scale will fire a
change event whenever the scales's value is modified.
...however, you can
change this orientation with the orient and dir attributes.
Tree Box Objects - Archive of obsolete content
redrawing the tree we already saw the rowcount
changed() function of the tree box object in the previous section.
...you don't need to call the rowcount
changed() function when a row has simply
changed in some way, for example if a cell's label
changes.
...the name was
changed to getpagelength() since it was confusing before since it doesn't return the number of pages, but the size of each page.
...if you move the mouse around in the previous example, you might notice the label
change between 'text' and 'cell'.
Using Remote XUL - Archive of obsolete content
after completing the tutorial you should understand how to: create xul documents; serve them from a web server; use cascading style sheets (css) to
change their appearance; use javascript to define their behavior.
...without it, the iframe's size would be a fixed default and wouldn't
change when the user resized their window.
... [optionally add something about how flex only applies to one axis] note that for remote xul documents you can see
changes you make to the ui by reloading the document with your browser's "reload" function, just as with a typical html page.
...if we were to switch the browser to a different skin, the style of our menus would also
change.
commandset - Archive of obsolete content
focus: occurs when the focused element
changes.
... select: occurs when the selected text
changed.
... clipboard: occurs when the clipboard is
changed.
... undo: occurs when the undo buffer is
changed.
dialog - Archive of obsolete content
the following values can be used in the list: accept: the ok button, which will accept the
changes when pressed.
...if it is set to true any
changes to settings are supposed to be applied immediately.
...the default setting of browser.preferences.instantapply currently is true on linux and mac os and false on windows (which however might or might not
change soon, see bug 738797 and bug 1037225).
...the following values can be used in the list: accept: the ok button, which will accept the
changes when pressed.
preferences - Archive of obsolete content
perties align, , allowevents, , boxobject, builder, , , , classname, , , , , collapsed, contextmenu, controllers, database, datasources, dir, , , flex, height, hidden, id, , , left, , maxheight, maxwidth, menu, minheight, minwidth, , , , , , , observes, ordinal, orient, , pack, , persist, , , , ref, resource, , , , , statustext, style, ,, tooltip, tooltiptext, top, width methods void fire
changedevent(in domelement preference); creates and dispatches a
changed (non-bubbling) event to the specified preference element.
... also executes code specified in on
changed attribute of the element.
... see also the description of
change event of <preference>.
... void observe(in nsisupports asubject, in string atopic, in wstring adata); nsiobserver method used internally to react to
changes to preferences listed as children of this element.
How to enable locale switching in a XULRunner application - Archive of obsolete content
here is a code snippet showing how this is done: the definition of the xul control: <listbox id="locale-listbox"> <!-- generated list items go in here --> </listbox> <button label="&switchlocale.button;" oncommand="
changelocale()"/> the javascript code to populate the control: try { // query available and selected locales var chromeregservice = components.classes["@mozilla.org/chrome/chrome-registry;1"].getservice(); var xulchromereg = chromeregservice.queryinterface(components.interfaces.nsixulchromeregistry); var toolkitchromereg = chromeregservice.queryinterface(components.interfaces.nsitoolkitchromeregi...
...here is an example event handler which is fired when the user clicks on the button to
change the locale.
...function
changelocale() { try { // which locale did the user select?
...tcharpref("general.useragent.locale", newlocale); // restart application var appstartup = components.classes["@mozilla.org/toolkit/app-startup;1"] .getservice(components.interfaces.nsiappstartup); appstartup.quit(components.interfaces.nsiappstartup.erestart | components.interfaces.nsiappstartup.eattemptquit); } catch(err) { alert("couldn't
change locale: " + err); } } * * * here i include a complete xulrunner application example that demonstrates the locale switching.
XULRunner tips - Archive of obsolete content
ontent/extensions/extensions.xul?type=extensions"); pref("xpinstall.dialog.progress.type.skin", "extension:manager-themes"); pref("xpinstall.dialog.progress.type.chrome", "extension:manager-extensions"); pref("extensions.update.enabled", true); pref("extensions.update.interval", 86400); pref("extensions.dss.enabled", false); pref("extensions.dss.switchpending", false); pref("extensions.ignoremtime
changes", false); pref("extensions.logging.enabled", false); pref("general.skins.selectedskin", "classic/1.0"); // nb these point at amo pref("extensions.update.url", "chrome://mozapps/locale/extensions/extensions.properties"); pref("extensions.getmoreextensionsurl", "chrome://mozapps/locale/extensions/extensions.properties"); pref("extensions.getmorethemesurl", "chrome://mozapps/locale/extensions/exten...
...sions.properties"); if your application is based on gecko 2.0, you need to register a component through the new component registration because the extension manager uses fuel, namely application.restart(), to restart your xulrunner-based application after any
change (installation, removal, enabling, disabling) in the extensions' list: copy files fuelapplication.js and fuelapplication.manifest from browser/fuel/src for instance into your components/ directory tweak the line #include ../../../toolkit/components/exthelper/extapplication.js in your copy of fuelapplication.js as needed make sure to declare the fuel module and the two files in your components/makefile.in as in browser/fuel/src/makefile.in rebuild...
...you can also replace xulrunner.ico in the same directory to
change xulrunner's icon to the icon of your application.
...to
change icon of specific window, see window icons.
Gecko Compatibility Handbook - Archive of obsolete content
you can verify the string got
changed by looking under help | about.
...
change the doctype to request quirks mode layout instead.
...
change relative urls from http://directory/...
...visit the plugins page to learn about scripting gecko browsers, proper use of tags,
changes in the plugin architecture vs.
NPN_SetValueForURL - Archive of obsolete content
« gecko plugin api reference « browser side plug-in api summary allows a plugin to
change the stored information associated with a url, in particular its cookies.
... (while the api theoretically allows the preferred proxy for a given url to be
changed, doing so does not have much meaning given how proxies are configured, and is not supported.) syntax #include <npapi.h> typedef enum { npnurlvcookie = 501, npnurlvproxy } npnurlvariable; nperror npn_setvalueforurl(npp instance, npnurlvariable variable, const char *url, const char *value, uint32_t len); parameters this function has the following parameters: instance pointer to the current plug-in instance.
... variable selects the type of information to be
changed.
... url the url for which to
change information.
NPN_Version - Archive of obsolete content
syntax #include <npapi.h> void npn_version(int* plugin_major, int* plugin_minor, int* netscape_major, int* netscape_minor); parameters the function has the following parameters: plugin_major pointer to a plug-in's major version number;
changes with major code release number.
... plugin_minor pointer to a plug-in's minor version number;
changes with point release number.
... netscape_major pointer to the browser's major version;
changes with major code release number.
... netscape_minor pointer to the browser's version;
changes with point release number.
SSL and TLS - Archive of obsolete content
an ssl/tls session always begins with an ex
change of messages called the ssl handshake, initial communication between the server and client.
... key-ex
change algorithms like rsa and elliptic curve cryptography (ecc) govern the way the server and client determine the symmetric keys to use during an ssl session.
... the most common ssl cipher suites use rsa key ex
change, while tls supports ecc cipher suites as well as rsa.
... supported cipher suites for rsa cipher suites with the rsa key ex
change that are commonly supported include the following: aes and sha message authentication.
Archived JavaScript Reference - Archive of obsolete content
do not use it!array.observe()the array.observe() method was used for asynchronously observing
changes to arrays, similar to object.observe() for objects.
... it provided a stream of
changes in order of occurrence.
...t javascript's version history and implementation status for mozilla/spidermonkey-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 object.observe() method was used for asynchronously observing the
changes to an object.
... it provided a stream of
changes in the order in which they occur.
Reference - Archive of obsolete content
the wording should be
changed with the javascript 1.x examples, as well as refer to the versions in the past tense.
...since it's been 9 months since the last comment on this, i think i'll go ahead and
change all of the examples.
...the "backwards compatibility" sections have been renamed to "behavior in older versions." however, i think this is only appropriate if we are going to document the evolution of everything, or at least note the most significant
changes introduced in the various versions.
...ruakh 14:40, 27 february 2007 (pst) please don't start making large
changes without getting an ok from dev-mdc.
Implementation Status - Archive of obsolete content
see section 11.2 for more details 4.3.10 xforms-submit-serialize supported 4.4 notification events supported 4.4.1 xforms-insert supported 4.4.2 xforms-delete supported 4.4.3 xforms-value-
changed supported 4.4.4 xforms-valid supported 4.4.5 xforms-invalid supported 4.4.6 xforms-readonly supported 4.4.7 xforms-readwrite supported 4.4.8 xforms-required supported ...
... 4.6.2 for output controls supported 4.6.3 for select or select1 controls partial 4.6.4 for trigger controls supported 4.6.5 for submit controls supported 4.6.6 sequence: selection without value
change supported 4.6.7 sequence: value
change with focus
change supported 4.6.8 sequence: activating a trigger supported 4.6.9 sequence: submission supported 4.7 resolving id references in xforms unsupported ...
... 8.1.9 submit supported 8.1.10 select partial @selection does not work, select inside repeat may not work correctly, select that mixes itemsets with items may show them in the wrong order 282840; 371595; 372127; 8.1.11 select1 partial there are some resize issues, select/deselect/value
change firing in wrong order.
...recalculate won't properly mark nodes as dirty if they were
changed using javascript interfaces.
XUL Parser in Python - Archive of obsolete content
it only runs as a hard-coded script right now, so if you want to use it you have to go in and
changes some of the stuff like chrome_dir and which information you want out.
...i will make these adjustments and
change it into a real module when i get a second, so that someone can instantiate the parser from their own scripts and use it more flexibly: >>> import xultool >>> myxp = xulparser() >>> chrome_dir = 'd:\src\mozilla\xpfe' >>> res = myxp.parsexul(chrome_dir, 'window', 'id') where something like the above would write out all the xul window ids in the build.
...if you want to test this script you should
change the filename "res.html" specified in the fourth line and compare different results files.
... please feel free to suggest
changes,
change the format of the results output, or adapt this script in any way you want.
Building up a basic demo with the PlayCanvas engine - Game development
next, we'll set the canvas to fill the window, and automatically
change its resolution to be the same as the canvas size.
... after the material is created and its color is set, it has to be updated so our
changes are going to be applied.
... animation we already used translate or rotate to adjust the position of the shapes; we could also
change their positions directly with setposition, or scale them.
... to show actual animation, we need to make
changes to these values inside the rendering loop, so they are updated on every frame.
CSS and JavaScript accessibility best practices - Learn web development
the rule of thumb is that you can update the styling of a page feature to fit in your design, but don't
change it so much that it no longer looks or behaves as expected.
...in addition, the mouse pointer
changes to a pointer icon when links are moused over, and the link receives a highlight when focused (e.g.
...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.
...whatever the need, you should be comfortable with this, and make your designs flexible enough so that such
changes will work in your design.
Sizing items in CSS - Learn web development
if you place an image on a page and do not
change its height and width, either using attributes on the <img> tag or css, it will be displayed using that intrinsic size.
... using percentages in many ways, percentages act like length units, and as we discussed in the lesson on values and units, they can often be used inter
changeably with lengths.
... if you
change the vh and vw values this will
change the size of the box or font; changing the viewport size will also
change their sizes because they are sized relative to the viewport.
... to see the example
change when you
change the viewport size you will need to load the example in a new browser window that you can resize (as the embedded <iframe> that contains the example shown above is its viewport).
Multiple-column layout - Learn web development
cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</p> </div> .container { column-count: 3; }
change your css to use column-width as follows: .container { column-width: 200px; } the browser will now give you as many columns as it can of the size that you specify; any remaining space is then shared between the existing columns.
...there is no way to make one column bigger than other columns, or to
change the background or text color of a single column.
... you have two opportunities to
change the way that columns display: changing the size of the gap between columns using the column-gap.
... using your example above,
change the size of the gap by adding a column-gap property: .container { column-width: 200px; column-gap: 20px; } you can play around with different values — the property accepts any length unit.
What are browser developer tools? - Learn web development
it also allows you to instantly modify the html and css and see the results of your
changes reflected live in the browser viewport.
...lets you
change the html and see the results on the fly.
...you can make any
changes you'd like, but you cannot save your
changes.
... 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.
The HTML5 input types - Learn web development
the first one below creates a number control whose value is restricted to any value between 1 and 10, and whose increase and decrease buttons
change its value by 2.
... <input type="number" name="age" id="age" min="1" max="10" step="2"> the second one creates a number control whose value is restricted to any value between 0 and 1 inclusive, and whose increase and decrease buttons
change its value by 0.01.
... <input type="number" name="
change" id="pennies" min="0" max="1" step="0.01"> the number input type makes sense when the range of valid values is limited, for example a person's age or height.
... to actually display the current value, and update it as it
changed, you must use javascript, but this is relatively easy to do: const price = document.queryselector('#price'); const output = document.queryselector('.price-output'); output.textcontent = price.value; price.addeventlistener('input', function() { output.textcontent = price.value; }); here we store references to the range input and the output in two variables.
Other form controls - Learn web development
this is effectively the starting width, as it can be
changed by resizing the <textarea>, and overriden using css.
...this is effectively the starting height, as it can be
changed by resizing the <textarea>, and overriden using css.
... progress a progress bar represents a value that
changes over time up to a maximum value specified by the max attribute.
... all browsers that implement the <meter> element use those values to
change the color of the meter bar: if the current value is in the prefered part of the range, the bar is green.
Sending forms through JavaScript - Learn web development
when the user tries to send the data, the application takes control and transmits the data asynchronously in the background, updating only the parts of the ui that require
changes.
...historically, xmlhttprequest was designed to fetch and send xml as an ex
change format, which has since been superceded by json.
...note that formdata objects are "write only", which means you can
change them, but not retrieve their contents.
... file.dom.addeventlistener( "
change", function () { if( reader.readystate === filereader.loading ) { reader.abort(); } reader.readasbinarystring( file.dom.files[0] ); } ); // senddata is our main function function senddata() { // if there is a selected file, wait it is read // if there is not, delay the execution of the function if( !file.binary && file.dom.files.length > 0 ) { settimeout...
Styling web forms - Learn web development
but this has
changed.
... website owners want form styles that fit in with their overall site design more than ever, and the web platform has
changed to make this more possible.
...inheriting should
change their fonts to that of the parent's font family — in this case the default serif font of the parent container.
...the legend contents will still be spoken in the same way; it is just the visual position that has
changed.
CSS basics - Learn web development
otherwise, the styling won't
change the appearance of the html.
...to style a different element,
change the selector.
...
change the color code to the color you chose in what will my website look like?.
... try experimenting with different values to see how it
changes the appearance.
Getting started with HTML - Learn web development
see your
changes update live in the output area.
...while the names correlate by default, changing the css display type doesn't
change the category of the element, and doesn't affect which elements it can contain and which elements it can be contained in.
... you'll be able to see your
changes update live in the output area.
...likewise, comments are invaluable as different people are making
changes and updates.
Index - Learn web development
an understanding of the block and inline direction — and how text flow
changes with a
change in writing mode — will be very useful going forward.
... 148 normal flow beginner, css, layout, learn, float, grid, normal flow now that you understand normal flow, and how the browser lays things out by default, move on to understand how to
change this default display to create the layout needed by your design.
... 170 learning area release notes learn, release notes this page details significant
changes made to the learning area.
...we've learnt about some of the ideas behind vue, created some scaffolding for our example app to live inside, inspected it, and made a few preliminary
changes.
Build your own function - Learn web development
try varying the string to
change the message.
... if you tried the last experiment, make sure to undo the last
change before carrying on.
...
change the following line: btn.onclick = displaymessage; to this block: btn.onclick = function() { displaymessage('woo, this is a different message!'); }; if we want to specify parameters inside parentheses for the function we are calling, then we can't call it directly — we need to put it inside an anonymous function so that it isn't in the immediate scope and therefore isn't called immed...
...we'll make a few
changes to make way for the icons.
Useful string methods - Learn web development
we want you to
change them so that they are all lower case, except for a capital first letter.
... using this latest variable as a substring, replace the first letter of the lowercase string with the first letter of the lowercase string
changed to upper case.
...
change the value of the result variable to equal to the final result, not the input.
...
change the value of the result variable to equal to the final string, not the input.
Server-side web frameworks - Learn web development
this approach also has benefits in terms of maintenance, because you can
change the url used to deliver a particular feature without having to
change the underlying code.
... using an orm has two benefits: you can replace the underlying database without necessarily needing to
change the code that uses it.
...the model doesn't state any information about the underlying database as that is a configuration setting that may be
changed separately of our code.
... for the next article in this module we'll
change direction slightly and consider web security.
Creating our first Vue component - Learn web development
vue templates are currently only allowed a single root element — one element needs to wrap everything inside the template section (this will
change when vue 3 comes out).
... vue's data object if you
change the value of the label prop passed into the <to-do-item></to-do-item> call in your app component, you should see it update.
...if a value is passed to multiple children, it could be hard to track where the
changes to that value were coming from.
... <template> <div id="app"> <h1>my to-do list</h1> <ul> <li> <to-do-item label="my todo item" :done="true"></to-do-item> </li> </ul> </div> </template> try changing true to false and back again, reloading your app in between to see how the state
changes.
Vue resources - Learn web development
vue 3 vue 3 is a major release of the framework with a lot of major
changes.
...the biggest
change is a new composition api that works as an alternative to the current property-based api.
... there are also a handful of other
changes, including a
change in how apps are initialized in vue.
... to read more about the
changes involved with vue 3, refer to this article by vue school which goes over most of the major
changes in vue 3.
Understanding client-side JavaScript frameworks - Learn web development
react interactivity: events and state with our component plan worked out, it's now time to start updating our app from a completely static ui to one that actually allows us to interact and
change things.
...these work similarly to methods but only re-run when one of their dependencies
changes.
...components can subscribe to stores and receive notifications when their values
change.
...if your favourite framework is not represented in this content and you'd like to help
change that, feel free to discuss it with us!
Handling common JavaScript problems - Learn web development
you'd have to
change all your sniffing code regularly.
...browsers also implemented facilities to allow users to
change what user-agent string the browser reported when queried with javascript.
...feature detection is almost always a better option — if you detect whether a feature is supported, you won't need to
change your code when new browser versions come out, and the tests are much more reliable.
... again, prefixed features were never supposed to be used in production websites — they are subject to
change or removal without warning, and cause cross browser issues.
Setting up your own test automation environment - Learn web development
you can feel free to
change the references to some of the other browsers we added, remove them, etc., depending on what browsers you have available to test on your operating system.
...in general, you should make sure that your tests are: using good locator strategies: when you are interacting with the document, make sure that you use locators and page objects that are unlikely to
change — if you have a testable element that you want to perform a test on, make sure that it has a stable id, or position on the page that can be selected using a css selector, which isn't going to just
change with the next site iteration.
...they won't just break when something
changes.
... integrating selenium with ci tools as another point, it is also possible to integrate selenium and related tools like lambdatest, and sauce labs with continuous integration (ci) tools — this is useful, as it means you can run your tests via a ci tool, and only commit new
changes to your code repository if the tests pass.
Command line crash course - Learn web development
generally you'll find these two terms used inter
changeably.
... the cd command lets you
change directory.
... to
change directory, you type cd into your terminal, followed by the directory you want to move to.
...fortunately, a small
change to the command usage can give you a lot more information.
Adding a new CSS property
if you need more details on any of the points mentioned here, a good place to find them is by looking at other
changes in the version control history of the files mentioned.
... then you need to
change nsstyle*::calcdifference (in nsstylestruct.cpp) to describe how dynamic
changes of your new css property need to be handled.
... see ns
changehint.h for documentation (or if that's not sufficient, see restylemanager::processrestyledframes).
... then you need to
change nscomputeddomstyle.cpp to implement the getcomputedstyle api.
Android-specific test suites
running android-test to run android-test, first build firefox for android with your
changes; then run ./mach android test this will run the tests and report the results to stdout, as well as produce an html report.
... running android-checkstyle to run android-checkstyle, first build firefox for android with your
changes; then run ./mach android checkstyle this will run the tests and report the results to stdout, as well as produce an html report.
... running android-findbugs to run android-findbugs, first build firefox for android with your
changes; then run ./mach android findbugs this will run the tests and report the results to stdout, as well as produce an html report.
... running android-lint to run android-lint, first build firefox for android with your
changes; then run ./mach android lint this will lint the code and report the results to stdout, as well as produce an html report.
Creating a Language Pack
configure step you need to prepare the build directory, which is done with ./mach configure you only need to run this if the version number of firefox
changes.
... x-testing:
changed: 6 missinginfiles: 6124 missing: 5 0% of entries
changed this step is not necessary anymore to create the language pack, because it is included in the next command.
... $ make wget-en-us en_us_binary_url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora if you're building on mac 64 bit, you'll need to
change the command slightly: $ make wget-en-us en_us_binary_url=http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora moz_pkg_platform=mac at some point, you should see the following success message: downloaded http://ftp.mozilla.org/pub/mozilla.o....en-us.mac.dmg to /users/your_id/mozilla/vc/firefox/browser/locales/../../dist/firefox-3.6b5pre.en-us.mac.dmg the en-us binary ha...
... x-testing:
changed: 6 missinginfiles: 6124 missing: 5 0% of entries
changed if you now preview the contents of the mergedir, you'll see that it contains the files which in your localization were missing some entities.
The Firefox codebase: CSS Guidelines
before adding more css it is good practice to check if the css that is being written is needed, it can be the case that a common component has been already written could be reused with or without
changes.
... it is also good practice to look at whether the rule you are overriding is still needed: maybe the ux spec for the component has
changed and that rule can actually be updated or removed.
... using css variables adding new variables before adding new css variables, please consider the following questions: is the variable value
changed at runtime?
... if the answer is no and the value isn't
changed at runtime, then you likely don't need a css variable.
Multiple Firefox profiles
while using the nightly channel, you may encounter some add-ons that have become temporarily incompatible with new api
changes, until the add-on developer has a chance to update them.
... optionally, to
change where the profile will be stored on your computer, click choose folder...
...the only
change you will need to make is the command path.
...also, you'll want to
change the path in the do shell script to point to the correct .app file for the firefox channel you want to target.
Storage access policy: Block cookies from trackers
as described above, note that nightly may include additional protections that end up getting removed or
changed before they reach our release users.
... report broken sites if you find a website broken as a result of this
change, file a bug under the tracking protection component within the firefox product on bugzilla.
...when the list is applied in firefox, we make two important
changes: first, we only use the "basic protection" version of the list, which excludes some categories of trackers.
... please note that in the future we expect to make
changes to how long storage access will remain valid for.
mozbrowserloadend
although implementations may
change in the future and it is not supported widely across browsers, it is suitable for use in code dedicated to firefox os apps.
... example in this example the mozbrowserloadstart and mozbrowserloadend events are used to
change the icon shown on the stop/reload button between stop (x) and reload (r), as appropriate.
... in addition, the background of the controls ui bar is
changed to the background color of the site that has just loaded, to provide a more integrated experience.
...browser.addeventlistener('mozbrowserloadend',function(e) { stopreload.textcontent = 'r'; console.log(e.detail.backgroundcolor); controls.style.background = e.detail.backgroundcolor; }); browser.addeventlistener('mozbrowserloadend',function() { stopreload.textcontent = 'r'; }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
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.
...this behavior is a bug, this behavior will be
changed in a future major release (bug 432951).
... in the unfortunately situation where xul applications attempt to implement their own shortcut key handling, the decentralized implementation may need to be rewritten every time any of the above process is
changed.
Implementing Download Resuming
not only is the ability to specify a start position important, but it's also important to have some assurance that the file did not
change since the initial download attempt.
...the entity id is what ensures that the file remains un
changed.
...(it is possible to pass an empty string as the id; however, this means that you have no assurance that the file remained un
changed) now, you can open the channel as usual (using nsichannel.asyncopen() in the common case) and write to the file in the ondataavailable notifications.
... detecting when a file
changed if the file
changed (that is, the entity id does not match), then necko will notify the stream listener with an ns_error_entity_
changed error code.
Add-on Manager
for example: components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getalladdons(function(aaddons) { // here aaddons is an array of addon objects }); // this code will execute before the code inside the callback notifications about
changes to installed add-ons are dispatched to any registered addonlisteners.
... detecting add-on
changes requires gecko 7.0(firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) you can also get lists of add-ons that, at startup, were
changed in various ways.
... the getstartup
changes() method lets you find out which add-ons were installed, removed, updated, enabled, or disabled at application startup.
... for example, to take a look at the add-ons that were disabled at startup: components.utils.import("resource://gre/modules/addonmanager.jsm"); let addonids = addonmanager.getstartup
changes(addonmanager.startup_
change_disabled); if (addonids.length > 0) { // addonids is now an array of the add-on ids that have been disabled alert("note: " + addonids.length + " add-ons have been disabled."); } open add-on manager tab the add-on manager tab can be opened programatically with the function browseropenaddonsmgr which is available on chrome window of "navigator:browser" type.
DeferredTask.jsm
firefox 28 note interface was
changed in firefox 28, and old methods were removed.
...with deferredtask, the task is delayed by a few milliseconds and, should a new
change to the data occur during this period, only the final version of the data is actually written; a further grace delay is added to take into account other
changes.
... a common use case occurs when a data structure should be saved into a file every time the data
changes, using asynchronous calls, and multiple
changes to the data may happen within a short time: let savedeferredtask = new deferredtask(function* () { yield os.file.writeatomic(...); // any uncaught exception will be reported.
... for example, during shutdown, you may want to ensure that any pending write is processed, using the latest version of the data if the timer is armed: asyncshutdown.profilebefore
change.addblocker( "example service: shutting down", () => savedeferredtask.finalize() ); instead, if you are going to delete the saved data from disk anyways, you might as well prevent any pending write from starting, while still ensuring that any write that is currently in progress terminates, so that the file is not in use any more: savedeferredtask.disarm(); savedeferredtask.finalize().then((...
DownloadSummary
addview() adds a view that will be notified of
changes to the summary.
... the newly added view will receive an initial onsummary
changed notification.
...the following methods may be defined: onsummary
changed: optional called after any property of the summary has
changed.
... promise resolves to undefined when the view has been registered and the onsummary
changed notification has been sent.
OS.File for the main thread
safety note: recall that the current directory can
change during the execution of the process.
... os.file.setcurrentdirectory()
change the current directory of the process.
... use with extreme caution: this api may be useful for application developers but must not be used by add-ons, as it
changes the state of the complete application.
... setposition()
change the current position in the file.
Index
xliff (extensible localisation inter
change file format) is a localization standard governed by the oasis standards body.
...this data describes the extension, and doesn't necessarily
change with each revision (but it can).
... the localizable data fields of an extension are: 23 localizing with koala this tutorial will guide you through making a couple of
changes to firefox's user interface using koala, an add-on for komodo edit created to help localizing mozilla.
...mercurial allows localizers to work locally (on their machines) and then push (an hg term)
changes to a remote repository, which usually is hosted on the mozilla servers (hg.mozilla.org).
Localization technical reviews
that being the case, there are some criteria in a technical review that will only ever be considered once, as all reviews after this only evaluate the
changes you're adding on top of this revision from release to release.
... region.properties though locales might like to specify
changes from the beginning, the region.properties files will be reverted to en-us.
...
changes will be discussed in productization bugs filed for each locale.
...if they don't, we report any strange access keys or translations that localizers might have
changed during their initial translation process.
Using the viewport meta tag to control layout on mobile browsers
(there are corresponding height and device-height values, which may be useful for pages with elements that
change size or position based on the viewport height.) the initial-scale property controls the zoom level when the page is first loaded.
...these properties affect the initial scale and width, as well as limiting
changes in zoom level.
... not all mobile browsers handle orientation
changes in the same way.
...as the standardization process proceeds, we at mozilla will work to keep up to date with any
changes.
Mozilla Style System Documentation
dynamic
changes describe nsframemanager::reresolvestylecontext and nsiframe::getparentstylecontextframe ...</p> describe nscssframeconstructor::attribute
changed hack for style attribute that avoids style context tree manipulation.
... problems: dynamic style
changes scrap the whole thing and start over.
...matters dealing with dynamic style
changes are also tricky because the style contexts don't have pointers to their frames, but instead, we have the reverse and is probably the biggest flaw in the design of this part of the system.
... problems: dynamic style
changes often destroy too much data.
Profiling with Xperf
you can also modify the _nt_symbol_path and _nt_symcache_path environment variables to make these
changes permanent.
...if you
change it within the program, you'll have to close all summary tables and reopen them for it to pick up the new symbol path data.
...tips in the summary views, the yellow bar can be dragged left and right to
change the grouping -- for example, drag it to the left of the module column to have grouping happen only by process (stuff that's to the left), so that you get symbols in order of weight, regardless of what module they're in.
... dragging the columns around will
change grouping in various ways; experiment to get the data that you're looking for.
Profiling with the Firefox Profiler
the
change in stack height is useful to find patterns like long blocking calls (long flatlines) or very tall spiky blocks (recursive calls and js).
...if you select a different time range, the url revealed by pressing "permalink" will
change so that you can be sure the recipient of the url will see the same things you are seeing.
...it is useful to scan down the "running time" column and look for when the time
changes.
... synchronous re-flow can be caused by js that, for example, makes
changes to the page content in a loop and queries about the layout of the page in that same loop.
Patches and pushes
only commit the
changes you have reviewed.
... use a commit message that mentions the bug number, describes the
change, and mentions the reviewer.
... for example: hg ci -m "bug 654321, copied the comment from the doc without reading, r=nobody" path-to-
changed-files close the bug, copying the url to your
change in the closing comment.
... update your sign-offs on the l10n dashboard to include the
change into the next release.
NSPR release procedure
release checklist
change the nspr version in mozilla/nsprpub/pr/include/prinit.h.
...
change the nspr version in mozilla/nsprpub/{configure.in,configure}.
...
change the nspr version in mozilla/nsprpub/pr/tests/vercheck.c.
...
change the nspr version in mozilla/nsprpub/admin/repackage.sh.
Cached Monitors
cached monitors functions cached monitors allow the client to associate monitoring protection and state
change synchronization in a lazy fashion.
... pr_cwait waits for a notification that a monitor's state has
changed.
... pr_cnotify notifies a thread waiting for a
change in the state of monitored data.
... pr_cnotifyall notifies all the threads waiting for a
change in the state of monitored data.
NSS 3.12.4 release notes
major
changes in nss 3.12.4 nss 3.12.4 is the version that we submitted to nist for fips 140-2 validation.
... new functions in the nss shared library: pk11_isinternalkeyslot (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.
...ascii string bug 405297: problems building nss/lib/ckfw/capi/ with mingw gcc bug 420991: libpkix returns wrong nss error code bug 427135: add super-h (sh3,4) architecture support bug 431958: improve des and sha512 for x86_64 platform bug 433791: win16 support should be deleted from nss bug 449332: secu_parsecommandline does not validate its inputs bug 453735: when using cert9 (sqlite3) db, set or
change master password fails bug 463544: warning: passing enum* for an int* argument in pkix_validate.c bug 469588: coverity errors reported for softoken bug 470055: pkix_httpcertstore_findsocketconnection reuses closed socket bug 470070: multiple object leaks reported by tinderbox bug 470479: io timeout during cert fetching makes libpkix abort validation.
...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.
NSS 3.28.3 release notes
bugs fixed in nss 3.28.3 nss version 3.28, 3.28.1 and 3.28.2 contained
changes that were in violation with the nss compatibility promise.
... ecparams, which is part of the public api of the freebl/softokn parts of nss, had been
changed to include an additional attribute.
...the
change has been reverted to the original state in bug 1334108.
... please note that nss 3.29 also contained the incorrect
change.
NSS 3.45 release notes
notable
changes in nss 3.45 bug 1540403 - implement delegated credentials (draft-ietf-tls-subcerts) this adds a new experimental function: ssl_delegatecredential note: in 3.45, selfserv does not yet support delegated credentials.
... note: in 3.45 the sslchannelinfo is left unmodified, while an upcoming
change in 3.46 will set sslchannelinfo.authkeybits to that of the delegated credential for better policy enforcement.
... bug 1546477 - various
changes in response to the ongoing fips review note: the source package size has increased substantially due to the new fips test vectors.
... 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/fr...
NSS 3.46 release notes
notable
changes in nss 3.46 certificate authority
changes the following ca certificates were removed: bug 1574670 - remove expired class 2 primary root certificate sha-256 fingerprint: 0f993c8aef97baaf5687140ed59ad1821bb4afacf0aa9a58b5d57a338a3afbcb bug 1574670 - remove expired utn-userfirst-client root certificate sha-256 fingerprint: 43f257412d440d627476974f877da8f1...
...44565a367ae60eddc27a412531ae bug 1574670 - remove expired deutsche telekom root ca 2 root certificate sha-256 fingerprint: b6191a50d0c3977f7da99bcdaac86a227daeb9679ec70ba3b0c9d92271c170d3 bug 1566569 - remove swisscom root ca 2 root certificate sha-256 fingerprint: f09b122c7114f4a09bd4ea4f4a99d558b46e4c25cd81140d29c05613914c3841 upcoming
changes to default tls configuration the next nss team plans to make two
changes to the default tls configuration in nss 3.47, which will be released in october: tls 1.3 will be the default maximum tls version.
...ssert' when building nss 3.45 on armhf-linux bug 1516593 - client to generate new random during renegotiation bug 1563258 - fips.sh fails due to non-existent "resp" directories bug 1561598 - remove -wmaybe-uninitialized warning in pqg.c bug 1560806 - increase softoken password max size to 500 characters bug 1568776 - output paths relative to repository in nss coverity bug 1453408 - modutil -
changepw fails in fips mode if password is an empty string bug 1564727 - use a pss spki when possible for delegated credentials bug 1493916 - fix ppc64 inline assembler for clang bug 1561588 - remove -wmaybe-uninitialized warning in p7env.c bug 1561548 - remove -wmaybe-uninitialized warning in pkix_pl_ldapdefaultclient.c bug 1512605 - incorrect alert description after unencrypted finished msg bug ...
...hangs on windows x64 when building nss since
changeset 9162c654d06915f0f15948fbf67d4103a229226f bug 1564875 - improve rebuilding with build.sh bug 1565243 - support tc_owner without email address in nss taskgraph bug 1563778 - increase maxruntime on mac taskcluster tools, ssl tests bug 1561591 - remove -wmaybe-uninitialized warning in tstclnt.c bug 1561587 - 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' b...
Migration to HG
each project now lives in its own separate space, they can be found at: https://hg.mozilla.org/projects/nspr/ https://hg.mozilla.org/projects/nss/ https://hg.mozilla.org/projects/jss/ https://hg.mozilla.org/projects/python-nss/ this migration has been used as an opportunity to
change the layout of the source directories.
... besides the new layout, the build system hasn't
changed.
... updated instructions for building nss with nspr can be found at: /docs/nss_reference/building_and_installing_nss/build_instructions it's best to refer to the above document to learn about the various environment variables that you might have to set to build on your platform (this part hasn't
changed).
... because of the
changes described above, we have decided to use a new series of (minor) version numbers.
sslintro.html
changes default values for all subsequently opened sockets as long as the application is running (compare with ssl_seturl which only configures the socket that is currently open).
... this function must be called once for each default value that needs to be
changed.
...this function must be called once for each parameter whose settings you want to
change from those established with ssl_optionsetdefault.
...these can be used, for example, when interrupting and restarting socket communications, when the application needs to
change socket parameters, or when an application imports a socket into ssl after the tcp connection on that socket has already been established.
Hacking Tips
and you should
change the size()/4 to be something more apropriate for your architecture.
...in case of the js shell we might also want to set the amount of memory available to
change the gc settings as if we were running on a firefox os device.
...it is a watchpoint on // the whole word, which will trigger whenever the word
changes and the // selected bit is set after the
change.
...// but if a different bit
changes (either set or cleared), you may still stop // execution if the $mask bit happened to already be set.
Gecko states
applied to: role_menuitem, role_cell, role_outlineitem, xxx: continue events: event_state_
change Сoncomitant state: state_selectable state_focused the object is focused applied to: events: concomitant state: state_focusable state_pressed the object is pressed.
... state_hottracked the object is hot-tracked by the mouse, which means that its appearance has
changed to indicate that the mouse pointer is located over it.
... state_animated the object's appearance
changes rapidly or constantly.
...for example, a user could
change the size of a window by clicking the border with a mouse and dragging the mouse.
History Service Design
schema version is upgraded every time a
change is made to the database schema, history service will eventually upgrade the database, moving and fixing its datas accordingly.
...in future this will probably
change in favour of storage asynchronous statements, so that the inserts will be queued-up by mozstorage itself in a separate thread.
...a smart bookmark can update itself automatically when bookmarks or visits
change, providing a sort of saved search.
... an implementer working on a ui can then associate a viewer with the result, so that it will be notified when the result tree
changes.
Querying Places
notifications sent to the result from the history and bookmarks system, as well as commands executed by the programmer such as sorting may cause the structure to
change and nodes may be inserted, removed, or replaced.
...this viewer will be called when the result tree
changes, either as a result of user action or as a result of notifications from the bookmarks and history systems.
... your implementation would then reflect these
changes in the ui.
...if you close a container and re-open it before any history or bookmark
change notifications come, the results will generally still be there and this operation will be fast.
Component Internals
the main purpose of the api at this point is to
change which components directory xpcom searches when it looks for xpcom components.
...the class can
change at any time and give you unexpected behavior.
...unless an interface is explicitly marked "frozen" in the idl comments, your component may possibly break or crash along with a version
change.
... a version of the glue library is built into xpcom, and when your component uses it, it links a snapshot of this library: it includes a copy of these unfrozen classes directly, which allows the xpcom library version to
change without affecting the software.
Setting up the Gecko SDK
most of the
changes you make in the following steps apply to all configurations of the project (both debug and optimized), so select "all configurations" from the settings for dropdown menu: on the c/c++ tab, select the preprocessor category.
... we also link against a number of libraries in the object/library modules line: nspr4.lib plds4.lib plc4.lib embedstring.lib xpcomglue.lib both of these settings are shown below: the last
change you need to make to set up the gecko sdk in your project is to
change the "use run-time library" setting to "multithreaded dll." since this
change is configuration dependent, you must make set the release configuration run-time library to the release multithreaded dll runtime and the debug configuration to the debug multithreaded dll runtime (this needs clarification): after making these chang...
... install the microsoft sdk,
change all further in this example from c:\program files (x86)\ to c:\program files\ if you are running a 32-bit version of windows instead of a 64-bit.
... sample makefile for the gecko sdk module = mozshim #
change this to point at your gecko sdk directory.
Starting WebLock
xxx what is example 2?following example 2, you
change the class definition to support the nsiobserver interface and
change ns_impl_isupports1 so that the queryinterface implementation knows that the component also supports nsiobserver.
...this makes
changes to the interface when designing a bit simpler, as you do not have to modify any class declarations.
...if you really want to
change the return result type you can use a special flag in your xpidl that denotes this (see the xpidl reference).
...the existing code would need to
change very little for a weblock implementation to take advantage of files that do not actually exist on disk.
Using XPCOM Utilities to Make Things Easier
to write a different component library, you could copy the listing at the end of the chapter,
change very little, and paste it into a new project.
... ns_impl_isupports1(classname, interface1) also, if you implement more than one interface, you can simply
change the 1 in the macro to the number of interfaces you support and list the interfaces, separated by commas.
... using these declaration macros not only saves a tremendous amount of time when you're writing the code, it can also save time if you make
changes to your idl file, since the c++ header file will then automatically include the updated list of methods to be supported.
...however, a
change in xpcom that occurred before mozilla 1.3 makes ns_init_isupports no longer necessary: mrefcnt's type has been
changed from an integer to a class that provides its own auto-initialization.
Mozilla internal string guide
*/ void replacetabs(nsastring& data) { char16_t* cur = data.beginwriting(); char16_t* end = data.endwriting(); for (; cur < end; ++cur) { if (char16_t('\t') == *cur) *cur = char16_t(' '); } } you may
change the length of a string via setlength().
... */ void replacetabs2(nsastring& data) { int len = data.length(); char16_t *cur = data.beginwriting(); char16_t *end = data.endwriting(); // because `cur` may
change during the loop, track the position // within the string.
...windows-1252 is a similar but different encoding used for inter
change.
... in some cases, an 8-bit literal is defined via a macro, either within code or from the environment, but it can't be
changed or is used both as an 8-bit and a 16-bit string.
nsIAccessibleStates
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) prior to gecko 1.9, these constants were implemented in nsiaccessible.
... state_hottracked 0x00000080 the object is hot-tracked by the mouse, which means that its appearance has
changed to indicate that the mouse pointer is located over it.
... state_animated 0x00004000 the object's appearance
changes rapidly or constantly.
...for example, a user could
change the size of a window by clicking the border with a mouse and dragging the mouse.
nsIAccessibleTreeCache
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview nsiaccessible getcachedtreeitemaccessible(in long arow, in nsitreecolumn acolumn); void invalidatecache(in long arow, in long acount); void treeview
changed(); void treeviewinvalidated(in long astartrow, in long aendrow, in long astartcol, in long aendcol); methods getcachedtreeitema...
...acount the number of treeitem accessibles to invalidate, the number sign specifies whether rows have been inserted (plus) or removed (minus) treeview
changed() invalidates children created for the previous tree view.
... void treeview
changed(); parameters none.
... treeviewinvalidated() fires name
change events for invalidated area of tree.
nsIDBFolderInfo
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: ?????????????????????????????????????.
...as a service: var dbfolderinfo = components.classes["@mozilla.org/????????????????????????????"] .createinstance(components.interfaces.nsidbfolderinfo); method overview long andflags(in long flags); void
changeexpungedbytes(in long delta); void
changenummessages(in long delta); void
changenumunreadmessages(in long delta); boolean getbooleanproperty(in string propertyname, in boolean defaultvalue); void getcharacterset(out acstring charset, out boolean overriden); void getcharactersetoverride(out boolean charactersetoverride); obsolete since gecko 1.8 string getcharptrch...
... version unsigned long viewflags nsmsgviewflagstypevalue viewtype nsmsgviewtypevalue methods andflags() long andflags( in long flags ); parameters flags missing description return value missing description exceptions thrown missing exception missing description
changeexpungedbytes() void
changeexpungedbytes( in long delta ); parameters delta missing description exceptions thrown missing exception missing description
changenummessages() void
changenummessages( in long delta ); parameters delta missing description exceptions thrown missing exception missing description
changenumunreadmessages(...
...) void
changenumunreadmessages( in long delta ); parameters delta missing description exceptions thrown missing exception missing description getbooleanproperty() boolean getbooleanproperty( in string propertyname, in boolean defaultvalue ); parameters propertyname missing description defaultvalue missing description return value missing description exceptions thrown missing exception missing description getcharacterset() void getcharacterset( out acstring charset, out boolean overriden ); parameters charset missing description overriden missing description exceptions thrown missing exception missing description getcharactersetoverride() obsole...
nsIDOMStorageEventObsolete
dom/interfaces/storage/nsidomstorageeventobsolete.idlscriptable this interface represents an event that occurs to notify interested parties about
changes to the contents of a dom storage space; it is used for both session storage and local storage.
... 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 / seamonkey 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.
... if the value of the domain attribute is "#session", then the session storage 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.
nsIDOMWindowUtils
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 49.0 (firefox 49.0 / thunderbird 49.0 / seamonkey 2.46) implemented by: window.
... value
changed , was 0x0080.
... value
changed , was 0x0200.
...getpropertyvalue(apropertyname) except that, when the link whose presence in history is allowed to influence aelement's style is visited, get the value the property would have if allowed all properties to
change as a result of :visited selectors (except for cases where getcomputedstyle uses data from the frame).
nsIDocShell
inherits from: nsisupports last
changed in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamonkey 2.9) implemented by @mozilla.org/docshell;1.
...this may
change as the underlying content
changes.
...for a new document load, this will be the channel of the previous document until after onlocation
change fires.
... setcurrenturi() for editors and suchlike who wish to
change the uri associated with the document.
nsIDocumentLoader
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/docloaderservice;1.
...umentloader = components.classes["@mozilla.org/docloaderservice;1"] .createinstance(components.interfaces.nsidocumentloader); method overview void clearparentdocloader(); obsolete since gecko 1.8 void createdocumentloader(out nsidocumentloader aninstance); obsolete since gecko 1.8 void destroy(); obsolete since gecko 1.8 void fireonlocation
change(in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri auri); obsolete since gecko 1.8 void fireonstatus
change(in nsiwebprogress awebprogress, in nsirequest arequest, in nsresult astatus, in wstring amessage); obsolete since gecko 1.8 void getcontentviewercontainer(in nsisupports adocumentid, out nsicontentviewercontainer aresult); native code only!
... fireonlocation
change() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) void fireonlocation
change( in nsiwebprogress awebprogress, in nsirequest arequest, in nsiuri auri ); parameters awebprogress arequest auri fireonstatus
change() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) void fire...
...onstatus
change( in nsiwebprogress awebprogress, in nsirequest arequest, in nsresult astatus, in wstring amessage ); parameters awebprogress arequest astatus amessage native code only!getcontentviewercontainer obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0)this feature is obsolete.
nsIHTMLEditor
inherits from: nsisupports last
changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamonkey 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 at...
... void inserthtmlwithcontext(in astring ainputstring, in astring acontextstr, in astring ainfostr, in astring aflavor, in nsidomdocument asourcedoc, in nsidomnode adestinationnode, in long adestinationoffset, in boolean adeleteselection); void insertlinkaroundselection(in nsidomelement aanchorelement); boolean isanonymouselement(in nsidomelement aelement); void makeor
changelist(in astring alisttype, in boolean entirelist, in astring abullettype); boolean nodeisblock(in nsidomnode node); void pastenoformatting(in long aselectiontype); void rebuilddocumentfromsource(in astring asourcestring); void removealldefaultproperties(); void removeallinlineproperties(); void removedefaultproperty(in nsiatom aproperty, in ast...
... void insertlinkaroundselection( in nsidomelement aanchorelement ); parameters aanchorelement isanonymouselement() boolean isanonymouselement( in nsidomelement aelement ); parameters aelement return value makeor
changelist() void makeor
changelist( in astring alisttype, in boolean entirelist, in astring abullettype ); parameters alisttype entirelist abullettype nodeisblock() tests if a node is a block element according the the html 4.0 dtd.
... void setparagraphformat( in astring aparagraphformat ); parameters aparagraphformat "p", "h1" to "h6", "address", "pre", or "blockquote" updatebaseurl() set the baseurl for the document to the current url but only if the page doesn't have a <base> tag this should be done after the document url has
changed, such as after saving a file this is used as base for relativizing link and image urls.
nsIMsgDBViewCommandUpdater
the nsimsgdbviewcommandupdater interface controls
changes that occur as the selection
changes.
... last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports 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 displaymessage
changed(in nsimsgfolder afolder, in astring asubject, in acstring akeywords); void updatenextmessageafterdelete(); methods updatecommandstatus() called when the number of selected items
changes.
... displaymessage
changed() called when the displayed message has
changed.
... void displaymessage
changed(in nsimsgfolder afolder, in astring asubject, in acstring akeywords ); parameters afolder the folder containing selected message.
nsIMsgThread
inherits from: nsisupports method overview void addchild(in nsimsgdbhdr child, in nsimsgdbhdr inreplyto, in boolean threadinthread, in nsidb
changeannouncer announcer); nsimsgdbhdr getchildat(in long index); nsmsgkey getchildkeyat(in long index); nsimsgdbhdr getchild(in nsmsgkey msgkey); nsimsgdbhdr getchildhdrat(in long index); nsimsgdbhdr getroothdr(out long index); void removechildat(in long index); void removechildhdr(in nsimsgdbhdr child, in nsidb
changeannouncer announcer); void markchildread(in boolean bread); nsimsgdbhdr getfirstunreadchild(); nsisimpleenumerator enumeratemessages(in nsmsgkey parent); ...
... void addchild(in nsimsgdbhdr child, in nsimsgdbhdr inreplyto, in boolean threadinthread, in nsidb
changeannouncer announcer); parameters child the message to add inreplyto the message this should be in reply to threadinthread announcer an nsidb
changeannouncer to receive notification when the
change is made.
... getroothdr() nsimsgdbhdr getroothdr(out long index); return index
changed to the index of the root.
... removechildat() void removechildat(in long index); parameters index the index to remove the message from removechildhdr() void removechildhdr(in nsimsgdbhdr child, in nsidb
changeannouncer announcer); parameters child the message to remove announcer an nsidb
changeannouncer to receive notification when the
change is made.
nsINavHistoryResultViewObserver
inherits from: nsisupports last
changed in gecko 1.9.0 method overview boolean candrop(in long index, in long orientation); void ondrop(in long row, in long orientation); void ontoggleopenstate(in long index); void oncycleheader(in nsitreecolumn column); void oncyclecell(in long row, in nsitreecolumn column); void onselection
changed(); void onperformaction(in wstring action); void onperformactiononrow(in wstring action, in long row); void onperformactiononcell(in wstring actio...
... warning: do not
change the content of the observer list.
... onselection
changed() called when the selection in the tree
changes.
... void onselection
changed(); parameters none.
nsIObserver
inherits from: nsisupports last
changed in gecko 0.9.6 method overview void observe(in nsisupports asubject, in string atopic, in wstring adata); methods observe() this method will be called when there is a notification for the topic that the observer has been registered for.
... void observe( in nsisupports asubject, in string atopic, in wstring adata ); parameters asubject in general reflects the object whose
change or action is being observed.
... atopic indicates the specific
change or action.
... adata an optional parameter or other auxiliary data further describing the
change or action.
nsIPermissionManager
last
changed in gecko 16 (firefox 16 / thunderbird 16 / seamonkey 2.13) inherits from: nsisupports method overview void add(in nsiuri uri, in string type, in pruint32 permission, [optional] in pruint32 expiretype, [optional] in print64 expiretime); void addfromprincipal(in nsiprincipal principal, in string type, in pruint32 permission, [optional] in pruint32 expiretype, [optional] in print64 expiretime); void remove(in autf8string host, in string type); void removefromprincipal(in nsiprincipal ...
... remarks this service broadcasts the following notification when the permission list is
changed: topic : "perm-
changed" (perm_
change_notification) broadcast whenever the permission list
changes in some way.
... there are four possible data strings for this notification; one notification will be broadcast for each
change, and will involve a single permission.
... data : "
changed" a permission was
changed.
nsISyncJPAKE
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void final(in acstring ab, in acstring agvb, in acstring arb, in acstring ahkdfinfo, out acstring aaes256key, out acstring ahmac256key); 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 fin...
...al step of the jpake ex
change.
... round1() perform first round of the jpake ex
change.
... round2() perform second round of the jpake ex
change.
nsIThreadObserver
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void afterprocessnextevent(in nsithreadinternal thread, in unsigned long recursiondepth); void ondispatchedevent(in nsithreadinternal thread); void onprocessnextevent(in nsithreadinternal thread, in boolean maywait, in unsigned long recursiondepth); methods afterprocessnextevent() called by the nsithread method nsithread.processnextevent() after an event is processed.
... note: it is valid to
change the thread's observer during a call to this method.
... note: it is valid to
change the thread's observer during a call to this method.
... it is valid to
change the thread\'s observer during a call to this method.
nsIWebProgressListener2
last
changed in gecko 1.9 (firefox 3) inherits from: nsiwebprogresslistener method overview void onprogress
change64(in nsiwebprogress awebprogress, in nsirequest arequest, in long long acurselfprogress, in long long amaxselfprogress, in long long acurtotalprogress, in long long amaxtotalprogress); boolean onrefreshattempted(in nsiwebprogress awebprogress, in nsiuri arefreshuri, in long amillis, in boolean asameuri); methods onprogress
change64() notification that the progress has
changed for one of the requests associated with awebprogress.
... progress totals are reset to zero when all requests in awebprogress complete (corresponding to onstate
change being called with astateflags including the state_stop and state_is_window flags).
... this function is identical to nsiwebprogresslistener.onprogress
change(), except that this function supports 64-bit values.
...void onprogress
change64( in nsiwebprogress awebprogress, in nsirequest arequest, in long long acurselfprogress, in long long amaxselfprogress, in long long acurtotalprogress, in long long amaxtotalprogress ); parameters awebprogress the nsiwebprogress instance that fired the notification.
nsIXULTemplateBuilder
the addresult, removeresult, replaceresult and resultbinding
changed methods may be called by the query processor to indicate that the set of valid results has
changed, such that a different query may match.
... last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void rebuild(); void refresh(); void addresult(in nsixultemplateresult aresult, in nsidomnode aquerynode); void removeresult(in nsixultemplateresult aresult); void replaceresult(in nsixultemplateresult aoldresult, in nsixultemplateresult anewresult, in nsidomnode aquerynode); void resultbinding
changed(in nsixultemp...
... errors throws ns_error_null_pointer if either argument is null, or ns_error_invalid_arg if the ids don't match resultbinding
changed() informs the template builder that one or more of the optional bindings for a result has
changed.
...void resultbinding
changed( in nsixultemplateresult aresult ); parameters aresult the result to
change errors throws ns_error_null_pointer if aresult is null getresultforid() returns the result for a given id.
Setting HTTP request headers
"x-hello" to the channel passed in for http-on-modify-request notification: var {cc, ci} = require("chrome"); var httprequestobserver = { observe: function(subject, topic, data) { if (topic == "http-on-modify-request") { var httpchannel = subject.queryinterface(ci.nsihttpchannel); httpchannel.setrequestheader("x-hello", "world", false); } } }; note: the above code was
changed to reflect that in a firefox add-on one can not directly access components.interfaces und components.classes anymore but must use the require line introduced to the sample code above.
...so we need to
change the nsisupports into a nsihttpchannel which is what the queryinterface call does.
...if you want to support gecko2 (firefox4) you need to register your javascript component as described here: https://developer.mozilla.org/en/xpcom/xpcom_
changes_in_gecko_2.0#javascript_components.
...{ observe: function(subject, topic, data) { if (topic == "http-on-modify-request") { log("----------------------------> (" + subject + ") mod request"); var httpchannel = subject.queryinterface(components.interfaces.nsihttpchannel); httpchannel.setrequestheader(headername, headervalue, false); return; } if (topic == "profile-after-
change") { log("----------------------------> profile-after-
change"); var os = components.classes["@mozilla.org/observer-service;1"] .getservice(components.interfaces.nsiobserverservice); os.addobserver(this, "http-on-modify-request", false); return; } }, queryinterface: function (iid) { if (iid.equals(components.
Address book sync client design
if the crc has
changed, mark the entry modified, if // it's a new record, add an entry and mark it new, if a record was deleted, // mark the entry deleted, etc.
... // // sync approach - server handles all conflict resolution: // // step 2: // using the sync mapping table and the local records database, generate the
change // list to send to the server.
... then apply the server
changes back // to the local database (updating the crc's in the process).
... save the
changes to // the local database, clear the sync mapping table flags and save the new sync // mapping table.
Index
pizzarro <rhp@netscape.com> 10 autoconfiguration in thunderbird administration, enterprise author: ben bucksch please do not
change this document without consulting the author 11 autoconfig file format no summary!
...thunderbird 3 uses the gecko cookie policy with some
changes.
...pizzarro <rhp@netscape.com> contents 37 mail event system mozilla mail requires an event system to notify different subsystems that data has
changed.
... elaborate on the mime
changes that were made for spam currently, spam filtering is does not work for news, but it would be possible to add support for this.
UI Tour - Firefox Developer Tools
set directory root
changes the source list view so that only that item and its children are visible.
...all child files acquired the eye icon, and the folder menu option
changes to unignore files in this directory.
...all such files acquire the eye icon, and the menu option for that folder
changes to unignore files outside this directory.
...when grouping is enabled, the menu option
changes to disable framework grouping.
Debugger.Object - Firefox Developer Tools
note that this returns primitive values un
changed.
...ifvalue is a primitive, we return it un
changed; ifvalue is an object, we return the debugger.object instance representing that object, wrapped appropriately for use in this debugger.object’s referent’s compartment.
...if the referent is not a wrapper, return this debugger.object instance un
changed.
... source metadata generated from file: js/src/doc/debugger/debugger.object.md watermark: sha256:7ae16a834e0883a95b4e0d227193293f6b6e4e4dd812c2570372a39c4c04897b
changeset: 5572465c08a9+ ...
Migrating from Firebug - Firefox Developer Tools
this may be
changed in bug 1269730.
...only the live preview of
changes is currently missing, which is tracked in bug 1067318 and bug 815464.
... stop script execution on dom mutation in firebug you can break on dom mutations, that means that when an element is
changed, the script execution is stopped at the related line within the javascript file, which caused the
change.
... this feature can globally be enabled via the break on mutate button, or individually for each element and for different types of
changes like attribute
changes, content
changes or element removal.
Waterfall - Firefox Developer Tools
the javascript
changes some of the page's dom or cssom.
... recalculate style: if the browser thinks the computed styles for page elements have
changed, it must then recalculate them.
... not all css property
changes cause a reflow.
... not all css property
changes cause a repaint.
AnalyserNode.smoothingTimeConstant - Web APIs
it's basically an average between the current buffer and the last buffer the analysernode processed, and results in a much smoother set of value
changes over time.
... if 0 is set, there is no averaging done, whereas a value of 1 means "overlap the previous and current buffer quite a lot while computing the value", which essentially smoothes the
changes across analysernode.getfloatfrequencydata/analysernode.getbytefrequencydata calls.
...for more complete applied examples/information, check out our voice-
change-o-matic demo (see app.js lines 128–205 for relevant code).
...you'll notice that the value
changes are much more jarring.
AudioNode.connect() - Web APIs
the connect() method of the audionode interface lets you connect one of the node's outputs to a target, which may be either another audionode (thereby directing the sound data to the specified node) or an audioparam, so that the node's output data is automatically used to
change the value of that parameter over time.
...this means the value of the lfo // will not produce any audio, but will
change the value of the gain instead lfo.connect(gain.gain); // connect the oscillator that will produce audio to the gain oscillator.connect(gain); // connect the gain to the destination so we hear sound gain.connect(audioctx.destination); // start the oscillator that will produce audio oscillator.start(); // start the oscillator that will modify the gain value lfo.start(); audioparam notes it is...
...next, it will mix it together with any other such outputs, and the intrinsic parameter value (the value the audioparam would normally have without any audio connections), including any timeline
changes scheduled for the parameter.
... therefore, it is possible to choose the range in which an audioparam will
change by setting the value of the audioparam to the central frequency, and to use a gainnode between the audio source and the audioparam to adjust the range of the audioparam
changes.
Using dynamic styling information - Web APIs
to
change a particular element's style, you can adapt the following example for the element(s) you want to style.
...--> <p id="p1" onclick="alterstyle(this);"> click here to
change background color.
...</title> <link rel="stylesheet" href="example.css" type="text/css"> <script type="text/javascript"> function stilo() { document.getelementbyid('d').style.color = 'orange'; } function resetstyle() { document.getelementbyid('d').style.color = 'black'; } </script> </head> <body> <div id="d" class="thunder">thunder</div> <button onclick="stilo()">click here to
change text color</button> <button onclick="resetstyle()">reset text color</button> </body> </html> the media and type of the style may or may not be given.
... using the setattribute method note that you can also
change style of an element by getting a reference to it and then use its setattribute method to specify the css property and its value.
Using light sensors - Web APIs
ambient light events give a web application access to a device's ambient light sensor to detect
changes in light intensity.
... when the light sensor of the device detects a
change in light intensity, the browser is notified of the
change and fires a devicelightevent event.
...if your app contains a lot of white in the ui, it is usually beneficial to the user to
change the ui to a darker color in a darker environment.
... the code alerts the user that they are working in a dark environment and then
changes the page's background to a darker color.
Document.lastStyleSheetSet - Web APIs
this property's value
changes whenever the document.selectedstylesheetset property is
changed.
...if the current style sheet set has not been
changed by setting document.selectedstylesheetset, the returned value is null.
... note: this value doesn't
change when document.enablestylesheetsforset() is called.
... example let lastsheetset = document.laststylesheetset; if (!lastsheetset) { lastsheetset = 'style sheet not yet
changed'; } else { console.log('the last style sheet set is: ' + lastsheetset); } ...
Introduction to the DOM - Web APIs
it represents the page so that programs can
change the document structure, style, and content.
... when you get a reference to a table object, as in the following example, you routinely use all three of these interfaces inter
changeably on the object, perhaps without knowing it.
... <html> <head> <title>dom tests</title> <script> function setbodyattr(attr, value) { if (document.body) document.body[attr] = value; else throw new error("no support"); } </script> </head> <body> <div style="margin: .5in; height: 400px;"> <p><b><tt>text</tt></b></p> <form> <select on
change="setbodyattr('text', this.options[this.selectedindex].value);"> <option value="black">black</option> <option value="red">red</option> </select> <p><b><tt>bgcolor</tt></b></p> <select on
change="setbodyattr('bgcolor', this.options[this.selectedindex].value);"> <option value="white">white</option> <option value="lightgrey">gray</optio...
...n> </select> <p><b><tt>link</tt></b></p> <select on
change="setbodyattr('link', this.options[this.selectedindex].value);"> <option value="blue">blue</option> <option value="green">green</option> </select> <small> <a href="http://some.website.tld/page.html" id="sample"> (sample link) </a> </small><br /> <input type="button" value="version" onclick="ver()" /> </form> </div> </body> </html> to test a lot of interfaces in a single page—for example, a "suite" of properties that affect the colors of a web page—you can create a similar test page with a whole console of buttons, textfields, and other html elements.
Using the W3C DOM Level 1 Core - Web APIs
the w3c dom level 1 core allows you to
change a dom tree in any way you want.
... this implies the ability to create any html or xml document from scratch, or to
change any contents of a given html or xml document.
... a simple example suppose the author wants to
change the header of the above document and write two paragraphs instead of one.
... the following script would do the job: html content <body> <input type="button" value="
change this document." onclick="
change()"> <h2>header</h2> <p>paragraph</p> </body> javascript content function
change() { // document.getelementsbytagname("h2") returns a nodelist of the <h2> // elements in the document, and the first is number 0: var header = document.getelementsbytagname("h2").item(0); // the firstchild of the header is a text node: header.firstchild.data = "a dynamic document"; // now the header is "a dynamic document".
Element.getElementsByTagName() - Web APIs
therefore, there is no need to call element.getelementsbytagname() with the same element and arguments repeatedly if the dom
changes in between calls.
... living standard
changed the return value from nodelist to htmlcollection document object model (dom) level 3 core specificationthe definition of 'element.getelementsbytagname()' in that specification.
... obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'element.getelementsbytagname()' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'element.getelementsbytagname()' in that specification.
FileHandle API - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...such a file object is completely desynchronized from the original file, which means any
change made to that object will never be reflected to the handled file as well as any
change made to the handled file will never be pushed to the file object.
...once this method has been successfully called, you can be sure your
change on the file will be safe.
...as it does not fully match the current implementation, be warned that the implementation and/or the specification will be subject to
changes.
GainNode - Web APIs
the gainnode interface represents a
change in volume.
...to prevent this from happening, never
change the value directly but use the exponential interpolation methods on the audioparam interface.
...you have to set audioparam.value or use the methods of audioparam to
change the effect of gain.
... the below snippet wouldn't work as is — for a complete working example, check out our voice-
change-o-matic demo (view source.) <div> <button class="mute">mute button</button> </div> var audioctx = new (window.audiocontext || window.webkitaudiocontext)(); var gainnode = audioctx.creategain(); var mute = document.queryselector('.mute'); var source; if (navigator.mediadevices.getusermedia) { navigator.mediadevices.getusermedia ( // constraints - only audio needed for this app { audio: true }, /...
GlobalEventHandlers.ontransitioncancel - Web APIs
the transition is cancelled when: the value of the transition-property property that applies to the target is
changed the display property is set to "none".
... html this simply creates a <div> which we'll style with css below to make into a box that resizes and
changes color and such.
... <div class="box"></div> css the css below styles the box and applies a transition effect which makes the box's color and size
change, and causes the box to rotate, while the mouse cursor hovers over it.
...webkit-transition: width 2s, height 2s, background-color 2s, -webkit-transform 2s, color 2s; transition: width 2s, height 2s, background-color 2s, transform 2s, color 2s; } .box:hover { background-color: #ffcccc; color: #000000; width: 200px; height: 200px; -webkit-transform: rotate(180deg); transform: rotate(180deg); } javascript next, we need to establish our event handlers to
change the text content of the box when the transition begins and ends.
HTMLElement.dir - Web APIs
browsers might allow users to
change the directionality of <input> and <textarea>s in order to assist with authoring content.
... example var parg = document.getelementbyid("para1"); parg.dir = "rtl"; //
change the text direction on a paragraph identified as "para1" specifications specification status comment html living standardthe definition of 'dir' in that specification.
... living standard no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLFrameSetElement - Web APIs
windoweventhandlers.onhash
change is an eventhandler representing the code to be called when the hash
change event is raised.
... windoweventhandlers.onlanguage
change is an eventhandler representing the code to be called when the language
change event is raised.
... living standard from the html5 snapshot, the windoweventhandlers interface now have a onlanguage
change property.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLIFrameElement.allowPaymentRequest - Web APIs
to
change preferences in chrome, visit chrome://flags.edge full support 15firefox full support 56ie ?
...to
change preferences in chrome, visit chrome://flags.firefox android full support yesopera android no support nosafari ios ?
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.user must explicitly enable this feature.user must explicitly enable this feature.
HTMLImageElement.currentSrc - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support yessafari full support 10.1webview android full support 45chrome android full support 45firefox ...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 10.3samsung internet android full support 5.0legend full support full support no support no support...
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.user must explicitly enable this feature.user must explicitly enable this feature.
HTMLMediaElement.audioTracks - Web APIs
the returned list is live; that is, as tracks are added to and removed from the media element, the list's contents
change dynamically.
... once you have a reference to the list, you can monitor it for
changes to detect when new audio tracks are added or existing ones removed.
... see event handlers in audiotracklist to learn more about watching for
changes to a media element's track list.
... living standard no
change from html5 html5the definition of 'htmlmediaelement.audiotracks' in that specification.
HTMLMediaElement.textTracks - Web APIs
instead, they're sent to the track list object of the htmlmediaelement that corresponds to the type of track that was added to the element the returned list is live; that is, as tracks are added to and removed from the media element, the list's contents
change dynamically.
... once you have a reference to the list, you can monitor it for
changes to detect when new text tracks are added or existing ones removed.
... see event handlers in texttracklist to learn more about watching for
changes to a media element's track list.
... living standard no
change from html5 html5the definition of 'htmlmediaelement.texttracks' in that specification.
HTMLMediaElement.videoTracks - Web APIs
the returned list is live; that is, as tracks are added to and removed from the media element, the list's contents
change dynamically.
... once you have a reference to the list, you can monitor it for
changes to detect when new video tracks are added or existing ones removed.
... see event handlers in videotracklist to learn more about watching for
changes to a media element's track list.
... living standard no
change from html5 ...
HTMLOrForeignElement.dataset - Web APIs
tyle 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 un
changed.
...h-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 un
changed.
... living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'htmlelement.dataset' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'htmlelement.dataset' in that specification.
HTMLSelectElement - Web APIs
events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this interface: input event fires when the value of an <input>, <select>, or <textarea> element has been
changed.
...he following html <select id='s'> <option>first</option> <option selected>second</option> <option>third</option> </select> */ var select = document.getelementbyid('s'); // return the index of the selected option console.log(select.selectedindex); // 1 // return the value of the selected option console.log(select.options[select.selectedindex].value) // second a better way to track
changes to the user's selection is to watch for the
change event to occur on the <select>.
... this will tell you when the value
changes, and you can then update anything you need to.
... see the example provided in the documentation for the
change event for details.
HTMLSlotElement - Web APIs
events slot
change fired on an htmlslotelement instance (<slot> element) when the node(s) contained in that slot
change.
... examples the following snippet is taken from our slot
change example (see it live also).
... let slots = this.shadowroot.queryselectorall('slot'); slots[1].addeventlistener('slot
change', function(e) { let nodes = slots[1].assignednodes(); console.log('element in slot "' + slots[1].name + '"
changed to "' + nodes[0].outerhtml + '".'); }); here we grab references to all the slots, then add a slot
change event listener to the 2nd slot in the template — which is the one that keeps having its contents
changed in the example.
... every time the element inserted in the slot
changes, we log a report to the console saying which slot has
changed, and what the new node inside the slot is.
HTMLVideoElement.videoHeight - Web APIs
if at any time the intrinsic size of the media
changes and the element's readystate isn't have_nothing, a resize event will be sent to the <video> element.
... this can happen when the element switches from displaying the poster frame to displaying video content, or when the displayed video track
changes.
... let v = document.getelementbyid("myvideo"); v.addeventlistener("resize", ev => { let w = v.videowidth; let h = v.videoheight; if (w && h) { v.style.width = w; v.style.height = h; } }, false); note that this only applies the
change if both the videowidth and the videoheight are non-zero.
... this avoids applying invalid
changes when there's no true information available yet for dimensions.
HTMLVideoElement.videoWidth - Web APIs
if at any time the intrinsic size of the media
changes and the element's readystate isn't have_nothing, a resize event will be sent to the <video> element.
... this can happen when the element switches from displaying the poster frame to displaying video content, or when the displayed video track
changes.
... let v = document.getelementbyid("myvideo"); v.addeventlistener("resize", ev => { let w = v.videowidth; let h = v.videoheight; if (w && h) { v.style.width = w; v.style.height = h; } }, false); note that this only applies the
change if both the videowidth and the videoheight are non-zero.
... this avoids applying invalid
changes when there's no true information available yet for dimensions.
History.pushState() - Web APIs
passing the empty string here should be safe against future
changes to the method.
... you don't have to
change the url if you don't want to.
... note that pushstate() never causes a hash
change event to be fired, even if the new url differs from the old url only in its hash.
... living standard no
change from html5.
IDBDatabase - Web APIs
version
change fired when a database structure
change was requested.
... also available via the onversion
change property.
... yeschrome android full support 25firefox android full support 22opera android full support 14safari ios full support 8samsung internet android full support 1.5onversion
changechrome full support 24 full support 24 no support 23 — 24prefixed prefixed implemented with the vendor prefix: webkitedge full support 12firefox full support 16 full support ...
... yeschrome android full support 25firefox android full support 22opera android full support 14safari ios full support 8samsung internet android full support 1.5version
change eventchrome full support 24 full support 24 no support 23 — 24prefixed prefixed implemented with the vendor prefix: webkitedge full support 12firefox full support 16 full supp...
InputEvent - Web APIs
the inputevent interface represents an event notifying of editable content
change.
...this may be an empty string if the
change doesn't insert text (such as when deleting characters, for example).
... inputevent.inputtyperead only returns the type of
change for editable content such as, for example, inserting, deleting, or formatting text.
... inputevent.gettargetranges() returns an array of static ranges that will be affected by a
change to the dom if the input event is not canceled.
MSManipulationEvent - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... events msmanipulationstate
changed: event fires when the state of an element being manipulated has
changed.
... laststateread only returns the last state after a manipulation
change event.
...pulation_state_cancelled: number; readonly ms_manipulation_state_committed: number; readonly ms_manipulation_state_dragging: number; readonly ms_manipulation_state_inertia: number; readonly ms_manipulation_state_preselect: number; readonly ms_manipulation_state_selecting: number; readonly ms_manipulation_state_stopped: number; } see also touchevent msmanipulationstate
changed microsoft api extensions ...
Metadata.modificationTime - Web APIs
ead-only modificationtime property of the metadata interface is a date object which specifies the date and time the file system entry (or the data referenced by the entry) was last modified.a file system entry is considered to have been modified if the metadata or the contents of the referenced file (or directory, or whatever other kind of file system entry might exist on the platform in use) has
changed.
... syntax var modificationtime = metadata.modificationtime; value a date timestamp indicating when the file system entry was last
changed.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
NavigatorID.userAgent - Web APIs
also keep in mind that users of a browser can
change the value of this field if they want (ua spoofing).
...for example: in firefox, you can
change the preference general.useragent.override in about:config.
... some firefox extensions do that; however, this only
changes the http header that gets sent, and doesn't affect browser detection performed by javascript code.
... safari and icab allow users to
change the browser user agent string to predefined internet explorer or netscape strings via a menu.
Node.childNodes - Web APIs
adding or removing children will
change the list's `length` } } remove all children from a node // this is one way to remove all children from a node // box is an object reference to an element while (box.firstchild) { //the list is live so it will re-index each call box.removechild(box.firstchild); } notes the items in the collection of nodes are objects, not strings.
... living standard no
change document object model (dom) level 3 core specificationthe definition of 'node.childnodes' in that specification.
... obsolete no
change document object model (dom) level 2 core specificationthe definition of 'node.childnodes' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'node.childnodes' in that specification.
PaymentAddress.toJSON() - Web APIs
to
change preferences in chrome, visit chrome://flags.edge full support 15firefox full support 62notes disabled full support 62notes disabled notes available only in nightly builds.
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 61disabled full support 61disabled disabled from version 61: this feature is behind t...
...to
change preferences in chrome, visit chrome://flags.firefox android full support 62notes disabled full support 62notes disabled notes available only in nightly builds.
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android no support nolegend full support full support no support no supportsee implementation notes.see implementation notes.us...
PaymentRequest.shippingOption - Web APIs
syntax // returns the id of the selected paymentshippingoption var shippingoption = request.shippingoption; example in the example below, the paymentrequest.onshippingoption
change and the paymentrequest.onshippingaoption
change events are dispatched.
... const request = new paymentrequest(methoddata, details, options); // async update to details request.onshippingaddress
change = ev => { ev.updatewith(checkshipping(request)); }; // sync update to the total request.onshippingoption
change = ev => { const shippingoption = shippingoptions.find( option => option.id === request.id ); const newtotal = { currency: "usd", label: "total due", value: calculatenewtotal(shippingoption), }; ev.updatewith({ ...details, total: newtotal }); }; async function checkshipping(request) { try { const json = request.shippingaddress.tojson(); await ensurec...
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 11.1webview android no support nochrome android full support 53firefox andro...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.use...
Payment Request API - Web APIs
the paymentrequest allows the web page to ex
change information with the user agent while the user provides input to complete the transaction.
... paymentmethod
changeevent represents the user changing payment instrument (e.g., switching from a credit card to debit card).
... paymentdetailsupdate an object describing
changes that need to be made to the payment details in the event that the server needs to update information following the instantiation of the payment interface but before the user begins to interact with it.
... related dictionaries for the basic card specification basiccard
changedetails an object providing redacted address information that is provided as the methoddetails on the paymentmethod
change event sent to the paymentrequest when the user
changes payment information.
Permissions - Web APIs
to
change preferences in firefox, visit about:config.
...to
change preferences in firefox, visit about:config.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
Multi-touch interaction - Web APIs
in this application, when a pointer is placed down on an element, the background color of the element
changes, depending on the number of active touch points the element has.
... see the update_background function for more details about the color
changes.
...{ // save this event in the target's cache var cache = get_cache(ev); cache.push(ev); } function remove_event(ev) { // remove this event from the target's cache var cache = get_cache(ev); for (var i = 0; i < cache.length; i++) { if (cache[i].pointerid == ev.pointerid) { cache.splice(i, 1); break; } } } update background color the background color of the touch areas will
change as follows: no active touches is white; one active touch is yellow; two simultaneous touches is ping and three or more simultaneous touches is lightblue.
... function update_background(ev) { //
change background color based on the number of simultaneous touches/pointers // currently down: // white - target element has no touch points i.e.
Pointer events - Web APIs
pointermove onpointermove fired when a pointer
changes coordinates.
... this event is also used if the
change in pointer state can not be reported by other events.
... device button state button buttons neither buttons nor touch/pen contact
changed since last event -1 — mouse move with no buttons pressed, pen moved while hovering with no buttons pressed — 0 left mouse, touch contact, pen contact 0 1 middle mouse 1 4 right mouse, pen barrel button 2 2 x1 (back) mouse 3 8 x2 (forward) mouse 4 16 pen eraser button 5 32 no...
...tice: the button property indicates a
change in the state of the button.
RTCPeerConnection.setConfiguration() - Web APIs
this lets you
change the ice servers used by the connection and which transport policies to use.
... you cannot
change the identity information for a connection once it's already been set.
...the
changes are not additive; instead, the new values completely replace the existing ones.
... invalidmodificationerror the configuration includes
changed identity information, but the connection already has identity information specified.
RTCPeerConnection.setRemoteDescription() - Web APIs
the method takes a single parameter—the session description—and it returns a promise which is fulfilled once the description has been
changed, asynchronously.
... because descriptions will be ex
changed until the two peers agree on a configuration, the description submitted by calling setremotedescription() does not immediately take effect.
... return value a promise which is fulfilled once the value of the connection's remotedescription is successfully
changed or rejected if the
change cannot be applied (for example, if the specified description is incompatible with one or both of the peers on the connection).
... note: the process of changing descriptions actually involves intermediary steps handled by the webrtc layer to ensure that an active connection can be
changed without losing the connection if the
change does not succeed.
RTCRtpSender.replaceTrack() - Web APIs
the promise is rejected if the track cannot be replaced for any reason; this is commonly because the
change would require renegotiation of the codec, which is not allowed (see things that require negotiation).
...in fact, even
changes that seem huge can be done without requiring negotation.
... here are the
changes that can trigger negotiaton: the new track has a resolution which is outside the bounds of the bounds of the current track; that is, the new track is either wider or taller than the current one.
... examples switching video cameras // example to
change video camera, suppose selected value saved into window.selectedcamera navigator.mediadevices .getusermedia({ video: { deviceid: { exact: window.selectedcamera } } }) .then(function(stream) { let videotrack = stream.getvideotracks()[0]; pcs.foreach(function(pc) { var sender = pc.getsenders().find(function(s) { return s.track.kind == videotra...
ServiceWorkerContainer - Web APIs
events controller
change occurs when the document's associated serviceworkerregistration acquires a new active worker.
... also available via the serviceworkercontainer.oncontroller
change property.
...see /docs/web/api/serviceworkerregistration }).catch(function(error) { console.log('service worker registration failed:', error); }); // independent of the registration, let's also display // information about whether the current page is controlled // by an existing service worker, and when that // controller
changes.
... navigator.serviceworker.oncontroller
change = function() { console.log('this page is now controlled by:', navigator.serviceworker.controller); }; } else { console.log('service workers are not supported.'); } specifications specification status comment service workersthe definition of 'serviceworkercontainer' in that specification.
SourceBuffer - Web APIs
sourcebuffer.updating
changes from true to false.
...sourcebuffer.updating
changes from true to false.
...sourcebuffer.updating
changes from true to false.
... sourcebuffer.
changetype()
changes the mime type that future calls to appendbuffer() will expect the new data to conform to.
StaticRange - Web APIs
the dom staticrange interface extends abstractrange to provide a method to specify a range of content in the dom whose contents don't update to reflect
changes which occur within the dom tree.
... methods staticrange.torange() returns a new range object which describes the same range as the source staticrange, but is "live" with values that
change to reflect
changes in the contents of the dom tree.
...unlike a range, a staticrange represents a range which is fixed in time; it does not
change to try to keep the same content within it as the document
changes.
... if any
changes are made to the dom, the actual data contained within the range specified by a staticrange may
change.
TextTrackList - Web APIs
on
change an event handler to be called when the
change event occurs.
...
change fired when a text track has been made active or inactive.
... also available via the on
change property.
... var texttracks = document.queryselector("video").texttracks; monitoring track count
changes in this example, we have an app that displays information about the number of channels available.
Touch.clientX - Web APIs
when the touchend event handler is invoked, the
changes in the touch.clientx and touch.clienty coordinates, from the starting touch point to the ending touch point, are calculated.
... // register touchstart and touchend listeners for element 'source' var src = document.getelementbyid("source"); var clientx, clienty; src.addeventlistener('touchstart', function(e) { // cache the client x/y coordinates clientx = e.touches[0].clientx; clienty = e.touches[0].clienty; }, false); src.addeventlistener('touchend', function(e) { var deltax, deltay; // compute the
change in x and y coordinates.
... // the first touch point in the
changedtouches // list is the touch point that was just removed from the surface.
... deltax = e.
changedtouches[0].clientx - clientx; deltay = e.
changedtouches[0].clienty - clienty; // process the data ...
Multi-touch interaction - Web APIs
function handle_pinch_zoom(ev) { if (ev.targettouches.length == 2 && ev.
changedtouches.length == 2) { // check if the two target touches are the same ones that started // the 2-touch var point1=-1, point2=-1; for (var i=0; i < tpcache.length; i++) { if (tpcache[i].identifier == ev.targettouches[0].identifier) point1 = i; if (tpcache[i].identifier == ev.targettouches[1].identifier) point2 = i; } if (point1 >=0 && point2 >= 0) { // calculate t...
... update background color the background color of the touch areas will
change as follows: no touch is white; one touch is yellow; two simultaneous touches is pink, and three or more simultaneous touches is lightblue.
... function update_background(ev) { //
change background color based on the number simultaneous touches // in the event's targettouches list: // yellow - one tap (or hold) // pink - two taps // lightblue - more than two taps switch (ev.targettouches.length) { case 1: // single tap` ev.target.style.background = "yellow"; break; case 2: // two simultaneous touches ev.target.style.background = "pink"; break; default: // more than two simultaneous touches ev.target.style.background = "lightblue"; } } event logging the functions are used to log event activity to the application window, to support debugging and learning about th...
...false : true; } function log(name, ev, printtargetids) { var o = document.getelementsbytagname('output')[0]; var s = name + ": touches = " + ev.touches.length + " ; targettouches = " + ev.targettouches.length + " ;
changedtouches = " + ev.
changedtouches.length; o.innerhtml += s + " "; if (printtargetids) { s = ""; for (var i=0; i < ev.targettouches.length; i++) { s += "...
VideoTrackList - Web APIs
on
change an event handler to be called when the
change event occurs — that is, when the value of the selected property for a track has
changed, due to the track being made active or inactive.
...
change fired when a video track has been made active or inactive.
... also available via the on
change property.
... var videotracks = document.queryselector("video").videotracks; monitoring track count
changes in this example, we have an app that displays information about the number of channels available.
Movement, orientation, and motion: A WebXR example - Web APIs
if false, only xr device
changes to the view are permitted.
...in either case, the label of the button is updated to indicate that a click will start a session, and then, if there is a pending request for an animation frame, we cancel it by calling cancelanimationframe once that's done, the value of xrsession is
changed to null to indicate that we're done with the session.
...otherwise, we create from the orientation
changes in mousepitch and mouseyaw a quaternion specifying the inverse of that orientation, so that applying the inverseorientation to the cube will correctly appear to reflect the viewer's movement.
...add collision testing or hit testing, or the ability to
change the texture of each face of the cube.
Advanced techniques: Creating and sequencing audio - Web APIs
we can allow the user to control these using range inputs on the interface: <label for="attack">attack</label> <input name="attack" id="attack" type="range" min="0" max="1" value="0.2" step="0.1" /> <label for="release">release</label> <input name="release" id="release" type="range" min="0" max="1" value="0.5" step="0.1" /> now we can create some variables over in javascript and have them
change when the input values are updated: let attacktime = 0.2; const attackcontrol = document.queryselector('#attack'); attackcontrol.addeventlistener('input', function() { attacktime = number(this.value); }, false); let releasetime = 0.5; const releasecontrol = document.queryselector('#release'); releasecontrol.addeventlistener('input', function() { releasetime = number(this.value); }, false...
...we can set a value at a certain time, or we can
change it over time with methods such as audioparam.linearramptovalueattime.
...one will
change the tone and the other will
change how the pulse modulates the first wave: <label for="hz">hz</label> <input name="hz" id="hz" type="range" min="660" max="1320" value="880" step="1" /> <label for="lfo">lfo</label> <input name="lfo" id="lfo" type="range" min="20" max="40" value="30" step="1" /> as before, we'll vary the parameters when the range input values are
changed by the user.
...we can start them at a precise time with the currenttime property and also take into account any
changes.
Visualizations with Web Audio API - Web APIs
note: you can find working examples of all the code snippets in our voice-
change-o-matic demo.
... creating a waveform/oscilloscope to create the oscilloscope visualisation (hat tip to soledad penadés for the original code in voice-
change-o-matic), we first follow the standard pattern described in the previous section to set up the buffer: analyser.fftsize = 2048; var bufferlength = analyser.frequencybincount; var dataarray = new uint8array(bufferlength); next, we clear the canvas of what had been drawn on it before to get ready for the new visualization display: canvasctx.clearrect(0, 0, width, height); we now define the draw...
...we have one available in voice-
change-o-matic; let's look at how it's done.
...for working examples showing analysernode.getfloatfrequencydata() and analysernode.getfloattimedomaindata(), refer to our voice-
change-o-matic-float-data demo (see the source code too) — this is exactly the same as the original voice-
change-o-matic, except that it uses float data, not unsigned byte data.
window.cancelIdleCallback() - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support yessafari no support nowebview android full support 47chrome android full support 47firefox andr...
...to
change preferences in firefox, visit about:config.opera android full support yessafari ios no support nosamsung internet android full support 5.0legend full support full support no support no supportexperimental.
... expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.user must explicitly enable this feature.user must explicitly enable this feature.
Window.customElements - Web APIs
to
change preferences in firefox, visit about:config.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 41safari full support 10.1webview android full support 54chrome android full support 54firefox android full support 63 full support ...
...to
change preferences in firefox, visit about:config.
...to
change preferences in firefox, visit about:config.opera android full support 41safari ios full support 10.3samsung internet android full support 6.0legend full support full support no support no supportuser must explicitly enable this feature.user must explic...
window.postMessage() - Web APIs
a malicious site can
change the location of the window without your knowledge, and therefore it can intercept the data sent using postmessage.
...ire-corp as value (protects victims from your origin) cross-origin-opener-policy: same-origin cross-origin-embedder-policy: require-corp to check if cross origin isolation has been successful, you can test against the crossoriginisolated property available to window and worker contexts: if (crossoriginisolated) { // post sharedarraybuffer } else { // do something else } see also planned
changes to shared memory which is starting to roll out to browsers (firefox 79, for example).
... example /* * in window a's scripts, with a being on <http://example.com:8080>: */ var popup = window.open(/* popup details */); // when the popup has fully loaded, if not blocked by a popup blocker: // this does nothing, assuming the window hasn't
changed its location.
... popup.postmessage("the user is 'bob' and the password is 'secret'", "https://secure.example.net"); // this will successfully queue a message to be sent to the popup, assuming // the window hasn't
changed its location.
XRSessionEvent - Web APIs
the webxr device api's xrsessionevent interface describes an event which indicates the
change of the state of an xrsession.
... these events occur, for example, when the session ends or the visibility of its context
changes.
... visibility
change fired at the session whenever its visibility state
changes.
... examples this example creates a listiener that watches for the visibility state of the session to
change.
ARIA: button role - Accessibility
<div id="save
changes" tabindex="0" role="button" aria-pressed="false">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="save
changes">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...
...the label of a toggle button should not
change when its state
changes.
...if the design were to call for the button label to
change from "mute" to "unmute," a toggle button would not be appropriate, so the the aria-pressed attribute would be omitted.
... || event.key === "spacebar") { // "spacebar" for ie11 support // prevent the default action to stop scrolling when space is pressed event.preventdefault(); togglebutton(event.target); } } function togglebutton(element) { var audio = document.getelementbyid('audio'); // check to see if the button is pressed var pressed = (element.getattribute("aria-pressed") === "true"); //
change aria-pressed to the opposite state element.setattribute("aria-pressed", !pressed); // toggle the play state of the audio file if(pressed) { audio.pause(); } else { audio.play(); } } result accessibility concerns buttons are interactive controls and thus focusable.
ARIA: listbox role - Accessibility
aria-readonly the user cannot
change which options are selected or unselected, but the listbox is otherwise operable.
... when a multi-select listbox receives focus: if none of the options are selected before the listbox receives focus, focus is set on the first option and there is no automatic
change in the selection state.
... recommended selection model -- holding modifier keys is not necessary: space:
changes the selection state of the focused option .
...
change the appearance of the option to reflect it's selected state update the aria-activedescendant value on the listbox to the id of the option the user just interacted with, even if they toggled the option to be unselected.
:disabled - CSS: Cascading Style Sheets
it uses the javascript
change event to let the user enable/disable the billing fields.
...g-checkbox" checked> <br> <input type="text" placeholder="name" disabled> <input type="text" placeholder="address" disabled> <input type="text" placeholder="zip code" disabled> </fieldset> </form> css input[type="text"]:disabled { background: #ccc; } javascript // wait for the page to finish loading document.addeventlistener('domcontentloaded', function () { // attach `
change` event listener to checkbox document.getelementbyid('billing-checkbox').on
change = togglebilling; }, false); function togglebilling() { // select the billing text fields var billingitems = document.queryselectorall('#billing input[type="text"]'); // toggle the billing text fields for (var i = 0; i < billingitems.length; i++) { billingitems[i].disabled = !billingitems[i].disabled; ...
... living standard no
change.
... working draft no
change.
:is() (:matches(), :any()) - CSS: Cascading Style Sheets
to
change preferences in chrome, visit chrome://flags.
...to
change preferences in chrome, visit chrome://flags.
...to
change preferences in firefox, visit about:config.
...to
change preferences in chrome, visit chrome://flags.
@page - CSS: Cascading Style Sheets
description you can't
change all css properties with @page.
... you can only
change the margins, orphans, widows, and page breaks of the document.
... attempts to
change any other css properties will be ignored.
... working draft no
change from css level 2 (revision 1), though more css at-rules can be used inside a @page.
@supports - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 12.1safari full support 9webview android full support ≤37chrome android full support 28firefox...
...to
change preferences in firefox, visit about:config.opera android full support 12.1safari ios full support 9samsung internet android full support 1.5selector()chrome full support 83edge full support 83firefox full support ...
...to
change preferences in firefox, visit about:config.ie no support noopera full support 69safari no support nonotes no support nonotes notes see bug 199237webview android full support 83chrome android full support 83firefox android ...
...to
change preferences in firefox, visit about:config.opera android no support nonotes no support nonotes notes see bug 979041.safari ios no support nonotes no support nonotes notes see bug 199237samsung internet android no support nonotes no support nonotes notes see bug 979041.leg...
Styling Columns - CSS: Cascading Style Sheets
this guide explains how to
change the gap and style rules between columns.
...the anonymous boxes that make up your columns can’t be targeted in any way, meaning it isn’t possible to
change a box's background color or have one column larger than the others.
...for now, however, we are able to
change the spacing and add lines between columns.
... you can
change the gap by using any length unit as the value of column-gap.
Controlling Ratios of Flex Items Along the Main Axis - CSS: Cascading Style Sheets
to test that out
change the values assigned in the above example to .25, .25, and .50 — you should see the same result.
...
change the flex-shrink value to 1 and you will see each item shrink by the same amount, in order that all of the items now fit in the box.
...if you
change the width on the flex container — increasing it to 700px for example — and then reduce the flex item width, you can see that the first two items will wrap, however they will never become smaller than that min-content size.
...this can help
change the default behaviour if, for example, you want an item to shrink more or less rapidly than its siblings or not shrink at all.
OpenType font features guide - CSS: Cascading Style Sheets
the issue with simply using font-feature-settings for everything is that every time you want to
change one of the individual features, you have to redefine the entire string (similar to manipulating variable fonts with font-variation-settings).
...applying this to just the word 'my' alters the way the 'm' renders, and applying @styleset(alt-a) only
changes the lower case 'a'.
... try changing the line font-variant-alternates: styleset(alt-a); to font-variant-alternates: styleset(alt-g); and notice that the lower case 'a' reverts to its regular form and the lower case 'g'
changes instead.
...this gives a lot of control, but has some disadvantages in how it impacts inheritance and — as mentioned above — if you wish to
change one setting, you have to redeclare the entire string (unless you're using css custom properties to set the values).
CSS Scrollbars - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android no support nochrome android no support nofirefox android ...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android no support nolegend full support full support no support no supportuser must explicitly en...
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android no support nochrome android no support nofirefox android ...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android no support nolegend full support full support no support no supportsee implementation note...
Overview of CSS Shapes - CSS: Cascading Style Sheets
shapes from the box value shapes can also be created around the box value, therefore you could create your shape on the: border-box padding-box content-box margin-box in the example below you can
change the value border-box to any of the other allowed values to see how the shape moves closer or further away from the box.
...in the example below, if you
change the threshold the path that the shape takes
changes based on the level of opacity you have selected.
...
change the margin to push the text further away from the path the shape would take by default.
...this tool means that you can inspect any shapes on your page, and even
change the values in the live page.
Shorthand properties - CSS: Cascading Style Sheets
its purpose is to
change the properties' inheritance model to one of: css provides four special universal property values for controlling inheritance.
...the live example below allows you to play with the css and see what happens when you make
changes.
...if you remove the rule how does it
change the color of the link?
... which of the links will
change color if you define a new color for the <a> element — for example a { color: red; }?
aspect-ratio - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android partial support 79notes partial support 79notes notes webview 79 adds internal support only for m...
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android full support 79chrome android full support 79firefox android...
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
element() - CSS: Cascading Style Sheets
this image is live, meaning that if the html element is
changed, the css properties using the resulting value are automatically updated.
... on gecko browsers, you can use the non-standard document.mozsetimageelement() method to
change the element being used as the background for a given css background element.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
font-size - CSS: Cascading Style Sheets
note: defining font sizes in px is not accessible, because the user cannot
change the font size in some browsers.
...the only exception is that the unit has been
changed to rem.
... candidate recommendation no
change.
... recommendation no
change.
Mutation events - Developer guides
mutation events provide a mechanism for a web page or an extension to get notified about
changes made to the dom.
...domelementname
changed and domattributename
changed are not supported in firefox (as of version 11), and probably in other browsers as well.
... mutation events list the following is a list of all mutation events, as defined in dom level 3 events specification: domattrmodified domattributename
changed domcharacterdatamodified domelementname
changed domnodeinserted domnodeinsertedintodocument domnoderemoved domnoderemovedfromdocument domsubtreemodified mutation observers alternatives examples domnoderemovedfromdocument var isdescendant = function (desc, root) { return !!desc && (desc === root || isdescendant(desc.parentnode, root)); }; var onremove = function (element, callback) { var observer = new mutationobserver(function (mutations) { _.foreach(mutations, function (mutation) { _.foreach(mutation.removednodes, function (removed) {...
...}, false); the event object is passed to the listener in a mutationevent (see its definition in the specification) for most events, and mutationnameevent for domattributename
changed and domelementname
changed.
Orientation and motion data explained - Developer guides
if you want to detect
changes in device orientation in order to compensate, you can use the orientation
change event.
... alpha rotation around the z axis -- that is, twisting the device -- causes the alpha rotation angle to
change: the alpha angle is 0° when top of the device is pointed directly toward the earth's north pole, and increases as the device is rotated toward the left.
... beta rotation around the x axis -- that is, tipping the device away from or toward the user -- causes the beta rotation angle to
change: the beta angle is 0° when the device's top and bottom are the same distance from the earth's surface; it increases toward 180° as the device is tipped forward toward the user, and it decreases toward -180° as the device is tipped backward away from the user.
... gamma rotation around the y axis -- that is, tilting the device toward the left or right -- causes the gamma rotation angle to
change: the gamma angle is 0° when the device's left and right sides are the same distance from the surface of the earth, and increases toward 90° as the device is tipped toward the right, and toward -90° as the device is tipped toward the left.
Event developer guide - Developer guides
the device on which the web browser is running can trigger events, for example due to a
change in its position and orientation in the real world, as discussed partially by the page on orientation coordinate systems and the page on the use of 3d transforms.
... that is different, but similar, to the
change in device vertical orientation.
... the window in which the browser is displayed can trigger events; for example,
change size if the user maximizes the window or otherwise
changes it.
...these are special movements that can be made with a mouse or trackpad and can be interpreted to perform specific tasks.mutation eventsmutation events provide a mechanism for a web page or an extension to get notified about
changes made to the dom.
<body>: The Document Body element - HTML: Hypertext Markup Language
onhash
change function to call when the fragment identifier part (starting with the hash ('#') character) of the document's current address has
changed.
... onlanguage
change function to call when the preferred languages
changed.
... onstorage function to call when the storage area has
changed.
... living standard
changed the list of non-conforming features.
<details>: The Details disclosure element - HTML: Hypertext Markup Language
events in addition to the usual events supported by html elements, the <details> element supports the toggle event, which is dispatched to the <details> element whenever its state
changes between open and closed.
... it is sent after the state is
changed, although if the state
changes multiple times before the browser can dispatch the event, the events are coalesced so that only one is sent.
... you can use an event listener for the toggle event to detect when the widget
changes state: details.addeventlistener("toggle", event => { if (details.open) { /* the element was toggled open */ } else { /* the element was toggled closed */ } }); examples a simple disclosure example this example shows a <details> element with no provided summary.
... the <summary> element supports the list-style shorthand property and its longhand properties, such as list-style-type, to
change the disclosure triangle to whatever you choose (usually with list-style-image).
<input type="email"> - HTML: Hypertext Markup Language
value a domstring representing an e-mail address, or empty events
change and input supported common attributes autocomplete, list, maxlength, minlength, multiple, name,pattern, placeholder, readonly, required, size, and type idl attributes list and value methods select() value the <input> element's value attribute contains a domstring which is automatically validated as conforming to e-mail syntax.
...constraint validation is only applied when the value is
changed by the user.
...constraint validation is only applied when the value is
changed by the user.
...its value can, however, still be
changed by javascript code directly setting the htmlinputelement.value property.
<input type="range"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, max, min, and step idl attributes list, value, and valueasnumber methods stepdown() and stepup() validation there is no pattern validation available; however, the following forms of automatic validation are performed: if the value is set to something which can't be converted into a valid float...
...you can
change the step attribute to control the granularity.
...
change the orientation by default, if a browser renders a range input as a slider, it will render it so that the knob slides left and right.
... standards according to the specification, making it vertical requires adding css to
change the dimensions of the control so that it's taller than it is wide, like this: css #volume { height: 150px; width: 50px; } html <input type="range" id="volume" min="0" max="11" value="7" step="1"> result screenshotlive sample unfortunately, no major browsers currently support vertical range controls directly.
<video>: The Video Embed element - HTML: Hypertext Markup Language
duration
change the duration attribute has been updated.
... rate
change the playback rate has
changed.
... volume
change the volume has
changed.
... addtype video/webm .webm your web host may provide an easy interface to mime type configuration
changes for new technologies until a global update naturally occurs.
Global attributes - HTML: Hypertext Markup Language
the event handler attributes: onabort, onautocomplete, onautocompleteerror, onblur, oncancel, oncanplay, oncanplaythrough, on
change, onclick, onclose, oncontextmenu, oncue
change, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, onduration
change, onemptied, onended, onerror, onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup,...
... onmousewheel, onpause, onplay, onplaying, onprogress, onrate
change, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onsort, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolume
change, onwaiting.
... data-* forms a class of attributes, called custom data attributes, that allow proprietary information to be ex
changed between the html and its dom representation that may be used by scripts.
... translate an enumerated attribute that is used to specify whether an element's attribute values and the values of its text node children are to be translated when the page is localized, or whether to leave them un
changed.
HTML documentation index - HTML: Hypertext Markup Language
13 data-* global attributes, html, reference the data-* global attributes form a class of attributes called custom data attributes, that allow proprietary information to be ex
changed between the html and its dom representation by scripts.
... 33 translate experimental, global attributes, html, reference the translate global attribute is an enumerated attribute that is used to specify whether an element's translateable attribute values and its text node children should be translated when the page is localized, or whether to leave them un
changed.
...usually, this is rendered visually by indentation (see notes for how to
change it).
... 111 <hr>: the thematic break (horizontal rule) element element, html, html grouping content, reference the html <hr> element represents a thematic break between paragraph-level elements: for example, a
change of scene in a story, or a shift of topic within a section.
HTTP headers - HTTP
conditional requests using if-modified-since and if-unmodified-since use this value to
change the behavior of the request.
...conditional requests using if-match and if-none-match use this value to
change the behavior of the request.
... signature the signature header field conveys a list of signatures for an ex
change, each one accompanied by information about how to determine the authority of and refresh that signature.
...for example, this header standard allows a client to
change from http 1.1 to http 2.0, assuming the server decides to acknowledge and implement the upgrade header field.
A re-introduction to JavaScript (JS tutorial) - JavaScript
if you want to convert a binary number to an integer, just
change the base: parseint('11', 2); // 3 similarly, you can parse floating point numbers using the built-in parsefloat() function.
... let a; let name = 'simon'; the following is an example of scope with a variable declared with let: // myletvariable is *not* visible out here for (let myletvariable = 0; myletvariable < 5; myletvariable++) { // myletvariable is only visible in here } // myletvariable is *not* visible out here const allows you to declare variables whose values are never intended to
change.
... const pi = 3.14; // variable pi is set pi = 1; // will throw an error because you cannot
change a constant variable.
... note that javascript functions are themselves objects — like everything else in javascript — and you can add or
change properties on them just like we've seen earlier in the objects section.
Grammar and types - JavaScript
if (true) { var x = 5; } console.log(x); // x is 5 this behavior
changes when using the let declaration (introduced in ecmascript 2015).
... const pi = 3.14; a constant cannot
change value through assignment or be re-declared while the script is running.
...(the case of a character does not
change its value.
...ut double and single quoted strings cannot.` // string interpolation var name = 'bob', time = 'today'; `hello ${name}, how are you ${time}?` // construct an http request prefix used to interpret the replacements and construction post`http://foo.org/bar?a=${a}&b=${b} content-type: application/json x-credentials: ${credentials} { "foo": ${foo}, "bar": ${bar}}`(myonreadystate
changehandler); you should use string literals unless you specifically need to use a string object.
getter - JavaScript
note the following when working with the get syntax: it can have an identifier which is either a number or a string; it must have exactly zero parameters (see incompatible es5
change: literal getter and setter functions must now have exactly zero or one arguments for more information); it must not appear in an object literal with another get or with a data entry for the same property ({ get x() { }, get x() { } } and { x: ..., get x() { } } are forbidden).
... const obj = { log: ['example','test'], get latest() { if (this.log.length === 0) return undefined; return this.log[this.log.length - 1]; } } console.log(obj.latest); // "test" note that attempting to assign a value to latest will not
change it.
... if it's used, it will be accessed several times, and there is no need to re-calculate that value will never be
changed or shouldn't be re-calculated.
... this means that you shouldn’t write a lazy getter for a property whose value you expect to
change, because if the getter is lazy then it will not recalculate the value.
Functions - JavaScript
if the function
changes the value of an argument, this
change is not reflected globally or in the calling function.
... however, object references are values, too, and they are special: if the function
changes the referred object's properties, that
change is visible outside the function, as shown in the following example: /* declare the function 'myfunc' */ function myfunc(theobject) { theobject.brand = "toyota"; } /* * declare variable 'mycar'; * create and initialize a new object; * assign reference to it to 'mycar' */ var mycar = { brand: "honda", model: "accord", year: 1998 }; /* logs 'honda' */ console.log(mycar.brand); /* pass object reference to the function */ myfunc(mycar); /* * logs 'toyota' as the value of the 'brand' property * of the object, as
changed to by the function.
...the function name cannot be
changed, while the variable the function is assigned to can be reassigned.
... /* * declare and initialize a variable 'p' (global) * and a function 'myfunc' (to
change the scope) inside which * declare a varible with same name 'p' (current) and * define three functions using three different ways:- * 1.
Array.prototype.slice() - JavaScript
if a referenced object
changes, the
changes are visible to both the new and original arrays.
...
changes to the string, number, or boolean in one array do not affect the other array.
...when the color of myhonda is
changed to purple, both arrays reflect the
change.
...console.log('mycar = ' + json.stringify(mycar)) console.log('newcar = ' + json.stringify(newcar)) console.log('mycar[0].color = ' + mycar[0].color) console.log('newcar[0].color = ' + newcar[0].color) //
change the color of myhonda.
Function.name - JavaScript
such transformations often
change a function's name at build-time.
...if you rely on function.name, like in the example above, make sure your build pipeline doesn't
change function names, or don't assume a function to have a particular name.
...ole.log(object.somemethod.name); // "somemethod" you can define a function with a name in a function expression: let object = { somemethod: function object_somemethod() {} }; console.log(object.somemethod.name); // logs "object_somemethod" try { object_somemethod } catch(e) { console.log(e); } // referenceerror: object_somemethod is not defined the name property is read-only and cannot be
changed by the assigment operator: example below contradicts with what is said at the beginning of this section and doesn't work as described.
... let object = { // anonymous somemethod: function() {} }; object.somemethod.name = 'othermethod'; console.log(object.somemethod.name); // somemethod to
change it, use object.defineproperty().
String.prototype.charAt() - JavaScript
op of each loop, passing in the whole string and // the current iteration and returning a variable to represent the // individual character console.log(chr); } function getwholechar(str, i) { var code = str.charcodeat(i); if (number.isnan(code)) { return ''; // position not found } if (code < 0xd800 || code > 0xdfff) { return str.charat(i); } // high surrogate (could
change last hex to 0xdb7f to treat high private // surrogates as single characters) if (0xd800 <= code && code <= 0xdbff) { if (str.length <= (i + 1)) { throw 'high surrogate without following low surrogate'; } var next = str.charcodeat(i + 1); if (0xdc00 > next || next > 0xdfff) { throw 'high surrogate without following low surrogate'; } return str.charat...
...(i) + str.charat(i + 1); } // low surrogate (0xdc00 <= code && code <= 0xdfff) if (i === 0) { throw 'low surrogate without preceding high surrogate'; } var prev = str.charcodeat(i - 1); // (could
change last hex to 0xdb7f to treat high private // surrogates as single characters) if (0xd800 > prev || prev > 0xdbff) { throw 'low surrogate without preceding high surrogate'; } // we can pass over low surrogates now as the second component // in a pair which we have already processed return false; } in an ecmascript 2016 environment which allows destructured assignment, the following is a more succinct and somewhat more flexible alternative in that it does increment for an incrementing variable automatically (if the character warrants it in being a surrogate pair).
... let str = 'a\ud87e\udc04z' // we could also use a non-bmp character directly for (let i = 0, chr; i < str.length; i++) { [chr, i] = getwholecharandi(str, i) // adapt this line at the top of each loop, passing in the whole string and // the current iteration and returning an array with the individual character // and 'i' value (only
changed if a surrogate pair) console.log(chr) } function getwholecharandi(str, i) { let code = str.charcodeat(i) if (number.isnan(code)) { return '' // position not found } if (code < 0xd800 || code > 0xdfff) { return [str.charat(i), i] // normal character, keeping 'i' the same } // high surrogate (could
change last hex to 0xdb7f to treat high private // surrogates as single characters) if (0xd800 <= code && code <= 0xdbff) ...
... } let next = str.charcodeat(i + 1) if (0xdc00 > next || next > 0xdfff) { throw 'high surrogate without following low surrogate' } return [str.charat(i) + str.charat(i + 1), i + 1] } // low surrogate (0xdc00 <= code && code <= 0xdfff) if (i === 0) { throw 'low surrogate without preceding high surrogate' } let prev = str.charcodeat(i - 1) // (could
change last hex to 0xdb7f to treat high private surrogates // as single characters) if (0xd800 > prev || prev > 0xdbff) { throw 'low surrogate without preceding high surrogate' } // return the next character instead (and increment) return [str.charat(i + 1), i + 1] } fixing charat() to support non-basic-multilingual-plane (bmp) characters while the previous example may be more useful f...
Transitioning to strict mode - JavaScript
it is possible to
change each file individually and even to transition code to strict mode down to the function granularity.
...} f(42); this used to
change a value on the global object which is rarely the expected effect.
...in strict mode, the arguments object is created and initialized with the same values than the named arguments, but
changes to either the arguments object or the named arguments aren't reflected in one another.
...
change to eval in strict mode code, eval doesn't create a new variable in the scope from which it was called.
<mstyle> - MathML
the mathml <mstyle> element is used
change the style of its children.
... scriptminsize specifies a minimum font size allowed due to
changes in scriptlevel.
... scriptsizemultiplier specifies the multiplier to be used to adjust font size due to
changes in scriptlevel.
... examples using displaystyle and mathcolor to effect style
changes in the layout of the whole sum.
Image file type and format guide - Web media technologies
abbreviation file format mime type file extension(s) browser compatibility apng animated portable network graphics image/apng .apng chrome, edge, firefox, opera, safari bmp bitmap file image/bmp .bmp chrome, edge, firefox, internet explorer, opera, safari gif graphics inter
change format image/gif .gif chrome, edge, firefox, internet explorer, opera, safari ico microsoft icon image/x-icon .ico, .cur chrome, edge, firefox, internet explorer, opera, safari jpeg joint photographic expert group image image/jpeg .jpg, .jpeg, .jfif, .pjpeg, .pjp chrome, edge, firefox, internet explorer, opera, safari png portable net...
... gif (graphics inter
change format) in 1987, the compuserve online service provider introduced the gif (graphics inter
change format) image file format to provide a compressed graphics format that all members of their service would be able to use.
... gif supports simple animation, in which following an initial full-size frame, a series of images reflecting the parts of the image that
change with each frame are provided.
...the jfif (jpeg file inter
change format) specification describes the format of the files we think of as "jpeg" images.
Web video codec guide - Web media technologies
each frame of video is presented by applying a set of
changes to the currently-visible frame.
... in the example image above, note how the sky has bands of different shades of blue, instead of being a consistent gradient as the sky color
changes toward the horizon.
...block motion compensation handles localized
changes, looking for smaller sections of the image that can be encoded using motion compensation.
...however, this is impractical if the frame rate needs to
change frequently.
Performance fundamentals - Web Performance
for example, when a user taps the screen, they expect the pixels to
change in a certain way.
... for this interaction, the responsiveness metric is the time elapsed between the tap and the pixel
change.
... framerate framerate is the rate at which the system
changes pixels displayed to the user.
... when applications are sent to the background, a visibility
change event is fired on their documents.
alignment-baseline - SVG: Scalable Vector Graphics
for example, this allows alphabetic baselines in roman text to stay aligned across font size
changes.
... svg 2 introduces some
changes to the definition of this property.
... working draft no
change scalable vector graphics (svg) 2the definition of 'alignment-baseline' in that specification.
... candidate recommendation refers to the definition in css inline layout and notes the
changes to auto, before-edge, after-edge, text-before-edge, and text-after-edge scalable vector graphics (svg) 1.1 (second edition)the definition of 'alignment-baseline' in that specification.
Gradients in SVG - SVG: Scalable Vector Graphics
linear gradient linear gradients
change along a straight line.
...for instance, this one tells the gradient to start at the color red,
change to transparent-black in the middle, and end at the color blue.
..." stop-color="blue"/> </radialgradient> </defs> <rect x="10" y="10" rx="15" ry="15" width="100" height="100" fill="url(#radialgradient1)"/> <rect x="10" y="120" rx="15" ry="15" width="100" height="100" fill="url(#radialgradient2)"/> </svg> screenshotlive sample the stops used here are the same as before, but now the object will be red in the center, and in all directions gradually
change to blue at the edge.
...setting these three attributes will allow you to move the gradient around and
change its size, as shown in the second rect above.
Patterns - SVG: Scalable Vector Graphics
the caveat here is that if the object
changes size, the pattern itself will scale to fit it, but the objects inside will not.
...="0" width=".25" height=".25" fill="skyblue"/> <rect x="0" y="0" width=".125" height=".125" fill="url(#gradient2)"/> <circle cx=".125" cy=".125" r=".1" fill="url(#gradient1)" fill-opacity="0.5"/> </pattern> now, because the pattern content is in the same unit system as the pattern, we don't have to offset the box so that the pattern starts in the correct place, and if the object size was
changed to a larger one, the pattern would automatically scale so that it had the same number of objects and repeats inside it.
... this contrasts with the "userspaceonuse" system, where if the object
changes the size, the pattern would stay the same and just repeat itself more times to fill the box.
...to create something like this, both the pattern and its contents must be drawn in the current userspace, so they don't
change shape if the object does: <pattern id="pattern" x="10" y="10" width="50" height="50" patternunits="userspaceonuse"> <rect x="0" y="0" width="50" height="50" fill="skyblue"/> <rect x="0" y="0" width="25" height="25" fill="url(#gradient2)"/> <circle cx="25" cy="25" r="20" fill="url(#gradient1)" fill-opacity="0.5"/> </pattern> of course, this means the pattern won't scale if you
change...
/loader - Archive of obsolete content
provide unload hooks that may be used to undo
changes made by anything loaded into it.
...it is intentionally made immutable and all its properties are just an implementation detail that no one should depend on, they may
change at any point without any further notice.
... if (subject.wrappedjsobject === unloadsubject) console.log("i am about to unload, reason is " + reason); }}; observerservice.addobserver(observer, 'sdk:loader:destroy', false); unload the loader module exposes an unload() function that can be used to unload specific loader instance and undo
changes made by modules loaded into it.
content/loader - Archive of obsolete content
loader adds code to initialize and validate a set of properties for managing content scripts: contenturl contentscript contentscriptfile contentscriptwhen contentscriptoptions allow when certain of these properties are set, the loader emits a property
change event, enabling its users to take the appropriate action.
... example: the following code creates a wrapper on a hidden frame that reloads a web page in the frame every time the contenturl property is
changed: var hiddenframes = require("sdk/frame/hidden-frame"); var { loader } = require("sdk/content/content"); var pageloader = loader.compose({ constructor: function pageloader(options) { options = options || {}; if (options.contenturl) this.contenturl = options.contenturl; this.on('property
change', this._on
change = this._on
change.bind(this)); let self = this; hiddenframes...
....add(hiddenframes.hiddenframe({ onready: function onready() { let frame = self._frame = this.element; self._emit('property
change', { contenturl: self.contenturl }); } })); }, _on
change: function _on
change(e) { if ('contenturl' in e) this._frame.setattribute('src', this._contenturl); } }); loader properties contentscriptfile the local file urls of content scripts to load.
Adding a Button to the Toolbar - Archive of obsolete content
the id attribute is mandatory, and is used to remember the position of the button, so you should not
change it in subsequent versions of the add-on.
... you can
change the icon at any time by setting the button's icon property.
... you can
change the icon, and the other state attributes, either globally, for a specific window, or for a specific tab.
Getting started (cfx) - Archive of obsolete content
for example, we could
change the page that gets loaded: var buttons = require('sdk/ui/button/action'); var tabs = require("sdk/tabs"); var button = buttons.actionbutton({ id: "mozilla-link", label: "visit mozilla", icon: { "16": "./icon-16.png", "32": "./icon-32.png", "64": "./icon-64.png" }, onclick: handleclick }); function handleclick(state) { tabs.open("https://developer.mozilla.org/"); } at t...
... developing without cfx run because cfx run restarts the browser each time you invoke it, it can be a little cumbersome if you are making frequent
changes to an add-on.
...that way you can test new
changes without needing to restart the browser: make a
change to your add-on run cfx xpi post the add-on to the port specified you could even automate this workflow with a simple script.
Using XPCOM without chrome - Archive of obsolete content
examples bookmarks observer normally, a bookmark observer would require chrome components and xpcomutils as described in the following links: (observing
changes to bookmarks and tags) , (creating event targets).
... below is an example, where we extend the xpcom module's unknown class with an nsinavbookmarkobserverinterface and one of its optional interface methods (onitem
changed).
... // this removes the need to import ci and the xpcomutils const { class } = require("sdk/core/heritage"); const { unknown } = require('sdk/platform/xpcom'); const { placesutils } = require("resource://gre/modules/placesutils.jsm"); let bmlistener = class({ extends: unknown, interfaces: [ "nsinavbookmarkobserver" ], //this event most often handles all events onitem
changed: function(bid, prop, an, nv, lm, type, parentid, aguid, aparentguid) { console.log("onitem
changed", "bid: "+bid, "property: "+prop, "isanno: "+an, "new value: "+nv, "lastmod: "+lm, "type: "+type, "parentid:"+parentid, "aguid:"+aguid);0 // code to handle the event here } }); //we just have a class, but need an object.
Customizing the download progress bar - Archive of obsolete content
changing the progress bar for specific downloads this is all you need to
change the progress bar appearance for all downloads.
... if you want to
change it for certain specific downloads only, things get a bit trickier.
...thing like this: var mydownloadmanager = { defaultcreatedownloaditem : null, init : function fdm_init() { mydownloadmanager.defaultcreatedownloaditem = window.createdownloaditem; window.createdownloaditem = function(aattrs) { var dl = mydownloadmanager.defaultcreatedownloaditem(aattrs); if (dl) { if (...whatever condition you use to decide whether to
change this download...) { dl.setattribute("myspecialdownload", "true"); } } return dl; } } }; window.addeventlistener("load", function(e) { mydownloadmanager.init(); }, false); in your css file,
change richdownloaditem (both occurrences) to richdownloaditem[myspecialdownload="true"].
Custom about: URLs - Archive of obsolete content
in bug 1254752 things
changed for firefox 48 and up.
... services.io.newchannel was deprecated, and the signature of the newchannel method
changed.
... this
change is reflected in the code below.
How to convert an overlay extension to restartless - Archive of obsolete content
step 6: no more xul overlays ok, now we're getting into some more drastic
changes.
...interfaces.nsidomwindow); function onwindowload() { window.removeeventlistener("load",onwindowload); if (window.document.documentelement.getattribute("windowtype") == "navigator:browser") loadintowindow(window); } window.addeventlistener("load",onwindowload); }, onclosewindow: function(xulwindow) { }, onwindowtitle
change: function(xulwindow, newtitle) { } }; as mentioned above, components.utils.unload() will not work properly if the jsm file it is unloading is in a jar.
...string
changes seem to be fine, however the addition or removal of strings can sometimes produce this error.
Listening to events in Firefox extensions - Archive of obsolete content
types of events there are multiple types of events that application and extension authors can use to receive notifications from <xul:browser> and <xul:tabbrowser> elements to hear about
changes relating to loads of the content contained within them.
... domtitle
changed dispatched when the title of the page
changes.
...ons: update the progress bar and status messages as pages load turn on and off the throbber as pages load set the site icon when available update the address bar as the user navigates hide notification bars when appropriate as the user navigates apply the site zoom preferences to newly loading pages update the bookmarking star button ui update the identity display as the site's security
changes tabsprogresslistener this object is a tabs progress listener and receives events for all browsers in the window.
Appendix C: Avoiding using eval in Add-ons - Archive of obsolete content
in real life such code is often far more complex) the code might break in the future, as certain assumptions might not longer be true, for example the function signature may
change (auri from above becomes aurl) or the function is replaced by a short-hand/arrow function: function addtab(auri) tabbrowser.addtab(auri); var addtab = (auri) => tabbrowser.addtab(auri); same as with "passing functions/code as strings" above, patching a function to with fragments of externally retrieved data will create security vulnerabilities.
... you don't have to care about parameter naming (or
changes in naming in future application versions) or short-hand/arrow functions.
...of course, you'll need to update your add-on if the application
changes.
Local Storage - Archive of obsolete content
adding or removing columns, or making other
changes to your db structure from one version of your extension to the next will probably cause breakage of user data in older versions.
... you'll need to carefully add migration code that moves the data from the old db format to the new, and this becomes increasingly complex as you add new versions and new structure
changes.
...they allow you to automatically generate xul content using information from a datasource, and automatically update the content once the datasource
changes.
Mozilla Documentation Roadmap - Archive of obsolete content
you'll be able to navigate the full source tree, inspect the
change history for all files, and link to specific code lines.
... mozilla blogs several mozilla community members maintain blogs that are updated frequently, often including information on api
changes, bug fixes, useful tools and future release plans.
...pretty much every code
change done in firefox and mozilla projects is documented in this huge tracking database.
Tabbed browser - Archive of obsolete content
if such a tab exists, we
change its url/uri and focus/select it.
... notification when a tab's attributes
change requires gecko 2.0(firefox 4 / thunderbird 3.3 / seamonkey 2.1) starting in gecko 2.0, you can detect when a tab's attributes
change by listening for the tabattrmodified event.
... the attributes to which
changes result in this event being sent are: label crop busy image selected function exampletabattrmodified(event) { var tab = event.target; // now you 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 / seamonkey 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.
DOMSubtreeModified - Archive of obsolete content
example the following code will display the time of last dom
change on the title bar of the page.
... this event has been deprecated in favor of the mutation observer api this event can cause infinite loops if you decide to
change the dom inside the event handler, hence it has been disabled in a number of browsers (see domattrmodified and domsubtreemodified events are no longer fired when style attribute is
changed via cssom for example).
... document.body.addeventlistener('domsubtreemodified', function () { document.title = 'dom
changed at ' + new date(); }, false); ...
Monitoring WiFi access points - Archive of obsolete content
<html> <head> <title>wifi monitor example</title> <script> var count = 0; function test() { } test.prototype = { on
change: function (accesspoints) { netscape.security.privilegemanager.enableprivilege('universalxpconnect'); var d = document.getelementbyid("d"); d.innerhtml = ""; for (var i=0; i<accesspoints.length; i++) { var a = accesspoints[i]; d.innerhtml += "<p>" + a.mac + " " + a.ssid + " " + a.signal + "</p>"; } var c = document.getelementbyid("c"); c.innerhtml = "<p>...
...); var wifi_service = components.classes["@mozilla.org/wifi/monitor;1"].getservice(components.interfaces.nsiwifimonitor); wifi_service.startwatching(listener); </script> </head> <body> <div id="d"><p></p></div> <div id="c"><p></p></div> </body> </html> the nsiwifilistener object the first thing the code above does is to prototype the listener object that will be receiving notifications of
changes to the access point list.
...the on
change() method (lines 13 through 27) begins by enabling universalxpconnect privileges, then clearing out the div (d) that will receive the updated list of access points.
Autodial for Windows NT - Archive of obsolete content
starting with windows nt, and in all nt-based versions (windows nt, windows 2000, and windows xp, including xp home) microsoft has
changed the behavior of autodial.
...in fact, it's not mozilla that is broken, it's that microsoft has
changed the way things work from windows 98 to windows xp.
...many windows xp users, especially windows xp home users, don't understand that microsoft has
changed how autodial works.
Creating a Release Tag - Archive of obsolete content
the mini-branch is created so you can check in the build scripts with the necessary
changes without touching the original branch.
... cvs co -r netscape_6_2_release mozilla/client.mk cd mozilla gmake -f client.mk checkout create a mini branch for the pull scripts on all three platforms so we can
change them without changing anything on the original branch.
... rm mozilla/client.mk cvs co -r mozilla_0_9_4_1_release_mini_branch mozilla/client.mk in each of the build scripts find the variables defining the branch and
change it from the branch you originally pulled from to the new tag you are creating.
Creating a Skin for Mozilla - Archive of obsolete content
a skin does not totally
change the interface, it just defines how it looks.
... you cannot
change what happens when the user right clicks on an image, but you can
change the look of the right click menu (make it blue with pink polka dots, for example).
... if you want to
change the functionality of mozilla, you'll have to look into modifying the chrome.
Drag and Drop - Archive of obsolete content
this might be used to
change the appearance of the element to indicate to the user that the object can be dropped on it.
...the action can be
changed during the drag depending on what is being dragged over.
...this should be
changed in the ondragover and ondragenter event handlers.
generateCRMFRequest() - Archive of obsolete content
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...only key ex
change keys will be escrowed.
...acceptable values are (the mentioned values for keyusage pertain to the keyusage value of the certificate extension that will ultimately be in the issued certificate): "rsa-ex" - generate an rsa key for key ex
change only (this will have eyencipherment set for keyusage.) "rsa-dual-use" - generate a single rsa key for both signing and encryption.
JavaScript crypto - Archive of obsolete content
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...<script> function onsmartcard
change() { window.location.reload(); } function register() { window.crypto.enablesmartcardevents = true; document.addeventlistener("smartcard-insert", onsmartcard
change, false); document.addeventlistener("smartcard-remove", onsmartcard
change, false); } function deregister() { document.removeeventlistener("smartcard-insert", onsmartcard
change, false); document.removeeventlistener("smartcard-r...
...emove", onsmartcard
change, false); } document.body.onload = register; document.body.onunload = deregister; </script> with the above example, your web site will automatically reload anytime a smartcard is inserted or removed.
jspage - Archive of obsolete content
.id(d);var c=d.retrieve("events");if(!c){return this;}if(!a){for(var b in c){this.cloneevents(d,b); }}else{if(c[a]){c[a].keys.each(function(e){this.addevent(a,e);},this);}}return this;}});element.nativeevents={click:2,dblclick:2,mouseup:2,mousedown:2,contextmenu:2,mousewheel:2,dommousescroll:2,mouseover:2,mouseout:2,mousemove:2,selectstart:2,selectend:2,keydown:2,keypress:2,keyup:2,focus:2,blur:2,
change:2,reset:2,select:2,submit:2,load:1,unload:1,beforeunload:2,resize:1,move:1,domcontentloaded:1,readystate
change:1,error:1,abort:1,scroll:1}; (function(){var a=function(b){var c=b.relatedtarget;if(c==undefined){return true;}if(c===false){return false;}return($type(this)!="document"&&c!=this&&c.prefix!="xul"&&!this.haschild(c)); };element.events=new hash({mouseenter:{base:"mouseover",condition:a},mo...
...text/html, application/xml, text/xml, */*"},async:true,format:false,method:"post",link:"ignore",issuccess:null,emulation:true,urlencoded:true,encoding:"utf-8",evalscripts:false,evalresponse:false,nocache:false},initialize:function(a){this.xhr=new browser.request(); this.setoptions(a);this.options.issuccess=this.options.issuccess||this.issuccess;this.headers=new hash(this.options.headers);},onstate
change:function(){if(this.xhr.readystate!=4||!this.running){return; }this.running=false;this.status=0;$try(function(){this.status=this.xhr.status;}.bind(this));this.xhr.onreadystate
change=$empty;if(this.options.issuccess.call(this,this.status)){this.response={text:this.xhr.responsetext,xml:this.xhr.responsexml}; this.success(this.response.text,this.response.xml);}else{this.response={text:null,xml:null};...
...ng)?"; charset="+this.options.encoding:""; this.headers.set("content-type","application/x-www-form-urlencoded"+c);}if(this.options.nocache){var f="nocache="+new date().gettime();g=(g)?f+"&"+g:f; }var e=b.lastindexof("/");if(e>-1&&(e=b.indexof("#"))>-1){b=b.substr(0,e);}if(g&&a=="get"){b=b+(b.contains("?")?"&":"?")+g;g=null;}this.xhr.open(a.touppercase(),b,this.options.async); this.xhr.onreadystate
change=this.onstate
change.bind(this);this.headers.each(function(m,l){try{this.xhr.setrequestheader(l,m);}catch(n){this.fireevent("exception",[l,m]); }},this);this.fireevent("request");this.xhr.send(g);if(!this.options.async){this.onstate
change();}return this;},cancel:function(){if(!this.running){return this; }this.running=false;this.xhr.abort();this.xhr.onreadystate
change=$empty;this.xhr=new browser.req...
Space Manager High Level Design - Archive of obsolete content
additionally, there is a need to manage impacts to lines caused by
changes to floated elements.
...when a float is incrementally reflowed, the space manager is notified if the float's region has
changed.
...thus,
changes to floats on other lines may cause impact to otherwise clean lines, and the space manager facilitates the detection of this.
Supporting private browsing mode - Archive of obsolete content
private browsing notifications there are notifications available that allow you to easily watch for
changes to the status of the private browsing mode, including detecting when it turns on and off.
...a private browser listener helper object this helper object registers listeners for private browsing mode
changes.
... this lets you passively monitor for
changes in private browsing status.
Table Layout Regression Tests - Archive of obsolete content
subject overview
changes in layout, parser and content code can have unintended side effects, also known as regressions.
... execute the baseline test shutdown the layoutdebugger execute mozilla -layoutdebug - p foo >selftest.txt execute the verify test make a note which tests have failed grep 'failed' selftest.txt (these are false positives, quite frequently they indicate reflow problems, pages showing differently when loaded from cache) make your
changes to the source, recompile.
...
change the source if necessary until the regression tests indicate that your patch does not fork the block and table layout submit your patch and lists the remaining differences in the bug be prepared to cycle.
Tamarin Build System Documentation - Archive of obsolete content
checkins (hg push) to http://hg.mozilla.org/tamarin-redux and sandbox requests will trigger a buildbot build when all build slaves are idle the next build begins before the build begins buildbot waits for 2 minutes of no checkin activity the build system prioritizes tamarin-redux checkins over sandbox builds when several tamarin-redux checkins occur the newest
change is built including all checkins since the last build each sandbox build occurs in the order they were submitted, the submitter may cancel a build.
... the description appears in the buildbot status page, please describe what you are trying to build and test after submitting a sandbox build view the build status page or the queue (if buildbot is busy) how do i view and
change the queue?
...; cd scripts edit environment.sh,
change the basedir and buildsdir settings (around line 51) basedir=~/hg/tamarin-redux (path to my test repository) (next line) buildsdir=~/hg/builds (a directory to store downloaded builds) always set current working directory to the scripts directory when running a script run a script (e.g.) ../all/run-acceptance-release.sh <optional hg revision number like 1902> how do i navigate the build sta...
Tamarin - Archive of obsolete content
tamarin acceptance testing instructions on how to validate
changes to the tamarin source code.
... tamarin strings documentation the implementation of tamarin strings has
changed.
... this page is a how-to about the
changes, and what can be done to adapt source code to the
changes.
URIs and URLs - Archive of obsolete content
thus, a resource can remain constant even when its content---the entities to which it currently corresponds---
changes over time, provided that the conceptual mapping is not
changed in the process.
...another quote from rfc 2396: a uri is always in an "escaped" form, since escaping or unescaping a completed uri might
change its semantics.
... normally, the only time escape encodings can safely be made is when the uri is being created from its component parts; each component may have its own set of characters that are reserved, so only the mechanism responsible for generating or interpreting that component can determine whether or not escaping a character will
change its semantics.
setRootKey - Archive of obsolete content
setrootkey
changes the root key being accessed.
...description the setrootkey
changes the root key.
...if you want to access keys in another portion, you must use this method to
change the root key.
buttons - Archive of obsolete content
the following values can be used in the list: accept: the ok button, which will accept the
changes when pressed.
...if it is set to true any
changes to settings are supposed to be applied immediately.
... the default setting of browser.preferences.instantapply currently is true on linux and mac os and false on windows (which however might or might not
change soon, see bug 738797 and bug 1037225).
sizemode - Archive of obsolete content
setting this attribute does not
change the window state.
... use window.maximize(), window.restore(), or window.minimize() to
change the window state.
...listen to the sizemode
change event dispatched to the dom window to get notified when the window state
changes.
Template and Tree Listeners - Archive of obsolete content
nsirdfobserver - for rdf datasources, used to listen to
changes in the underlying rdf datasource.
...the template builder might also force a rebuild when the underlying data
change notifications require it.
...listening for tree
changes the second type of listener is used to handle particular actions related to trees.
Manipulating Lists - Archive of obsolete content
changing the selection all of the selection related properties described above may also be assigned a new value to
change the selection.
... in the next example, the selectedindex property of a radiogroup element is
changed based on the value entered in a textbox.
...be careful when iterating over the selected items; if you modify the items in the list while iterating, the list will
change and the selection properties may return different values.
Modifying a XUL Interface - Archive of obsolete content
label and value properties examples here is a simple example which
changes the label on a button: example 3 : source view <button label="hello" oncommand="this.label = 'goodbye';"/> when the button is pressed, the label is
changed.
... note: if you're creating the checkbox dynamically and it's not yet added to the dom, you must use setattribute("checked", "false") instead, because the xbl isn't initiated yet.) example 6 : source view <button label="
change" oncommand="this.nextsibling.checked = !this.nextsibling.checked;"/> <checkbox label="check for messages"/> radio buttons may be selected as well using properties, however since only one in a group may be selected at a time, the others must all be unchecked when one is checked.
...the selectedindex property may be used to retrieve the index of the selected radio button in the group and well as
change it.
More Button Features - Archive of obsolete content
you can
change this position by using two other attributes.
...this is designed to allow the 'skin' (in this case, the appearance of the image) to be
changed without changing the xul file.
...note that selecting one of these menu items does not
change the label on the button, unlike a menulist.
More Tree Features - Archive of obsolete content
the second
change is that you must put the primary attribute on the first column.
...a user will also likely want to
change the column widths.
...a small notch will appear in between each column header which the user may drag to
change the width of a column.
Tabboxes - Archive of obsolete content
the area taken up by the tab area does not
change when the user switches to a new tab page.
... position of the tabs finally, you can
change the position of the tabs so that they appear on any side of the tab pages.
... for example, to place the tabs along the left side,
change the orientation of the tabs element to vertical to make the tabs appear vertically stacked.
Tree Selection - Archive of obsolete content
the user may also
change the selection by using the cursor keys.
...alert(tree.view.selection.isselected(3)); modifying the tree selection the selection object has a number of functions which may be used to
change the selection.
...for example, the following code will select the row at index 5: tree.view.selection.select(5); note that you should not just
change the tree's currentindex property to
change the selection.
Trees and Templates - Archive of obsolete content
the user may
change the sort column and direction by clicking the column headers.
...the user can
change the sort direction by clicking the column header.
...the following example
changes the columns in the earlier example to incorporate the extra features: <treecols> <treecol id="name" label="name" flex="1" primary="true" sortactive="true" sortdirection="ascending" sort="rdf:http://home.netscape.com/nc-rdf#name"/> <splitter/> <treecol id="date" label="date" flex="1" sort="rdf:http://home.netscape.com/web-rdf#lastmodifieddate"/> </treecols...
XUL accessibility guidelines - Archive of obsolete content
providing the additional information is easy, but is often forgotten because it yields little or no visual
change.
...respect these defaults unless you have a specific and unavoidable reason to
change them.
... if you must
change them, use css to size elements relative to the default sizes (for example, use % or em rather than specific point or pixel sizes).
broadcaster - Archive of obsolete content
« xul reference home [ examples | attributes | properties | methods | related ] a broadcaster is used when you want multiple elements to share one or more attribute values, or when you want elements to respond to a state
change.
...if the label
changes, the labels of the observers will update automatically.
... an onbroadcast event will be sent to the observers when a
change is made.
browser - Archive of obsolete content
other urls will need to use the document and history objects to
change the displayed document.
...to
change the url, use the loaduri method.
... load_flags_charset_
change: this flag is used if the document needs to be reloaded because the character set
changed.
menulist - Archive of obsolete content
the command event may be used to execute code when the menulist selection
changes.
... readonly type: boolean if set to true, then the user cannot
change the value of the element.
...the listbox, richlistbox, radiogroup, etc., not the list item that was selected) when it is
changed either via this property, the selectedindex property, or
changed by the user.
scale - Archive of obsolete content
a scale will fire a
change event whenever the scale's value is modified.
... increment type: integer the amount by which the curpos (for scroll bars) or value (for number boxes and scale) attribute
changes when the arrows are clicked(or scales are dragged).
... 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.
tabbrowser - Archive of obsolete content
to
change the url, use the loaduri method.
...the returned index is dependent on the tabs in the tabbrowser and is invalidated when the tab ordering
changes.
... load_flags_charset_
change: this flag is used if the document needs to be reloaded because the character set
changed.
Deploying XULRunner - Archive of obsolete content
other executables and libraries the core
changes to xul and gecko that require this new file layout were implemented in gecko 34, except that the xulrunner application was not updated to know about the
change, so it will report an error: "unable to load xpcom." xulrunner was fixed in gecko 39.
... see this blog post for additional background about this
change.
... to make it all work,
change the permissions of your bundle by running chmod -r 755 yourapp.app.
calICalendarViewController - Archive of obsolete content
last
changed in gecko ?
... modifyoccurrence void modifyoccurrence (in caliitemoccurrence aoccurrence, in calidatetime anewstarttime, in calidatetime anewendtime); the modifyoccurrence method is used to
change the attributes of an already existing caliitem.
...just the time
changed), // then do so; otherwise pop up the dialog if (anewstarttime && anewendtime && !anewstarttime.isdate && !anewendtime.isdate) { var instance = aoccurrence.clone(); instance.startdate = anewstarttime; instance.enddate = anewendtime; instance.calendar.modifyitem(instance, aoccurrence, null); } else { modifyeventwi...
2006-10-13 - Archive of obsolete content
summary: mozilla.dev.apps.firefox - october 6, 2006 - october 13, 2006 announcements firefox vista compatible and versioning heads up robert strong describes the compatibility between windows vista and firefox, also about the versioning
change.
...(no responses as of yet) selected tab looks too close to unselected tab discussion about how to
change the colour of a selected tab and an unselected tab.
...(user feels print belongs on the context menu along with back, reload, etc.) questions about programming for firefox a student questions how to create an extension that
changes fonts, and how to capture website content before it is displayed.
2006-11-03 - Archive of obsolete content
announcements a
change in tp2's numbers on october 31st adam guthrie announced that: rob helmer will be adding his patch to fix tp2's reporting of average pre-load times.
... more tbox
changes on the way, most hitting on friday on october 30th j.
... paul reed announced that: that he is taking down old tinderboxes and making a few
changes to existing tinderboxes.
2006-09-29 - Archive of obsolete content
discussion on how to determine whether there is pending layout
changes or reflows when using a popup.
... it was concluded that a frame model
change is utilized within a popup, not a layout
change.
...that won't help with pending style
changes, but it'll work to detect cases when the popup or something in it needs to be reflown.
Threats - Archive of obsolete content
information in transit is
changed or replaced and then sent on to the recipient.
... for example, someone could alter an order for goods or
change a person's resume.
...business needs have
changed the way websites store sensistive data, with more usage of cloud services.
Tamarin Tracing Build Documentation - Archive of obsolete content
tamarin buildbot tryserver the tryserver/sandbox is setup to allow users to push any code
changes that they would like to have tested in the automated build/test process prior to actually pushing the
changes.
...push any
changes that you want to test into this repository.
...currently this only accepts the
change number and not the hash.
Creating a Skin for Firefox - Archive of obsolete content
a skin does not totally
change the interface; instead, it just defines how the interface looks.
... you can't
change what happens when the user right clicks on an image, but you can
change the look of the right click menu (make it blue with pink polka dots, for example).
... if you want to
change the functionality of firefox, you'll have to look into modifying the chrome, which is beyond the scope of this document.
Accessing XML children - Archive of obsolete content
operator allows you to
change its value.
...var element = <foo> <bar baz="1">red</bar> <bar baz="2">blue</bar> </foo>; var list = element.bar; list.length(); // returns 2 list[0]; // the first bar element list[1]; // the second bar element notice further that this list is "live" in the sense that
changes made to the list are reflected back in the element that the list originally came from.
... list[1] = "green";
changes the xml document to read <foo> <bar baz="1">red</bar> <bar baz="2">green</bar> </foo> special types of nodes xml objects have methods for accessing xml lists of certain common types of nodes as well.
Array.unobserve() - Archive of obsolete content
callback the reference to the observer to stop calling each time
changes are made on the array arr.
... examples unobserving an array var arr = [1, 2, 3]; var observer = function(
changes) { console.log(
changes); } array.observe(arr, observer); arr.push(4); // [{type: "splice", object: <arr>, index: 3, removed:[], addedcount: 1}] array.unobserve(arr, observer); arr.pop(); // the callback wasn't called using an anonymous function var persons = ['khalid', 'ahmed', 'mohammed']; array.observe(persons, function (
changes) { console.log(
changes); }); persons.shift(); // [...
...{type: "splice", object: <arr>, index: 0, removed: [ "khalid" ], addedcount: 0 }] array.unobserve(persons, function (
changes) { console.log(
changes); }); persons.push('abdullah'); // [{type: "splice", object: <arr>, index: 2, removed: [], addedcount: 1 }] // the callback will always be called ...
New in JavaScript 1.8.1 - Archive of obsolete content
the following is a
changelog for javascript 1.8.1.
... javascript 1.8.1 is a modest update syntactically to javascript; the main
change in this release is the addition of the tracemonkey just-in-time compiler, which improves performance.
... new features in javascript 1.8.1 object.getprototypeof() support for native json string.prototype.trim() string.prototype.trimleft() string.prototype.trimright()
changed functionality in javascript 1.8.1 implicit setting of properties in object and array initializers no longer execute setters in javascript.
Object.unobserve() - Archive of obsolete content
callback the reference to the observer to stop calling each time
changes are made on the object obj.
... examples unobserving an object var obj = { foo: 0, bar: 1 }; var observer = function(
changes) { console.log(
changes); } object.observe(obj, observer); obj.newproperty = 2; // [{name: 'newproperty', object: <obj>, type: 'add'}] object.unobserve(obj, observer); obj.foo = 1; // the callback wasn't called using an anonymous function var person = { name: 'ahmed', age: 25 }; object.observe(person, function(
changes) { console.log(
changes); }); person.age = 40; // [{name: 'ag...
...e', object: <obj>, oldvalue: 25, type: 'update'}] object.unobserve(person, function(
changes) { console.log(
changes); }); person.age = 63; // [{name: 'age', object: <obj>, oldvalue: 40, type: 'update'}] // the callback will always be called specifications not part of any standard.
Object.prototype.watch() - Archive of obsolete content
syntax obj.watch(prop, handler) parameters prop the name of a property of the object on which you wish to monitor
changes.
... handler a function to call when the specified property's value
changes.
... examples using watch and unwatch const o = { p: 1 }; o.watch('p', (id, oldval, newval) => { console.log('o.' + id + '
changed from ' + oldval + ' to ' + newval); return newval; }); o.p = 2; o.p = 3; delete o.p; o.p = 4; o.unwatch('p'); o.p = 5; this script displays the following: o.p
changed from 1 to 2 o.p
changed from 2 to 3 o.p
changed from undefined to 4 using watch() to validate an object's properties you can use watch to test any assignment to an object's properties.
Mozilla XForms User Interface - Archive of obsolete content
the first is that the
changes required for such controls could not be safely made to firefox 1.5 or firefox 2.0.
...input a key xforms element to show and
change the instance data to which it is bound.
...textarea serves to show/
change multiline text (see the spec).
Obsolete: XPCOM-based scripting for NPAPI plugins - Archive of obsolete content
in order to make it still possible to script plugins, some
changes have been made to the mozilla code.
... the
changes allow to make existing 4.x plugins scriptable with only minor modifications in their code.
... how to call plugin native methods the following html code will do the job:</p> this should be
changed, we shouldn't advocate embed <embed type="application/plugin-mimetype"> <script language="javascript"> var embed = document.embeds[0]; embed.nativemethod(); </script> how to build and install having the built mozilla tree is probably not necessary, but building the plugin with a scriptable instance interface will require mozilla headers and the xpcom compatible idl compiler -- xpidl.exe.
Bounding volume collision detection with THREE.js - Game development
so if we apply transformations or
change the position of the mesh, we need to manually update the bounding sphere.
... the advantages of using this helper are: it has an update() method that will resize its bounding box mesh if the linked mesh rotates or
changes its dimensions, and update its position.
... var box3 = new three.box3(); box3.setfromobject(knotboxhelper); if we
change the mesh position, rotation, scale, etc.
Building up a basic demo with PlayCanvas editor - Game development
here's what the page looks like — you can create projects and manage them,
change their settings etc.
... to
change its color we'll use the diffuse option in the entity inspector.
... save the
changes using the save button in the top right of the code editor, then return to the main editor tab.
Building up a basic demo with Three.js - Game development
you should experiment with these values and see how they
change what you see in the scene.
...we can also scale the shapes, or
change their positions.
... to show animation, we need to make
changes to these values inside the render loop, so they update on each frame.
Bounce off the walls - Game development
simple collision detection to detect the collision we will check whether the ball is touching (colliding with) the wall, and if so, we will
change the direction of its movement accordingly.
...remembering that the coordinate system starts from the top left, we can come up with something like this: if(y + dy < 0) { dy = -dy; } if the y value of the ball position is lower than zero,
change the direction of the movement on the y axis by setting it equal to itself, reversed.
...update the last code you added to this: if(x + dx > canvas.width-ballradius || x + dx < ballradius) { dx = -dx; } if(y + dy > canvas.height-ballradius || y + dy < ballradius) { dy = -dy; } when the distance between the center of the ball and the edge of the wall is exactly the same as the radius of the ball, it will
change the movement direction.
Collision detection - Game development
ity of the code we will define the b variable for storing the brick object in every loop of the collision detection: function collisiondetection() { for(var c=0; c<brickcolumncount; c++) { for(var r=0; r<brickrowcount; r++) { var b = bricks[c][r]; // calculations } } } if the center of the ball is inside the coordinates of one of our bricks, we'll
change the direction of the ball.
... making the bricks disappear after they are hit the above code will work as desired and the ball
changes its direction.
...:- exercise:
change the color of the ball when it hits the brick.
Extra lives - Game development
if we ever want to
change the font size or color we will have to do it in multiple places.
...scoretext = game.add.text(5, 5, 'points: 0', textstyle); livestext = game.add.text(game.world.width-5, 5, 'lives: '+lives, textstyle); livestext.anchor.set(1,0); lifelosttext = game.add.text(game.world.width*0.5, game.world.height*0.5, 'life lost, click to continue', textstyle); lifelosttext.anchor.set(0.5); lifelosttext.visible = false; this way changing the font in one variable will apply the
changes to every place it is used.
... the lives handling code to implement lives in our game, let's first
change the ball's function bound to the onoutofbounds event.
Randomizing gameplay - Game development
making rebounds more random we can
change the ball's velocity depending on the exact spot it hits the paddle, by modifying the x velocity each time the ballhitpaddle() function is run using a line along the lines of the below.
...
change the color of the background on every hit.
...
change the images and use your own.
Primitive - MDN Web Docs Glossary: Definitions of Web-related terms
the variable may be reassigned a new value, but the existing value can not be
changed in the ways that objects, arrays, and functions can be altered.
... javascript // the primitive let foo = 5; // defining a function that should
change the primitive value function addtwo(num) { num += 2; } // another function trying to do the same thing function addtwo_v2(foo) { foo += 2; } // calling our first function while passing our primitive as an argument addtwo(foo); // getting the current primitive value console.log(foo); // 5 // trying again with our second function...
...(note that window.foo could still be used to access the external foo variable.) in conclusion, any
changes inside our functions won't affect the original foo at all, as we are modifying copies of it that's why primitives are immutable - instead of changing them directly, we're modifying a copy, without affecting the original.
State machine - MDN Web Docs Glossary: Definitions of Web-related terms
a state machine reads a set of inputs and
changes to a different state based on those inputs.
... figure 1: deterministic finite state machine in figure 1, the state begins in state 1; the state
changes to state 2 given input 'x', or to state 3 given input 'y'.
... figure 2: non-deterministic finite state machine in figure 2, given input 'x', the state can persist or
change to state 2.
Test your skills: WAI-ARIA - Learn web development
assuming you are not able to
change the elements used, how can you allow screenreader users to recognize this as a list?
... the problem we have now is that when the dom
changes to show a new decription, screenreaders cannot see what has
changed.
... can you update it so that description
changes are annouced by the screenreader?
Advanced styling effects - Learn web development
filters while you can't
change the composure of an image using css, there are some creative things you can do.
... play with the percentage and pixel parameters in the live example to see how the images
change.
...this highlights the danger of using non-standard and/or prefixed css features in your work — not only do they cause browser compatibility issues, but they are also subject to
change, so your code could break at any time.
Organizing your CSS - Learn web development
} by ordering things in this way, we at least have an idea in which part of the stylesheet we will be looking for something that we want to
change.
...a modifier is a flag on a block or element that
changes the styling or behavior.
...this means that if you realise you have used the wrong shade of blue, you only need
change it in one place.
Type, class, and ID selectors - Learn web development
try adding a css rule to select the <h1> element and
change its color to blue.
...since the universal selector makes global
changes, we use it to deal with very specific situations such as the one outlined below.
...if it also has a class of warning or danger, we
change the border-color.
Floats - Learn web development
you can demonstrate this by making some
changes to your example.
... .special { background-color: rgb(79,185,227); padding: 10px; color: #fff; } to make the effect easier to see,
change the margin-right on your float to margin, so you get space all around the float.
...
change your document so that the first paragraph and our floated box are wrapped with a <div> with a class of wrapper.
CSS layout - Learn web development
normal flow elements on webpages lay themselves out according to normal flow - until we do something to
change that.
... this article explains the basics of normal flow as a grounding for learning how to
change it.
...it is an idea that
changed the way we design for a multi-device web, and in this article we'll help you understand the main techniques you need to know to master it.
What text editors are available? - Learn web development
in particular (if possible in your editor), try to:
change syntax highlighting settings and colors play with indentation width, setting it to an appropriate setting for your needs check autosave and session saving settings configure any available plugins and investigate how to get new ones
change color schemes adjust view settings and see how you can
change the layout of the views check what programming languages/technologies your editor supports ...
...it's not hard to find a text editor that can
change color scheme, but if you want hefty customizing you may be better off with an ide.
... when you install a new text editor, your os will probably continue to open text files with its default editor until you
change the file association.
How do I use GitHub Pages? - Learn web development
"
change directory").
... further github knowledge if you want to make more
changes to your test site and upload those to github, you simply need to make the
change to your files just like you did before.
... then, you need to enter the following commands (pressing enter after each one) to push those
changes to github: git add --all git commit -m 'another commit' git push you can replace another commit with a more suitable message to describe what
change you just made.
Advanced form styling - Learn web development
the sizes of check boxes and radio buttons are not meant to be
changed with their default designs, and browsers react very differently when you try.
...let's start by unstyling the original check boxes: input[type="checkbox"] { -webkit-appearance: none; appearance: none; } we can use the :checked and :disabled pseudo-classes to
change the appearance of our custom checkbox as its state
changes: input[type="checkbox"] { position: relative; width: 1em; height: 1em; border: 1px solid gray; /* adjusts the position of the checkboxes on the text baseline */ vertical-align: -2px; /* set here so that windows' high-contrast mode can override */ color: green; } input[type="checkbox"]::before { content: "✔"; positi...
...it also tends to
change if you increase the size of the select box, or resize in an ugly fashion.
CSS property compatibility table for form controls - Learn web development
there is no standard way to
change the style of spinners used to
change the value of the field, with the spinners on safari being outside the field.
... border-radius partial[1] partial[1] box-shadow no partial[1] note firefox does not provide any way to
change the down arrow on the <select> element.
...there is no standard way to
change the style of the range grip and opera has no way to tweak the default rendering of the range widget.
UI pseudo-classes - Learn web development
if however, you then
change the age entry to one that is out of range, the "outside allowable value range" message then pops up in place of "required".
... now finally, we've used some javascript to toggle the disabling of the billing address fields: // wait for the page to finish loading document.addeventlistener('domcontentloaded', function () { // attach `
change` event listener to checkbox document.getelementbyid('billing-checkbox').addeventlistener('
change', togglebilling); }, false); function togglebilling() { // select the billing text fields let billingitems = document.queryselectorall('#billing input[type="text"]'); // select the billing text labels let billinglabels = document.queryselectorall('.billing-label'); // toggle the billing ...
...text fields and labels for (let i = 0; i < billingitems.length; i++) { billingitems[i].disabled = !billingitems[i].disabled; if(billinglabels[i].getattribute('class') === 'billing-label disabled-label') { billinglabels[i].setattribute('class', 'billing-label'); } else { billinglabels[i].setattribute('class', 'billing-label disabled-label'); } } } it uses the
change event to let the user enable/disable the billing fields, and toggle the styling of the associated labels.
The web and web standards - Learn web development
the only constant is
change.
...once you embrace the constant
change and uncertainty of the web, you'll start to enjoy yourself.
...the following simple javascript will store a reference to our paragraph in memory and
change the text inside it: let pelem = document.queryselector('p'); pelem.textcontent = 'we
changed the text!'; in the house analogy, javascript is like the cooker, tv, microwave, or hairdryer — the things that give your house useful functionality tooling once you've learned the "raw" technologies that can be used to build web pages (such as html, css, and javascript), you'll soon start to c...
Tips for authoring fast-loading HTML pages - Learn web development
reducing page weight through the elimination of unnecessary whitespace and comments, commonly known as minimization, and by moving inline script and css into external files, can improve download performance with minimal need for other
changes in the page structure.
...this not only speeds the display of the page but prevents annoying
changes in a page's layout when the page completes loading.
...if you already follow all javascript best practices, there is no need to
change your code.
Creating hyperlinks - Learn web development
change some of the content into links.
... of course, the location of the project-brief.pdf file and pdfs folder won't suddenly
change because you moved the index.html file — this would make your link point to the wrong place, so it wouldn't work if clicked on.
...
change each page name into a link to that page.
What’s in the head? Metadata in HTML - Learn web development
it will look something like this (although it may
change over time): <meta name="description" content="the mdn web docs site provides information about open web technologies including html, css, and apis for both web sites and progressive web apps."> now search for "mdn web docs" in your favorite search engine (we used google.) you'll notice the description <meta> and <title> element content used in the search result — definitely worth hav...
... if done correctly, when you save your html and refresh your browser you should be able to see that things have
changed: the javascript has added an empty list to the page.
...when you click on an existing list item, a dialog box will pop up allowing you to
change the item's text.
Image gallery - Learn web development
if the class name is "dark",
changes the <button> class to "light" (using setattribute()), its text content to "lighten", and the background-color of the overlay <div> to "rgba(0,0,0,0.5)".
... if the class name not "dark",
changes the <button> class to "dark", its text content back to "darken", and the background-color of the overlay <div> to "rgba(0,0,0,0)".
... the following lines provide a basis for achieving the
changes stipulated in points 2 and 3 above.
Looping code - Learn web development
only one number has to
change.
... one small problem we are left with is that the final output sentence isn't very well-formed: my cats are called bill, jeff, pete, biggles, jasmin, ideally, we want to
change the concatenation on the final loop iteration so that we haven't got a comma on the end of the sentence.
... for basic uses, for, while, and do...while loops are largely inter
changeable.
Function return values - Learn web development
enter the following event handler below the existing functions: input.on
change = function() { const num = input.value; if (isnan(num)) { para.textcontent = 'you need to enter a number!'; } else { para.textcontent = num + ' squared is ' + squared(num) + '.
...' + num + ' factorial is ' + factorial(num) + '.'; } } here we are creating an on
change event handler.
... it runs whenever the
change event fires on the text input — that is, when a new value is entered into the text input, and submitted (e.g., enter a value, then unfocus the input by pressing tab or return).
Client-side storage - Learn web development
try typing this into your javascript console (
change the value to your own name, if you wish!): localstorage.setitem('name','chris'); the storage.getitem() method takes one parameter — the name of a data item you want to retrieve — and returns the item's value.
... we'll start off by creating references to all the html features we need to manipulate in this example — we'll create them all as constants, as these references do not need to
change in the lifecycle of the app.
...if you wanted to host this example on your own server, you'd have to
change this accordingly.
Fetching data from the server - Learn web development
the main content will
change, but most of the surrounding information, like the header, footer, navigation menu, etc., will stay the same.
...this stores a reference to the <select> and <pre> elements in constants and defines an on
change event handler function so that when the select's value is
changed, its value is passed to an invoked function updatedisplay() as a parameter.
... const versechoose = document.queryselector('select'); const poemdisplay = document.queryselector('pre'); versechoose.on
change = function() { const verse = versechoose.value; updatedisplay(verse); }; let's define our updatedisplay() function.
What went wrong? Troubleshooting JavaScript - Learn web development
we again just need to
change addeventlistener to .addeventlistener.
...for example, if we
change this line inside the checkguess() function: var userguess = number(guessfield.value); to var userguess === number(guessfield.value); it throws this error because it thinks you are trying to do something different.
...for example, if we were to
change this line inside checkguess(): if (userguess === randomnumber) { to if (userguess = randomnumber) { the test would always return true, causing the program to report that the game has been won.
JavaScript object basics - Learn web development
try these in the js console: person.name.first person.name.last important: at this point you'll also need to go through your method code and
change any instances of name[0] name[1] to name.first name.last otherwise your methods will no longer work.
... setting object members so far we've only looked at retrieving (or getting) object members — you can also set (update) the value of object members by simply declaring the member you want to set (using dot or bracket notation), like this: person.age = 45; person['name']['last'] = 'cratchit'; try entering the above lines, and then getting the members again to see how they've
changed, like so: person.age person['name']['last'] setting members doesn't just stop at updating the values of existing properties and methods; you can also create completely new members.
...as you'll see in the object-oriented javascript for beginners article, when we start creating constructors and so on, this is very useful — it always ensures that the correct values are used when a member's context
changes (for example, two different person object instances may have different names, but we want to use their own name when saying their greeting).
CSS performance optimization - Learn web development
properties that will lead to compositing include 3d transforms (transform: translatez(), rotate3d(), etc.), animating transform and opacity, position: fixed, will-
change, and filter.
... will-
change property the css will-
change property tells browsers which properties of an element are expected to
change enabling browsers to set up optimizations before the element is actually
changed, improving performance by doing potentially expensive work before it is required.
... will-
change: opacity, transform; the font-display property applied to the @font-face rule, the font-display property defines how font files are loaded and displayed by the browser, allowing text to appear with a fallback font while a font loads, or fails to load.
Introduction to the server side - Learn web development
requests for static resources are handled in the same way as for static sites (static resources are any files that don't
change —typically: css, javascript, images, pre-created pdf files etc).
... search for a number of keywords and note how the page structure doesn't
change, even though the results do.
...what information can you see that only the bank can
change?
Framework main features - Learn web development
it's also excessive: home and article don’t actually make use of the author's portrait or byline, but if we want to get that information into the authorcredit, we will need to
change home and author to accommodate it.
...all of them track the current rendered version of your browser's dom, and each makes slightly different decisions about how the dom should
change as components in your application re-render.
...it ignores the parts of the dom that do not need to be
changed.
Adding a new todo form: Vue events, methods, and models - Learn web development
you should see the value you entered logged to your console, for example: label value: my value changing v-model behavior with modifiers in a similar fashion to event modifiers, we can also add modifiers to
change the behavior of v-model.
...this modifier
changes when v-model syncs the value for text inputs.
...the .lazy modifier causes v-model to use the
change event instead.
Introduction to automated testing - Learn web development
gulp will now watch your directory, and run the appropriate tasks whenever you save a
change to an html, css, or javascript file.
... the features here are as follows: switch —
change to another platform/device/browser combination.
...the side menu allows you to: stop the session
change the screen resolution copy text/notes to a remote clipboard take, edit, and download screenshots test in full screen mode.
Handling common HTML and CSS problems - Learn web development
und-color: #ff0000; background-color: rgba(255,0,0,1); box-shadow: inset 1px 1px 3px rgba(255,255,255,0.4), inset -1px -1px 3px rgba(0,0,0,0.4); } button:hover { background-color: rgba(255,0,0,0.5); } button:active { box-shadow: inset 1px 1px 3px rgba(0,0,0,0.4), inset -1px -1px 3px rgba(255,255,255,0.4); } here we are providing an rgba background-color that
changes opacity on hover to give the user a hint that the button is interactive, and some semi-transparent inset box-shadow shades to give the button a bit of texture and depth.
... prefixed features were never supposed to be used in production websites — they are subject to
change or removal without warning, and cause cross browser issues.
... responsive design problems responsive design is the practice of creating web layouts that
change to suit different device form factors — for example, different screen widths, orientations (portrait or landscape), or resolutions.
Introduction to cross browser testing - Learn web development
for example: try to test the latest
change on all the modern desktop browsers you can — including firefox, chrome, opera, ie, edge, and safari on desktop (mac, windows, and linux, ideally).
...it is also possible to set up an environment that automatically runs tests for you, and then only lets you check in your
changes to the central code repository if the tests still pass.
...once you've discovered what is causing your bug, you need to decide how to work around it in the particular browser it is causing problems in — you can't just
change the problem code outright, as this may break the code in other browsers.
Strategies for carrying out testing - Learn web development
upload the
changes to the development server, or wherever else you need your code.
... generally you'll get your users to look at the page or view containing the new functionality on some kind of a development server, so you are not putting the final site or
change live until it is finished.
... note: some server-side development environments provide useful mechanisms for rolling out site
changes to only a subset of users, providing a useful mechanism for getting a feature tested by a subset of users without the need for a separate development server.
Package management basics - Learn web development
go there now and you’ll not see anything for now, but what is cool is that when you do make
changes to your app, parcel will rebuild it and refresh the server automatically so you can instantly see the effect your update had.
...parcel has automatically handled all the filename
changes for us.
... we would recommend having a look at the source code in dist/index.html just so you can see what
changes parcel has performed automatically.
Accessibility Features in Firefox
for example, you can disable functions that websites use to move or resize windows, or to remove your status bar, to disable right-click contextual menus,
change the status bar text, etc.
...extensions are small add-ons which can
change your browser experience as you see fit.
... here are some examples of accessible extensions, although there are hundreds more to try (thank you to the gw micro knowledge base for some of this information): adblock plus removes ads (and other objects, like banners) from web pages greasemonkey lets you add bits of javascript ("user scripts") to any web page to
change its behavior.
Accessibility information for UI designers and developers
css lets authors
change what the focus indicator look like, so you can design it to match branding.
... text spacing users should be able to make the following
changes to their text spacing: set line height (leading) to at least 1.5 times the font size set spacing following paragraphs to at least 2 times the font size set letter spacing (tracking) to at least 0.12 times the font size set word spacing to at least 0.16 times the font size this does not mean that your page needs to offer controls to make such
changes, merely that if someone does these thi...
...this is specifically important in these cases: the user input is about legal commitments or financial transactions it updates or removes the user's data in a system when recording tests responses in those cases, ensure users can
change submissions, automatically check for errors.
Embedding API for Accessibility
there are many other pieces, such as preferences to allow the user to
change foreground and background colors, and font sizes.
...for the most part, an automatic reframe is performed when one of these prefs is
changed.
...etwork.cookie.warnaboutcookies", boolwarn); moz 0.8 fonts setcharpref("font.name.monospace.x-western", newfontname); setcharpref("font.name.serif.x-western", newfontname); setcharpref("font.name.sans-serif.x-western", newfontname); /* for other i18n charsets,
change x-western to x-central-euro, x-cyrillic, x-unicode, x-user-def, x-baltic, el, tr, he, ar, th, ja, zh-cn or zh-tw */ setintpref("font.size.fixed.x-western", newfontsize); setintpref("font.size.variable.x-western", newfontsize); /* for other i18n charsets,
change the name as explained above for font face*/...
Mozilla's Section 508 Compliance
(c) a well-defined on-screen indication of the current focus shall be provided that moves among interactive interface elements as the input focus
changes.
... the focus shall be programmatically exposed so that assistive technology can track focus and focus
changes.
...caveat: normally mozilla uses a color
change to indicate when a link has been visited.
Theme concepts
themes developed using the webextensions api in firefox enable you to
change the look of the browser by adding images to the header area of the firefox browser; this is the area behind the menu bar, toolbars, address bar, search bar, and tab strip.
... create a dynamic theme that
changes under programmatic control.
...ht elements of the dynamic theme: const themes = { 'day': { images: { theme_frame: 'sun.jpg', }, colors: { frame: '#cf723f', tab_background_text: '#111', } }, 'night': { images: { theme_frame: 'moon.jpg', }, colors: { frame: '#000', tab_background_text: '#fff', } } }; the theme.theme object is then passed to theme.update() to
change the header theme, as in this code snippet from the same example: function settheme(theme) { if (currenttheme === theme) { // no point in changing the theme if it has already been set.
Application cache implementation overview
note: whenever a load of an items (including the manifest) fails due to a network or server error or leads to a redirect, the update fails and completely rollbacks any
changes made (i.e.
... nsmanifestcheck downloads the manifest from the server one more time and checks its content has not
changed again.
... when the manifest has
changed, the update is simply rescheduled, with limit of up to 3 retries (then it fails.) when load of the manifest has failed or redirected, the original update invokes onerror and 'finishes'.
Configuring Build Options
note: do not make substantive
changes to this document without consulting benjamin smedberg <benjamin@smedbergs.us> or one of the build-config peersthis document details how to configure firefox builds.
... adding the following line to your mozconfig allows you to
change the objdir: mk_add_options moz_objdir=@topsrcdir@/obj-@config_guess@ it is a good idea to have your objdir name start with obj so that mercurial ignores it.
...it is recommended to use the default build options, and only
change the properties from the list above as needed.
How Mozilla's build system works
0 created; 1 updated; 2187 un
changed total wall time: 5.03s; cpu time: 3.79s; efficiency: 75% what this is saying is that a total of 1,096 moz.build files were read.
...most of the files already existed and didn't need to be
changed.
... topsrcdir = @top_srcdir@ srcdir = @srcdir@ vpath = @srcdir@ include $(depth)/config/autoconf.mk module = msgbaseutil library_name = msgbaseutil export_library = 1 short_libname = msgbsutl notice that the only
change from the component example above is that is_component is not set.
Updating NSPR or NSS in mozilla-central
do not check in individual
changes.
... if you check in an individual
change by mistake, your
change will be lost when the nspr and nss teams push a new hg tag to 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 update a branch older than mozilla 17 (without the
change from bug 782784), you must manually add a dummy
change (add or remove a blank line) to force a rebuild of nspr: mozilla/nsprpub/config/prdepend.h or nss: mozilla/securi...
Reviewer Checklist
which one you choose depends on how the feature is implemented: a pure java service can't easily check gecko prefs, for example.] strings there should be no string
changes in patches that will be uplifted (including string removals).
... rev entity names for string
changes.
... when making ui
changes, be aware of the fact that strings will be different lengths in different locales.
Error codes returned by Mozilla APIs
ns_error_dom_no_data_allowed_err (0x80530006) ns_error_dom_no_modification_allowed_err (0x80530007) this error can occur when an attempt is made to modify an aspect of an object that cannot be
changed.
...7) ns_error_ftp_pwd (0x804b0018) ns_error_not_resumable (0x804b0019) ns_error_invalid_content_encoding (0x804b001b) the content encoding of the source document was incorrect, for example returning a plain html document advertised as content-encoding: gzip ns_error_ftp_list (0x804b001c) ns_error_unknown_host (0x804b001e) ns_error_redirect_loop (0x804b001f) ns_error_entity_
changed (0x804b0020) ns_error_unknown_proxy_host (0x804b002a) ns_error_unknown_socket_type (0x804b0033) ns_error_socket_create_failed (0x804b0034) ns_error_cache_key_not_found (0x804b003d) ns_error_cache_data_is_stream (0x804b003e) ns_error_cache_data_is_not_stream (0x804b003f) ns_error_cache_wait_for_validation (0x804b0040) ns_error_cache_entry_doomed (0x804b0041) ns...
... ns_error_plugins_pluginsnot
changed (0x804c03e8) ns_error_plugin_disabled (0x804c03e9) ns_error_uconv_noconv (0x80500001) ns_error_udec_illegalinput (0x8050000e) ns_imagelib_error_failure (0x80540005) ns_imagelib_error_no_decoder (0x80540006) ns_imagelib_error_not_finished (0x80540007) ns_imagelib_error_load_aborted (0x80540008) ns_error_wont_handle_content (0x805d0001) moz_error_storage_error (...
Cross Process Object Wrappers
consider this code: mm.addmessagelistener("gotloadevent", function (msg) { mm.sendasyncmessage("
changedocumenturi", {newuri: "hello.com"}); let uri = msg.objects.document.documenturi; dump("received load event: " + uri + "\n"); }); this sends a message asking the frame script to
change the current document uri, then accesses the current document uri via a cpow.
...it’s possible that the request for the documenturi property will be processed before the "
changedocumenturi" message, in which case uri will have its previous value.
...we know it's blocked waiting for the synchronous message to return, and we know that won't
change during the cpow call.
Limitations of chrome scripts
there is a shim that gives you access to the domwindow property of the nsiwebprogress object passed into onstate
change.
... however, the domwindow is passed asynchronously, so by the time the chrome process receives it, the dom might have
changed (for example, because code running in the content process modified it or we navigated to a different page).
... you can
change this default in the code you use to register the about: uri.
mozbrowserloadstart
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example in this example the mozbrowserloadend and mozbrowserloadstart events are used to
change the icon shown on the stop/reload button between stop (x) and reload (r), as appropriate.
... var browser = document.queryselector("iframe"); browser.addeventlistener('mozbrowserloadstart',function() { stopreload.textcontent = 'x'; }); browser.addeventlistener('mozbrowserloadend',function() { stopreload.textcontent = 'r'; }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
Getting from Content to Layout
changes to a document originate in the content tree (from dom modification by scripting, insertion of elements from the parser, etc.) and are propogated to the layout tree through magic that primarily resides in //github.com/realityripple/uxp/blob/master/layout/base/nscssframeconstructor.cpp the frame constructor implements nsimutationobserver which allows it to "watch" the content tree.
... frame construction regardless of whether content nodes are inserted/appended/deleted, frames can be created and destroyed, based on whatever is optimal for the
changes in the content tree.
... "frame construction items" are queued for each
change.
Internationalized Domain Names (IDN) Support in Mozilla Browsers
at the network protocol level, there is no
change in the restriction that only a subset of ascii characters be used in url/uri.
...n 1 accented characters) http://www.nunames.nu/lldemo/default.htm (domain names in other languages) on july 10, 2003 and thereafter, you can access a large number of japanese domain name sites under the .jp top domain with no further setting on netscape 7.1/mozilla 1.4: http://mitsuketa-nihongo.jp race (row-based ascii compatible encoding) almost all idn registration data are expected to
change to punycode by the end of 2003.
...this will
change the default from puncycode to race.
Examples
deferred.reject(ex); } // we don't return the deferred to the caller, but only the contained // promise, so that the caller cannot accidentally
change its state.
...
change the array in the code above.
...
change this line: var imagepaths = ['http://www.mozilla.org/media/img/firefox/favicon.png', 'https://developer.cdn.mozilla.net/media/redesign/img/favicon32.png'];
change it to: var imagepaths = ['http://www.mozilla.org/media/img/firefox/favicon.png', 'https://developer.cdn.mozilla.net/media/redesign/img/favicon32.png', 'blah blah']; i added 'blah blah' to that array, it will cuase the whole promise to reject.
Using JavaScript code modules
for example: components.utils.import("resource://app/my_module.jsm"); alert(foo()); // displays "foo" alert(bar.size + 3); // displays "6" alert(dummy); // displays "dummy is not defined" because 'dummy' was not exported from the module note: when you're testing
changes to a code module, be sure to
change the application's build id (e.g., the version) before your next test run; otherwise, you may find yourself running the previous version of your module's code.
...for example, if the simple module were imported into two different javascript scopes,
changes in one scope can be observed in the other scope.
...
changes to the symbol's value will not propagate to other scopes (though an object's properties will be manipulated by reference).
WebRequest.jsm
handlerbehavior
changed() is not supported.
... urls: pattern, types: ["image"] }, ["blocking"]); function redirect(e) { console.log("redirecting: " + e.url); return {redirecturl: "https://38.media.tumblr.com/tumblr_ldbj01lzip1qe0eclo1_500.gif"}; } modifying headers this code
changes the user agent header so the browser identifies itself as ie 11, but only when visiting pages under "http://useragentstring.com/": let {webrequest} = cu.import("resource://gre/modules/webrequest.jsm", {}); cu.import("resource://gre/modules/matchpattern.jsm"); let pattern = new matchpattern("http://useragentstring.com/*"); let ua = "mozilla/5.0 (windows nt 6.1; wow64; trident/7.0; as; rv:11.0)...
... like gecko"; webrequest.onbeforesendheaders.addlistener(
changeuseragent, { urls: pattern }, ["blocking", "requestheaders"]); function
changeuseragent(e) { for (let header of e.requestheaders) { if (header.name == "user-agent") { header.value = ua; } } return {requestheaders: e.requestheaders}; } ...
L10n Checks
dmenu.tooltip +fullzoomenlargecmd.commandkey3 +fullzoomreducecmd.commandkey2 +fullzoomresetcmd.commandkey2 +organizebookmarks.label -showallbookmarkscmd2.label migration/migration.dtd -importfromfile.accesskey -importfromfile.label +importfromhtmlfile.accesskey +importfromhtmlfile.label you can assume
changed strings when you see entities removed and added with a similar name.
...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.
...options reference locale in the source and xpi modes you can
change the default reference locale (en-us) by setting the -r parameter, e.g.: check-l10n-completeness -r pl browser/locales/l10n.ini ../l10n/ de output mode you can
change the look and feel of the output by setting the -o parameter to 0 (tree; default), 1 (full tree) or 2 (full relative paths), e.g.: check-l10n-completeness -o 2 browser/locales/l10n.ini ../l10n/ de en-us in the locale directory in the source mode you can tell l10n checks to look for the en-us locale in the directory containing all other locales instead of the directory containing the source by setting the -l parameter (us...
Localizing with Mozilla Translator
finally, you commit your
changes outside of mt, using your favorite repository tools.
... migrating contents when the directory structure
changes overall, if you are a ''good'' mt user and you do things like: checking "keep original" flags for strings not needing translation, instead of just leaving the translation empty struggling to get empty lists when running "untranslated strings" and "view fuzzy" if you are up to date in localization regularly running qa checks and trying to minimize them.
... 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 seamonkey 1.1.x dies (and seamonkey 2.0 finally conquers the web, if i may add).
Patching a Localization
cd ~/localization-workdir clone the localization repository for your locale and for the version you want to patch: hg clone http://hg.mozilla.org/releases/l10n/mozilla-aurora/gl now that you have the code and your working directory, edit the dtd and properties files to make your necessary
changes.
... creating a l10n patch you've made your
changes, now create your patch.
...a good patch only contains those
changes that you intended to make.
Mozilla Port Blocking
"access to the port number given has been disabled for security reasons." "establishing a connection to an unsafe or otherwise banned port was prohibited" "0x804b0013 (ns_error_port_access_not_allowed)" if your product or web site uses a port which is blocked by mozilla's default port blocking rules, you can either
change the port of your service to a unblocked value (recommended if possible) or ask your mozilla users to enable the port.
...ports enabled by protocol handlers in mozilla: protocol handler allowed ports ftp 21, 22 ldap 389, 636 nntp any port pop3 any port imap any port smtp any port finger 79 datetime 13 how to
change mozilla port blocking permanently since each protocol can determine which ports are blocked, you should contact the protocol handler owner to request that a specific port be blocked or unblocked.
...you must have a good reason for the
change, a deep understanding of the security risk involved and be able to justify it.
powermetrics
change this number to get shorter or longer samples.
... by default, the coalitions/processes are sorted by a composite value computed from several factors, though this can be
changed via command-line options.
... the default sample period is 30,000 milliseconds (30 seconds), but that can be
changed with the -i option.
Creating a Cookie Log
change to your firefox directory (usually c:\program files\mozilla firefox) type "set nspr_log_file=c:\temp\cookie-log.txt", enter type "set nspr_log_modules=cookie:4" and press enter run firefox by typing "firefox.exe" and pressing enter.
...
change to the installation directory for firefox.
...
change to the installation directory for firefox, e.g.
Nonblocking IO In NSPR
once the io mode of a socket is committed, it cannot be
changed.
...so at that point we must determine whether to associate the socket with the i/o completion or not, and that decision cannot be
changed later.
... there is a second constraint, due to the use of nt asynchronous i/o and the recycling of used sockets: the new socket returned by <tt>pr_accept()</tt> or <tt>pr_acceptread()</tt> inherits the blocking/nonblocking io mode of the listening socket and this cannot be
changed.
Optimizing Applications For NSPR
the mode (blocking or nonblocking) of a socket cannot be
changed at will once the socket has been used.
... also, the new socket created by an <tt>pr_accept()</tt> call on a listening socket inherits the mode of the listening socket, and cannot be
changed.
...the
changes are not evident until one tries to do thread suspension (<tt>pr_suspendall()</tt>) which is in preparation for garbage collection.
Condition Variables
this chapter describes the api for creating and destroying condition variables, notifying condition variables of
changes in monitored data, and making a thread wait on such notification.
... a call to pr_waitcondvar causes a thread to block until a specified condition variable receives notification of a
change of state in its associated monitored data.
... other threads may notify the condition variable when
changes occur.
PR_CNotifyAll
notifies all the threads waiting for a
change in the state of monitored data.
... pr_failure indicates that the referenced monitor could not be located or that the calling thread was not in the monitor description using the value specified in the address parameter to find a monitor in the monitor cache, pr_cnotifyall notifies all threads waiting for the monitor's state to
change.
... all of the threads waiting on the state
change are then scheduled to reenter the monitor.
NSS 3.12.5 release_notes
this default setting can also be
changed within the application by using the following existing api functions: secstatus ssl_optionset(prfiledesc *fd, print32 option, prbool on) secstatus ssl_optionsetdefault(print32 option, prbool on) there is now a new value for "option", which is: ssl_enable_renegotiation the corresponding new values for ssl_enable_renegotiation are: ssl_renegotiate_never: neve...
... see the following struct in nss.h for details: nssinitparametersstr other new functions in secmod.h: secmod_getskipfirstflag secmod_getdefaultmoddbflag in prlink.h nss_securememcmp port_loadlibraryfromorigin modified functions sgn_update (see cryptohi.h) the parameter "input" of this function is
changed from unsigned char * to const unsigned char *.
... pk11_configurepkcs11 (see nss.h) the name of some parameters have been slightly
changed ("des" became "desc").
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.
...however, this
change in behaviour unintentionally broke existing nss applications that need to generate or use such keys, via apis such as seckey_creatersaprivatekey or seckey_createdhprivatekey.
... in nss 3.19.2, this
change in freebl behaviour has been reverted.
NSS 3.21 release notes
new in nss 3.21 new functionality certutil now supports a --rename option to
change a nickname (bug 1142209) tls extended master secret extension (rfc 7627) is supported (bug 1117022) new info functions added for use during mid-handshake callbacks (bug 1084669) new functions in nss.h nss_optionset - sets nss global options nss_optionget - gets the current value of nss global options in secmod.h secmod_createmoduleex - create a new secmodmodule struct...
... 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 ex
change 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_extend...
...nded master secret extension (rfc 7627) ssl_preinfo_version - used with sslpreliminarychannelinfo to indicate that a tls version has been selected ssl_preinfo_cipher_suite - used with sslpreliminarychannelinfo to indicate that a tls cipher suite has been selected ssl_preinfo_all - used with sslpreliminarychannelinfo to indicate that all preliminary information has been set notable
changes in nss 3.21 nss now builds with elliptic curve ciphers enabled by default (bug 1205688) nss now builds with warnings as errors (bug 1182667) the following ca certificates were removed cn = verisign class 4 public primary certification authority - g3 sha1 fingerprint: c8:ec:8c:87:92:69:cb:4b:ab:39:e9:8d:7e:57:67:f3:14:95:73:9d cn = utn-userfirst-network applicatio...
NSS 3.28.5 release notes
it backports the
changes that were initially released in nss version 3.30.2.
... notable
changes in nss 3.28.5 the following ca certificates were removed: o = japanese government, ou = applicationca sha-256 fingerprint: 2d:47:43:7d:e1:79:51:21:5a:12:f3:c5:8e:51:c7:29:a5:80:26:ef:1f:cc:0a:5f:b3:d9:dc:01:2f:60:0d:19 cn = wellssecure public root certificate authority sha-256 fingerprint: a7:12:72:ae:aa:a3:cf:e8:72:7f:7f:b3:9f:0f:b3:d1:e5:42:6e:90:60:b0:6e:e6:f1:3e:9a:3c:58:33:cd:43 cn=tÜrktrust elektronik sertifika hizmet sağlayıcısı h6 sha-256 fingerprint: 8d:e7:86:55:e1:be:7f:78:47:80:0b:93:f6:94:d2:1d:36:8c:c0:6e:03:3e:7f:ab:04:bb:5e:b9:9d:a6:b7:00 cn=microsec e-szigno root sha-256 fingerprint: 32:7a:3d:76:1a:ba:de:a0:34:eb:99:84:06:27:5c:b1:a4:77:6e:fd:ae:2f:df:6d:01:68:ea:1c:4f:55:...
... (the version numbers 2.12 and 2.13 for the root ca list have been skipped.) bugs fixed in nss 3.28.5 bug 1350859 - march 2017 batch of root ca
changes.
NSS 3.28 release notes
nss includes support for the x25519 key ex
change algorithm (bug 957105), which is supported and enabled by default in all versions of tls.
... in order to prepare for this future
change, we'd like to encourage all users of nss to override the standard nss 3.28 build configuration, by defining nss_enable_tls_1_3=1 at build time.
... notable
changes in nss 3.28 nss can no longer be compiled with support for additional elliptic curves (the nss_ecc_more_than_suite_b option, bug 1253912).
NSS 3.29.1 release notes
bugs fixed in nss 3.29.1 nss version 3.28, 3.28.1, 3.28.2 and 3.29 contained
changes that were in violation with the nss compatibility promise.
... ecparams, which is part of the public api of the freebl/softokn parts of nss, had been
changed to include an additional attribute.
...the
change has been reverted to the original state in bug 1334108.
NSS 3.36.1 release notes
notable
changes in nss 3.36.1 in nss version 3.35 the iteration count in optimized builds, which is used for password based encryption algorithm related to encrypted pkcs#7 or pkcs#12 data, was increased to one million iterations.
... that
change had caused an interoperability regression with operating systems that are limited to 600 k iterations.
... nss 3.36.1 has been
changed to use the same 600 k limit.
NSS 3.47 release notes
upcoming
changes to default tls configuration the next nss team plans to make two
changes to the default tls configuration in nss 3.48, which will be released in early december: tls 1.3 will be the default maximum tls version.
... notable
changes in nss 3.47 bug 1152625 - support aes hw acceleration on armv8 bug 1267894 - allow per-socket run-time ordering of the cipher suites presented in clienthello bug 1570501 - add cmac to freebl and pkcs #11 libraries bugs fixed in nss 3.47 bug 1459141 - make softoken cbc padding removal constant time bug 1589120 - more cbc padding tests bug 1465613 - add ability to distrust certificates issued after a certain date for a specified root 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...
...ty "derdump" bug 1582343 - soft token mac verification not constant time bug 1578238 - handle invald tag sizes for ckm_aes_gcm bug 1576295 - check all bounds when encrypting with seed_cbc bug 1580286 - nss rejects tls 1.2 records with large padding with sha384 hmac bug 1577448 - create additional nested s/mime test messages for thunderbird bug 1399095 - allow nss-try to be used to test nspr
changes bug 1267894 - libssl should allow selecting the order of cipher suites in clienthello bug 1581507 - fix unportable grep expression in test scripts bug 1234830 - [cid 1242894][cid 1242852] unused values bug 1580126 - fix build failure on aarch64_be while building freebl/gcm bug 1385039 - build nspr tests as part of nss continuous integration bug 1581391 - fix build on openbsd/arm64 after bu...
NSS 3.48 release notes
notable
changes in nss 3.48 tls 1.3 is the default maximum tls version.
... certificate authority
changes the following ca certificates were added: bug 1591178 - entrust root certification authority - g4 cert sha-256 fingerprint: db3517d1f6732a2d5ab97c533ec70779ee3270a62fb4ac4238372460e6f01e88 upcoming
changes in nss 3.49 the legacy dbm database, libnssdbm, will no longer be built by default.
...ult iteration count, by default for modern key4 storage, optionally for legacy key3.db storage bug 1590972 - use -std=c99 rather than -std=gnu99 bug 1590676 - fix build if arm doesn't support neon bug 1575411 - enable tls extended master secret by default bug 1590970 - ssl_settimefunc has incomplete coverage bug 1590678 - remove -wmaybe-uninitialized warning in tls13esni.c bug 1588244 - nss
changes for delegated credential key strength checks bug 1459141 - add more cbc padding tests that missed nss 3.47 bug 1590339 - fix a memory leak in btoa.c bug 1589810 - fix uninitialized variable warnings from certdata.perl bug 1573118 - enable tls 1.3 by default in nss this bugzilla query returns all the bugs fixed in nss 3.48: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classifi...
Enc Dec MAC Using Key Wrap CertReq PKCS10 CSR
ust\n"); rv = secfailure; goto cleanup; } rv = cert_decodetruststring(trust, trusts); if (rv) { pr_fprintf(pr_stderr, "unable to decode trust string\n"); rv = secfailure; goto cleanup; } rv = pk11_importcert(slot, cert, ck_invalid_handle, name, pr_false); if (rv != secsuccess) { /* sigh, pk11_import cert and cert_
changecerttrust should have * been coded to take a password arg.
... = pk11_importcert(slot, cert, ck_invalid_handle, name, pr_false); } if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not add certificate to token or database : %s\n", port_errortostring(rv)); rv = secfailure; goto cleanup; } } rv = cert_
changecerttrust(handle, cert, trust); if (rv != secsuccess) { if (port_geterror() == sec_error_token_not_logged_in) { rv = pk11_authenticate(slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s : %s\n", pk11_gettokenname(slot), port_errortostring(rv)); ...
... rv = secfailure; goto cleanup; } rv = cert_
changecerttrust(handle, cert, trust); } if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not
change trust on certificate : %s\n", port_errortostring(rv)); rv = secfailure; goto cleanup; } } if (emailcert) { cert_savesmimeprofile(cert, null, pwdata); } cleanup: if (cert) { cert_destroycertificate (cert); } if (trust) { port_free(trust); } if (certder.data) { port_free(certder.data); } return rv; } /* * create a certificate */ static secstatus createcert( certcertdbhandle *handle, pk11slotinfo *slot, ...
NSS Sample Code Sample_2_Initialization of NSS
try again.\n"); } /* clear out the duplicate password string */ if (p1) { port_memset(p1, 0, port_strlen(p1)); port_free(p1); } fclose(input); fclose(output); return p0; } /*
change the password */ secstatus
changepw(pk11slotinfo *slot, char *oldpass, char *newpass, char *oldpwfile, char *newpwfile) { secstatus rv; secupwdata pwdata; secupwdata newpwdata; char *oldpw = null; char *newpw = null; if (oldpass) { pwdata.source = pw_plaintext; pwdata.data = oldpass; } else if (oldpwfile) { pwdata.so...
... pr_fprintf(pr_stderr, "invalid password.\n"); port_memset(oldpw, 0, pl_strlen(oldpw)); port_free(oldpw); return secfailure; } } else { break; } port_free(oldpw); } newpw = initslotpassword(slot, pr_false, &newpwdata); if (pk11_
changepw(slot, oldpw, newpw) != secsuccess) { pr_fprintf(pr_stderr, "failed to
change password.\n"); return secfailure; } port_memset(oldpw, 0, pl_strlen(oldpw)); port_free(oldpw); pr_fprintf(pr_stdout, "password
changed successfully.\n"); } port_memset(newpw, 0, pl_strlen(newpw)); port_free(newpw); return secsuccess; } /* * this ...
... */ rv =
changepw(slot, plainpass, 0, pwfile, 0); if (rv != secsuccess) { pr_fprintf(pr_stderr, "failed to
change password\n"); } if (slot) { pk11_freeslot(slot); } rvshutdown = nss_shutdown(); if (rvshutdown != secsuccess) { pr_fprintf(pr_stderr, "failed : nss_shutdown()\n"); rv = secfailure; } pr_cleanup(); return rv; } </plainpasswc></plai...
Initialize NSS database - sample 2
try again.\n"); } /* clear out the duplicate password string */ if (p1) { port_memset(p1, 0, port_strlen(p1)); port_free(p1); } fclose(input); fclose(output); return p0; } /* *
changepw */ secstatus
changepw(pk11slotinfo *slot, char *oldpass, char *newpass, char *oldpwfile, char *newpwfile) { secstatus rv; secupwdata pwdata; secupwdata newpwdata; char *oldpw = null; char *newpw = null; if (oldpass) { pwdata.source = pw_plaintext; pwdata.data = oldpass; } else if (oldpwfile) { pwdata.source = pw_fromfile;...
... pr_fprintf(pr_stderr, "invalid password.\n"); port_memset(oldpw, 0, pl_strlen(oldpw)); port_free(oldpw); return secfailure; } } else { break; } port_free(oldpw); } newpw = initslotpassword(slot, pr_false, &newpwdata); if (pk11_
changepw(slot, oldpw, newpw) != secsuccess) { pr_fprintf(pr_stderr, "failed to
change password.\n"); return secfailure; } port_memset(oldpw, 0, pl_strlen(oldpw)); port_free(oldpw); pr_fprintf(pr_stdout, "password
changed successfully.\n"); } port_memset(newpw, 0, pl_strlen(newpw)); port_free(newpw); return secsuccess; } /* * this ...
... */ rv =
changepw(slot, plainpass, 0, pwfile, 0); if (rv != secsuccess) { pr_fprintf(pr_stderr, "failed to
change password\n"); } if (slot) { pk11_freeslot(slot); } rvshutdown = nss_shutdown(); if (rvshutdown != secsuccess) { pr_fprintf(pr_stderr, "failed : nss_shutdown()\n"); rv = secfailure; } pr_cleanup(); return rv; } ...
sample2
zeof(certcerttrust)); if (!trust) { pr_fprintf(pr_stderr, "unable to allocate cert trust\n"); rv = secfailure; goto cleanup; } rv = cert_decodetruststring(trust, trusts); if (rv) { pr_fprintf(pr_stderr, "unable to decode trust string\n"); rv = secfailure; goto cleanup; } rv = pk11_importcert(slot, cert, ck_invalid_handle, name, pr_false); if (rv != secsuccess) { /* sigh, pk11_import cert and cert_
changecerttrust should have * been coded to take a password arg.
...ss) { pr_fprintf(pr_stderr, "could not authenticate to token %s : %s\n", pk11_gettokenname(slot), port_errortostring(rv)); rv = secfailure; goto cleanup; } rv = pk11_importcert(slot, cert, ck_invalid_handle, name, pr_false); } if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not add certificate to token or database : %s\n", port_errortostring(rv)); rv = secfailure; goto cleanup; } } rv = cert_
changecerttrust(handle, cert, trust); if (rv != secsuccess) { if (port_geterror() == sec_error_token_not_logged_in) { rv = pk11_authenticate(slot, pr_true, pwdata); if (rv != secsuccess) { pr_fprintf(pr_stderr, "could not authenticate to token %s : %s\n", pk11_gettokenname(slot), port_errortostring(rv)); rv = secfailure; goto cleanup; } rv = cert_
changecerttrust(handle, cert, trust); } if (rv != secsucc...
...ess) { pr_fprintf(pr_stderr, "could not
change trust on certificate : %s\n", port_errortostring(rv)); rv = secfailure; goto cleanup; } } if (emailcert) { cert_savesmimeprofile(cert, null, pwdata); } cleanup: if (cert) { cert_destroycertificate (cert); } if (trust) { port_free(trust); } if (certder.data) { port_free(certder.data); } return rv; } /* * create a certificate */ static secstatus createcert( certcertdbhandle *handle, pk11slotinfo *slot, char * issuernickname, char *infilename, char *outfilename, seckeyprivatekey **selfsignprivkey, void *pwarg, secoidtag hashalgtag, unsigned int serialnumber, int warpmonths, int validitymonths, const char *dnsnames, prbool ascii, prbool selfsign) { void *exthandle; secitem reqder; certcertextension **crexts; secstatus rv = secsuccess; certcertificate *s...
NSS tools : crlutil
*
change range of certificate entry(s) in crl range new-range where: new-range: two integer values separated by dash: range of certificates that will be added by this command.
... reasoncode non-critical code where: reasoncode: identifies the name of an extension non-critical: should be set to 0 since this is non-critical extension code: the following codes are available: unspecified (0), keycompromise (1), cacompromise (2), affiliation
changed (3), superseded (4), cessationofoperation (5), certificatehold (6), removefromcrl (8), privilegewithdrawn (9), aacompromise (10) * add invalidity date extension: the invalidity date is a non-critical crl entry extension that provides the date on which it is known or suspected that the private key was compromised or that the certificate otherwise became invalid.
...the nss site relates directly to nss code
changes and releases.
NSS tools : pk12util
for example: # pk12util -i /tmp/cert-files/users.p12 -d sql:/home/my/sharednssdb to set the shared database type as the default type for the tools, set the nss_default_db_type environment variable to sql: export nss_default_db_type="sql" this line can be set added to the ~/.bashrc file to make the
change permanent.
...for example, this how-to article covers how to configure firefox and thunderbird to use the new shared nss databases: o https://wiki.mozilla.org/nss_shared_db_howto for an engineering draft on the
changes in the shared nss databases, see the nss project wiki: o https://wiki.mozilla.org/nss_shared_db see also certutil (1) modutil (1) the nss wiki has information on the new database design and how to configure applications to use it.
...the nss site relates directly to nss code
changes and releases.
NSS tools : crlutil
*
change range of certificate entry(s) in crl range new-range where: new-range: two integer values separated by dash: range of certificates that will be added by this command.
... reasoncode non-critical code where: reasoncode: identifies the name of an extension non-critical: should be set to 0 since this is non-critical extension code: the following codes are available: unspecified (0), keycompromise (1), cacompromise (2), affiliation
changed (3), superseded (4), cessationofoperation (5), certificatehold (6), removefromcrl (8), privilegewithdrawn (9), aacompromise (10) * add invalidity date extension: the invalidity date is a non-critical crl entry extension that provides the date on which it is known or suspected that the private key was compromised or that the certificate otherwise became invalid.
...the nss site relates directly to nss code
changes and releases.
NSS tools : pk12util
for example: # pk12util -i /tmp/cert-files/users.p12 -d sql:/home/my/sharednssdb to set the shared database type as the default type for the tools, set the nss_default_db_type environment variable to sql: export nss_default_db_type="sql" this line can be set added to the ~/.bashrc file to make the
change permanent.
...for example, this how-to article covers how to configure firefox and thunderbird to use the new shared nss databases: o https://wiki.mozilla.org/nss_shared_db_howto for an engineering draft on the
changes in the shared nss databases, see the nss project wiki: o https://wiki.mozilla.org/nss_shared_db see also certutil (1) modutil (1) the nss wiki has information on the new database design and how to configure applications to use it.
...the nss site relates directly to nss code
changes and releases.
NSS tools : signver
for example: # signver -a -s signature -d sql:/home/my/sharednssdb to set the shared database type as the default type for the tools, set the nss_default_db_type environment variable to sql: export nss_default_db_type="sql" this line can be set added to the ~/.bashrc file to make the
change permanent.
...for example, this how-to article covers how to configure firefox and thunderbird to use the new shared nss databases: o https://wiki.mozilla.org/nss_shared_db_howto for an engineering draft on the
changes in the shared nss databases, see the nss project wiki: o https://wiki.mozilla.org/nss_shared_db see also signtool (1) the nss wiki has information on the new database design and how to configure applications to use it.
...the nss site relates directly to nss code
changes and releases.
Rhino Debugger
the this table is updated each time control returns to the debugger or when you
change the stack location in the context: window.
...the locals table is updated each time control returns to the debugger or when you
change the stack location in the context: window watch window you may enter arbitrary javascript expressions in the watch: table located in the lower-right (dockable) pane in the debugger main window.
... the expressions you enter are re-evaluated in the current scope and their current values displayed each time control returns to the debugger or when you
change the stack location in the context: window.
Small Footprint
a few
changes can be made to reduce the footprint of rhino for embeddings where space is at a premium.
...with various
changes js.jar size can be reduced to 204,689 bytes corresponding to 424,774 bytes of uncompressed classes.
...this
change saves 47,984 bytes of class files.
Bytecode Descriptions
note: the frontend has to emit jsop::gimplicitthis (and not jsop::undefined) for global unqualified function calls, even when compileoptions::nonsyntacticscope == false, because later js::cloneglobalscript can be called with scopekind::nonsyntactic to clone the script into a non-syntactic environment, with the bytecode reused, un
changed.
...otherwise, it leaves value un
changed and pushes 'false'.
...implements: annex b.3.3.1,
changes to functiondeclarationinstantiation for block-level functions, step 1.a.ii.3.a, and similar steps in other annex b.3.3 algorithms, when setting the function's second binding can't be optimized.
Self-hosted builtins in SpiderMonkey
this restriction was added because otherwise it's extremely easy to accidentally call methods that have been
changed by content, changing the behavior from what was expected.
...e.g., if receiver is an object that content has access to, then callfunction(receiver.fun, receiver) wouldn't be guaranteed to work, because content might have
changed the value of receiver.fun, so callcontentfunction(receiver.fun, receiver) has to be used.
...not
changeable by client js code.
JS::CallArgs
(spidermonkey doesn't currently assert this, but it will do so eventually.) you don't need to use or
change this if your method fails.
... the eventual plan is to
change jsnative to take const callargs& directly, for automatic assertion of correct use and to make calling functions more efficient.
...then, when an eventual release making that
change occurs, porting efforts will require changing methods' signatures but won't require invasive
changes to the methods' implementations, potentially under time pressure.
JS_MakeStringImmutable
description a string's characters can never be
changed, but spidermonkey uses two string optimization techniques behind the scenes: a growable string (see js_newgrowablestring ) has a buffer that the javascript engine can reallocate so that concatenating it with another string is much faster.
... in both cases, the javascript engine may
change the fields of the jsstring.
... these
changes are not atomic.
Setting up CDT to work on SpiderMonkey
due to a bug in cdt, you have to make a small
change to cdt's build configuration as explained in step 3 below for that to work, though.
... instead,
change "build command" to read make -w (this is required because cdt needs detailed information about which directories make operates on, which using -w causes make to provide).
...
change the "build location" to the build directory configured in step 1.
Shell global objects
the added functions and their behavior are experimental: don't depend upon them unless you're willing to update your code if these experimental apis
change underneath you.
... setimmutableprototype(obj) try to make obj's [[prototype]] immutable, such that subsequent attempts to
change it will fail.
...for debugging only--this address may
change during a moving gc.
WebReplayRoadmap
set a breakpoint and right click on it to
change it to a log point.
... allowing css to be
changed while paused somewhere in the recording and update graphics with the effects of those
changes.
... object watching (not yet implemented) it would be nice to log the
changes to a specific object or one of its properties, so that the points of those
changes can be seeked to later.
Redis Tips
it sets the value of a key, and returns the value the key had before you
changed it.
... */ if(err) throw err; /** * if results === null, it means that a concurrent client *
changed the key while we were processing it and thus * the execution of the multi command was not performed.
... if you
change your mind, and you want to save the key from oblivion, you can persist it to undo the expire command.
Secure Development Guidelines
ion occurs when un-trusted input is mixed with a sql string sql is a language used to interact with databases code injection attack that is similar to xss but targeted at sql rather than html and javascript if input is mixed with sql, it could itself become an sql instruction and be used to: query data from the database (passwords) insert value into the database (a user account)
change application logic based on results returned by the database sql injection: example snprintf(str, sizeof(str), "select * from account where name ='%s'", name); sqlite3_exec(db, str, null, null, null); sql injection: prevention use parameterized queries insert a marker for every piece of dynamic content so data does not get mixed with sql instructions example: sqlite3_stm...
...ructs int main(void) { int i, fd; fd_set fdset; for( i = 0; i < 2000; i++) { fd = open("/dev/null", o_rdwr); } fd_set(fd, &fdset); } file i/o: race conditions operating on files can often lead to race conditions since the file system is shared with other processes you check the state of a file at one point in time and immediately after the state might have
changed most file name operations suffer from these race conditions, but not when performed on file descriptors file i/o: race conditions consider the following example int main(int argc, char **argv) { char *file = argv[1]; int fd; struct stat statbuf; stat(file, &statbuf); if (s_islink(statbuf.st_mode)) { bailout(“symbolic link”); } else if (statbuf.s...
...t_uid != getuid) { bailout(“you don’t own the file”); } fd = open(file, o_rdwr); write(fd, argv[2], strlen(argv[2])); } file i/o: race conditions previous example contains a race condition the file may
change between the call top stat() and open() this opens the possibility of writing arbitrary content to any file race conditions occur when two separate execution flows share a resource and its access is not synchronized properly race condition types include file (previously covered) thread (two threads share a resource but don’t lock it) signal race conditions example char *ptr; void sighandler() { if (ptr) free(ptr); _exit(0); } int main() { signal(sigint, sighandler); ptr = malloc(1000); ...
Setting up an update server
these
changes will need to be made in order to use the locally built mar: put this line in the mozconfig file in root of the build directory (create it if it does not exist): ac_add_options --disable-verify-mar several files contain a line that must be uncommented.
...these are the files that must be
changed: toolkit/components/maintenanceservice/moz.build toolkit/mozapps/update/tests/moz.build firefox should otherwise be built normally.
... next, you need to
change the update url to point to the local xml file.
Task graph
after a
change to the gecko source code is pushed to version-control, jobs for that
change appear on treeherder.
... this means it's easy to add a new job or tweak the parameters of a job in a try push, eventually landing that
change on an integration branch.
... the details of task-graph generation are documented in the source code itself, including a some quick recipes for common
changes.
Mork
the file is a collection of top-level structures, of which there exists four: dictionaries, tables, rows, and groups (
changesets).
...meta-dictionaries are in practice only used to
change the scope of alias definitions (the '(a=c)' that you can see in files).
...
changesets a group is theoretically an atomic transaction à la sql's transactions.
Using the Places annotation service
the annotation service does not currently enforce the annotation name format, but this may
change in the future.
...to get this information: getpageannotationinfo(auri, aname, aflags, aexpiration, amimetype, atype) getitemannotationinfo(aitemid, aname, aflags, aexpiration, amimetype, atype) getpageannotationtype(auri, aname); getitemannotationtype(aitemid, aname); the returned type will be one of the value_type constants in mozistoragevaluearray.idl: after bug 377066 the value_type_* type handling was
changed to this: type_int32 = 1 type_double = 2 type_string = 3 type_binary = 4 type_int64 = 5 try { var value = annotationservice.getpageannotation(uri, "my_extension/some_annotation"); } catch(e) { // annotation does not exist } other functions getpageswithannotation(aname, resultcount, results); getitemswithannotation(aname, resultcount, results); retrieves a list of all pages/...
... annotationservice.setpageannotation(uri, "my_extension/some_annotation", "this is the annotation value", 0, annotationservice.expire_never); annotation observers observers can also be added to the service to watch for
changes to annotations.
Receiving startup notifications
receiving startup notifications in gecko 2.0 (firefox 4) and later in order to improve startup times,
changes were made to the xpcom startup process.
...for example: category profile-after-
change mycomponent @foobar/mycomponent;1 important: in the past, the contract id of the category entry started with "service," if the component was implemented as a service.
...additionally, the earliest startup time notification you can receive is now profile-after-
change.
Introduction to XPCOM for the DOM
if you know a class implements an interface, just use the methods in the interface, and you don't have to care if the implementation of the interface (the concrete class)
changes.
...indeed, if someone decides to
change the name or the signature of the methods you use, you will have to
change all the calls to those methods throughout your code.
...that means that the interface will never
change anymore.
IAccessible2
1.0 66 introduced gecko 1.9 inherits from: iaccessible last
changed in gecko 1.9 (firefox 3) method overview [propget] hresult attributes([out] bstr attributes ); [propget] hresult extendedrole([out] bstr extendedrole ); [propget] hresult extendedstates([in] long maxextendedstates, [out, size_is(,maxextendedstates), length_is(, nextendedstates)] bstr extendedstates, [out] long nextendedstates ); [propget] hresult groupposition([out] long grouplevel, [out] long similaritemsingroup, [out] long positioningroup ); [propget] hresult indexinparent([out] long indexinparent ); [propget] hresult locale([out] ia2locale locale ); [propget] hresult localizedextendedrole([ou...
...this value can also be used by an at to determine when the current control has
changed.
...another use of this value by an at is to identify when a grouping object has
changed, for example when moving from a radio button in one group to a radio button in a different group.
mozIAsyncFavicons
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) nsifaviconservice handles this interface, so you do not need to directly create a new service.
...this function does not send out notifications that the data has
changed.
...this function does not send out notifications that the data has
changed.
mozIAsyncHistory
1.0 66 introduced gecko 24.0 inherits from: nsisupports last
changed in gecko 24.0 (firefox 24.0 / thunderbird 24.0 / seamonkey 2.21) implemented by: @mozilla.org/browser/history;1 as a service: var asynchistory = components.classes["@mozilla.org/browser/history;1"] .getservice(components.interfaces.moziasynchistory); method overview void getplacesinfo(in jsval aplaceidentifiers, in mozivisitinfocallback acallback); void isurivisited(in nsiuri auri, in mozivisitedstatuscallback acallback); void updateplaces(in moziplaceinfo, [optional] in mozivisitinfocallback acallback); meth...
... acallback optional a mozivisitinfocallback object to be notified for each visit addition, title
change, guid
change, or error.
...title
change and add visit).
nsIAccessibleRole
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) constants constant value description role_nothing 0 used when accessible has no strong defined role.
... role_animation 54 represents an animation control, which contains content that
changes over time, such as a control that displays a series of bitmap frames.
...as the user manipulates the scroll bars, the contents of the viewport can
change.
nsIAuthInformation
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the caller of nsiauthprompt2.promptusernameandpassword() or nsiauthprompt2.promptpasswordasync() provides an object implementing this interface; the prompt implementation can then read the values here to prefill the dialog.
...this field can only be
changed if the #only_password flag is not set.
...attempts to
change the username field will have no effect.
nsIChannel
inherits from: nsirequest last
changed in gecko 19.0 (firefox 19.0 / thunderbird 19.0 / seamonkey 2.16) once a channel is created (via nsiioservice.newchannel()), parameters for that request may be set by using the channel attributes, or by calling queryinterface() to retrieve a subclass of nsichannel for protocol-specific parameters.
... note: as of gecko 19.0, this parameter
changed from long to int64_t.
...if the notification callbacks are
changed, then a cached interface pointer may become invalid and may therefore need to be re-queried.
nsIContentPrefObserver
dom/interfaces/base/nsicontentprefservice.idlscriptable this interface allows code to easily watch for
changes to the values of content preferences.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void oncontentprefremoved(in astring agroup, in astring aname); void oncontentprefset(in astring agroup, in astring aname, in nsivariant avalue); methods oncontentprefremoved() called when a content preference is removed.
... aname the name of the preference whose value has
changed.
nsICookiePermission
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview nscookieaccess canaccess(in nsiuri auri, in nsichannel achannel); boolean cansetcookie(in nsiuri auri, in nsichannel achannel, in nsicookie2 acookie, inout boolean aissession, inout print64 aexpiry); nsiuri getoriginatinguri(in nsichannel achannel); void setaccess(in nsiuri auri, in nscookieaccess aaccess); constants constant value description access_default 0 nscookieaccess's access default value access_allow 1 nscookieaccess's access allow value access_deny 2 nscookieaccess's access deny value access_session 8 additi...
...cansetcookie may leave this value un
changed to preserve this attribute of the cookie.
...cansetcookie may leave this value un
changed to preserve this attribute of the cookie.
nsIDOMEvent
inherits from: nsisupports last
changed in gecko 16.0 (firefox 16.0 / thunderbird 16.0 / seamonkey 2.13) note: as of gecko 16.0, the nsiprivatedomevent interface was merged into this interface.
...0008 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 unload 0x00100000 xfer_done 0x00200000 abort 0x00400000 error 0x00800000 locate 0x01000000 move 0x02000000 resize 0x04000000 fo...
...if called from a subclass of event interface only the values specified in the initevent method are modified, all other attributes are left un
changed.
nsIDOMHTMLAudioElement
last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsidomhtmlmediaelement method overview unsigned long long mozcurrentsampleoffset(); void mozsetup(in pruint32 channels, in pruint32 rate); [implicit_jscontext] unsigned long mozwriteaudio(in jsval data); methods mozcurrentsampleoffset() non-standard this feature is non-standard and is not on a standards track.
...there may also be large incompatibilities between implementations and the behavior may
change in the future.
...there may also be large incompatibilities between implementations and the behavior may
change in the future.
nsIDeviceMotion
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) note: this interface was named nsidevicemotion prior to gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3).
... methods addlistener() when called, the accelerometer support implementation must begin to notify the specified nsidevicemotionlistener by calling its nsidevicemotionlistener.onacceleration
change() method as appropriate to share updated acceleration data.
... void addlistener( in nsidevicemotionlistener alistener ); parameters alistener the nsidevicemotionlistener object whose nsidevicemotionlistener.onacceleration
change() method should be called with updated acceleration data.
nsIDeviceMotionListener
xpcom/system/nsidevicemotion.idlscriptable this interface can be implemented by clients that want to be notified orientation or acceleration
changes on supported devices.
... 1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview void onmotion
change(in nsidevicemotiondata amotiondata); methods onmotion
change() called when new orientation or acceleration data is available.
... void onmotion
change( in nsidevicemotiondata amotiondata ); parameters aacceleration the nsidevicemotiondata object describing updated motion information.
nsIDragService
inherits from: nsisupports last
changed in gecko 43 (firefox 43 / thunderbird 43 / seamonkey 2.40) note: using this interface directly from add-on code is deprecated.
... methods native code only!dragmoved programmatically
changes the drag position of the drag session.
...this was
changed in gecko 43, see the following section.
nsIFaviconService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamonkey 2.19) implemented by: @mozilla.org/browser/favicon-service;1.
...this function does not send out notifications that the data has
changed.
...this function does not send out notifications that the data has
changed.
nsIINIParserWriter
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) this interface provides methods that allow writing to ini-format configuration files.
... method overview void setstring(in autf8string asection, in autf8string akey, 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.
...on windows only, this flag to writefile() can be used to
change the encoding from its default utf-8.
nsIJumpListBuilder
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) jump lists are built and then applied.
...users can
change the number through system preferences.
...task lists should generally be static lists that do not
change often, if at all - similar to an application menu.
nsILoginManagerStorage
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) for example, if you wish to provide operating system integration with a native password manager system, implementing and registering a storage module for the login manager is how you do it.
...if newlogindata is specified as an nsilogininfo object, all of the old login's properties are
changed to the values from the newlogindata parameter.
... if newlogindata is a nsipropertybag, only the properties specified in the nsipropertybag are
changed in oldlogin and its corresponding nsiloginmetainfo.
nsIMsgWindowCommands
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) the javascript implementation of this used by thunderbird is given here.
... method overview void selectfolder(in acstring folderuri); void selectmessage(in acstring messageuri); void clearmsgpane(); methods selectfolder() this method is called by the backend to
change the folder displayed in the message window.
... selectmessage() this method is called by the backend to
change the displayed message.
nsIProfile
66 introduced gecko 0.9 deprecated gecko 1.8.1 obsolete gecko 20.0 inherits from: nsisupports last
changed in gecko 1.6 implemented by: @mozilla.org/profile/manager;1.
... constants profile shutdown types constant value description shutdown_persist 0x00000001 when shutting down the profile, save all
changes.
... shutdown_cleanse 0x00000002 when shutting down the profile, discard
changes.
nsISHEntry
inherits from: nsihistoryentry last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) implemented by: @mozilla.org/browser/session-history-entry;1.
...nsicontentviewer getanycontentviewer( out nsishentry ownerentry ); parameters ownerentry return value getscrollposition() void getscrollposition( out long x, out long y ); parameters x y native code only!getviewerbounds saved position and dimensions of the content viewer; we must adjust the root view's widget accordingly if this has
changed when the presentation is restored.
...void settitle( in astring atitle ); parameters atitle setuniquedocidentifier()
changes this entry's doc identifier to a new value which is unique among those of all other entries.
nsIScriptableIO
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports a scriptable io object can be used in an extension or chrome code by referring to the global io object.
...by default, the buffer size is 1024 bytes; however, the size may be
changed by specifying the abuffersize parameter.
...by default, the buffer size is 1024 bytes; however, the size may be
changed by specifying the abuffersize parameter.
nsISocketTransport
inherits from: nsitransport last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) note: connection setup is triggered by opening an input or output stream, it does not start on its own.
... note: this attribute cannot be
changed once a stream has been opened.
...the values of these status codes must never
change.
nsIWebBrowserPersist
inherits from: nsicancelable last
changed in gecko 36.0 (firefox 36.0 / thunderbird 36.0 / seamonkey 2.33) implemented by: @mozilla.org/embedding/browser/nswebbrowser;1 and @mozilla.org/embedding/browser/nswebbrowserpersist;1.
... persist_flags_fixup_original_dom 128 make
changes to original dom rather than cloning nodes.
... persist_flags_serialize_output 1024 force serialization of output (one file at a time; not concurrent) persist_flags_dont_
change_filenames 2048 don't make any adjustments to filenames.
nsIWifiListener
netwerk/wifi/nsiwifilistener.idlscriptable this interface is implemented by clients interested in receiving notifications when the list of available wifi access points
changes.
... 1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void on
change([array, size_is(alen)] in nsiwifiaccesspoint accesspoints, in unsigned long alen); void onerror(in long error); methods on
change() called when the list of available access points
changes.
... void on
change( [array, size_is(alen)] in nsiwifiaccesspoint accesspoints, in unsigned long alen ); parameters accesspoints an array of nsiwifiaccesspoint objects representing all currently-available wifi access points.
nsIXULWindow
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) an nsixulwindow is created as part of the creation of a top-level chrome window.
... assumechromeflagsarefrozen() begin assuming chromeflags do not
change hereafter, and assert if they do
change.
... the state
change is one-way and idempotent.
Storage
the api is currently "unfrozen", which means it is subject to
change at any time; in fact, it has
changed somewhat with each release of firefox since it was introduced, and will likely continue to do so for a while.
...this extension is treated specially by windows as a known extension for an 'application compatibility database' and
changes are backed up by the system automatically as part of system restore functionality.
... once you start a transaction, you can either commit the
changes by calling mozistorageconnection.committransaction(), or rollback the
changes by calling mozistorageconnection.rollbacktransaction().
Using nsIDirectoryService
known locations the nsiproperties strings for currently defined locations can be found in: nsdirectoryservicedefs.h nsappdirectoryservicedefs.h nsxulappapi.h content formerly at http://www.mozilla.org/projects/xpco...locations.html background the way in which mozilla components locate special files and directories has
changed.
...in order to
change these locations using nsifilelocator and still be able to use the same components directory as an existing mozilla installation, you had to make a component with the same id as nsifilelocator and then, after auto-registering components, manually register your own and replace the existing one -- all in all, a big pain.
...customizing locations although you can
change locations one at a time by using the nsiproperties interface of nsdirectoryservice, you can also install your own nsidirectoryserviceprovider to control them en masse.
Working with Multiple Versions of Interfaces
the problem in this short note we illustrate how one can update an xpcom module in order for it to work in both firefox 2 and firefox 3, even if the interfaces have
changed in the interim.
...in actual fact we were lucky we actually got as far as we did, since the very first interface we made use of has
changed substantially.
...i did have to delve into my old versions and
change: ns_define_static_iid_accessor(...) to ns_declare_static_iid_accessor(...) this ugliness aside, my plan b routine now looks like: hwnd gethwndb(nsidomnode *node){ hwnd self = null; nsresult rv; nscomptr<nsicomponentmanager> compmgr; rv = ns_getcomponentmanager(getter_addrefs(compmgr)); if (ns_failed(rv)){ return self; } nscomptr<nsiaccessibleretrieval_old> refp; //n.b.
Xptcall Porting Status
he is hoping that others will help test the
changes using these two compilers on the various platforms where this same code is used.
...notice the last 2 files (the
change to mozilla\xpcom\build\makefile.win and mozilla\xpcom\build) are needed because i was unable to figure how to do a "declspecexport" from the assembler asaxp ...
... <font color="black">works</font> netbsd/m68k dave huang <khym@bga.com> dave's
changes are in the tree.
Mail composition back end
this will
change in the coming weeks and allow for developers to write javascript to take advantage of the back end services.
...this is something that very well may
change as time allows).
...currently, this pref is a "char *" which is the specific name of the folder, but this will more than likely
change to a prbool (boolean) preference.
Working with windows in chrome code
e = "status: " + text + "..."; } ]]></script> <label id="status" value="(no status)" /> <hbox> <progressmeter id="progressmeter" mode="determined" /> <button label="cancel" oncommand="close();" /> </hbox> </window> example 2: interacting with the opener sometimes an opened window needs to interact with its opener; for example, it might do so in order to give notice that the user has made
changes in the window.
...er in case it's the extension manager window, but a better way is to use nsiwindowmediator: var wm = components.classes["@mozilla.org/appshell/window-mediator;1"] .getservice(components.interfaces.nsiwindowmediator); var browserwindow = wm.getmostrecentwindow("navigator:browser"); // read values from |browserwindow| you might be tempted to use a similar technique to apply the
changes the user made in the options dialog, but a better way to do that is to use preferences observers.
...all of the arguments are passed by value, that is to say that any
changes made to the values in the new window will not affect the calling code.
Add to iPhoto
some of this may
change as i refine the example in the future; i'll update the article if and when that happens.
...for example, the cfarray type describes an array, but cfarray objects can't be
changed once they've been created.
...all cfarray functions accept cfmutablearray objects, so you can use cfmutablearray with any routine that accepts a cfarray as input, but cfmutablearray supports additional functions that let you
change the contents of the array.
Using COM from js-ctypes
this started out with dynamic data ex
change (dde), which was superseded by object linking and embedding (ole) and later by the component object model (com), automation objects, activex controls, and the .net framework.
... '0x6e', '0x04', '0x22', '0xd4']); let spf_default = 0; function main() { let spvoice; let spvoiceptr; try { // msdn docs tell us ot use coinitex instead of coinit, and default is 0 // which is coinit_multithreaded but it wouldnt work so i used // coinit_apartmentthreaded and it worked checkhresult would throw a bad // hresult of rpc_e_
changed_mode which is 0x80010106 which is // -2147417850.
...this example uses ipropertystore::setvalue to
change the system.usermodelapp.id of an open firefox window.
Version, UI, and Status Information - Plugins
changes to the minor version numbers indicate a smaller difference than
changes to the major version.
...
changes to the major version numbers probably indicate incompatibility.
... the plug-in calls the npn_version method to check for
changes in major and minor plug-in api version numbers.
Tutorial: Show Allocations Per Call Path - Firefox Developer Tools
(this menu will not be present unless you have
changed the preference as explained above.) selecting the 'browser' context in the scratchpad enter the following code in the scratchpad: // this simply defines the 'debugger' constructor in this // scratchpad; it doesn't actually start debugging anything.
...we will probably
change this to be the line number within page.html, not the line number within the handler code.) the onclick handler calls dodivsandspans, which calls divsandspans, which invokes closures of factory to do all the actual allocation.
... (it is unclear why spanfactory allocated thirteen objects, despite being called only ten times.) source metadata generated from file: js/src/doc/debugger/tutorial-alloc-log-tree.md watermark: sha256:b56f6df61c39dbe19ca1f49752aea42207c804355513f4fea8249bdeb4cb056d
changeset: 251fccc1f62b ...
Network request list - Firefox Developer Tools
you can also
change the width of the columns to help make the information you are looking for easier to view.
... the mouse pointer
changes to a resize icon when you move it over the border of a column.
... resend resends the request as it was originally sent with no
changes made.
Use the Inspector API - Firefox Developer Tools
.markdirty() - marks that the page has been
changed by the inspector - a warning will be shown when leaving the page, since
changes made through the inspector are rewritten on reload.
... bindable events using on: markuploaded called when the left panel has been refreshed, after page
change.
... layout-
change "low-priority
change event for things like paint and resize." ...
Work with animations - Firefox Developer Tools
if you click the icon, it enlarges and
changes to color, and the name of the browser appears.
... animation details if you click one of the bars, you'll see details of all the properties that were
changed in the animation.
... animation playback at the top of the animation inspector: there are buttons to play/pause and restart the animation there's a dropdown to
change the animation playback rate the current time in the animation is displayed.
Console messages - Firefox Developer Tools
reflows occur when a
change has happened to a page that the browser thinks affects the layout.
... synchronous and asynchronous reflows if a
change is made that invalidates the current layout — for example, the browser window is resized or some javascript modifies an element's css — the layout is not recalculated immediately.
...in this way the browser can save up a collection of invalidating
changes and recalculate their effect at once.
The JavaScript input interpreter - Firefox Developer Tools
select the menuitem to
change the state.
...select the menuitem to
change the state.
... working with iframes if a page contains embedded iframes, you can use the cd() function to
change the console's scope to a specific iframe, and then you can execute functions defined in the document hosted by that iframe.
AbstractRange - Web APIs
staticrange a staticrange is a basic range which cannot be
changed once it's been created.
... specifically, as the node tree mutates and
changes, the range does not.
... ranges and the hierarchy of the dom in order to define a range of characters within a document in a way that is able to span across zero or more node boundaries, and which is as resilient as possible to
changes to the dom, you can't simply specify the offset to the first and last characters in the html.
AbstractWorker - Web APIs
var myworker = new worker('worker.js'); first.on
change = function() { myworker.postmessage([first.value, second.value]); console.log('message posted to worker'); } the worker's code is loaded from the file "worker.js".
... this code assumes that there's an <input> element represented by first; an event handler for the
change event is established so that when the user
changes the value of first, a message is posted to the worker to let it know.
... living standard no
change from unknown.
Ambient Light Events - Web APIs
the ambient light events are a handy way to make a web page or an application aware of any
change in the light intensity.
... it allows them to react to such a
change, for example by changing the color contrast of the user interface (ui) or by changing the exposure necessary to take a picture.
... light events when the light sensor of a device detects a
change in the light level, it notifies the browser of that
change.
Animation.play() - Web APIs
return value undefined example in the growing/shrinking alice game example, clicking or tapping the cake causes alice's growing animation (alice
change) to play forward, causing her to get bigger, as well as triggering the cake's animation.
... two animation.play()s, one eventlistener: // the cake has its own animation: var nommingcake = document.getelementbyid('eat-me_sprite').animate( [ { transform: 'translatey(0)' }, { transform: 'translatey(-80%)' } ], { fill: 'forwards', easing: 'steps(4, end)', duration: alice
change.effect.timing.duration / 2 }); // pause the cake's animation so it doesn't play immediately.
... alice
change.play(); // play the cake's animation.
Animation.playbackRate - Web APIs
animations have a playback rate that provides a scaling factor from the rate of
change of the animation's timeline time values to the animation’s current time.
... examples in the growing/shrinking alice game example, clicking or tapping the bottle causes alice's growing animation (alice
change) to reverse, causing her to shrink: var shrinkalice = function() { alice
change.playbackrate = -1; alice
change.play(); } // on tap or click, alice will shrink.
... bottle.addeventlistener("mousedown", shrinkalice, false); bottle.addeventlistener("touchstart", shrinkalice, false); contrariwise, clicking on the cake causes her to "grow," playing alice
change forwards again: var growalice = function() { alice
change.playbackrate = 1; alice
change.play(); } // on tap or click, alice will grow.
AudioParam.setValueAtTime() - Web APIs
the setvalueattime() method of the audioparam interface schedules an instant
change to the audioparam value at a precise time, as measured against audiocontext.currenttime.
... syntax var audioparam = audioparam.setvalueattime(value, starttime) parameters value a floating point number representing the value the audioparam will
change to at the given time.
... starttime a double representing the time (in seconds) after the audiocontext was first created that the
change in value will happen.
BaseAudioContext - Web APIs
the sample-rate of an audiocontext cannot be
changed.
... event handlers baseaudiocontext.onstate
change an event handler that runs when an event of type state
change has fired.
... this occurs when the audiocontext's state
changes, due to the calling of one of the state
change methods (audiocontext.suspend, audiocontext.resume, or audiocontext.close).
BatteryManager - Web APIs
event handlers batterymanager.oncharging
change a handler for the charging
change event; this event is sent when the battery charging state is updated.
... batterymanager.onchargingtime
change a handler for the chargingtime
change event; this event is sent when the battery charging time is updated batterymanager.ondischargingtime
change a handler for the dischargingtime
change event; this event is sent when the battery discharging time is updated.
... batterymanager.onlevel
change a handler for the level
change event; this event is sent when the battery level is updated.
characteristic - Web APIs
to
change preferences in chrome, visit chrome://flags.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
readValue() - Web APIs
to
change preferences in chrome, visit chrome://flags.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
uuid - Web APIs
to
change preferences in chrome, visit chrome://flags.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
value - Web APIs
to
change preferences in chrome, visit chrome://flags.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
writeValue() - Web APIs
to
change preferences in chrome, visit chrome://flags.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
CSSStyleSheet.insertRule() - Web APIs
mystyle.insertrule('#blanc { color: white }', 0); function to add a stylesheet rule /** * add a stylesheet rule to the document (it may be better practice * to dynamically
change classes, so style information can be kept in * genuine stylesheets and avoid adding extra elements to the dom).
... /*else*/ return originalinsertrule.call( this, // the sheet to be
changed selectorandrule.substring(0, openbracketpos), // the selector selectorandrule.substring(closebracketpos), // the rule arguments[3] // the insert index ); } // works by if the char code is a backslash, then isescaped // gets flipped (xor-ed by 1), and if it is not a backslash // then isescaped gets xored by itself, zer...
... working draft no
change from document object model (dom) level 2 style specification.
Drawing shapes with canvas - Web APIs
in upcoming pages we'll see two alternative methods for clearrect(), and we'll also see how to
change the color and stroke style of the rendered shapes.
...the starting point can also be
changed by using the moveto() method.
...here, all we're doing is using it to
change the fill color for paths from the default color of black to white, and then back again.
Optimizing canvas - Web APIs
use multiple layered canvases for complex scenes in your application, you may find that some objects need to move or
change frequently, while others remain relatively static.
...the ui would
change only upon user input, the gameplay layer would
change with every new frame, and the background would remain generally un
changed.
... avoid unnecessary canvas state
changes.
DataTransfer.clearData() - Web APIs
register event handlers draggable.addeventlistener('dragstart', dragstarthandler); draggable.addeventlistener('dragend', dragendhandler); dropable.addeventlistener('dragover', dragoverhandler); dropable.addeventlistener('dragleave', dragleavehandler); dropable.addeventlistener('drop', drophandler); function dragstarthandler (event) { status.innerhtml = 'drag in process'; //
change target element's border to signify drag has started event.currenttarget.style.border = '1px dashed blue'; // start by clearing existing clipboards; this will affect all types since we // don't give a specific type.
...rdata(); // set the drag's format and data (use event target's id for data) event.datatransfer.setdata('text/plain', event.target.id); data.innerhtml = event.datatransfer.getdata('text/plain'); } function dragendhandler (event) { if (!dropped) { status.innerhtml = 'drag canceled'; } data.innerhtml = event.datatransfer.getdata('text/plain') || 'empty'; //
change border to signify drag is no longer in process event.currenttarget.style.border = '1px solid black'; if (dropped) { // remove all event listeners draggable.removeeventlistener('dragstart', dragstarthandler); draggable.removeeventlistener('dragend', dragendhandler); dropable.removeeventlistener('dragover', dragoverhandler); dropable.removeeventlistener('dragl...
...fault(); } function drophandler (event) { dropped = true; status.innerhtml = 'drop done'; event.preventdefault(); // get data linked to event format « text » var _data = event.datatransfer.getdata('text/plain'); var element = document.getelementbyid(_data); // append drag source element to event's target element event.target.appendchild(element); //
change css styles and displayed text element.style.csstext = 'border: 1px solid black;display: block; color: red'; element.innerhtml = "i'm in the drop zone!"; } }) specifications specification status comment html living standardthe definition of 'datatransfer.cleardata()' in that specification.
Document.lastModified - Web APIs
here is a possible example of how to show an alert message when the page
changes (see also: javascript cookies api): if (date.parse(document.lastmodified) > parsefloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1") || "0")) { document.cookie = "last_modif=" + date.now() + "; expires=fri, 31 dec 9999 23:59:59 gmt; path=" + location.pathname; alert("this page has
changed!"); } …the same example, but skipping the first visit: var n...
...lastvisit = parsefloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1")), nlastmodif = date.parse(document.lastmodified); if (isnan(nlastvisit) || nlastmodif > nlastvisit) { document.cookie = "last_modif=" + date.now() + "; expires=fri, 31 dec 9999 23:59:59 gmt; path=" + location.pathname; if (isfinite(nlastvisit)) { alert("this page has been
changed!"); } } note: webkit returns the time string in utc; gecko and internet explorer return a time in the local timezone.
... (see: bug 4363 – document.lastmodified returns date in utc time, but should return it in local time) if you want to know whether an external page has
changed, please read this paragraph about the xmlhttprequest() api.
Document.readyState - Web APIs
when the value of this property
changes, a readystate
change event fires on the document object.
... console.log("the first css rule is: " + document.stylesheets[0].cssrules[0].csstext); break; } readystate
change as an alternative to domcontentloaded event // alternative to domcontentloaded event document.onreadystate
change = function () { if (document.readystate === 'interactive') { initapplication(); } } readystate
change as an alternative to load event // alternative to load event document.onreadystate
change = function () { if (document.readystate === 'complete') { initapplication(); ...
... } } readystate
change as event listener to insert or modify the dom before domcontentloaded document.addeventlistener('readystate
change', event => { if (event.target.readystate === 'interactive') { initloader(); } else if (event.target.readystate === 'complete') { initapp(); } }); specifications specification status comment html living standardthe definition of 'document readiness' in that specification.
DocumentFragment - Web APIs
changes made to the fragment don't affect the document (even on reflow) or incur any performance impact when
changes are made.
... obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'documentfragment' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'documentfragment' in that specification.
Examples of web and XML development using the DOM - Web APIs
in the next example (see example 4), you can use stylesheets and their rules to
change styles for whole documents.
... <!doctype html> <html lang="en"> <head> <title>changing color and font-size example</title> <script> function
changetext() { var p = document.getelementbyid("pid"); p.style.color = "blue" p.style.fontsize = "18pt" } </script> </head> <body> <p id="pid" onclick="window.location.href = 'http://www.cnn.com/';">linker</p> <form> <p><input value="rec" type="button" onclick="
changetext();" /></p> </form> </body> </html> example 4: using stylesheets the stylesheets property on the document object returns a list of the stylesheets that have been loaded on that document.
...the event listener handles the event by executing the function stopevent, which
changes the value in the bottom cell of the table.
Element: mousewheel event - Web APIs
the value isn't
changed even if the scroll amount of system settings is page scroll.
...and also, the value isn't
changed even if the scroll amount of system settings is page scroll, i.e., the value is the same as ie on windows.
...the value is
changed if the device that causes the native wheel event supports continuous scroll.
Event - Web APIs
animationevent audioprocessingevent beforeinputevent beforeunloadevent blobevent clipboardevent closeevent compositionevent cssfontfaceloadevent customevent devicelightevent devicemotionevent deviceorientationevent deviceproximityevent domtransactionevent dragevent editingbeforeinputevent errorevent fetchevent focusevent gamepadevent hash
changeevent idbversion
changeevent inputevent keyboardevent mediastreamevent messageevent mouseevent mutationevent offlineaudiocompletionevent overconstrainederror pagetransitionevent paymentrequestupdateevent pointerevent popstateevent progressevent relatedevent rtcdatachannelevent rtcidentityerrorevent rtcidentityevent rtcpeerconnectioniceevent sensorevent storageevent svgevent s...
...it's possible this has been
changed along the way through retargeting.
...in addition, work is underway to
change this to be a domhighrestimestamp instead.
FileSystemEntry.copyTo() - Web APIs
errors fileerror.invalid_modification_err the requested operation involves an impossible
change, such as moving a directory inside itself or one of its own child directories, or copying an item within the same directory without renaming it.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
FileSystemEntry.moveTo() - Web APIs
errors fileerror.invalid_modification_err the requested operation involves an impossible
change, such as moving a directory inside itself or one of its own child directories, or copying an item within the same directory without renaming it.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
Force Touch events - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... webkitmouseforce
changed this event is fired each time the amount of pressure
changes.
... event properties the following property is known to be available on the webkitmouseforcewillbegin, mousedown, webkitmouseforce
changed, webkitmouseforcedown, webkitmouseforceup, mousemove, and mouseup event objects: mouseevent.webkitforce read only the amount of pressure currently being applied to the trackpad/touchscreen constants these constants are useful for determining the relative intensity of the pressure indicated by mouseevent.webkitforce: mouseevent.webkit_force_at_mouse_down read only minimum force necessary for a normal click mouseevent.webkit_force_at_force_mouse_down read only minimum force necessary for a force click specifications not part of any specification.
GamepadEvent - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support 22 full support 22 no support 15 — 21prefixed prefixed implemented with the vendor prefix: webkitsafari full support ...
...to
change preferences in firefox, visit about:config.ie no support noopera full support 22safari full support 10.1webview android no support nochrome android full support yesfirefox an...
...to
change preferences in firefox, visit about:config.ie no support noopera full support 22 full support 22 no support 15 — 21prefixed prefixed implemented with the vendor prefix: webkitsafari full support ...
GestureEvent - Web APIs
events using this interface include gesturestart, gesture
change, and gestureend.
... gestureevent.rotation read only
change in rotation (in degrees) since the event's beginning.
... gesture event types gesturestart gesture
change gestureend specifications not part of any specification.
GlobalEventHandlers.onclick - Web APIs
examples detecting clicks this example simply
changes the color of an element when it's clicked upon.
... html <div id="demo">click here</div> javascript document.getelementbyid('demo').onclick = function
changecontent() { document.getelementbyid('demo').innerhtml = "help me"; document.getelementbyid('demo').style = "color: red"; } result getting the coordinates of clicks this example displays the coordinates at which the most recent mouse button click occurred.
... html <p>click anywhere in this example.</p> <p id="log"></p> javascript let log = document.getelementbyid('log'); document.onclick = input
change; function input
change(e) { log.textcontent = `position: (${e.clientx}, ${e.clienty})`; } result specification specification status comment html living standardthe definition of 'onclick' in that specification.
GlobalEventHandlers.ondragend - Web APIs
<!doctype html> <html lang=en> <title>examples of using the drag and drop global event attribute</title> <meta content="width=device-width"> <style> div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } </style> </head> <script> function dragstart_handler(ev) { console.log("dragstart"); //
change the source element's background color to signify drag has started ev.currenttarget.style.border = "dashed"; ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); //
change the target element's border to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler...
...(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.appendchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); //
change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); //
change the source element's border back to white ev.currenttarget.style.background = "white"; } function dragend_handler(ev) { console.log("dragend"); //
change the target element's background color to visually indicate // the drag ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); //
change the source element's border back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondragend = dragend_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondragend</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag it t...
GlobalEventHandlers.ondragenter - Web APIs
<!doctype html> <html lang=en> <title>examples of using the drag and drop global event attribute</title> <meta content="width=device-width"> <style> div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } </style> </head> <script> function dragstart_handler(ev) { console.log("dragstart"); //
change the source element's background color to signify drag has started ev.currenttarget.style.border = "dashed"; ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); //
change the target element's border to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler...
...(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.appendchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); //
change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); //
change the source element's border back to white ev.currenttarget.style.background = "white"; } function dragend_handler(ev) { console.log("dragend"); //
change the target element's background color to visually indicate // the drag ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); //
change the source element's border back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondragend = dragend_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondragend</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag it t...
GlobalEventHandlers.ondragexit - Web APIs
<!doctype html> <html lang=en> <title>examples of using the drag and drop global event attribute</title> <meta content="width=device-width"> <style> div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } </style> </head> <script> function dragstart_handler(ev) { console.log("dragstart"); //
change the source element's background color to signify drag has started ev.currenttarget.style.border = "dashed"; ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); //
change the target element's border to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler...
...(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.appendchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); //
change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); //
change the source element's border back to white ev.currenttarget.style.background = "white"; } function dragend_handler(ev) { console.log("dragend"); //
change the target element's background color to visually indicate // the drag ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); //
change the source element's border back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondragend = dragend_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondragend</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element, drag it t...
GlobalEventHandlers.ondragleave - Web APIs
<!doctype html> <html lang=en> <title>examples of using the drag and drop global event attribute</title> <meta content="width=device-width"> <style> div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } </style> </head> <script> function dragstart_handler(ev) { console.log("dragstart"); //
change the source element's border to signify drag has started ev.currenttarget.style.border = "dashed"; ev.datatransfer.setdata("text", ev.target.id); } function dragover_handler(ev) { console.log("dragover"); //
change the target element's background color to signify a drag over event // has occurred ev.currenttarget.style.background = "lightblue"; ev.preventdefault(); } function drop_handler...
...(ev) { console.log("drop"); ev.preventdefault(); var data = ev.datatransfer.getdata("text"); ev.target.appendchild(document.getelementbyid(data)); } function dragenter_handler(ev) { console.log("dragenter"); //
change the source element's background color for enter events ev.currenttarget.style.background = "yellow"; } function dragleave_handler(ev) { console.log("dragleave"); //
change the source element's background color back to white ev.currenttarget.style.background = "white"; } function dragend_handler(ev) { console.log("dragend"); //
change the target element's background color to visually indicate // the drag ended.
... var el=document.getelementbyid("target"); el.style.background = "pink"; } function dragexit_handler(ev) { console.log("dragexit"); //
change the source element's background color back to green to signify a dragexit event ev.currenttarget.style.background = "green"; } function init() { // set handlers for the source's enter/leave/end/exit events var el=document.getelementbyid("source"); el.ondragenter = dragenter_handler; el.ondragleave = dragleave_handler; el.ondragend = dragend_handler; el.ondragexit = dragexit_handler; } </script> <body onload="init();"> <h1>examples of <code>ondragenter</code>, <code>ondragleave</code>, <code>ondragend</code>, <code>ondragexit</code></h1> <div> <p id="source" ondragstart="dragstart_handler(event);" draggable="true"> select this element,...
GlobalEventHandlers.ontransitionend - Web APIs
html this simply creates a <div> which we'll style with css below to make into a box that resizes and
changes color and such.
... <div class="box"></div> css the css below styles the box and applies a transition effect which makes the box's color and size
change, and causes the box to rotate, while the mouse cursor hovers over it.
...ight: 100px; background-color: #0000ff; color: #ffffff; padding: 20px; font: bold 1.6em "helvetica", "arial", sans-serif; transition: width 2s, height 2s, background-color 2s, transform 2s, color 2s; } .box:hover { background-color: #ffcccc; color: #000000; width: 200px; height: 200px; transform: rotate(180deg); } javascript next, we need to establish our event handlers to
change the text content of the box when the transition begins and ends.
HTMLBaseElement - Web APIs
recommendation no
change from html5 html5the definition of 'htmlbaseelement' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLFormElement: submit event - Web APIs
working draft no
change html 5.2the definition of 'submit' in that specification.
... recommendation no
change html 5.1the definition of 'submit' in that specification.
... recommendation no
change html5the definition of 'submit' in that specification.
HTMLMediaElement.load() - Web APIs
this method is generally only useful when you've made dynamic
changes to the set of sources available for the media element, either by changing the element's src attribute or by adding or removing <source> elements nested within the media element itself.
... load() will reset the element and rescan the available sources, thereby causing the
changes to take effect.
... if resetting the playback position to the beginning of the media actually
changes the playback position (that is, it was not already at the beginning), a timeupdate event is sent.
HTMLOutputElement - Web APIs
when the problem is reported, the user agent may focus the element and
change the scrolling position of the document or perform some other action that brings the element to the user's attention.
... if the element is in default mode when the descendants of the element are
changed in any way, the defaultvalue property is set to the value of the textcontent property.
... recommendation no
change html5the definition of 'htmloutputelement' in that specification.
HTMLSelectElement.type - Web APIs
living standard no
change from html5, the latest snapshot.
...no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLSlotElement.assignedNodes() - Web APIs
examples the following snippet is taken from our slot
change example (see it live also).
... let slots = this.shadowroot.queryselectorall('slot'); slots[1].addeventlistener('slot
change', function(e) { let nodes = slots[1].assignednodes(); console.log('element in slot "' + slots[1].name + '"
changed to "' + nodes[0].outerhtml + '".'); }); here we grab references to all the slots, then add a slot
change event listener to the 2nd slot in the template — which is the one that keeps having its contents
changed in the example.
... every time the element inserted in the slot
changes, we log a report to the console saying which slot has
changed, and what the new node inside the slot is.
HTMLTableCaptionElement - Web APIs
living standard no
change from html5.
... recommendation no
change from document object model (dom) level 2 html specification, though align was formerly obsoleted.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLTableElement.caption - Web APIs
living standard no
change from html5 html5the definition of 'htmltableelement.caption' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specificationthe definition of 'htmltableelement.caption' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'htmltableelement.caption' in that specification.
HTMLTableElement.tFoot - Web APIs
living standard no
change from html5 html5the definition of 'htmltableelement.tfoot' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specificationthe definition of 'htmltableelement.tfoot' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'htmltableelement.tfoot' in that specification.
HTMLTableElement.tHead - Web APIs
living standard no
change from html5 html5the definition of 'htmltableelement.thead' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specificationthe definition of 'htmltableelement.thead' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'htmltableelement.thead' in that specification.
HTMLTextAreaElement - Web APIs
this constraint is evaluated only when the value
changes.
...this constraint is evaluated only when the value
changes.
... events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this interface: input event fires when the value of an <input>, <select>, or <textarea> element has been
changed.
HTMLTitleElement - Web APIs
recommendation no
change from html5 html5the definition of 'htmltitleelement' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLTrackElement - Web APIs
cue
change sent when the underlying texttrack has
changed the currently-presented cues.
... you may also use the oncue
change event handler to establish a handler for this event.
...you can then
change the mode as desired later.
IDBObjectStore.createIndex() - Web APIs
note that this method must be called only from a version
change transaction mode callback.
... auto: the platform default locale will be used (may be
changed by user agent settings.) null or undefined: if no locale is specified, normal javascript sorting will be used — not locale-aware.
... invalidstateerror occurs if either: the method was not called from a version
change transaction mode callback, i.e.
IDBTransaction.mode - Web APIs
syntax var mycurrentmode = idbtransaction.mode; value an idbtransactionmode object defining the mode for isolating access to data in the current object stores: value explanation readonly allows data to be read but not
changed.
... readwrite allows reading and writing of data in existing data stores to be
changed.
... version
change allows any operation to be performed, including ones that delete and create object stores and indexes.
IDBTransactionSync - Web APIs
when this method is called, the browser ignores all the
changes performed to the objects of this database since this transaction was created.
...when this method is called, the browser durably stores all the
changes performed to the objects of the database since this transaction was created.
... recoverable_err if this transaction's scope is dynamic, and the browser cannot commit all of the
changes due to another transaction.
IndexedDB API - Web APIs
custom event interfaces this specification fires events with the following custom interface: idbversion
changeevent the idbversion
changeevent interface indicates that the version of the database has
changed, as the result of an idbopendbrequest.onupgradeneeded event handler function.
...they are still documented in case you need to update previously written code: idbversion
changerequest represents a request to
change the version of a database.
... the way to
change the version of the database has since
changed (by calling idbfactory.open without also calling idbdatabase.setversion), and the interface idbopendbrequest now has the functionality of the removed idbversion
changerequest.
InputEvent() - Web APIs
inputeventinitoptional is a inputeventinit dictionary, having the following fields: inputtype: (optional) a string specifying the type of
change for editible content such as, for example, inserting, deleting, or formatting text.
...this may be an empty string if the
change doesn't insert text (such as when deleting characters, for example).
... ranges: (optional) an array of static ranges that will be affected by a
change to the dom if the input event is not canceled.
InputEvent.getTargetRanges() - Web APIs
the gettargetranges() property of the inputevent interface returns an array of static ranges that will be affected by a
change to the dom if the input event is not canceled.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.
IntersectionObserver.IntersectionObserver() - Web APIs
if options isn't specified, the observer uses the document's viewport as the root, with no margin, and a 0% threshold (meaning that even a one-pixel
change is enough to trigger a callback).
...call its observe() method to begin watching for the visibility
changes on a given target.
... example this example creates a new intersection observer which calls the function myobservercallback every time the visible area of the element being observed
changes by at least 10%.
IntersectionObserver.observe() - Web APIs
one observer has one set of thresholds and one root, but can watch multiple target elements for visibility
changes in keeping with those.
... when the visibility of the specified element crosses over one of the observer's visibility thresholds (as listed in intersectionobserver.thresholds), the observer's callback is executed with an array of intersectionobserverentry objects representing the intersection
changes which occurred.
... note that this design allows multiple elements' intersection
changes to be processed by a single call to the callback.
IntersectionObserver.takeRecords() - Web APIs
the intersectionobserver method takerecords() returns an array of intersectionobserverentry objects, one for each targeted element which has experienced an intersection
change since the last time the intersections were checked, either explicitly through a call to this method or implicitly by an automatic call to the observer's callback.
... note: if you use the callback to monitor these
changes, you don't need to call this method.
... return value an array of intersectionobserverentry objects, one for each target element whose intersection with the root has
changed since the last time the intersections were checked.
IntersectionObserver - Web APIs
the intersectionobserver interface of the intersection observer api provides a way to asynchronously observe
changes in the intersection of a target element with an ancestor element or with a top-level document's viewport.
...the configuration cannot be
changed once the intersectionobserver is created, so a given observer object is only useful for watching for specific
changes in degree of visibility; however, you can watch multiple target elements with the same observer.
...the value returned by this property may not be the same as the one specified when calling the constructor as it may be
changed to match internal requirements.
IntersectionObserverEntry.target - Web APIs
the intersectionobserverentry interface's read-only target property indicates which targeted element has
changed its amount of intersection with the intersection root.
... syntax var target = intersectionobserverentry.target; value the intersectionobserverentry's target property specifies which element previously targeted by calling intersectionobserver.observe() experienced a
change in intersection with the root.
... function intersectioncallback(entries) { entries.foreach(function(entry) { entry.target.opacity = entry.intersectionratio; }); } to see a more concrete example, take a look at handling intersection
changes in timing element visibility with the intersection observer api.
LockedFile.location - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... this value is
changed automatically after every read and write operation.
... this property can be
changed at will.
MSCandidateWindowUpdate - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... mscandidatewindowupdate fires after the input method editor (ime) candidate window has been identified as needing to
change size, but before any visual updates have rendered.
... tan ime candidate window may be identified as needing to
change size for any of the following reasons: as a result of displaying new /
changed alternatives or predictions web applications need only register for this event once per element (the handler will remain valid for the lifetime of the element).
MediaKeySession - Web APIs
the mediakeysession interface of the encryptedmediaextensions api represents a context for message ex
change with a content decryption module (cdm).
...this value may
change during a session lifetime, such as when an action triggers the start of a window.
... event handlers mediakeysession.onkeystatuses
change sets the eventhandler called when there has been a
change in the keys in a session or their statuses.
MediaQueryListListener - Web APIs
a mediaquerylist object maintains a list of media queries on a document, and handles sending notifications to listeners when the media queries on the document
change.
... this makes it possible to observe a document to detect when its media queries
change, instead of polling the values periodically, if you need to detect
changes to the values of media queries on a document.
... a mediaquerylistlistener is a callback function that gets invoked with a single argument, the mediaquerylist for which the evaluated result
changed.
Capabilities, constraints, and settings - Web APIs
the twin concepts of constraints and capabilities let the browser and web site or app ex
change information about what constrainable properties the browser's implementation supports and what values it supports for each one.
... you can also
change the constraints of an existing mediastreamtrack on the fly, by calling the track's applyconstraints() method, passing into it an object representing the constraints you wish to apply to the track: videotrack.applyconstraints({ width: 1920, height: 1080 }); in this snippet, the video track referenced by videotrack is updated so that its resolution as closely as possible matches 1920x1080 pi...
...you can then apply those
changes and see the result, including both what the stream looks like and what the actual media settings are set to after applying the new constraints.
MutationEvent - Web APIs
domelementname
changed and domattributename
changed are not supported in firefox (as of version 11), and probably in other browsers as well.
... mutation events list the following is a list of all mutation events, as defined in dom level 3 events specification: domattrmodified domattributename
changed domcharacterdatamodified domelementname
changed domnodeinserted domnodeinsertedintodocument domnoderemoved domnoderemovedfromdocument domsubtreemodified usage you can register a listener for mutation events using eventtarget.addeventlistener() as follows: element.addeventlistener("domnodeinserted", function (event) { // ...
... }, false); the event object is passed to the listener in a mutationevent (see its definition in the specification) for most events, and mutationnameevent for domattributename
changed and domelementname
changed.
MutationObserver - Web APIs
the mutationobserver interface provides the ability to watch for
changes being made to the dom tree.
... constructor mutationobserver() creates and returns a new mutationobserver which will invoke a specified callback function when dom
changes occur.
... observe() configures the mutationobserver to begin receiving notifications through its callback function when dom
changes matching the given options occur.
Navigator.onLine - Web APIs
the property sends updates whenever the browser's ability to connect to the network
changes.
... you can see
changes in the network state by listening for the events on window.ononline and window.onoffline.
... to see
changes in the network state, use addeventlistener to listen for the events on window.online and window.offline, as in the following example: window.addeventlistener('offline', function(e) { console.log('offline'); }); window.addeventlistener('online', function(e) { console.log('online'); }); specifications specification status comment html living standardthe definition ...
Network Information API - Web APIs
examples detect connection
changes this example watches for
changes to the user's connection.
... var connection = navigator.connection || navigator.mozconnection || navigator.webkitconnection; var type = connection.effectivetype; function updateconnectionstatus() { console.log("connection type
changed from " + type + " to " + connection.effectivetype); type = connection.effectivetype; } connection.addeventlistener('
change', updateconnectionstatus); preload large resources the connection object is useful for deciding whether to preload resources that take large amounts of bandwidth or memory.
...= true; var connection = navigator.connection || navigator.mozconnection || navigator.webkitconnection; if (connection) { if (connection.effectivetype === 'slow-2g') { preloadvideo = false; } } interfaces networkinformation provides information about the connection a device is using to communicate with the network and provides a means for scripts to be notified if the connection type
changes.
Node.appendChild() - Web APIs
living standard no
change from document object model (dom) level 3 core specification.
... obsolete no
change from document object model (dom) level 2 core specification.
... obsolete no
change from document object model (dom) level 1 specification.
Node.baseURI - Web APIs
although this property is read-only, its value may
change in certain situations (see below).
... details the base url of a document the base url of a document defaults to the document's address (as displayed by the browser and available in window.location), but it can be
changed: when an html <base> tag is found in the document when the document is new (created dynamically) see the base urls section of the html living standard for details.
...note that obtaining the base url for a document may return different urls over time if the <base> tags or the document's location
change.
Node.firstChild - Web APIs
living standard no
change document object model (dom) level 3 core specificationthe definition of 'node.firstchild' in that specification.
... obsolete no
change document object model (dom) level 2 core specificationthe definition of 'node.firstchild' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'node.firstchild' in that specification.
Node.lastChild - Web APIs
living standard no
change document object model (dom) level 3 core specificationthe definition of 'node.lastchild' in that specification.
... obsolete no
change document object model (dom) level 2 core specificationthe definition of 'node.lastchild' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'node.lastchild' in that specification.
Node.previousSibling - Web APIs
living standard no
change document object model (dom) level 3 core specificationthe definition of 'node.previoussibling' in that specification.
... obsolete no
change document object model (dom) level 2 core specificationthe definition of 'node.previoussibling' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'node.previoussibling' in that specification.
Using the Notifications API - Web APIs
we don't want to show it if permission has already been granted, but if the user chose to deny permission, we want to give them the chance to
change their mind later on.
...the user already read the notification on the webpage, in the case of a messaging app, or the following song is already playing in a music app to notifies upon song
changes).
... var n = new notification('my great song'); document.addeventlistener('visibility
change', function() { if (document.visibilitystate === 'visible') { // the tab has become visible so clear the now-stale notification.
PannerNode.setVelocity() - Web APIs
the velocity relative to the listener is used to control the pitch
change needed to conform with the doppler effect due to the relative speed.
...you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PaymentRequest.show() - Web APIs
those look like this: async/await syntax using await to wait for a promise to be resolved makes it possible to write the code to handle payments particularly cleanly: async function processpayment() { try { const payrequest = new paymentrequest(methoddata, details, options); payrequest.onshippingaddress
change = ev => ev.updatewith(checkaddress(payrequest)); payrequest.onshippingoption
change = ev => ev.updatewith(checkshipping(payrequest)); const repsonse = await payrequest.show(); await validateresponse(response); } catch(err) { /* handle the error; aborterror usually means a user cancellation */ } } in this code, the methods checkaddress() and checkshipping(), respectively, che...
...ck the shipping address and the shipping option
changes and supply in response either a paymentdetailsupdate object or a promise to return one; this object contains the fields in the paymentresponse which have been or need to be
changed.
... then/catch syntax you can also use the older promise-based approach to work with payments, using the then() and catch() functions on the promise returned by show(): function processspayment() { const payrequest = new paymentrequest(methoddata, details, options); payrequest.onshippingaddress
change = ev => ev.updatewith(checkaddress(payrequest)); payrequest.onshippingoption
change = ev => ev.updatewith(checkshipping(payrequest)); payrequest.show() .then(response => validateresponse(response)) .catch(err => handleerror(err)); } this is functionally equivalent to the processpayment() method using the await syntax.
PaymentResponse.complete() - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 56 ...
...to
change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.details - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 56 ...
...to
change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse.payerEmail - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 56 ...
...to
change preferences in chrome, visit chrome://flags.firefox android full support 56notes disabled full support 56notes disabled notes available only in nightly builds.disabled from version 56: this feature is behind the dom.payments.request.enabled preference (needs to be set to true).
... to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PaymentResponse - Web APIs
payerdetail
change secure context fired during a retry when the user makes
changes to their personal information while filling out a payment request form.
... allows the developer to revalidate any requested user data (e.g., the phone number or the email address) if it
changes.
... also available via the onpayerdetail
change property.
performance.now() - Web APIs
it used to be the same as t0 of the main context, but this was
changed.
... the precision of the returned value is subject to
change if/when the security concerns are alleviated through other means.
... in firefox, you can also enable privacy.resistfingerprinting — this
changes the precision to 100ms or the value of privacy.resistfingerprinting.reducetimerprecision.microseconds, whichever is larger.
PerformanceTiming - Web APIs
performancetiming.domloading read only when the parser started its work, that is when its document.readystate
changes to 'loading' and the corresponding readystate
change event is thrown.
... performancetiming.dominteractive read only when the parser finished its work on the main document, that is when its document.readystate
changes to 'interactive' and the corresponding readystate
change event is thrown.
... performancetiming.domcomplete read only when the parser finished its work on the main document, that is when its document.readystate
changes to 'complete' and the corresponding readystate
change event is thrown.
PermissionStatus - Web APIs
the permissionstatus interface of the permissions api provides the state of an object and an event handler for monitoring
changes to said state.
... event handler permissionstatus.on
change an event called whenever permissionstatus.status
changes.
... example navigator.permissions.query({name:'geolocation'}).then(function(permissionstatus) { console.log('geolocation permission status is ', permissionstatus.state); permissionstatus.on
change = function() { console.log('geolocation permission status has
changed to ', this.state); }; }); specification specification status comment permissionsthe definition of 'permissionstatus' in that specification.
Using the Permissions API - Web APIs
ed') { report(result.state); geobtn.style.display = 'none'; } else if (result.state == 'prompt') { report(result.state); geobtn.style.display = 'none'; navigator.geolocation.getcurrentposition(revealposition,positiondenied,geosettings); } else if (result.state == 'denied') { report(result.state); geobtn.style.display = 'inline'; } result.on
change = function() { report(result.state); } }); } function report(state) { console.log('permission ' + state); } handlepermission(); permission descriptors the permissions.query() method takes a permissiondescriptor dictionary as a parameter — this contains the name of the api you are interested in.
... responding to permission state
changes you'll notice that there is an on
change event handler in the code above, attached to the permissionstatus object — this allows us to respond to any
changes in the permission status for the api we are interested in.
... at the moment we are just reporting the
change in state.
PointerEvent.getCoalescedEvents() - Web APIs
to
change preferences in firefox, visit about:config.opera android full support 43safari ios no support nosamsung internet android full support 7.0legend full support full support partial s...
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.user must explicitly enable this feature.user must explicitly enable this feature.
Proximity Events - Web APIs
these events make it possible to react to such a
change, for example by shutting down the screen of a smartphone when the user is having a phone call with the device close to their ear.
... proximity events when the device proximity sensor detects a
change between the device and an object, it notifies the browser of that
change.
... when the browser gets such a notification, it fires a deviceproximityevent for any
change, and a userproximityevent event in the case of a more rough
change.
PushEvent.PushEvent() - Web APIs
this can be push or pushsubscription
change.
...expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
RTCOfferOptions.iceRestart - Web APIs
usage notes when the rtcpeerconnection object's ice connection state
changes to failed, you should try to trigger an ice restart.
... fundamentally, this renegotiation is triggered by generating and using new values for the ice username fragment ("ufrag")}} example this example shows a handler for the iceconnectionstate
change event.
... pc.oniceconnectionstate
change = function(evt) { if (pc.iceconnectionstate === "failed") { if (pc.restartice) { pc.restartice(); } else { pc.createoffer({ icerestart: true }) .then(pc.setlocaldescription) .then(sendoffertoserver); } } } if the state
changes to failed, this handler starts by looking to see if the rtcpeerconnection includes the restartice() method; if it does, we call that to request an ice restart.
RTCPeerConnection.addTrack() - Web APIs
this includes things like
changes to the transceiver's direction and tracks being halted using removetrack().
... if all of those criteria are met, the sender gets reused, which results in these
changes occurring to the existing rtcrtpsender and its rtcrtptransceiver: the rtcrtpsender's track is set to the specified track.
...the process of creating a new sender results in these
changes: the new rtcrtpsender is created with the specified track and set of stream(s).
RTCPeerConnection: icecandidate event - Web APIs
the end-of-candidates indication is described in section 9.3 of the trickle ice draft specification (note that the section number is subject to
change as the specification goes through repeated drafts).
... if you need to perform any special actions when there are no further candidates expected, you're much better off watching the ice gathering state by watching for icegatheringstate
change events: pc.addeventlistener("icegatheringstate
change", ev => { switch(pc.icegatheringstate) { case "new": /* gathering is either just starting or has been reset */ break; case "gathering": /* gathering has begun or is ongoing */ break; case "complete": /* gathering has ended */ break; } }); as you can see in this example, the icegatheringstat...
...e
change event lets you know when the value of the rtcpeerconnection property icegatheringstate has been updated.
RTCPeerConnection.restartIce() - Web APIs
the next time the connection's signalingstate
changes to stable, the connection will fire the negotiationneeded event.
... example this example creates a handler for the iceconnectionstate
change event that handles a transition to the failed state by restarting ice in order to try again.
... pc.addeventlistener("iceconnectionstate
change", event => { if (pc.iceconnectionstate === "failed") { /* possibly reconfigure the connection in some way here */ /* then request ice restart */ pc.restartice(); } }); with this code in place, a transition to the failed state during ice negotiation will cause a negotiationneeded event to be fired, in response to which your code should renegotiate as usual.
RTCPeerConnection.signalingState - Web APIs
in addition, when the value of this property
changes, a signalingstate
change event is sent to the rtcpeerconnection instance.
... rtcsignalingstate enum the rtcsignalingstate enum specifies the possible values of rtcpeerconnection.signalingstate, which indicates where in the process of signaling the ex
change of offer and answer the connection currently is.
... constant description "stable" there is no ongoing ex
change of offer and answer underway.
RTCRtpParameters - Web APIs
this parameter cannot be
changed once initially set.
...this parameter cannot be
changed once initially set.
...this parameter cannot be
changed once initially set.
RTCSessionDescription.type - Web APIs
the allowed values are those of an enum of type rtcsdptype: "offer", the description is the initial proposal in an offer/answer ex
change.
... "answer", the description is the definitive choice in an offer/answer ex
change.
... "pranswer", the description is a provisional answer and may be
changed when the definitive choice will be given.
Request.cache - Web APIs
if the server indicates that the resource has not
changed, it will be returned from the cache.
...if the server indicates that the resource has not
changed, it will be returned from the cache.
...// in reality; this would be a function that takes a path and a // reference to the controller since it would need to
change the value let controller = new abortcontroller(); fetch("some.json", {cache: "only-if-cached", mode: "same-origin", signal: controller.signal}) .catch(e => e instanceof typeerror && e.message === "failed to fetch" ?
SVGStyleElement - Web APIs
svg 1.1 defined that a domexception is raised with code no_modification_allowed_err on an attempt to
change the value of a read-only attribute.
... svg 1.1 defined that a domexception is raised with code no_modification_allowed_err on an attempt to
change the value of a read-only attribute.
... svg 1.1 defined that a domexception is raised with code no_modification_allowed_err on an attempt to
change the value of a read-only attribute.
Selection.modify() - Web APIs
the selection.modify() method applies a
change to the current selection or cursor position, using simple textual commands.
... syntax sel.modify(alter, direction, granularity) parameters alter the type of
change to apply.
...this makes the behavior more consistent, as well as making it work the same way webkit used to work, but unfortunately they have recently
changed their behavior.
ServiceWorker - Web APIs
event handlers serviceworker.onstate
change read only an eventlistener property called whenever an event of type state
change is fired; it is basically fired anytime the serviceworker.state
changes.
...the code listens for any
change in the serviceworker.state and returns its value.
...serviceworker = registration.waiting; document.queryselector('#kind').textcontent = 'waiting'; } else if (registration.active) { serviceworker = registration.active; document.queryselector('#kind').textcontent = 'active'; } if (serviceworker) { // logstate(serviceworker.state); serviceworker.addeventlistener('state
change', function (e) { // logstate(e.target.state); }); } }).catch (function (error) { // something went wrong during registration.
ServiceWorkerRegistration - Web APIs
next, it adds an updatefound listener in which it uses the service worker registration to listen for further
changes to the service worker's state.
... if the service worker hasn't
changed since the last time it was registered, then the updatefound event will not be fired.
... var installingworker = registration.installing; console.log('a new service worker is being installed:', installingworker); // you can listen for
changes to the installing service worker's // state via installingworker.onstate
change }); }) .catch(function(error) { console.log('service worker registration failed:', error); }); } else { console.log('service workers are not supported.'); } specifications specification status comment service workersthe definition of 'serviceworkerregistration' in that s...
SpeechSynthesis - Web APIs
voices
changed fired when the list of speechsynthesisvoice objects that would be returned by the speechsynthesis.getvoices() method has
changed.
... also available via the onvoices
changed property.
... var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.appendchild(option); } } populatevoicelist(); if (speechsynthesis.onvoices
changed !== undefined) { speechsynthesis.onvoices
changed = populatevoicelist; } inputform.onsubmit = function(event) { event.preventdefault(); var utterthis = new speechsynthesisutterance(inputtxt.value); var selectedoption = voiceselect.selectedoptions[0].getattribute('data-name'); for(i = 0; i < voices.length ; i++) { if(voices[i].name === selectedoption) { utterthis.voice = voic...
Text.splitText() - Web APIs
living standard no
change from document object model (dom) level 3 core specification.
... obsolete no
change from document object model (dom) level 2 core specification.
... obsolete no
change from document object model (dom) level 1 specification.
TextTrack.mode - Web APIs
you can read this value to determine the current mode, and you can
change this value to switch modes.
...when a text track is loaded in the disabled state, the corresponding webvtt file is not loaded until the state
changes to either showing or hidden.
... however, that means that if you wish to perform any actions involving the track's cues while handling, for example, the load event—in order to process some aspect of the cues upon page load—and the track mode was initially disabled, you'll have to
change the mode to either hidden or showing in order to trigger loading of the cues.
TextTrack - Web APIs
changing this property's value
changes the track's current mode to match.
... events cue
change fired when cues are entered and exited.
... also available via the oncue
change property.
Using textures in WebGL - Web APIs
const vssource = ` attribute vec4 avertexposition; attribute vec2 atexturecoord; uniform mat4 umodelviewmatrix; uniform mat4 uprojectionmatrix; varying highp vec2 vtexturecoord; void main(void) { gl_position = uprojectionmatrix * umodelviewmatrix * avertexposition; vtexturecoord = atexturecoord; } `; the key
change here is that instead of fetching the vertex color, we're fetching the texture coordinates and passing them to the vertex shader; this will indicate the location within the texture corresponding to the vertex.
... attribute and uniform locations because we
changed an attribute and added a uniform we need to look up their locations const programinfo = { program: shaderprogram, attriblocations: { vertexposition: gl.getattriblocation(shaderprogram, 'avertexposition'), texturecoord: gl.getattriblocation(shaderprogram, 'atexturecoord'), }, uniformlocations: { projectionmatrix: gl.getuniformlocation(shaderprogram, 'uprojecti...
...onmatrix'), modelviewmatrix: gl.getuniformlocation(shaderprogram, 'umodelviewmatrix'), usampler: gl.getuniformlocation(shaderprogram, 'usampler'), }, }; drawing the textured cube the
changes to the drawscene() function are simple.
WebGL best practices - Web APIs
avoid invalidating fbo attachment bindings almost any
change to an fbo's attachment bindings will invalidate its framebuffer completeness.
...for un
changed vaos, browsers can cache the fetch limits, whereas when vaos
change, browsers must revalidate and recalculate limits.
...since you need to split draw call batches to
change textures, texture atlasing lets you combine more draw calls into fewer, bigger batches.
Writing a WebSocket server in C# - Web APIs
tcpclient client = server.accepttcpclient(); console.writeline("a client connected."); networkstream stream = client.getstream(); //enter to an infinite cycle to be able to handle every
change in stream while (true) { while (!stream.dataavailable); byte[] bytes = new byte[client.available]; stream.read(bytes, 0, bytes.length); } handshaking when a client connects to a server, it sends a get request to upgrade the connection to a websocket from a simple http request.
...these bytes
change with every message.
... server = new tcplistener(ipaddress.parse(ip), port); server.start(); console.writeline("server has started on {0}:{1}, waiting for a connection...", ip, port); tcpclient client = server.accepttcpclient(); console.writeline("a client connected."); networkstream stream = client.getstream(); // enter to an infinite cycle to be able to handle every
change in stream while (true) { while (!stream.dataavailable); while (client.available < 3); // match against "get" byte[] bytes = new byte[client.available]; stream.read(bytes, 0, client.available); string s = encoding.utf8.getstring(bytes); if (regex.ismatch(s, "^get", regexoptions.ignorecase)) { console.
Geometry and reference spaces in WebXR - Web APIs
each object within the scene that needs to directly ex
change position and orientation data with the webxr system needs to be able to report that information in a way that can be understood and adapted as needed to be comprehensible by other objects within the scene.
...however, as
changes in alignment accumulate over time the origin offset may
change to compensate.
... <<<--- insert table of reference space requirements here --->>> positioning and orienting objects all spatial (position, orientation, and movement) information ex
changed between your app and the webxr api is expressed in relation to a specific space at the time the frame is being rendered.
Web Audio API - Web APIs
it can be set to a specific value or a
change in value, and can be scheduled to happen at a specific time and following a specific pattern.
... gainnode the gainnode interface represents a
change in volume.
...behind web audio apithis article explains some of the audio theory behind how the features of the web audio api work, to help you make informed decisions while designing how audio is routed through your app.controlling multiple parameters with constantsourcenodethis article demonstrates how to use a constantsourcenode to link multiple parameters together so they share the same value, which can be
changed by simply setting the value of the constantsourcenode.offset parameter.example and tutorial: simple synth keyboardthis article presents the code and working demo of a video keyboard you can play using the mouse.
Web Storage API - Web APIs
e allows you to set, retrieve and remove data for a specific domain and storage type (session or local.) window the web storage api extends the window object with two new properties — window.sessionstorage and window.localstorage — which provide access to the current domain's session and local storage objects respectively, and a window.onstorage event handler that fires when a storage area
changes (e.g.
... a new item is stored.) storageevent the storage event is fired on a document's window object when a storage area
changes.
... in addition, we have provided an event output page — if you load this page in another tab, then make
changes to your choices in the landing page, you'll see the updated storage information outputted as the storageevent is fired.
Using Web Workers - Web APIs
when you want to send a message to the worker, you post messages to it like this (main.js): first.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } so here we have two <input> elements represented by the variables first and second; when the value of either is
changed, myworker.postmessage([first.value,se...
... sending messages to and from a shared worker now messages can be sent to the worker as before, but the postmessage() method has to be invoked through the port object (again, you'll see similar constructs in both multiply.js and square.js): squarenumber.on
change = function() { myworker.port.postmessage([squarenumber.value,squarenumber.value]); console.log('message posted to worker'); } now, on to the worker.
...you have to do it indirectly, by sending a message back to the main script via dedicatedworkerglobalscope.postmessage, then actioning the
changes from there.
Window.open() - Web APIs
after a window is opened, javascript can't be used to
change the features.
... the purpose is to warn users in advance of context
changes to minimize confusion on the user's part: changing the current window or popping up new windows can be very disorienting to users (back toolbar button is disabled).
...opening new browser windows, jakob nielsen, may 1999 when extreme
changes in context are explicitly identified before they occur, then the users can determine if they wish to proceed or so they can be prepared for the
change: not only they will not be confused or feel disoriented, but more experienced users can better decide how to open such links (in a new window or not, in the same window, in a new tab or not, in "background" or not).
WindowEventHandlers.onstorage - Web APIs
the storage event fires when a storage area has been
changed in the context of another document.
... 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.
WindowEventHandlers - Web APIs
windoweventhandlers.onhash
change is an eventhandler representing the code to be called when the hash
change event is raised.
... windoweventhandlers.onlanguage
change is an eventhandler representing the code to be called when the language
change event is raised.
... living standard no
change since the latest snapshot, html 5.1.
WorkerGlobalScope - Web APIs
language
change fired at the global/worker scope object when the user's preferred languages
change.
... also available via the workerglobalscope.onlanguage
change property.
...this
change was made to stop close() being available on service workers, as it isn't supposed to be used there and always throws an exception when called (see bug 1336043).
XMLHttpRequest.responseType - Web APIs
it also lets the author
change the response type.
... exceptions invalidaccesserror an attempt was made to
change the value of responsetype on anxmlhttprequest which is in synchronous mode but not in a worker.
... usage notes synchronous xhr restrictions you cannot
change the value of responsetype in a synchronous xmlhttprequest except when the request belongs to a worker.
XRReferenceSpace: reset event - Web APIs
this is common when the user calibrates or recalibrates an xr device, or if the device automatically
changes its origin after losing tracking of the user, then re-gaining it.
... in the case of xrboundedreferencespace objects, the reset event can also be fired when the boundsgeometry
changes.
...this way, the user's position only
changes once rather than twice.
XRReferenceSpace - Web APIs
since the origin will typically be the user's location in the space, you need to
change the origin to reflect their movement and any orientation
changes they make.
... to move or rotate the user's view of the world, you need to
change the xrreferencespace used to represent that viewpoint.
... however, xrreferencespace is immutable, so you need to instead create a new reference space representing the
changed viewpoint.
XRSessionEvent() - Web APIs
these objects represent events announcing state
changes in an xrsession representing an augmented or virtual reality session.
... visibility
change fired at the session whenever its visibility state
changes.
... examples this example creates a listiener that watches for the visibility state of the session to
change.
XRView - Web APIs
in addition, the number of views can
change at any time, depending on the needs of the time.
... if in the future it becomes possible for each view to render into a different layer, there would have to be
changes made to the api, so it's safe for now to assume that all views will render into the same layer.
...it's computed by inverting then transposing the model view matrix: mat4.invert(normalmatrix, modelviewmatrix); mat4.transpose(normalmatrix, normalmatrix); teleporting an object to programmatically move and/or rotate (often referred to as teleporting) an object, you need to create a new reference space for that object which applies a transform that encapsulates the desired
changes.
Using the aria-relevant attribute - Accessibility
the aria-relevant attribute is an optional value used to describe what types of
changes have occurred to an aria-live region, and which are relevant and should be announced.
... any
change that is not relevant acts in the same manner it would if the aria-live attribute were set to off.
... text are
changes to the textual content of existing nodes; should be considered relevant.
Using the log role - Accessibility
by default updates contain only the
changes to the live region and these are announced when the user is idle.
... where the user needs to hear the entire live region upon a
change aria-atomic="true" should be set.
... assistive technology products should listen for such an event and notify the user accordingly: screen readers should announce
changes inside a log when the user is idle, unless aria-live=”assertive” has been set and in which case the user may be interrupted.
ARIA annotations - Accessibility
role="suggestion" — semantically denotes a single proposed
change to an editable document.
...> <li><label>apple: <input type="radio" name="fruit" value="apple"></label></li> <li><label>orange: <input type="radio" name="fruit" value="orange"></label></li> <li><label>banana: <input type="radio" name="fruit" value="banana"></label></li> </ul> </form> </section> insertions and deletions a common wish in online document systems like google docs is to be able to track
changes, to see what reviewers or editors have suggested as
changes to the text, before the managing editor or author accepts or rejects those
changes.
...rex called tiny</ins>.</p> with the new additions, you now have new roles available to provide the same semantics, should you be unable to use <ins> and <del> elements for some reason: <p>freida’s pet is a <span role="deletion">black cat called luna</span><span role="insertion">purple tyrannosaurus rex called tiny</span>.</p> however, this often isn’t enough — when you’ve got a content
change like the one above that involves an insertion and a deletion, there is no way for a screenreader user to work out if the two are related or not.
ARIA: timer role - Accessibility
set in response to keyboard or other application events that
change focus or point of interaction.
...on subsequent calls, only the parts of the content that
changed compared to the previous content will be announced.
... for instance, when the clock
changes from "17:33" to "17:34", assistive technologies will only announce "4", which won't be very useful to users.
Web accessibility for seizures and physical reactions - Accessibility
a <div> element set to
change color and luminosity at high frequency, easily done via javascript, can cause real harm.
...ght-level from w3c's draft document, media queries level 5 section on light-level: "the light-level media feature is used to query about the ambient light-level in which the device is used, to allow the author to adjust style of the document in response." this will be a godsend to those who have motor-skills problems, or for some with cognitive difficulties, who cannot find the right "button" to
change their screen settings.
... formula to determine brightness of rgb color stack ex
change discussion thread how the color red influences our behavior scientific american by susana martinez-conde, stephen l.
Text labels and names - Accessibility
<div role="dialog" aria-labelledby="dialog1title" aria-describedby="dialog1desc"> <h2 id="dialog1title">your personal details were successfully updated</h2> <p id="dialog1desc">you can
change your details at any time in the user account section.</p> <button>close</button> </div> if the dialog box doesn't have a heading, you can instead use aria-label to contain the label text: <div role="dialog" aria-label="personal details updated confirmation"> <p>your personal details were successfully updated.
... you can
change your details at any time in the user account section.</p> <button>close</button> </div> see also role="dialog" role="alertdialog" aria-label aria-labelledby wai-aria: dialog role dialog authoring practices documents must have a title it is important on each html document to include a <title> that describes the page's purpose.
... examples the title for the reference article about the <title> element is as follows: <title><title>: the document title element - html: hypertext markup language</title> another example might look like so: <title>fill in your details to register — mygov services</title> to help the user, you can update the page title value to reflect significant page state
changes (such as form validation problems): <title>2 errors — fill in your details to register — mygov services</title> see also <title> embedded content must be labeled make sure that elements that embed content have a title attribute that describes the embedded content.
:-moz-ui-invalid - CSS: Cascading Style Sheets
if the element is required, the preceding rules apply only if the user has
changed the value or attempted to submit the form.
... the result is that if the control was valid when the user started interacting with it, the validity styling is
changed only when the user shifts focus to another control.
...required items have the pseudo-class applied only if the user
changes them or attempts to submit an un
changed valid value.
:-moz-ui-valid - CSS: Cascading Style Sheets
if the element is required, the preceding rules apply only if the user has
changed the value or attempted to submit the form.
... the result is that if the control was valid when the user started interacting with it, the validity styling is
changed only when the user shifts focus to another control.
...required items are flagged as invalid only if the user
changes them or attempts to submit an un
changed invalid value.
:first - CSS: Cascading Style Sheets
(see :first-child for general first element of a node.) /* selects the first page when printing */ @page :first { margin-left: 50%; margin-top: 50%; } note: you can't
change all css properties with this pseudo-class.
... you can only
change the margins, orphans, widows, and page breaks of the document.
... working draft no
change.
:fullscreen - CSS: Cascading Style Sheets
examples in this example, the color of a button is
changed depending on whether or not the document is in full-screen mode.
... this is done without needing to specifically apply style
changes using javascript.
... html the page's html looks like this: <h1>mdn web docs demo: :fullscreen pseudo-class</h1> <p>this demo uses the <code>:fullscreen</code> pseudo-class to automatically
change the style of a button used to toggle full-screen mode on and off, entirely using css.</p> <button id="fs-toggle">toggle fullscreen</button> the <button> with the id "fs-toggle" will
change between pale red and pale green depending on whether or not the document is in full-screen mode.
:visited - CSS: Cascading Style Sheets
although these styles can be
change the appearance of colors to the end user, the window.getcomputedstyle method will lie and always return the value of the non-:visited color.
... working draft no
change.
... recommendation no
change.
:where() - CSS: Cascading Style Sheets
to
change preferences in chrome, visit chrome://flags.edge no support nofirefox full support 78 full support 78 full support 77notes disabled notes enabled by default in firefox nightly.disabled from version 77: this feature is b...
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android no support nochrome android full support 72disabled full support 72disabled disabled from version 72: this feature is behind the #enable-experimental-web-platform-features preference (needs to be set to enabled).
... to
change preferences in chrome, visit chrome://flags.firefox android no support noopera android no support nosafari ios no support nosamsung internet android no support nolegend full support full support no support no supportsee implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
CSS 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 color
change { 0% { background: yellow } 100% { background: blue } } .box { width: 100px; height: 100px; border: 1px solid black; } .changing { animation: color
change 2s; } there are two classes here.
...the animation details are included in the "changing" class, which says that the @keyframes named "color
change" should be used over the course of two seconds to animate the box.
...however,
changes to the class list don't take effect until the style recomputation is complete and a refresh has occurred to reflect the
change.
Border-radius generator - CSS: Cascading Style Sheets
content 'use strict'; /** * ui-inputslidermanager */ var inputslidermanager = (function inputslidermanager() { var subscribers = {}; var sliders = []; var inputcomponent = function inputcomponent(obj) { var input = document.createelement('input'); input.setattribute('type', 'text'); input.addeventlistener('click', function(e) { this.select(); }); input.addeventlistener('
change', function(e) { var value = parseint(e.target.value); if (isnan(value) === true) setvalue(obj.topic, obj.value); else setvalue(obj.topic, value); }); subscribe(obj.topic, function(value) { input.value = value + obj.unit; }); return input; } var slidercomponent = function slidercomponent(obj, sign) { var slider = document.createelement('div'); var startx = nul...
...d = id; checkbox.setattribute('type', 'checkbox'); checkbox.checked = state; label.setattribute('for', id); if (name) { label.classname = 'text'; if (align) label.classname += ' ' + align; label.textcontent = name; } node.appendchild(checkbox); node.appendchild(label); this.node = node; this.topic = topic; this.checkbox = checkbox; checkbox.addeventlistener('
change', function(e) { notify.call(this); }.bind(this)); buttons[topic] = this; } var getnode = function getnode(topic) { return buttons[topic].node; } var setvalue = function setvalue(topic, value) { try { buttons[topic].checkbox.checked = value; } catch(error) { console.log(error); } } var subscribe = function subscribe(topic, callback) { if (subscribers[topic] === ...
...id("unit-selection"); var unitw = new unitselector(this.topic + '-w'); var unith = new unitselector(this.topic + '-h'); var unitr = new unitselector(this.topic); unit_selector.appendchild(unitw.container); unit_selector.appendchild(unith.container); unit_selector.appendchild(unitr.container); node.appendchild(radius); subject.appendchild(handle); unitw.select.addeventlistener('
change', function(e) { this.setunitx(e.target.value | 0); }.bind(this)); unith.select.addeventlistener('
change', function(e) { this.setunity(e.target.value | 0); }.bind(this)); unitr.select.addeventlistener('
change', function(e) { this.setunitr(e.target.value | 0); }.bind(this)); if (x === 'left' && y == 'top') handle.classname = 'handle handle-top-left' if (x === 'right' && y ...
Flow Layout and Writing Modes - CSS: Cascading Style Sheets
the writing modes specification the css writing modes level 3 specification defines the impact a
change the document writing mode has on flow layout.
...if you want to
change your page, or part of your page, to vertical-lr then you can set writing-mode: vertical-lr on the element and this will
change the direction of the blocks and therefore the inline direction as well.
... replaced elements replaced elements such as images will not
change their orientation based on the writing-mode property.
Logical properties for floating and positioning - CSS: Cascading Style Sheets
if you
change the writing-mode to vertical-rl or the direction to rtl you will see that the left-floated box always sticks to the left, whereas the inline-start-floated item follows the direction and writing-mode.
...
change the writing-mode property to vertical-rl, or add direction: rtl, and see how the flow relative box stays with the text direction.
... if you
change the value of direction to rtl you will see that the alignment stays to the right for the first block, but goes to the logical end on the left in the second.
Basic concepts of CSS Scroll Snap - CSS: Cascading Style Sheets
in the example below you can
change the value between mandatory and proximity to see the effect this has on the scroll experience.
...in the below example you can
change the value of scroll-snap-align to see how this
changes the scroll behavior.
...try changing the scroll-padding value to see how this
changes the distance.
Cookbook template - CSS: Cascading Style Sheets
recipe
change the path to the example below to point to your merged example.
... the last parameter is the live example height, which you can
change as needed.
...
change the link to point to your merged download version.
Media queries - CSS: Cascading Style Sheets
you can also use mediaquerylist.addlistener() to be notified whenever the state of a query
changes.
... with this functionality, your site or app can respond to
changes in the device configuration, orientation, or state.
... testing media queries programmatically describes how to use media queries in your javascript code to determine the state of a device, and to set up listeners that notify your code when the results of media queries
change (such as when the user rotates the screen or resizes the browser).
Privacy and the :visited selector - CSS: Cascading Style Sheets
only the following styles can be applied to visited links: color background-color border-color (and its sub-properties) column-rule-color outline-color the color parts of the fill and stroke attributes in addition, even for the above styles, you won't be able to
change the transparency between unvisited and visited links, as you otherwise would be able to using rgba(), hsla(), or the transparent keyword.
...you need to specify a different value, otherwise
changes on :visited won't apply.
...they may, however, require the following
changes to existing sites: using background images to style links based on whether they've been visited will no longer work, since only colors can be used to style visited links.
Visual formatting model - CSS: Cascading Style Sheets
user agents can
change the layout of the page when the viewport size
changes — for example, if you resize your window, or
change the orientation of a mobile device.
... something to consider about these anonymous boxes is that they inherit styles from their direct parent, but you cannot
change how they look by targeting the anonymous box.
...this does not
change the anonymous boxes, as they are not a child of the parent block.
all - CSS: Cascading Style Sheets
values initial specifies that all the element's properties should be
changed to their initial values.
... inherit specifies that all the element's properties should be
changed to their inherited values.
... unset specifies that all the element's properties should be
changed to their inherited values if they inherit by default, or to their initial values if not.
<custom-ident> - CSS: Cascading Style Sheets
will-
change forbids the global css values (unset, initial, and inherit), as well as the values will-
change, auto, scroll-position, and contents.
... editor's draft css will
change module level 1the definition of '<custom-ident> for will-
change' in that specification.
... candidate recommendation defines which values are excluded for will-
change.
<filter-function> - CSS: Cascading Style Sheets
the <filter-function> css data type represents a graphical effect that can
change the appearance of an input image.
... hue-rotate()
changes the overall hue of the image.
... width: 60% } output { width: 5%; text-align: center; } select { width: 40%; margin-left: 2px; } javascript const selectelem = document.queryselector('select'); const divelem = document.queryselector('div'); const slider = document.queryselector('input'); const output = document.queryselector('output'); const curvalue = document.queryselector('p code'); selectelem.addeventlistener('
change', () => { setslider(selectelem.value); setdiv(selectelem.value); }); slider.addeventlistener('input', () => { setdiv(selectelem.value); }); function setslider(filter) { if(filter === 'blur') { slider.value = 0; slider.min = 0; slider.max = 30; slider.step = 1; slider.setattribute('data-unit', 'px'); } else if(filter === 'brightness' || filter === 'contrast' || filt...
font-variant-position - CSS: Cascading Style Sheets
the glyphs are positioned relative to the baseline of the font, which remains un
changed.
...to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari no support nowebview android no support nochrome android no support nofirefox android ...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios no support nosamsung internet android no support nolegend full support full support no support no supportuser must ...
font-variant - CSS: Cascading Style Sheets
recommendation no
change css level 1the definition of 'font-variant' in that specification.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 39safari full support 9.1webview android full support 52chrome android full support 52firefox an...
...to
change preferences in firefox, visit about:config.opera android full support 41safari ios full support 9.3samsung internet android full support 6.0greek accented characterschrome no support nonotes no support nonotes notes some operating sys...
image-orientation - CSS: Cascading Style Sheets
this includes any user-directed
changes to the orientation of the image, or
changes required for printing in portrait versus landscape orientation.
...flip ] examples orienting image from image data css #image { image-orientation: from-image; /* can be
changed in the live sample */ } html <img id="image" src="https://udn.realityripple.com/samples/db/4f9fbd7dfb.svg" alt="orientation taken from the image"> <select id="imageorientation"> <option value="from-image">from-image</option> <option value="none">none</option> </select> javascript var imageorientation = document.getelementbyid("imageorientation"); imageorientation.addeventlistener(...
..."
change", function (evt) { document.getelementbyid("image").style.imageorientation = evt.target.value; }); result specifications specification status comment css images module level 3the definition of 'image-orientation' in that specification.
mask-size - CSS: Cascading Style Sheets
the mask positioning area is, by default, the area containing the content of the box and its padding; the area may also be
changed to just the content or to the area containing borders, padding and content.
... containwhere <length-percentage> = <length> | <percentage> examples setting mask size as a percentage css #masked { width: 200px; height: 200px; background: blue linear-gradient(red, blue); -webkit-mask-image: url(https://mdn.mozillademos.org/files/12668/mdn.svg); mask-image: url(https://mdn.mozillademos.org/files/12668/mdn.svg); -webkit-mask-size: 50%; mask-size: 50%; /* can be
changed in the live sample */ margin-bottom: 10px; } html <div id="masked"> </div> <select id="masksize"> <option value="auto">auto</option> <option value="40% 80%">40% 80%</option> <option value="50%" selected>50%</option> <option value="200px 100px">200px 100px</option> <option value="cover">cover</option> <option value="contain">contain</option> </select> javascript var masksize ...
...= document.getelementbyid("masksize"); masksize.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.masksize = evt.target.value; }); result specifications specification status comment css masking module level 1the definition of 'mask-size' in that specification.
Guide to scroll anchoring - CSS: Cascading Style Sheets
scroll anchoring adjusts the scroll position to compensate for the
changes outside of the viewport.
... this means that the point in the document the user is looking at remains in the viewport, which may mean their scroll position actually
changes in terms of how far they have moved through the document.
... these suppression triggers are
changes to the computed value of any of the following properties: top, left, right, or bottom margin or padding any width or height-related properties transform additionally, position
changes anywhere inside the scrolling box also disable scroll anchoring.
position - CSS: Cascading Style Sheets
one solution is to add will-
change: transform to the positioned elements to render the element in its own layer, improving repaint speed and therefore improving performance and accessibility.
...to
change preferences in firefox, visit about:config.ie no support noopera full support 43safari full support 6.1prefixed full support 6.1prefixed prefixed implemented with the vendor prefix: -webkit-webview android ...
...to
change preferences in firefox, visit about:config.opera android full support 43safari ios full support 6.1prefixed full support 6.1prefixed prefixed implemented with the vendor prefix: -webkit-samsung internet android full support ...
text-align - CSS: Cascading Style Sheets
editor's draft no
changes css text module level 4the definition of 'text-align' in that specification.
...
changed the unnamed initial value to start (which it was).
... recommendation no
changes css level 1the definition of 'text-align' in that specification.
text-transform - CSS: Cascading Style Sheets
in irish (ga), certain prefixed letters remain in lowercase when the base initial is capitalized, so for example text-transform: uppercase will
change ar aon tslí to ar aon tslÍ and not, as one might expect, ar aon tslÍ (firefox only).
...other characters remain un
changed (they retain their original case as written in the element's text).
... none is a keyword that prevents the case of all characters from being
changed.
<url> - CSS: Cascading Style Sheets
this
change was not only awkward but, debatably, unnecessary, since urns are almost never used in actual css.
... candidate recommendation no significant
change from css level 2 (revision 1).
... recommendation no significant
change from css level 1.
Adding captions and subtitles to HTML5 video - Developer guides
gress> </div> <button id="mute" type="button" data-state="mute">mute/unmute</button> <button id="volinc" type="button" data-state="volup">vol+</button> <button id="voldec" type="button" data-state="voldown">vol-</button> <button id="fs" type="button" data-state="go-fullscreen">fullscreen</button> <button id="subtitles" type="button" data-state="subtitles">cc</button> </div> css
changes the video controls have undergone some minor
changes in order to make space for the extra button, but these are relatively straightforward.
... no image is used for the captions button, so it is simply styled as: .controls button[data-state="subtitles"] { height:85%; text-indent:0; font-size:16px; font-size:1rem; font-weight:bold; color:#666; background:#000; border-radius:2px; } there are also other css
changes that are specific to some extra javascript implementation, but these will be mentioned at the appropriate place below.
...there are only a handful of css properties that can be applied to a text cue: color opacity visibility text-decoration text-shadow background shorthand properties outline shorthand properties font shorthand properties, including line-height white-space for example, to
change the text colour of the text track cues you can write: ::cue { color:#ccc; } if the webvtt file uses voice spans, which allow cues to be defined as having a particular "voice": 0 00:00:00.000 --> 00:00:12.000 <v test>[test]</v> then this specific 'voice' will be stylable like so: ::cue(v[voice='test']) { color:#fff; background:#0095dd; } note: some of the styling of cues with ::cue...
Writing Web Audio API code that works in every browser - Developer guides
plus we want to write code that reliably works in the future, or at least, works with a minimum amount of
changes.
...there's a section in the spec that lists the old names and their updated equivalences; be sure to check it out and
change your code accordingly.
...if they aren't, you might be able to
change them into something "acceptable" for the time being, and count on the talented audio developers to implement those very soon.
Audio and Video Delivery - Developer guides
license/key ex
change is controlled by the application, facilitating the development of robust playback applications supporting a range of content decryption and protection technologies.
...adaptive streaming media means that the bandwidth and typically quality of the stream can
change in real-time in reaction to the user's available bandwidth.
... html5 playbackrate explained the playbackrate property allows us to
change the speed or rate at which a piece of web audio or video is playing.
Mouse gesture events - Developer guides
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...the delta value is the cumulative
change over the course of handling the entire sequence of magnify gesture events.
...the delta value is the cumulative
change over the course of handling the entire sequence of rotate gesture events.
Constraint validation - Developer guides
basically, the idea is to trigger javascript on some form field event (like on
change) to calculate whether the constraint is violated, and then to use the method field.setcustomvalidity() to set the result of the validation: an empty string means the constraint is satisfied, and any other string means there is an error and this string is the error message to display to the user.
... if (constraint.test(zipfield.value)) { // the zip follows the constraint, we use the constraintapi to tell it zipfield.setcustomvalidity(""); } else { // the zip doesn't follow the constraint, we use the constraintapi to // give a message about the format required for this country zipfield.setcustomvalidity(constraints[country][1]); } } then we link it to the on
change event for the <select> and the oninput event for the <input>: window.onload = function () { document.getelementbyid("country").on
change = checkzip; document.getelementbyid("zip").oninput = checkzip; } you can see a live example of the postal code validation.
...ast) one file selected if (files.length > 0) { if (files[0].size > 75 * 1024) { // check the constraint fs.setcustomvalidity("the selected file must not be larger than 75 kb"); return; } } // no custom constraint violation fs.setcustomvalidity(""); } finally we hook the method with the correct event: window.onload = function () { document.getelementbyid("fs").on
change = checkfilesize; } you can see a live example of the file size constraint validation.
Index - Developer guides
5 wai aria live regions/api support ajax, accessibility firefox 3 contains important improvements to the way the mozilla engine exposes live
changes in a document.
... 14 web audio playbackrate explained apps, audio, media, video, playbackrate the playbackrate property of the <audio> and <video> elements allows us to
change the speed, or rate, at which a piece of web audio or video is playing 15 writing web audio api code that works in every browser api you probably have already read the announcement on the web audio api coming to firefox, and are totally excited and ready to make your until-now-webkit-only sites work with firefox, which uses the unprefixed version of the spec.
... 22 mutation events advanced, dom, guide mutation events provide a mechanism for a web page or an extension to get notified about
changes made to the dom.
<b>: The Bring Attention To element - HTML: Hypertext Markup Language
further, stylesheets can
change the default style of these elements, with the result that they are not necessarily displayed in bold.
...this makes it easier to manage multiple use cases of <b> if your stylistic needs
change, without the need to
change all of its uses in the html.
...styling information has been deprecated since html4, so the meaning of the <b> element has been
changed.
<del>: The Deleted Text element - HTML: Hypertext Markup Language
this can be used when rendering "track
changes" or source code diff information, for example.
... cite a uri for a resource that explains the
change (for example, meeting minutes).
... datetime this attribute indicates the time and date of the
change and must be a valid date string with an optional time.
<input type="checkbox"> - HTML: Hypertext Markup Language
events
change and input supported common attributes checked idl attributes checked, indeterminate and value methods select() value a domstring representing the value of the checkbox.
...it does not indicate whether this checkbox is currently checked: if the checkbox’s state is
changed, this content attribute does not reflect the
change.
...px; margin: 0 auto; } div { margin-bottom: 10px; } fieldset { background: cyan; border: 5px solid blue; } legend { padding: 10px; background: blue; color: cyan; } javascript var othercheckbox = document.queryselector('input[value="other"]'); var othertext = document.queryselector('input[id="othervalue"]'); othertext.style.visibility = 'hidden'; othercheckbox.addeventlistener('
change', () => { if(othercheckbox.checked) { othertext.style.visibility = 'visible'; othertext.value = ''; } else { othertext.style.visibility = 'hidden'; } }); specifications specification status comment html living standardthe definition of '<input type="checkbox">' in that specification.
<input type="date"> - HTML: Hypertext Markup Language
among browsers with custom interfaces for selecting dates are chrome and opera, whose data control looks like so: the edge date control looks like: and the firefox date control looks like this: value a domstring representing a date in yyyy-mm-dd format, or empty events
change and input supported common attributes autocomplete, list, readonly, and step idl attributes list, value, valueasdate, valueasnumber.
...daynum = 29 : daynum = 28; } // inject the right number of new <option> elements into the day <select> for(i = 1; i <= daynum; i++) { var option = document.createelement('option'); option.textcontent = i; dayselect.appendchild(option); } // if previous day has already been set, set dayselect's value // to that day, to avoid the day jumping back to 1 when you //
change the year if(previousday) { dayselect.value = previousday; // if the previous day was set to a high number, say 31, and then // you chose a month with less total days in it (e.g.
...tion populateyears() { // get this year as a number var date = new date(); var year = date.getfullyear(); // make this year, and the 100 years before it available in the year <select> for(var i = 0; i <= 100; i++) { var option = document.createelement('option'); option.textcontent = year-i; yearselect.appendchild(option); } } // when the month or year <select> values are
changed, rerun populatedays() // in case the
change affected the number of available days yearselect.on
change = function() { populatedays(monthselect.value); } monthselect.on
change = function() { populatedays(monthselect.value); } //preserve day selection var previousday; // update what day has been set to previously // see end of populatedays() for usage dayselect.on
change = function() { previ...
<input type="datetime-local"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, readonly, and step idl attributes list, value, valueasnumber.
...daynum = 29 : daynum = 28; } // inject the right number of new <option> elements into the day <select> for(i = 1; i <= daynum; i++) { var option = document.createelement('option'); option.textcontent = i; dayselect.appendchild(option); } // if previous day has already been set, set dayselect's value // to that day, to avoid the day jumping back to 1 when you //
change the year if(previousday) { dayselect.value = previousday; // if the previous day was set to a high number, say 31, and then // you chose a month with less total days in it (e.g.
...("0" + i) : i; minuteselect.appendchild(option); } } // when the month or year <select> values are
changed, rerun populatedays() // in case the
change affected the number of available days yearselect.on
change = function() { populatedays(monthselect.value); } monthselect.on
change = function() { populatedays(monthselect.value); } //preserve day selection var previousday; // update what day has been set to previously // see end of populatedays() for usage dayselect.on
change = function() { previ...
<input type="file"> - HTML: Hypertext Markup Language
events
change and input supported common attributes required additional attributes accept, capture, files, multiple idl attributes files and value dom interface htmlinputelement properties properties that apply only to elements of type file methods select() value a file input's value attribute contains a domstring...
... next, we add an event listener to the input to listen for
changes to its selected value
changes (in this case, when files are selected).
... input.addeventlistener('
change', updateimagedisplay); whenever the updateimagedisplay() function is invoked, we: use a while loop to empty the previous contents of the preview <div>.
<input type="month"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, readonly, and step.
...its value can, however, still be
changed from javascript code that directly sets the value of the htmlinputelement.value property.
... the <select> for choosing the month is hardcoded with the names of the months, as they don't
change (leaving localization out of things).
<input type="password"> - HTML: Hypertext Markup Language
value a domstring representing a password, or empty events
change and input supported common attributes autocomplete, inputmode, maxlength, minlength, pattern, placeholder, readonly, required, and size idl attributes selectionstart, selectionend, selectiondirection, and value methods select(), setrangetext(), and setselectionrange() value the value attribute contains a domstring whose value is the current contents of ...
...its value can, however, still be
changed from javascript code that directly sets the value of the htmlinputelement.value property.
... new-password allow the browser or password manager to automatically enter a new password for the site; this is used on "
change your password" and "new user" forms, on the field asking the user for a new password.
<input type="search"> - HTML: Hypertext Markup Language
events
change and input supported common attributes autocomplete, list, maxlength, minlength, pattern, placeholder, required, size.
...its value can, however, still be
changed by javascript code directly setting the htmlinputelement.value property.
...to see the status of the
change being implemented in firefox, see bug 1490661.
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
it does not indicate whether this checkbox is currently checked: if the checkbox’s state is
changed, this content attribute does not reflect the
change.
...to see the status of the
change being implemented in firefox, see bug 1490661.
...try again!'); } }); the example renders like so: in brief: we check the valid state of the input element every time its value is
changed by running the checkvalidity() method via the input event handler.
<pre>: The Preformatted Text element - HTML: Hypertext Markup Language
example html <p>using css to
change the font color is easy.</p> <pre> body { color: red; } </pre> result accessibility concerns it is important to provide an alternate description for any images or diagrams created using preformatted text.
... living standard no significant
change from html5 html5the definition of '<pre>' in that specification.
... recommendation no significant
change from html 4.01 specification html 4.01 specificationthe definition of '<pre>' in that specification.
<summary>: The Disclosure Summary element - HTML: Hypertext Markup Language
when the user clicks on the summary, the parent <details> element is toggled open or closed, and then a toggle event is sent to the <details> element, which can be used to let you know when this state
change occurs.
...this makes it possible to
change or remove the icon displayed as the disclosure widget next to the label from the default, which is typically a triangle.
... you can also
change the style to display: block to remove the disclosure triangle.
<track>: The Embed Text Track element - HTML: Hypertext Markup Language
detecting cue
changes the underlying texttrack, indicated by the track property, receives a cue
change event every time the currently-presented cue is
changed.
... if the track is associated with a media element, using the <track> element as a child of the <audio> or <video> element, the cue
change event is also sent to the htmltrackelement.
... let texttrackelem = document.getelementbyid("texttrack"); texttrackelem.addeventlistener("cue
change", (event) => { let cues = event.target.track.activecues; }); in addition, you can use the oncue
change event handler: let texttrackelem = document.getelementbyid("texttrack"); texttrackelem.oncue
change = (event) => { let cues = event.target.track.activecues; }); examples <video controls poster="/images/sample.gif"> <source src="sample.mp4" type="video/mp4"> <source src="sample.ogv" type="video/ogv"> <track kind="captions" src="samplecaptions.vtt" srclang="en"> <track kind="descriptions" src="sampledescriptions.vtt" srclang="en"> <track kind="chapters" src="samplechapters.vtt" srclang="en"> <track kind="subtitles" src="samplesubtitles_de.vtt" srclang="de"> <tra...
class - HTML: Hypertext Markup Language
semantic names remain logical even if the presentation of the page
changes.
... living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'class' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'class' in that specification.
contenteditable - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.2 html 5.2the definition of 'contenteditable' in that specification.
... recommendation snapshot of html living standard, no
change from html 5.1 html 5.1the definition of 'contenteditable' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'contenteditable' in that specification.
contextmenu - HTML: Hypertext Markup Language
</li> <li contextmenu="
changefont" id="fontsizing"> on this specific list element, you can
change the size of the text by using the "increase/decrease font" actions from your context menu </li> <menu type="context" id="
changefont"> <menuitem label="increase font" onclick="incfont()"></menuitem> <menuitem label="decrease font" onclick="decfont()"></menuitem> </menu> <li contextmenu="chan...
...geimage" id="
changeimage"> on the image below, you can fire the "
change image" action in your context menu.<br /> <img src="https://udn.realityripple.com/samples/a2/b601bdfc0c.png" contextmenu="
changeimage" id="promobutton" /> <menu type="context" id="
changeimage"> <menuitem label="
change image" onclick="
changeimage()"></menuitem> </menu> </li> </ol> </body> javascript function shareviatwitter() { window.open("https://twitter.com/intent/tweet?text=" + "hurray!
...xtmenu from mdn via mozilla"); } function shareviafacebook() { window.open("https://facebook.com/sharer/sharer.php?u=" + "https://developer.mozilla.org/en/html/element/using_html_context_menus"); } function incfont() { document.getelementbyid("fontsizing").style.fontsize = "larger"; } function decfont() { document.getelementbyid("fontsizing").style.fontsize = "smaller"; } function
changeimage() { var index = math.ceil(math.random() * 39 + 1); document.images[0].src = "https://developer.mozilla.org/media/img/promote/promobutton_mdn" + index + ".png"; } result specifications specification status comment html 5.1the definition of 'contextmenu' in that specification.
data-* - HTML: Hypertext Markup Language
the data-* global attributes form a class of attributes called custom data attributes, that allow proprietary information to be ex
changed between the html and its dom representation by scripts.
... living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'data-*' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'data-*' in that specification.
dir - HTML: Hypertext Markup Language
browsers might allow users to
change the directionality of <input> and <textarea>s in order to assist with authoring content.
... living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'dir' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'dir' in that specification.
Feature Policy - HTTP
the feature-policy header has now been renamed to permissions-policy in the spec, and this article will eventually be updated to reflect that
change.
... examples of what you can do with feature policy:
change the default behavior of autoplay on mobile and third party videos.
...
change the default values or options that control the feature behavior.
Cache-Control - HTTP
immutable indicates that the response body will not
change over time.
... the resource, if unexpired, is un
changed on the server and therefore the client should not send a conditional revalidation for it (e.g.
... examples preventing caching to disable caching of a resource, you can send the following response header: good: cache-control: no-store bad: cache-control: private,no-cache,no-store,max-age=0,must-revalidate,pre-check=0,post-check=0 caching static assets for the files in the application that will not
change, you can usually add aggressive caching by sending the response header below.
Meta programming - JavaScript
invariants (semantics that remain un
changed) regarding object non-extensibility or non-configurable properties are verified against the target.
... invariants semantics that remain un
changed when implementing custom operations are called invariants.
... handler.set() property assignment proxy[foo] = bar proxy.foo = bar inherited property assignment object.create(proxy)[foo] = bar {jsxref("reflect.set()")}} cannot
change the value of a property to be different from the value of the corresponding target property if the corresponding target property is a non-writable, non-configurable data property.
Deprecated and obsolete features - JavaScript
object.observe() asynchronously observing the
changes to an object.
... object.getnotifier() creates an object that allows to synthetically trigger a
change.
... array property description array.observe() asynchronously observing
changes to arrays.
Atomics - JavaScript
atomics.compareex
change() stores a value at the specified index of the array, if it equals a value.
... atomics.ex
change() stores a value at the specified index of the array.
... examples using atomics const sab = new sharedarraybuffer(1024); const ta = new uint8array(sab); ta[0] = 5; atomics.add(ta, 0, 12); atomics.load(ta, 0); // 12 atomics.and(ta, 0, 1); atomics.load(ta, 0); // 1 atomics.compareex
change(ta, 0, 5, 12); atomics.load(ta, 0); // 12 atomics.ex
change(ta, 0, 12); atomics.load(ta, 0); // 12 atomics.islockfree(1); // true atomics.islockfree(2); // true atomics.islockfree(3); // false atomics.islockfree(4); // true atomics.or(ta, 0, 1); atomics.load(ta, 0); // 5 atomics.store(ta, 0, 12); // 12 atomics.sub(ta, 0, 2); atomics.load(ta, 0); // 3 atomics.xor(ta, 0, 1); atomics.load(ta, ...
JSON.stringify() - JavaScript
if any such values are encountered during conversion they are either omitted (when found in an object) or
changed to null (when found in an array).
... this recently
changed: now both code points may appear literally in strings in json and javascript both.
...before this
change json.stringify would output lone surrogates if the input contained any lone surrogates; such strings could not be encoded in valid utf-8 or utf-16: json.stringify("\ud800"); // '"�"' but with this
change json.stringify represents lone surrogates using json escape sequences that can be encoded in valid utf-8 or utf-16: json.stringify("\ud800"); // '"\\ud800"' this
change should be backwards-...
SharedArrayBuffer - JavaScript
depending on the system (the cpu, the os, the browser) it can take a while until the
change is propagated to all contexts.
...ire-corp as value (protects victims from your origin) cross-origin-opener-policy: same-origin cross-origin-embedder-policy: require-corp to check if cross origin isolation has been successful, you can test against the crossoriginisolated property available to window and worker contexts: if (crossoriginisolated) { // post sharedarraybuffer } else { // do something else } see also planned
changes to shared memory which is starting to roll out to browsers (firefox 79, for example.) always use the new operator to create a sharedarraybuffer sharedarraybuffer constructors are required to be constructed with a new operator.
...this is established when the array is constructed and cannot be
changed.
WeakRef - JavaScript
different javascript engines may do these things differently, or the same engine may
change its algorithms across versions.
...this is primarily to avoid making the behavior of any given javascript engine's garbage collector apparent in code — because if it were, people would write code relying on that behavior, which would break when the garbage collector's behavior
changed.
... you cannot
change the target of a weakref, it will always only ever be the original target object or undefined when that target has been reclaimed.
Object initializer - JavaScript
let object = { foo: 'bar', age: 42, baz: {myprop: 12} } accessing properties once you have created an object, you might want to read or
change them.
... instead, if the provided value is an object or null, it
changes the [[prototype]] of the created object to that value.
... (if the value is not an object or null, the object is not
changed.) let obj1 = {} assert(object.getprototypeof(obj1) === object.prototype) let obj2 = {__proto__: null} assert(object.getprototypeof(obj2) === null) let protoobj = {} let obj3 = {'__proto__': protoobj} assert(object.getprototypeof(obj3) === protoobj) let obj4 = {__proto__: 'not an object or null'} assert(object.getprototypeof(obj4) === object.prototype) assert(!obj4.hasownproperty('__proto__')) only a single prototype mutation is permitted in an object literal.
Media container formats (file types) - Web media technologies
while qtff served as the basis for the mpeg-4 file format, there are differences and the two are not quite inter
changeable.
... it is derived from the resource inter
change file format (riff), and as such is similar to other formats such as apple's aiff.
... original mpeg-4 (mp4) container format rfc 3533 defines the ogg container format rfc 5334 defines the ogg media types and file extensions quicktime file format specification defines the quicktime movie (mov) format multimedia programming interface and data specifications 1.0 the closest thing to an official wave specification resource inter
change file format (used by wav) defines the riff format; wave files are a form of riff webm container guidelines guide for adapting matroska for webm matroska specifications the specification for the matroska container format upon which webm is based webm byte stream format webm byte stream format for use with media source extensions ...
Navigation and resource timings - Web Performance
domloading when the parser started its work, that is when its document.readystate
changes to 'loading' and the corresponding readystate
change event is thrown.
... dominteractive when the parser finished its work on the main document, that is when its document.readystate
changes to 'interactive' and the corresponding readystate
change event is thrown.
... domcomplete when the parser finished its work on the main document, that is when its document.readystate
changes to 'complete' and the corresponding readystate
change event is thrown.
Media - Progressive web apps (PWAs)
these properties dynamically
change the appearance of content as the user works with the interface.
... example these rules specify styles for a button that
changes dynamically as the user interacts with it: .green-button { background-color:#cec; color:#black; border:2px outset #cec; padding: 5px 10px; } .green-button[disabled] { background-color:#cdc; color:#777; } .green-button:active, .green-button.active { border-style: inset; } <table> <tbody> <tr> <td><button class="green-button" disabled>click me</button></td> <td><b...
...the next page describes how you can
change rules dynamically by using a programming language: javascript.
from - SVG: Scalable Vector Graphics
when used with the to attribute, the animation will
change the modified attribute from the from value to the to value.
... when used with the by attribute, the animation will
change the attribute relatively from the from value by the value specified in by.
... editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'from' in that specification.
in2 - SVG: Scalable Vector Graphics
working draft no
change filter effects module level 1the definition of 'in2 for <fecomposite>' in that specification.
... working draft no
change filter effects module level 1the definition of 'in2 for <feblend>' in that specification.
... working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'in2 for <fedisplacementmap>' in that specification.
textLength - SVG: Scalable Vector Graphics
by default, only the spacing between characters is adjusted, but the glyph size can also be adjusted if you
change lengthadjust.
... html the html is also simple, with only two displayed elements contained inside a grouping <div>: <div class="controls"> <input type="range" id="widthslider" min="80" max="978"> <span id="widthdisplay"></span> </div> the <input> element, of type "range", is used to create the slider control the user will manipulate to
change the width of the text.
...these events will be sent any time the slider's value
changes, even if the user hasn't stopped moving it, so we can responsively adjust the text width.
to - SVG: Scalable Vector Graphics
the value of the attribute will
change between the from attribute value and this value.
... editor's draft no
change svg animations level 2the definition of 'to for <animate>, <animatecolor>, <animatemotion>, and <animatetransform>' in that specification.
... editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'to for <set>' in that specification.
values - SVG: Scalable Vector Graphics
the values attribute has different meanings, depending upon the context where itʼs used, either it defines a sequence of values used over the course of an animation, or itʼs a list of numbers for a color matrix, which is interpreted differently depending on the type of color
change to be performed.
... working draft no
change svg animations level 2the definition of 'values for <animate>, <animatecolor>, <animatemotion>, and <animatetransform>' in that specification.
... editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'values for <fecolormatrix>' in that specification.
vector-effect - SVG: Scalable Vector Graphics
the scale of that user coordinate system does not
change in spite of any transformation
changes from a host coordinate space.
...the rotation and skew of that user coordinate system is suppressed in spite of any transformation
changes from a host coordinate space.
...the position of user coordinate system is fixed in spite of any transformation
changes from a host coordinate space.
Types of attacks - Web security
that is, the page itself does not
change, but the client side code contained in the page runs in an unexpected manner because of the malicious modifications to the dom environment.
...n" name="account" value="bob"> <input type="hidden" name="amount" value="1000000"> <input type="hidden" name="for" value="mallory"> </form> <script>window.addeventlistener('domcontentloaded', (e) => { document.queryselector('form').submit(); }</script> there are a few techniques that should be used to prevent this from happening: get endpoints should be idempotent—actions that enact a
change and do not simply retrieve data should require sending a post (or other http method) request.
... post endpoints should not inter
changeably accept get requests with parameters in the query string.
Web security
connection security transport security layer (tls) the transport layer security (tls) protocol is the standard for enabling two networked applications or devices to ex
change information privately and robustly.
...this secure connection allows clients to be sure that they are connected with the intended server, and to ex
change sensitive data.
... http x-content-type-options the x-content-type-options response http header is a marker used by the server to indicate that the mime types advertised in the content-type headers should not be
changed and be followed.
Interacting with page scripts - Archive of obsolete content
also, unsafewindow isn't a supported api, so it could be removed or
changed in a future version of the sdk.
... content script to page script from firefox 30 onwards, the execution environment for content scripts has
changed, so content scripts can't directly share objects with page scripts.
XUL Migration Guide - Archive of obsolete content
many add-ons will need to make some
changes to their user interfaces if they are to use only the sdk's supported apis, and add-ons which make drastic
changes to the browser chrome will very probably need more than the sdk's supported apis can offer.
... even so, we have to
change its user interface slightly if we are to use only the supported apis.
page-mod - Archive of obsolete content
ntentscriptwhen: 'ready', contentscriptfile: data.url('pagemod.js'), onattach: function(worker) { workers.push(worker); worker.on('detach', function () { detachworker(this, workers); }); } }); cleaning up on add-on removal content scripts receive a detach message when the add-on that attached them is disabled or removed: you can use this in the content script to undo any
changes that you've made.
... for example, we might want to run a script in the context of the currently active tab when the user clicks a button: to block certain content, to
change the font style, or to display the document's dom structure.
page-worker - Archive of obsolete content
while content scripts can access dom content, they can't access any of the sdk apis, so in many cases you'll need to ex
change messages between the content script and your main add-on code for a complete solution.
... so given an add-on that loads trusted content and uses content scripts to access it, there are typically three
changes you have to make, if you want to use normal page scripts instead: in the content script:
change occurrences of self to addon.
panel - Archive of obsolete content
by passing the button itself as the position option to the panel's show() method or to its constructor: var { togglebutton } = require('sdk/ui/button/toggle'); var sdkpanels = require("sdk/panel"); var self = require("sdk/self"); var button = togglebutton({ id: "my-button", label: "my button", icon: { "16": "./icon-16.png", "32": "./icon-32.png", "64": "./icon-64.png" }, on
change: handle
change }); var mypanel = sdkpanels.panel({ contenturl: self.data.url("panel.html"), onhide: handlehide }); function handle
change(state) { if (state.checked) { mypanel.show({ position: button }); } } function handlehide() { button.state('window', {checked: false}); } updating panel content you can update the panel's content by: sending a message to a conten...
... passing options here is useful for making temporary
changes without touching the default values.
content/symbiont - Archive of obsolete content
usage a symbiont loads the specified contenturl and content scripts into a frame, and sets up an asynchronous channel between the content scripts and the add-on code, enabling them to ex
change messages using the port or postmessage apis.
...it inherits functions to load and configure content scripts from the loader, and functions to ex
change messages between content scripts and the main add-on code from the worker.
core/heritage - Archive of obsolete content
reading or writing such code requires sharp eye and lot's of discipline, mainly due to code fragmentation and lots of machinery being exposed: // defining a simple class function dog(name) { // classes are for creating instances, calling them without `new`
changes // behavior, which in majority cases you need to handle, so you end up // with additional boilerplate.
...this.bark() : ''; }; since sdk apis may be interacting with untrusted code an extra security measures are required to guarantee that documented behavior can't be
changed at runtime.
places/bookmarks - Archive of obsolete content
the module does not automatically sync up a bookmark instance with ongoing
changes to that item in the database from the same add-on, other add-ons, or the user.
...by default, all
changes on an outdated bookmark item overwrite the platform's bookmark item.
remote/parent - Archive of obsolete content
in this case the frame for that tab
changes.
... (process, id) => { console.log("child process is remote:" + process.isremote); console.log("child process id:" + id); }); }); content frame manipulation this demonstrates telling every current frame to link to a specific anchor element: // remote.js const { frames } = require("sdk/remote/child"); // listeners receive the frame the event was for as the first argument frames.port.on("
changelocation", (frame, ref) => { frame.content.location += "#" + ref; }); // main.js const { frames, remoterequire } = require("sdk/remote/parent"); remoterequire("./remote.js", module); frames.port.emit("
changelocation", "foo"); tab information this shows sending a message when a tab loads; this is similar to how the sdk/tabs module currently works.
Low-Level APIs - Archive of obsolete content
these modules are still in active development, and we expect to make incompatible
changes to them in future releases.
... preferences/event-target listen to
changes to the preferences system in firefox.
Creating Event Targets - Archive of obsolete content
these apis are still in active development, and we expect to make incompatible
changes to them in future releases.
...it duplicates the previous code, but with a few
changes: import emit(), on(), once(), and off() from event/core replace listener functions with calls to emit(), passing the appropriate event type export its own event api.
Getting Started (jpm) - Archive of obsolete content
unless you've
changed the value of "entry point" ("main" in package.json), this goes in "index.js" file in the root of your add-on.
...for example, we could
change the page that gets loaded: var buttons = require('sdk/ui/button/action'); var tabs = require("sdk/tabs"); var button = buttons.actionbutton({ id: "mozilla-link", label: "visit mozilla", icon: { "16": "./icon-16.png", "32": "./icon-32.png", "64": "./icon-64.png" }, onclick: handleclick }); function handleclick(state) { tabs.open("https://developer.mozilla.org/"); } at t...
Bootstrapped extensions - Archive of obsolete content
there are three
changes you must make: you have to
change the html file's extension to be .xhtml the doctype must be defined point to a dtd file in your locale folder such as: <!doctype html system "chrome://l10n/locale/mozilla.dtd"> must add xmlns attribute to html tag for example: <html xmlns="http://www.w3.org/1999/xhtml"> if you have multiple dtd files read on here: using multiple dtds the bare minimum need...
...you can go to about:config and
change the value of the preference general.useragent.locale to en-us and then to en-gb and then reload the open pages to see the localization
change.
Boxes - Archive of obsolete content
wrapping contents in html you can use a div as a container and when the div
changes size, the contents will wrap or adjust the layout.
...however, you can easily add this capability with a style
change.
Dialogs and Prompts - Archive of obsolete content
process
changed arguments; e.g.
...lays function onload() { // use the arguments passed to us by the caller document.getelementbyid("name").value = window.arguments[0].inn.name; document.getelementbyid("description").value = window.arguments[0].inn.description; document.getelementbyid("enabled").checked = window.arguments[0].inn.enabled; } // called once if and only if the user clicks ok function onok() { // return the
changed arguments.
Examples and demos from articles - Archive of obsolete content
do something if current document has
changed since last visit here is a possible example of how to show an alert message when current document
changes.
... do something if an external page has
changed since last visit here is a possible example of how to show an alert message when an external page
changes.
Label and description - Archive of obsolete content
absolutely nothing!</description> text can also be made to wrap by inserting an <html:br/> element regardless of the css style, but this creates a hard-break that does not
change as parent elements resize.
... note: if running in a xulrunner application add the following preferences to your default preferences file: pref("network.protocol-handler.expose.http", false); pref("network.protocol-handler.warn-external.http", false);
change or add additional protocols (https or ftp) as needed.
Sidebar - Archive of obsolete content
resizing the sidebar programmatically in case you need to
change the width of the sidebar, use the following code: function setsidebarwidth(newwidth) { var mainwindow = window.queryinterface(components.interfaces.nsiinterfacerequestor) .getinterface(components.interfaces.nsiwebnavigation) .queryinterface(components.interfaces.nsidocshelltreeitem) .roottreeitem .queryinterface(components.interfaces.nsiinterfacerequestor) .getinterface(components.interfac...
...for this snippet to work, you have to declare mainwindow as in the previous code block then write: mainwindow.document.getelementbyid("sidebar-splitter").hidden = true; be aware that if you
change the splitter's hidden attribute, you need to reset it to a safe value when your sidebar is closed, or replaced by another sidebar.
Adding windows and dialogs - Archive of obsolete content
you can
change its style using css in case you don't want the borders to appear.
... attribute persistence user actions can
change the state of your windows, such as selecting an option in a listbox, or entering text in a textbox.
The Box Model - Archive of obsolete content
using the former allows the ui to scale proportionately depending on font size settings, which are often
changed by users with accessibility limitations.
... modify the hello world extension so that it
changes the appearance of firefox drastically using only css.
XUL School Tutorial - Archive of obsolete content
while firefox
changes rapidly, the content in this tutorial should be up to date and valid.
... the box model xpcom objects observer notifications custom xul elements with xbl mozilla documentation roadmap useful mozilla community sites appendices appendix a: add-on performance appendix b: install and uninstall scripts appendix c: avoiding using eval in add-ons appendix d: loading scripts appendix e: dom building and html insertion appendix f: monitoring dom
changes the xul school project was developed by appcoast (formerly glaxstar).
Promises - Archive of obsolete content
after any
changes are made to this property, the save() method must be called to queue the
changes to be written to disk.
... */ jsonstore.prototype.save = function () { return this.saver.save
changes(); }; example usage: var addon_id = "extension@example.com"; var config_default = { "foo": "bar", }; new jsonstore("config", config_default).then(store => { console.log(store.data); store.data.baz = "quux"; store.save(); }) the following
changes will remove the dependency on aom wrappers: let addon = yield new promise(accept => addonmanager.getaddonbyid...
Using the Stylesheet Service - Archive of obsolete content
in firefox 3, the
changes take effect immediately, though some declarations (especially those affecting xul) won't work until a reload.
... backwards compatibility you can check for the availability and the functionality of the stylesheet service: if("@mozilla.org/content/style-sheet-service;1" in components.classes) { if(components.id('{41d979dc-ea03-4235-86ff-1e3c090c5630}') .equals(components.interfaces.nsistylesheetservice)) { // stylesheet service is available, but
changes won't apply until reload // (firefox 1.5 and 2 behaviour) } else { // stylesheet service is available and
changes will apply immediately // (firefox 3 behaviour) } } else { // stylesheet service is not available (pre-firefox 1.5 behaviour) } ...
MMgc - Archive of obsolete content
finalizers may not perform any of the following actions: fire any write barriers dereference a pointer to any gc object, including member variables (except see below about rcobject references) allocate any gc memory (gc::alloc), explicitly free gc memory (gc::free)
change the set of gc roots (create a gcroot object or derivative) cause itself to become reachable if a finalized object holds a reference to an rcobject, it may safely call decrementref on the rcobject.
...forgetting a write barrier if you forget to put a write barrier on a pointer, the incremental mark process might miss the pointer being
changed.
Making it into a dynamic overlay and packaging it up for distribution - Archive of obsolete content
we need to
change some urls in the copy of tinderstatusoverlay.xul to point to the new locations the files will be in when they get installed via the xpi: <?xml version="1.0"?> <?xml-stylesheet href="chrome://tinderstatus/content/tinderstatus.css" type="text/css"?> <overlay id="tinderstatusoverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script type="applicatio...
...n/javascript" src="chrome://tinderstatus/content/tinderstatus.js" /> <statusbar id="status-bar"> <statusbarpanel class="statusbarpanel-iconic" id="tinderbox-status" insertbefore="offline-status" status="none"/> </statusbar> </overlay> we also need to
change the urls in the copy of tinderstatus.css: statusbarpanel#tinderbox-status { list-style-image: url("chrome://tinderstatus/content/tb-nostatus.png"); } statusbarpanel#tinderbox-status[status="success"] { list-style-image: url("chrome://tinderstatus/content/tb-success.png"); } statusbarpanel#tinderbox-status[status="testfailed"] { list-style-image: url("chrome://tinderstatus/content/tb-testfailed.png"); } statusbarpanel#tinderbox-status[status="busted"] { list-style-image: url("chrome://tin...
Tinderbox - Archive of obsolete content
the tool enables mozilla.org to be immediately notified of
changes to the code that prevent mozilla from compiling and running (or compromise performance and footprint) so they can get someone to fix the problem or reverse the
changes.
... mozilla engineers regularly check tinderbox before changing the code because
changes are prohibited while the codebase is broken.
Documentation for BiDi Mozilla - Archive of obsolete content
this is preliminary documentation of the
changes introduced to mozilla as part of the bidi support contributed by ibm (a.k.a.
... text fields and composer the specification of the bidi
changes to composer was posted in the editor and i18n newsgroups, and responses there were taken into account.
Downloading Nightly or Trunk Builds - Archive of obsolete content
this usage may
change.
...these are the "tinderbox builds", also known as "hourly builds" though it usually takes more than one hour to make one; they are followed by automatic tests and their main purpose is to check that nothing is horridly wrong with the latest
change to the source: what they are doing is to constantly check that the current source can be built into an executable and that that executable passes a certain more-or-less fixed set of tests.
Layout FAQ - Archive of obsolete content
what is the best way to determine whether there are any pending
changes?
...that won't help with pending style
changes, but it'll work to detect cases when the popup or something in it needs to be reflown.
Hidden prefs - Archive of obsolete content
so if you
change the quick search query to match based on phone number, the ui will not match the query.
...m mailnews.js: // by default, only collect addresses the user sends to (outgoing) pref("mail.collect_email_address_incoming", false); pref("mail.collect_email_address_outgoing", true); pref("mail.collect_email_address_newsgroup", false); // by default, use the personal addressbook for collection pref("mail.collect_addressbook","moz-abmdbdirectory://abook.mab"); for the reasons why the defaults
changed, see this document on the collected address book.
popChallengeResponse - Archive of obsolete content
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...the current implementation does not conform to that defined in the cmmf draft, and we intend to
change this implementation to that defined in the cmc rfc..
Metro browser chrome tests - Archive of obsolete content
running the metro browser chrome tests to run mochitest, first build mozilla with your
changes; then run ./mach mochitest-metro this will launch metro browser chrome tests in the default immersive browser.
...be careful about changing existing helpers as
changes may impact tests in other libraries.
Microsummary XML grammar reference - Archive of obsolete content
a microsummary generator is an xml document that describes how to pull specific information from a web page to be presented in summary form as a bookmark whose title
changes based on the content of the page it targets.
... per xslt, you may specify the stylesheet child element using either the <stylesheet> or the <transform> tag, which are inter
changeable.
Modularization techniques - Archive of obsolete content
if a function
changes the value of an interface in-out parameter, it should call release() on the interface passed in and addref() on the interface passed out.
... nsresult refreshfoo(ifoo **afoo) { if (afoo == null || *afoo == null) { return ns_error_null_parameter; } if ((*afoo)->stale()) { ns_release(*afoo); *afoo = mfoo; ns_addref(*afoo); } return ns_ok; } global and member variables both global and member variables have lifetimes that can be
changed by any number of functions.
Mozilla Application Framework in Detail - Archive of obsolete content
rdf, a core element to the framework, allows you to define dynamic elements in your ui (elements that may
change after you have completed the application, such as a "history" menu item).
...in addition, independent software developers and corporate information technology departments now have complete access to the modular source code and freedom to freely license the source, make
changes and build customized versions to accommodate their individual needs.
Mozilla Crypto FAQ - Archive of obsolete content
yes, documentation of the database format is available; however we cannot guarantee that the format of the database will remain un
changed in the future.
... however, as with apis internal to mozilla modules, mozilla.org cannot guarantee that the format of the key and certificate database will remain un
changed over time; in particular,
changes may be introduced at some point that break compatibility with existing applications.
Anonymous Content - Archive of obsolete content
whenever the primary generating binding
changes on a bound element, all anonymous nodes in the scope of the bound element are destroyed.
... handling dom
changes insertion points continuing to be used as elements are inserted or removed from the dom.
Elements - Archive of obsolete content
here are some examples of cases in which the behavior of your code may
change due to this
change in firefox 3: if you have two fields, one named a and one named b, and field a sets .b, the value of .b will depend on whether or not .a has already been accessed.
... a field no longer
changes the value of a property set on the object itself (rather than a proto) before binding attachment.
Creating XPI Installer Modules - Archive of obsolete content
mozilla has introduced major
changes to the way that themes and all the other parts of the ui are packaged.
...these archives are redundant with the subdirectories: mozilla now installs both the compressed and uncompressed versions of the ui, though you can
change this when you build mozilla yourself.
A XUL Bestiary - Archive of obsolete content
skinning is most often brought up in the context of dynamic
changes to the overall look of an application.
... though this is not yet in the browser, very soon it will be possible to
change the look of a whole application dynamically, but only to the extent that the skin is actually defined in the main global.css, or global skin.
advance - Archive of obsolete content
the canadvance property must be set to true for the page to be
changed.
... the code in the onwizardnext attribute is called before the page is
changed.
advanceSelectedTab - Archive of obsolete content
« xul reference home advanceselectedtab( dir, wrap ) return type: no return value if the argument dir is set to 1, the currently selected tab
changes to the next tab.
... if the argument dir is set to -1, the currently selected tab
changes to the previous tab.
goTo - Archive of obsolete content
« xul reference home goto( pageid ) return type: no return value this method is used to
change which page is currently displayed, specified by the pageid argument.
... the page will be
changed regardless of the value of canadvance or canrewind.
rewind - Archive of obsolete content
the canrewind property must be set to true for the page to be
changed.
... the code in the onwizardback attribute is called before the page is
changed.
Menus - Archive of obsolete content
however, the actual top level menus do not generally
change for a given window.
...it will close when the mouse is moved away or the current item is
changed.
currentIndex - Archive of obsolete content
you cannot rely on this property to
change or determine a tree selection, except for trees with seltype="single".
... (all trees have seltype="multiple" by default.) to reliably
change or determine a selection, instead use the nsitreeselection interface methods available via tree.view.selection.
Adding Methods to XBL-defined Elements - Archive of obsolete content
rameter name="state"/> <body> if (state) { document.getanonymousnodes(this)[0].setattribute("style", "visibility: visible"); } else { document.getanonymousnodes(this)[0].setattribute("style", "visibility: collapse"); } </body> </method> </implementation> </binding> two buttons added to the xul have oncommand handlers which are used to
change the visibility of the label.
...the visibility is
changed by modifying the style on the element.
Adding more elements - Archive of obsolete content
if you resize the window vertically, the elements do not
change size.
...let us
change the box into a groupbox: <groupbox orient="horizontal"> <caption label="search criteria"/> <menulist id="searchtype"> .
Introduction to XBL - Archive of obsolete content
however, xul provides no means in which you can
change how an element works (or add a new element which can be reused).
... for example, you might want to
change how the pieces of a scroll bar function.
Popup Menus - Archive of obsolete content
to
change the popup position, you can use an additional attribute, position, on the menupopup.
...the position attribute can be used with all three popup types, although you probably would not
change the value for tooltips.
Stacks and Decks - Archive of obsolete content
rather than create separate windows and add navigation buttons to each of them, you would create one window and use a deck where the content
changes.
...the displayed page of the deck can be
changed by setting an selectedindex attribute on the deck element.
Styling a Tree - Archive of obsolete content
set the property on a row or cell, as in the following example: <treerow properties="makeitblue"> css selectors for the tree the style sheet can take this property and use it to
change the appearance of the row for unread messages or labels.
... getcellproperties: function(row,col){ if ((row %4) == 0){ return "makeitblue"; } } to support gecko versions before and after this
change use.
Trees - Archive of obsolete content
since the entire body of the tree is a single widget, you can't
change the style of individual rows or cells in the normal way.
...for instance, you cannot
change the appearance of the tree rows using the style attribute or with other css properties and the box related features such as flexibility and orientation cannot be used.
XPCOM Interfaces - Archive of obsolete content
just replace the component name with the name of the component you want to use and
change the interface name.
...you should
change the filename to an existing file that you have that you would like to delete.
Using the Editor from XUL - Archive of obsolete content
in both cases, the editorcanclose() method is the javascript is called, which causes the nseditorshell to display a dialog asking the user if they want to save the document, throw away their
changes, or cancel.
... if the user chooses to save the document, or throw away their
changes, then the window is closed.
key - Archive of obsolete content
for example: <!-- this element handles all key events --> <key/> <!-- these elements don't handle any key events --> <key key="" modifiers="control"/> <key keycode="" modifiers="control"/> modifying attributes in case you want to
change one of the <key>'s attributes, such as the modifiers attribute, the keyset element has to be re-added to its parent node; otherwise the new attributes won't be applied.
... for example: // modify some attributes let key = document.getelementbyid(key_id); key.setattribute("modifiers", "alt shift"); // apply the
changes let keyset = document.getelementbyid(keyset_id); keyset.parentnode.appendchild(keyset); ...
listitem - Archive of obsolete content
to
change the currently selected item in a listbox, use the listbox property selecteditem.
...to
change the selection, set either the selectedindex or selecteditem property of the containing element.
radiogroup - Archive of obsolete content
you can
change the focused item by setting this property.
...the listbox, richlistbox, radiogroup, etc., not the list item that was selected) when it is
changed either via this property, the selectedindex property, or
changed by the user.
scrollbar - Archive of obsolete content
increment type: integer the amount by which the curpos (for scroll bars) or value (for number boxes and scale) attribute
changes when the arrows are clicked(or scales are dragged).
... 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.
2006-10-26 - Archive of obsolete content
rebuild firefox after modifying source code an inqury about how to rebuild the code after making a minor
change - the user is unfamiliar with how to use the command prompt.
... there should be a '
changes' faq a user suggests that a faq page be made for
changes, since the same two questions keep coming up.
2006-10-27 - Archive of obsolete content
rebuild firefox after modifying source code an inqury about how to rebuild the code after making a minor
change - the user is unfamiliar with how to use the command prompt.
... there should be a '
changes' faq a user suggests that a faq page be made for
changes, since the same two questions keep coming up.
2006-11-03 - Archive of obsolete content
firing pageshow/pagehide when users
change tabs discussion about using events that could be fired when the user
changes a tab.
... suggestion: a built-in firefox feature a user suggests a feature to compare different versions of a webpage to see what has
changed.
2006-11-04 - Archive of obsolete content
pageshow/pagehide when users
change tabs discussion about using events that could be fired when the user
changes a tab.
... suggestion: a built-in firefox feature a user suggests a feature to compare different versions of a webpage to see what has
changed.
2006-12-01 - Archive of obsolete content
summary: mozilla.dev.l10n - december 1, 2006 announcements langpacks for sunbird nightly builds available for testing langpacks for sunbird nightly builds available for testing seamonkey 1.1 late string
changes for mail content policy the fix to bug 360288 has landed.
... thunderbird options dialog string
changes a lot of string
changes to the thunderbird options dialog was landed.
2006-11-10 - Archive of obsolete content
code freeze for these versions is on november 26 version numbering
changes paul reed announced
changes to the way version numbers are done for pre-releases.
... discussion version numbering
changes some discussion about paul's announcement of version number
changes meetings november 6 project status meeting (notes) november 7 bon echoe status meeting (notes) november 8 gecko 1.9/gran paradiso status meeting: (agenda) ...
2006-12- 08 - Archive of obsolete content
discussions [further computesize
changes l.
... david baron is planning to make an additional
change to the computesize api onthe reflow branch to resolve a number of float-related bugs (359135,360093), and some others.
NPP_SetWindow - Archive of obsolete content
subsequent calls to npp_setwindow indicate
changes in size or position; these calls pass the same npwindow object each time, but with different values.
... before setting the window parameter to point to a new window, it is a good idea to compare the information about the new window to the previous window (if one existed) to account for any
changes.
NPAPI plugin reference - Archive of obsolete content
npn_setvalueforurl allows a plugin to
change the stored information associated with a url, in particular its cookies.
... (while the api theoretically allows the preferred proxy for a given url to be
changed, doing so does not have much meaning given how proxies are configured, and is not supported.) npn_status lets a plug-in display a message on the browser's status line.
Adobe Flash - Archive of obsolete content
until macromedia
changes this from within the flash plugin, scriptability can not be used on mac os x browsers based on gecko.
...below that, you can
change the color of the entire html page by clicking a colored tab.
What is RSS - Archive of obsolete content
the rss-dev working group
changed what rss stood for, and made it stand for rdf site summary (at least, this is what it stood for in their version of rss).
...in november 2002 and again in january 2003, rss 2.0 was
changed from its original specification by userland.
Vulnerabilities - Archive of obsolete content
threats may also
change over the lifetime of software or a protocol used in software.
... the arp protocol was standardized over 25 years ago, and threats have
changed a great deal since then, so the trust assumptions inherent in its design then are unlikely to still be reasonable today.
References - Archive of obsolete content
<- previous section: summary of
changes you can learn more on using web standards from these sites (listed in no particular order): what are web standards and why should i use them?
... <- previous section: summary of
changes ...
Using Web Standards in your Web Pages - Archive of obsolete content
the next-to-last section, summary of
changes, outlines all the
changes described in this article.
... contents benefits of using web standards making your page using web standards - how to using the w3c dom developing cross browser and cross platform pages using xmlhttprequest summary of
changes references original document information author(s): mike cowperthwaite, marcio galli, jim ley, ian oeschger, simon paquet, gérard talbot last updated date: may 29, 2008 copyright information: portions of this content are © 1998–2008 by individual mozilla.org contributors; content available under a creative commons license | details.
Processing XML with E4X - Archive of obsolete content
eding to create a well-formed xml document, using the following syntax: var xmllist = <> <lang>javascript</lang> <lang>python</lang> </>; the += operator can be used to append new elements to an xmllist within a document: languages.lang += <lang>ruby</lang>; note that unlike node lists returned by regular dom methods, xmllists are static and are not automatically updated to reflect
changes in the dom.
... if you create an xmllist as a subset of an existing xml object and then modify the original xml object, the xmllist will not reflect those
changes; you will need to re-create it to get the most recent updates: var languages = <languages> <lang>javascript</lang> <lang>python</lang> </languages>; var lang = languages.lang; alert(lang.length()); // alerts 2 languages.lang += <lang>ruby</lang>; alert(lang.length()); // still alerts 2 lang = languages.lang; // re-create the xmllist alert(lang.length()); // alerts 3 searching and filtering e4x provides special operators for selecting nodes within a document that match specific criteria.
New in JavaScript 1.2 - Archive of obsolete content
the following is a
changelog for javascript from netscape navigator 3.0 to 4.0.
...ototype.charcodeat() string.prototype.concat() string.fromcharcode() string.prototype.match() string.prototype.replace() string.prototype.search() string.prototype.slice() string.prototype.substr() new operators delete equality operators (== and !=) new statements labeled statements switch do...while import export other new features regular expressions signed scripts
changed functionality in javascript 1.2 you can now nest functions within functions.
New in JavaScript 1.4 - Archive of obsolete content
the following is a
changelog for javascript 1.4, which was only used for netscape's server side javascript released in 1999.
... new features in javascript 1.4 exception handling (throw and try...catch) in operator instanceof operator
changed functionality in javascript 1.4 eval()
changes (cannot be called indirectly and no longer a method of object) arguments not a property of functions deprecated function.arity in favor of function.length
changes to liveconnect ...
New in JavaScript 1.6 - Archive of obsolete content
the following is a
changelog for javascript 1.6.
... array.prototype.indexof() array.prototype.lastindexof() array.prototype.every() array.prototype.filter() array.prototype.foreach() array.prototype.map() array.prototype.some() array generics string generics for each...in
changed functionality in javascript 1.6 a bug in which arguments[n] cannot be set if n is greater than the number of formal or actual parameters has been fixed.
New in JavaScript 1.8 - Archive of obsolete content
the following is a
changelog for javascript 1.8.
... 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.
Object.getNotifier() - Archive of obsolete content
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.
... description the notifier is used to trigger synthetic
changes that will be observed by object.observe().
Properly Using CSS and JavaScript in XHTML Documents - Archive of obsolete content
recommendations do not use inline style or script in xhtml replacing inline style and script with external files containing the css rules and javascript is the best approach for authoring xhtml in a backwardly compatible fashion that will not break if the mime type of the content is
changed from text/html to application/xhtml+xml.
...moving css and javascript into separate files is the safe approach with regard to
changes in how your xhtml is served.
forEach - Archive of obsolete content
dotnetcarpenter 30 june 2012 <hr> i have released the write access restriction, but i will be watching
changes closely.
...if you wish to make
changes, and especially if you wish to revert another user's
changes, please either add a comment here, or post to dev-mdc@lists.mozila.org, explaining the
change you desire.
XForms Input Element - Archive of obsolete content
introduction this element is an important and oft-used xforms element to show and
change the instance data to which this xforms control is bound (see the spec).
...since the introduction of labelposition, the behavior
changed as described above to better match other implementations as well as commonly used gui guidelines.
Anatomy of a video game - Game development
the same principles as above apply with a slight twist: each frame of animation progresses the cycle and any
change in user input is caught at the first available turn.
...before we discuss ways to
change it, let us discuss what it already does well.
Game monetization - Game development
there are many companies offering advert systems — you sign up and allow them to show adverts in ex
change for a percentage of the earnings.
...as an example if you've got a game where a player taps items of food, you could
change the food to the client's products to give them advertising.
Move the ball - Game development
defining a drawing loop to keep constantly updating the canvas drawing on each frame, we need to define a drawing function that will run over and over again, with a different set of variable values each time to
change sprite positions, etc.
...let's
change that.
Paddle and keyboard controls - Game development
add the following line inside your draw() function, just below the line that calls drawball(): drawpaddle(); compare your code here's the working code for you to compare yours against: exercise: make the paddle move faster or slower, or
change its size.
...this will all
change in the fifth chapter, game over, when we start to add in an endgame state for our game.
2D maze game with device orientation - Game development
note: to find more out about implementing device orientation and what raw code would look like, read keep it level: responding to device orientation
changes.
...we have this printed out on the screen, but it would be good to update the values every second: this.time.events.loop(phaser.timer.second, this.updatecounter, this); this loop, also in the create function, will execute the updatecounter function every single second from the beginning of the game, so we can apply the
changes accordingly.
Plug-in Development Overview - Gecko Plugin API Reference
caution: gecko caches the values returned by these functions and will only call it if the plug-in's timestamp has
changed.
... to determine whether plug-in and the browser versions are compatible and possibly provide alternative processing for different versions: use the npn_version method to check for
changes in major and minor version numbers.
Cipher suite - MDN Web Docs Glossary: Definitions of Web-related terms
a cipher suite is a combination of a key ex
change 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 ex
change 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 ...
Immutable - MDN Web Docs Glossary: Definitions of Web-related terms
an immutable object is one whose content cannot be
changed.
... an object can be immutable for various reasons, for example: to improve performance (no planning for the object's future
changes) to reduce memory use (make object references instead of cloning the whole object) thread-safety (multiple threads can reference the same object without interfering with one other) learn more general knowledge immutable on wikipedia ...
MVC - MDN Web Docs Glossary: Definitions of Web-related terms
if the state of this data
changes, then the model will usually notify the view (so the display can
change as needed) and sometimes the controller (if different logic is needed to control the updated view).
... you might however also want to just update the view to display the data in a different format, e.g.,
change the item order to alphabetical, or lowest to highest price.
Safe - MDN Web Docs Glossary: Definitions of Web-related terms
what is important here is that by calling a safe method, the client doesn't request any server
change itself, and therefore won't create an unnecessary load or burden for the server.
... a call to a safe method, not changing the state for the server: get /pagex.html http/1.1 a call to a non-safe method, that may
change the state of the server: post /pagex.html http/1.1 a call to an idempotent but non-safe method: delete /idx/delete http/1.1 learn more general knowledge definition of safe in the http specification.
Mobile accessibility - Learn web development
here are a few examples of the options available: speaking rate:
change the speaking rate.
... responsive design responsive design is the practice of making your layouts and other features of your apps dynamically
change depending on factors such as screen size and resolution, so they are usable and accessible to users of different device types.
Test your skills: Selectors - Learn web development
selectors two without changing the html, make the following
changes to the look of the content in this example: give the element with an id of special a yellow background.
... selectors three in this example, try making the following
changes without adding to the html.
Test your skills: position - Learn web development
try updating the live code below to recreate the finished example: as an extra challenge, can you
change the target to display underneath the text?
...
change it so that the sidebar stays in place and only the content scrolls.
Styling links - Learn web development
hovering a link makes the mouse pointer
change to a little hand icon.
... the default styles can be turned off/
changed using the following css properties: color for the text color.
How do you make sure your website works properly? - Learn web development
304: not modified the file has not
changed since the last time you asked for it, so your browser can display the version from its cache, resulting in faster response times and more efficient use of bandwidth.
... 304 for basic.css means that this file has not
changed since the last request, so the browser can use the file in its cache rather than receiving a fresh copy.
How does the Internet work? - Learn web development
the various technologies that support the internet have evolved over time, but the way it works hasn't
changed that much: internet is a way to connect computers all together and ensure that, whatever happens, they find a way to stay connected.
...for example (at the time of writing; ip addresses can
change) google.com is the domain name used on top of the ip address 173.194.121.32.
Using data attributes - Learn web development
in the above case setting article.dataset.columns = 5 would
change that attribute to "5".
...for example to show the parent data on the article you can use generated content in css with the attr() function: article::before { content: attr(data-parent); } you can also use the attribute selectors in css to
change styles according to the data: article[data-columns='3'] { width: 400px; } article[data-columns='4'] { width: 600px; } you can see all this working together in this jsbin example.
Responsive images - Learn web development
art direction to recap, the art direction problem involves wanting to
change the image displayed to suit different image display sizes.
...for example, you couldn't load the <img> element, then detect the viewport width with javascript, and then dynamically
change the source image to a smaller one if desired.
Making asynchronous programming easier with async and await - Learn web development
mage1.src = objecturl1; image2.src = objecturl2; document.body.appendchild(image1); document.body.appendchild(image2); let para = document.createelement('p'); para.textcontent = desctext; document.body.appendchild(para); } displaycontent() .catch((e) => console.log(e) ); you'll see that the fetchanddecode() function has been converted easily into an async function with just a few
changes.
... if you want to use async/await but are concerned about older browser support, you could consider using the babeljs library — this allows you to write your applications using the latest javascript and let babel figure out what
changes if any are needed for your user’s browsers.
Test your skills: Events - Learn web development
events 1 in our first events-related task, you need to create a simple event handler that causes the text inside the button (btn) to
change when it is clicked on, and
change back when it is clicked again.
... the html should not be
changed; just the javascript.
Introduction to web APIs - Learn web development
next, we create a gainnode object using the audiocontext.creategain() method, which can be used to adjust the volume of audio fed through it, and create another event handler that
changes the value of the audio graph's gain (volume) whenever the slider value is
changed: const gainnode = audioctx.creategain(); volumeslider.addeventlistener('input', function() { gainnode.gain.value = this.value; }); the final thing to do to get this to work is to connect the different nodes in the audio graph up, which is done using the audionode.connect() method available on every node type...
... they use events to handle
changes in state we already discussed events earlier on in the course in our introduction to events article, which looks in detail at what client-side web events are and how they are used in your code.
Test your skills: Strings - Learn web development
we want you to fix and update it, like so:
change the casing to correct sentence case (all lowercase, except for upper case first letter).
...we want you to
change the value of the string as follows:
change it from a regular string literal into a template literal.
Object prototypes - Learn web development
for example, if you have an object instance and you want to return the name of the constructor it is an instance of, you can use the following: instancename.constructor.name try this, for example: person1.constructor.name note: the value of constructor.name can
change (due to prototypical inheritance, binding, preprocessors, transpilers, etc.).
...ones that never need to
change), but generally it works better to define properties inside the constructor.
Perceived performance - Learn web development
first paint is reported by the browser and provides the time, in ms, of when the page starts changing; but this
change can be a simple background color update or something even less noticable.
... make fallback fonts the same size and weight so that when fonts load the page
change is less noticeable.
Ember interactivity: Events, classes and state - Learn web development
for example, the @tracked decorator (see slightly later on) runs code it is applied to, but additionally tracks it and automatically updates the app when values
change.
...the only ember-specific part of this class is the @tracked decorator — this hooks in to the reactivity system and allows ember to update what you're seeing in your app automatically if the tracked properties
change.
Starting our Svelte Todo list app - Learn web development
create a file named src/components/todos.svelte with the following content: <h1>svelte to-do list</h1>
change the title element in public/index.html to contain the text svelte to-do list: <title>svelte to-do list</title> open src/app.svelte and replace its contents with the following: <script> import todos from './components/todos.svelte' </script> <todos /> in development mode, svelte will issue a warning in the browser console when specifying a prop that doesn't exist in the compon...
....realityripple.com/samples/b0/98dase3c7d.png"> the compiler will issue the following warning: (!) plugin svelte: a11y: <img> element should have an alt attribute src/components/todos.svelte 1: <h1>svelte to-do list</h1> 2: 3: <img height="32" width="88" src="https://udn.realityripple.com/samples/b0/98dase3c7d.png"> ^ created public/build/bundle.js in 220ms [2020-07-15 04:07:43] waiting for
changes...
Getting started with Vue - Learn web development
making a couple of
changes let's make our first
change to the app — we’ll delete the vue logo.
...we've learnt about some of the ideas behind vue, created some scaffolding for our example app to live inside, inspected it, and made a few preliminary
changes.
Rendering a list of Vue components - Learn web development
to help vue optimize rendering the elements in the list, it tries to patch list elements so it's not recreating them every time the list
changes.
...'), label: 'have fun', done: true }, { id: uniqueid('todo-'), label: 'create a to-do list', done: false } ] }; } }; now, add the v-for directive and key attribute to the <li> element in your app.vue template, like so: <ul> <li v-for="item in todoitems" :key="item.id"> <to-do-item label="my todo item" :done="true"></to-do-item> </li> </ul> when you make this
change, every javascript expression between the <li> tags will have access to the item value in addition to the other component attributes.
Styling Vue components with CSS - Learn web development
before: after: noticeable
changes include the removal of the list bullets, background color
changes, and
changes to the base button and input styles.
... add class="btn btn__primary btn__lg" to your form’s <button> element: <button type="submit" class="btn btn__primary btn__lg"> add </button> while we're here, there's one more semantic and styling
change we can make.
Git and GitHub - Learn web development
you make
changes to your own copy, and then push those
changes back up to the server, where an administrator will decide whether to merge your
changes with the master copy.
... about pull requests (from github) a useful guide to managing pull requests, the way that your suggested code
changes are delivered to people's repositories for consideration.
Learn web development
we have started keeping learning area release notes to show what has
changed — keep checking back frequently!
... you can update the learning-area repository with any
changes made to the master version on github with the following steps: in your command prompt/terminal, go inside the learning-area directory using cd.
CSUN Firefox Materials
extensions are small add-ons which can
change your browser experience as you see fit.
...here are some examples of accessible extensions, although there are hundreds more to try (thank you to the gw micro knowledge base for some of this information): adblock plus removes ads (and other objects, like banners) from web pages greasemonkey lets you add bits of javascript ("user scripts") to any web page to
change its behavior.
Software accessibility: Where are we today?
this solution has seen only partial success, largely due to the fact that it requires significant
changes to applications which are made accessible.
...after that, the exact techniques may
change depending on the engineering environment.
Index
684 themes add-ons, look & feel, themes themes allow you to
change the look and feel of the user interface and personalize it to your tastes.
... 686 theme concepts theme, add-on themes developed using the webextensions api in firefox enable you to
change the look of the browser by adding images to the header area of the firefox browser; this is the area behind the menu bar, toolbars, address bar, search bar, and tab strip.
Add-ons
among other things, an add-on could:
change the appearance or content of particular websites modify the firefox user interface add new features to firefox there are several types of add-ons, but the most common type are extensions.
...in most cases, it will run in chrome, edge, and opera with few if any
changes.
Browser chrome tests
running the browser chrome tests to run mochitest, first build mozilla with your
changes; then run ./mach mochitest -f browser this will launch your build and open a "browser chrome tests" window, and report the results in the ui and to stdout.
...for instance, if you
change a preference you want to make sure that the preference is always reset so that it doesn't impact other tests after yours.
Testopia
you can then merge your
changes before deleting the old version.
...though all attempts have been made to provide continuing support for positional parameters, please be aware that some api calls may fail until you make this
change.
Continuous Integration
taskcluster and treeherder taskcluster, mozilla's continuous integration (ci) system picks up
changes pushed to hg.
... perfherder alerts we track
changes to talos and other performance frameworks inside perfherder, and try to automatically alert when there is a sustained
change exceeding a certain magnitude (specified per test).
HTTP logging
if you've put it elsewhere,
change the path used on the third line appropriately.) reproduce whatever problem you're trying to debug.
... advanced techniques you can adjust some of the settings listed above to
change what http information get logged.
Simple Instantbird build
this will only recompile files that
changed.
... upstream
changes to fetch the latest upstream
changes, in your comm-central directory, run the same command as before: python client.py checkout problems building?
Simple Sunbird build
to avoid this issue,
change to a directory without spaces (i.e.
...make will only recompile files that
changed, but it's still a long haul.
Gecko Logging
set moz_log="example_logger:3" in the windows command prompt (cmd.exe), don't use quotes: set moz_log=example_logger:3 if you want this on geckoview example, use the following adb command to launch process: adb shell am start -n org.mozilla.geckoview_example/.geckoviewactivity --es env0 "moz_log=example_logger:3" there are special module names to
change logging behavior.
... the special pref logging.config.log_file can be set at runtime to
change the log file being output to.
Contributing to the Mozilla code base
they're all about small
changes, sometimes as little as a few lines, but they're a great way to learn about setting up your development environment, navigating bugzilla, and making contributions to the mozilla codebase.
... now that you've got your first bug fixed you should request level 1 access to the repository to push to the try server and get automated feedback about your
changes on multiple platforms.
Working with Mozilla source code
the articles below will help you get your hands on the mozilla source code, learn to navigate the code, and how to get the
changes you propose checked into the tree.
... creating a patch once you've made a
change to the mozilla code, the next step (after making sure it works) is to create a patch and submit it for review.
Index
the most useful is the url about:config, which displays preferences and settings that can be inspected and
changed.
...always keep in mind the side effects your
changes may have, from blocking other tasks to interfering with other user interface elements.
Performance
store heavyweight state once per process bad: // addon.js var main = new myaddonservice(); main.on
change(state
change); function state
change() { services.mm.broadcastasyncmessage("my-addon:update-configuration", {newconfig: main.serialize()}) } // framescript.js var maincopy; function onupdate(message) { maincopy = myaddonservice.deserialize(message.data.newconfig); } addmessagelistener("my-addon:update-configuration", onupdate) // maincopy used by other functions the main issue here is...
... better: // addon.js var main = new myaddonservice(); main.on
change(state
change); function state
change() { services.ppmm.broadcastasyncmessage("my-addon:update-configuration", {newconfig: main.serialize()}) } // processmodule.jsm const exported_symbols = ['getmaincopy']; var maincopy; services.cpmm.addmessagelistener("my-addon:update-configuration", function(message) { maincopy = message.data.newconfig; }) funtion getmaincopy() { return maincopy; } // framescript.js components.utils.import("resource://my-addon/processmodule.jsm") // getmaincopy() used by other functions don't register...
Firefox and the "about" protocol
the most useful is the url about:config, which displays preferences and settings that can be inspected and
changed.
...on about:addons add-ons manager about:buildconfig displays the configuration and platform used to build firefox about:cache displays information about the memory, disk, and appcache about:checkerboard switches to the checkerboarding measurement page, which allows to detect checkerboarding issues about:config provides a way to inspect and
change firefox preferences and settings about:compat lists overriding site compatability fixes, linked to specific bug issues.
Firefox
the most useful is the url about:config, which displays preferences and settings that can be inspected and
changed.firefox ui considerations for web developersthere are a number of places within the firefox user interface where web sites are listed for the user to choose a destination to visit or a site to manage in some way.
...always keep in mind the side effects your
changes may have, from blocking other tasks, to interfering with other user interface elements.privacythis document lists privacy-related documentation.security best practices for firefox front-end engineersthis article will help firefox developers understand the security controls in place and avoid common pitfalls when developing front-end code for firefox.site identity buttonthe site identity button i...
HTMLIFrameElement.goBack()
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... by calling this method, the browser <iframe>
changes its location for the previous location available in its navigation history, which sends a series of related events: mozbrowserlocation
change, mozbrowserloadstart, and so on.
HTMLIFrameElement.goForward()
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... by calling this method, the browser <iframe>
changes its location to the next location available in its navigation history, which sends a series of related events: mozbrowserlocation
change, mozbrowserloadstart and so on.
mozbrowseractivitydone
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... examples var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowseractivitydone", function(event) { if(event.details.success) { console.log('activity completed successfully'); } else { console.log('activity not completed successfully'); } }); related events mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserasyncscroll
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... examples var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserasyncscroll", function( event ) { console.log("the scroll top position of the document is:" + event.details.top + "px"); }); related events mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserclose
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserclose", function() { console.log("browser window has been closed; iframe will be destroyed."); }); related events mozbrowserasyncscroll mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsercontextmenu
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsercontextmenu", function(event) { console.log("asking for menu:" + json.stringify(event.details)); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserdocumentfirstpaint
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserdocumentfirstpaint", function() { console.log("first content painted."); }); related events mozbrowserasyncscroll mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsererror
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...roxyconnectfailure contentencodingfailure remotexul unsafecontenttype corruptedcontenterror certerror other example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsererror", function( event ) { console.log("an error occurred:" + event.detail); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserfirstpaint
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserfirstpaint", function(event) { console.log("first content painted."); }); related events mozbrowserasyncscroll mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsershowmodalprompt mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowseropensearch
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowseropensearch", function( event ) { console.log("new search engine encountered: " + event.details.title); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change ...
mozbrowseropentab
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowseropentab", function( event ) { console.log("a new document has opened containing the content at " + event.details.url + "."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowseropenwindow
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowseropenwindow", function( event ) { console.log("a new window has opened containing the content at " + event.details.url + "."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserresize
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserresize", function( event ) { console.log("the new window size is " + event.details.width + " x " + event.details.height + "."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserscroll
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowserscroll", function( event ) { console.log("the new scroll position is " + event.details.left + " across and " + event.details.top + "down."); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowsershowmodalprompt
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe"); browser.addeventlistener("mozbrowsershowmodalprompt", function( event ) { console.log("asking for prompt:" + json.stringify(event.detail)); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change mozbrowserusernameandpasswordrequired ...
mozbrowserusernameandpasswordrequired
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... example var browser = document.queryselector("iframe[mozbrowser]"); browser.addeventlistener("mozbrowserusernameandpasswordrequired", function( event ) { console.log("the auth realm is:" + event.detail.realm); }); related events mozbrowserasyncscroll mozbrowserclose mozbrowsercontextmenu mozbrowsererror mozbrowsericon
change mozbrowserloadend mozbrowserloadstart mozbrowserlocation
change mozbrowseropenwindow mozbrowsersecurity
change mozbrowsertitle
change ...
HTMLIFrameElement.setVisible()
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... the setvisible() method of the htmliframeelement is used to
change the visibility state of the browser <iframe>.
Overview of Mozilla embedding APIs
the webbrowser exposes a set of interfaces which allow the embedding application to control activity and respond to
changes within this client area.
...this should
change in the future.
Getting Started with Chat
/msg nick message sends a private message to the specified user /nick nickname
change your current nickname nickname: ping get a user's attention (nickname is the name of the user you want the attention of) nickname: pong respond to a user's ping (nickname is the name of the user who wants your attention) /query nickname opens a private chat with the specified user /quit message disconnects you from the current server displaying the ...
... /server server-name manually connect to a server /topic topic
changes the topic of the channel.
Download
this property may be populated or
changed while the download is in progress, using the mime type provided by the server.
... on
change function this can be set to a function that is called after other properties
change.
Downloads.jsm
re/modules/task.jsm"); task.spawn(function () { yield downloads.fetch("http://www.mozilla.org/", os.path.join(os.constants.path.tmpdir, "example-download.html")); console.log("example-download.html has been downloaded."); }).then(null, components.utils.reporterror); observing downloads this example logs a message every time a
change occurs in one of the global download lists.
... components.utils.import("resource://gre/modules/downloads.jsm"); components.utils.import("resource://gre/modules/osfile.jsm") components.utils.import("resource://gre/modules/task.jsm"); task.spawn(function () { let list = yield downloads.getlist(downloads.all); let view = { ondownloadadded: download => console.log("added", download), ondownload
changed: download => console.log("
changed", download), ondownloadremoved: download => console.log("removed", download) }; yield list.addview(view); try { let download = yield downloads.createdownload({ source: "http://www.mozilla.org/", target: os.path.join(os.constants.path.tmpdir, "example-download.html"), }); list.add(download); try { download.start(); ...
OS.File.Info
unixlaststatus
changedate date.
... this is the date of the latest write/renaming/mode
change/...
Deferred
a deferred object is returned by the obsolete promise.defer() method to provide a new promise along with methods to
change its state.
... backwards and forwards compatible helper this deferred function can be used for backwards and forwards compatibility, due to a
change that took place in firefox 30.
Localization and Plurals
usage here are a couple terms used in this page to help keep things clear: plural rule: for a given language, there is a grammatical rule on how to
change words, depending on the number qualifying the word.
...(seconde vs jour) chinese a word doesn't
change if there is a different number in front of it, so all numbers use the same plural form.
Setting up the infrastructure
this way the localizers will be able to preview their
changes almost in real-time.
... restart apache to reload gettext files (necessary for any text
changes).
Mozilla DOM Hacking Guide
we can
change the url of the current window by assigning window.location.
...specifically, due to some
changes that happened around, april 2002, some things that were not possible before are now possible.
Mozilla Web Developer FAQ
these aspects of the layout can be
changed by explicitly setting the display css property of the images (and possible surrounding <a> elements) to block.
...even if you had the source code for browser x, you couldn’t
change anything without risking changing one or more of the unknown and unintentional interactions within the program.
Mozilla Quirks Mode Behavior
in quirks mode, the font element
changes the color of text decorations specified on ancestor elements.
...should look into tablequirkcolorrule, re-describe, and figure out when it
changed.] obsolete since gecko 37 the empty-cells property defaulted to hide in quirks mode but show (according to css2.1) in standards mode (see bug 33244) (though the correct fix would be to specify it on the html table element in quirk.css).
Mozilla Style System
when script dynamically
changes the data represented by a css style rule, we create a new nsistylerule object; keeping the old one around briefly helps to determine what
changed and how we need to handle that
change.
... rule tree style data computation css style sheet backend loading parsing data structures cascading html mapped attribute backend css style attribute backend handling of dynamic
changes see also mozilla style system documentation (2002) style system tech talk (2002) ...
Activity Monitor, Battery Status Menu and top
task_power_info::task_platform_idle_wakeups obtained from the task_info function.) in mac os 10.10 it appears to have been
changed to measure interrupt-level wakeups (a superset of idle wakeups), which are less interesting.
...after 5–10 seconds, the "average energy impact" column is populated with values and the title bar
changes to "activity monitor (applications in last 8 hours)".
Power profiling overview
this can identify specific
changes that caused regressions, for example.
...for example, it can be useful to gradually remove elements from a web page and see how the power-related measurements
change.
TraceMalloc
tracemalloc
changelogfd(logfd) -
change the current log file to the one identified by logfd, returning the previous fd (so you can maintain a number of open files; keep their fds in a js array!).
...if logfd identifies the current log file,
change the current log file to the default log file given by the --trace-malloc command line argument.
AsyncTestUtils extended framework
note that the default is subject to
change, so if you want 10, say 10, instead of relying on the default.
...it does, however, send a junkstatus
changed notification via the nsimsgfoldernotificationservice's itemevent mechanism.
Leak And Bloat Tests
provide a consistent number from build to build where no source code has
changed.
...ry", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail/local folders"); user_pref("mail.server.server2.directory", "/home/moztest/.thunderbird/t7i1txfw.minimum/mail/tinderbox"); user_pref("mail.attachment.store.version", 1); user_pref("mail.folder.views.version", 1); user_pref("mail.spam.version", 1); user_pref("mailnews.quotingprefs.version", 1); user_pref("mailnews.ui.threadpane.version", 6);
changes to leak and bloat tests date and time (pst) description approx effect on numbers pre dec 2008 initial version - 2008/12/07 11:20 bug 463594 disabled os x and outlook address books via the preference settings mac lk -56.2kb.
McCoy
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.
...it's important to note that if you
change any information in the update file then it must be signed again.
Midas editor module security preferences
only
change these settings as needed to try the demo above and to test your own add-on or firefox-internal code, and be sure to restore the default settings when you're done!
... add these lines to user.js: user_pref("capability.policy.policynames", "allowclipboard"); user_pref("capability.policy.allowclipboard.sites", "https://www-archive.mozilla.org"); user_pref("capability.policy.allowclipboard.clipboard.cutcopy", "allaccess"); user_pref("capability.policy.allowclipboard.clipboard.paste", "allaccess");
change the url https://www.mozilla.org to the site for which you want to enable this function.
NSPR Contributor Guide
this means that the behavior of an existing public api item in nspr cannot
change.
...include your
changes as diffs in an attachment to the bugzilla report.
NSPR Poll Method
to remain compatible with this potential semantic
change, nspr clients should only use *out_flags as described in the how to use the poll method section below.
...(note: this may
change in a future nspr release if we make the semantic
change to *out_flags mentioned above.
PR_CNotify
notify a thread waiting on a
change in the state of monitored data.
... description using the value specified in the address parameter to find a monitor in the monitor cache, pr_cnotify notifies single a thread waiting for the monitor's state to
change.
PR_CWait
wait for a notification that a monitor's state has
changed.
... description using the value specified in the address parameter to find a monitor in the monitor cache, pr_cwait waits for a notification that the monitor's state has
changed.
PR_Notify
notifies a monitor that a
change in state of the monitored data has occurred.
... description notification of a monitor signals the
change of state of some monitored data.
PR_NotifyCondVar
notifies a condition variable of a
change in its associated monitored data.
... notification of a condition variable signals a
change of state in some monitored data.
PR_Wait
the resumption from the wait is merely a hint that a
change of state has occurred.
...act on the state
change ...
NSPR release process
make a dummy
change (add or remove a blank line) to mozilla/nsprpub/config/prdepend.h.
... make a dummy
change (add or remove a blank line) to mozilla/nsprpub/config/prdepend.h.
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 596798: win_rand.c (among others) uses unsafe _snwprintf bug 597622: do not use the sec_error_bad_info_access_location error code for bad crl distribution point urls bug 619268: memory leaks in cert_
changecerttrust and cert_savesmimeprofile bug 585518: addtrust qualified ca root serial wrong in certdata.txt trust entry bug 337433: need cert_findcertbynicknameoremailaddrbyusage bug 592939: expired cas in certdata.txt documentation <for a="" class="new " documentation="" href="/en/index.html#documentation" list="" nss="" of="" pages="" primary="" rel="internal" see="" the="" title="en/ind...
NSS 3.14.1 release notes
new functions in ocspt.h cert_createocspsingleresponsegood cert_createocspsingleresponseunknown cert_createocspsingleresponserevoked cert_createencodedocspsuccessresponse cert_createencodedocsperrorresponse new types in ocspt.h certocspresponderidtype notable
changes in nss 3.14.1 windows ce support has been removed from the code base.
... note: the criteria for false start may
change again in future nss releases.
NSS 3.14.3 release notes
notable
changes in nss 3.14.3 cve-2013-1620 recent research by nadhem alfardan and kenny patterson has highlighted a weakness in the handling of cbc padding as used in ssl, tls, and dtls that allows an attacker to exploit timing differences in mac processing.
... nss 3.14.3 includes
changes to the softoken and ssl libraries to address and mitigate these attacks, contributed by adam langley of google.
NSS 3.15.5 release notes
the extension type value is 35655, which may
change when an official extension type value is assigned by iana.
... notable
changes in nss 3.15.5 bug 950129: improve the ocsp fetching policy when verifying ocsp responses bug 949060: validate the iov input argument (an array of priovec structures) of ssl_writev (called via pr_writev).
NSS 3.16.1 release notes
new types in sslt.h ssl_padding_xtn - the value of this enum constant
changed from the experimental value 35655 to the iana-assigned value 21.
... notable
changes in nss 3.16.1 imposed name constraints on the french government root ca anssi (dciss).
NSS 3.16.4 release notes
nss 3.16.4 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_16_4_rtm/src/ new in nss 3.16.4 this release consists primarily of ca certificate
changes as listed below, and includes a small number of bug fixes.
... notable
changes in nss 3.16.4 the following 1024-bit root ca certificate was restored to allow more time to develop a better transition strategy for affected sites.
NSS 3.18.1 release notes
notable
changes in nss 3.18.1 the following ca certificate had the websites and code signing trust bits restored to their original state to allow more time to develop a better transition strategy for affected sites.
...but when firefox 38 went into beta, there was a huge spike in the number of certificate verification errors attributed to this
change.
NSS 3.22.1 release notes
the bug fixes in nss 3.22.1 are described in the "notable
changes" section below.
... notable
changes in nss 3.22.1 bug 1194680: nss has been
changed to use the pr_getenvsecure function that was made available in nspr 4.12 compatibility nss 3.22.1 shared libraries are backward compatible with all older nss 3.22 shared libraries.
NSS 3.24 release notes
notable
changes in nss 3.24 additions, deprecations, and other
changes in nss 3.24 are listed below.
...(applications should instead use the new ssl_configservercert function.) ssl_setstapledocspresponses ssl_setsignedcerttimestamps ssl_configsecureserver ssl_configsecureserverwithcertchain deprecate the nss_findcertkeatype function, as it reports a misleading value for certificates that might be used for signing rather than key ex
change.
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 ex
change handshake (ssl_namedgroupconfig).
... added support for rsa-pss signatures in tls 1.2 and tls 1.3 new functions in ssl.h ssl_namedgroupconfig notable
changes in nss 3.27 update 2016-10-02: the maximum tls version supported has been increased to tls 1.3 (draft).
NSS 3.28.1 release notes
notable
changes in nss 3.28.1 the following ca certificates were removed cn = buypass class 2 ca 1 sha-256 fingerprint: 0f:4e:9c:dd:26:4b:02:55:50:d1:70:80:63:40:21:4f:e9:44:34:c9:b0:2f:69:7e:c7:10:fc:5f:ea:fb:5e:38 cn = root ca generalitat valenciana sha-256 fingerprint: 8c:4e:df:d0:43:48:f3:22:96:9e:7e:29:a4:cd:4d:ca:00:46:55:06:1c:16:e1:b0:76:42:2e:f3:42:ad:63:0e ...
... bugs fixed in nss 3.28.1 bug 1296697 - december 2016 batch of root ca
changes bug 1322496 - internal error assert when the other side closes connection before reading eoed compatibility nss 3.28.1 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.30.2 release notes
notable
changes in nss 3.30.2 the following ca certificates were removed: o = japanese government, ou = applicationca sha-256 fingerprint: 2d:47:43:7d:e1:79:51:21:5a:12:f3:c5:8e:51:c7:29:a5:80:26:ef:1f:cc:0a:5f:b3:d9:dc:01:2f:60:0d:19 cn = wellssecure public root certificate authority sha-256 fingerprint: a7:12:72:ae:aa:a3:cf:e8:72:7f:7f:b3:9f:0f:b3:d1:e5:42:6e:90:60:b0...
...60:ea:16:29:dd:7e:86:79:90:64:87:16 trust flags: websites technically constrained to: gov.tr, k12.tr, pol.tr, mil.tr, tsk.tr, kep.tr, bel.tr, edu.tr, org.tr the version number of the updated root ca list has been set to 2.14 (the version numbers 2.12 and 2.13 for the root ca list have been skipped.) bugs fixed in nss 3.30.2 bug 1350859 - march 2017 batch of root ca
changes bug 1349705 - implemented domain name constraints for ca: tubitak kamu sm ssl kok sertifikasi - surum 1 compatibility nss 3.30.2 shared libraries are backward compatible with all older nss 3.x shared libraries.
NSS 3.31 release notes
notable
changes in nss 3.31 the apis that set a tls version range have been
changed to trim the requested range to the overlap with a systemwide crypto policy, if configured.
...they have been
changed to return success, if at least one tls version overlaps between the requested range and the systemwide policy.
NSS 3.34 release notes
nss 3.34 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_34_rtm/src/ notable
changes in nss 3.34 the following ca certificates were added: cn = gdca trustauth r5 root sha-256 fingerprint: bf:ff:8f:d0:44:33:48:7d:6a:8a:a6:0c:1a:29:76:7a:9f:c2:bb:b0:5e:42:0f:71:3a:13:b9:92:89:1d:38:93 trust flags: websites cn = ssl.com root certification authority rsa sha-256 fingerprint: 85:66:6a:56:2e:e0:be:5c:e9:25:c1:d8:89:0a:6f:76:a8:7e:c1:6d:4d:...
... sslchannelinfo has two new fields (bug 1396525) sslnamedgroup originalkeagroup holds the key ex
change group of the original handshake, when the session was resumed.
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 ex
change 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.52 release notes
notable
changes in nss 3.52 bug 1603628 - update nss to support pkcs #11 v3.0.
... note: this
change modifies the ck_gcm_params struct to include the ulivbits field which, prior to pkcs #11 v3.0, was ambiguously defined and not included in the nss definition.
NSS 3.53 release notes
notable
changes in nss 3.53 when using the makefiles, nss can be built in parallel, speeding up those builds to more similar performance as the build.sh/ninja/gyp system.
... bug 1561331 - additional modular inverse test bug 1629553 - rework and cleanup gmake builds bug 1438431 - remove mkdepend and "depend" make target bug 290526 - support parallel building of nss when using the makefiles bug 1636206 - hacl* update after
changes in libintvector.h bug 1636058 - fix building nss on debian s390x, mips64el, and riscv64 bug 1622033 - add option to build without seed this bugzilla query returns all the bugs fixed in nss 3.53: https://bugzilla.mozilla.org/buglist.cgi?resolution=fixed&classification=components&query_format=advanced&product=nss&target_milestone=3.53 compatibility nss 3.53 shared libraries are backward com...
NSS 3.54 release notes
notable
changes in nss 3.54 support for tls 1.3 external pre-shared keys (bug 1603042).
... certificate authority
changes the following ca certificates were added: bug 1645186 - certsign root ca g2 sha-256 fingerprint: 657cfe2fa73faa38462571f332a2363a46fce7020951710702cdfbb6eeda3305 bug 1645174 - e-szigno root ca 2017 sha-256 fingerprint: beb00b30839b9bc32c32e4447905950641f26421b15ed089198b518ae2ea1b99 bug 1641716 - microsoft ecc root certificate authority 2017 sha-256 fingerprint: 358df39d764af9e1b766e9c972df352ee15cfac227af6ad1d70e8e4a6edcba02 bug 1641716 - microsoft rsa root certificate authority 2017 sha-256 fingerprint: c741f70f4b2a8d88bf2e71c14122ef53ef10eba0cfa5e64cfa20f418853073e0 the following ca cert...
NSS sources building testing
nss/test this directory contains the nss test suite, which is routinely used to ensure that
changes to nss don't introduce regressions.
... running the nss test suite this is an important part of development work, in order to ensure your
changes don't introduce regressions.
NSS functions
mxr 3.4 and later cert_addrdn mxr 3.2.1 and later cert_asciitoname mxr 3.2 and later cert_cachecrl mxr 3.10 and later cert_clearocspcache mxr 3.11.7 and later cert_certchainfromcert mxr 3.2 and later cert_certlistfromcert mxr 3.2 and later cert_certtimesvalid mxr 3.2 and later cert_
changecerttrust mxr 3.2 and later cert_checkcertvalidtimes mxr 3.2 and later cert_checknamespace mxr 3.12 and later cert_checkcertusage mxr 3.3 and later cert_comparename mxr 3.2 and later cert_comparevaliditytimes mxr 3.11 and later cert_completecrldecodeentries mxr 3.6 and later cert_convertanddeco...
... function name/documentation source code nss versions pk11_algtagtomechanism mxr 3.2 and later pk11_authenticate mxr 3.2 and later pk11_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_convertsessionprivkeytotokenprivkey mxr 3.6 and later pk11...
NSS tools : vfychain
modutil can add and delete pkcs #11 modules,
change passwords on security databases, set defaults, list module contents, enable or disable slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
...the nss site relates directly to nss code
changes and releases.
troubleshoot.html
the
change is unfortunately rather drastic: to trick gmake, you rename the shell program.
... cd c:/programs/cygnus/bin (or wherever your gnu tools are installed) cp shmsdos.exe shmsdos.bak (backup shmsdos) cp sh.exe shmsdos.exe (substitute alternative shell) making this
change will probably break other builds you are making on the same machine.
sslcrt.html
if you attempt to do so, the
change affects all the shallow copies of that structure and can cause severe problems.
... nss_findcertkeatype returns key ex
change type of the keys in an ssl server certificate.
ssltyp.html
<a name="> many of the structures presented here (certcertdbhandle, certcertificate, pk11slotinfo, and seckeyprivatekey) are opaque--that is, they are types defined as structures (for example, certcertdbhandlestr) that may
change in future releases of network security services.
...if you attempt to do so, the
change affects all the shallow copies of that structure and can cause severe problems.
NSS_3.12.3_release_notes.html
new in nss 3.12.3
changes in behavior: in the development of nss 3.12.3, it became necessary to
change some old library behaviors due to the discovery of certain vulnerabilities in the old behaviors, and to correct some errors that had limited nss's ability to interoperate with cryptographic hardware and software from other sources.
... most of these
changes should cause no problems for nss users, but in some cases, some customers' software, hardware and/or certificates may be dependent on the old behaviors, and may have difficulty with the new behaviors.
NSS Tools certutil
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.
... -w
change the password to a key database.
NSS Tools crlutil
change range of certificate entry(s) in crl range new-range where: new-range: two integer values separated by dash: range of certificates that will be added by this command.
... reasoncode non-critical code where: reasoncode: identifies the name of an extension non-critical: should be set to 0 since this is non-critical extension code: the following codes are available: unspecified (0), keycompromise (1), cacompromise (2), affiliation
changed (3), superseded (4), cessationofoperation (5), certificatehold (6), removefromcrl (8), privilegewithdrawn (9), aacompromise (10) add invalidity date extension: the invalidity date is a non-critical crl entry extension that provides the date on which it is known or suspected that the private key was compromised or that the cert...
NSS tools : vfychain
modutil can add and delete pkcs #11 modules,
change passwords on security databases, set defaults, list module contents, enable or disable slots, enable or disable fips 140-2 compliance, and assign default providers for cryptographic operations.
...the nss site relates directly to nss code
changes and releases.
Pork Tools
if (result) return nsnull; // error returns are
changed to nsnull //instead ns_ok, actual result is returned return result; } caller1 { //case 1 nsresult rv; rv = getter(&var); ns_ensure_success(rv,rv); //case 2: naked call getter(&var); //case 3: nsresult decl nsresult rv2 = getter(&var); ns_ensure_success(rv2,rv2); } caller1 { // case 1 // figure out that rv was only used for the rewritten // outparam call + ns_en...
...then nuke the declaration // nsresult rv; // move outparam to lhs var = getter(); // detect ns_ensure_success immediately following // and
change it to an equivalent ns_ensure_true ns_ensure_true(var, ns_error_failure); // case 2 var = getter(); // case 3, eliminate rv2 decl given that it's not used elsewhere var = getter(); ns_ensure_true(var, ns_error_failure) } outparamdel also support rewriting getters such that they return already_addrefed<nsifoo>.
Rhino downloads archive
release release date
change log download link rhino 1.7r4 2012-06-18 new in rhino 1.7r4 rhino1_7r4.zip rhino 1.7r3 2011-05-09 new in rhino 1.7r3 rhino1_7r3.zip rhino 1.7r2 2009-03-22 new in rhino 1.7r2 rhino1_7r2.zip rhino 1.7r1 2008-03-06 new in rhino 1.7r1 rhino1_7r1.zip rhino 1.6r7 2007-08-20 new in rhino 1.6r7 rhino1_6r7.zip rhino 1.6r6 2007-07-30 new in rhino 1.6r6 rhino1_6r6.zip rhino 1.6r5 2006-11-19 same code as 1.6r4, but relicensed under mpl/gpl.
... rhino1_6r5.zip rhino 1.6r4 2006-09-10 bug 343976 rhino1_6r4.zip rhino 1.6r3 2006-07-24
changes in 1.6r3 rhino1_6r3.zip rhino 1.6r2 2005-09-19
changes in 1.6r2 rhino1_6r2.zip rhino 1.6r1 2004-11-29
changes in 1.6r1 rhino1_6r1.zip rhino 1.5r5 2004-03-25
changes in 1.5r5 rhino1_5r5.zip rhino 1.5r4.1 2003-04-21
changes in 1.5r4.1 rhino15r41.zip rhino 1.5r4 2003-02-10
changes in 1.5r4 rhino15r4.zip rhino 1.5r3 2002-01-27
changes in 1.5r3 rhino15r3.zip rhino 1.5r2 2001-07-27
changes in 1.5r2 rhino15r2.zip rhino 1.5r1 2000-09-10
changes in 1.5r1 rhino15r1.zip rhino 1.4r3 1999-05-10 initial public release ...
Rhino scopes and contexts
sealed shared scopes the ecmascript standard defines that scripts can add properties to all standard library objects and in many cases it is also possible to
change or delete their properties as well.
... a notion of a sealed object is a javascript extension supported by rhino and it means that properties can not be added/deleted to the object and the existing object properties can not be
changed.
Rebranding SpiderMonkey (1.8.5)
the above command has actually
changed some information we need
changed back so we will re-issue the recursive find and replace text in files command with some modifications.
... find ./ -type f -exec sed -i "s/$brand.pc/mozjs185.pc/" {} \; the last recursive search and replace,
changes the file name of the static library: find ./ -type f -exec sed -i "s/js_static/$brand_static/" {} \; allright, almost there.
Creating JavaScript tests
for this reason, the best place to find out if a
change is performance sensitive is on arewefastyet.com.
... checking in completed tests tests are usually reviewed and pushed just like any other code
change.
Future directions
whenever practical, new code and
changes should move code closer to the ideal future.
... and of course, the idea of the future is always evolving in time as things
change and we learn more.
Invariants
if an object is inextensible, its dslots will never again
change.
... also, we never
change the shape of the global object on trace.
JSAPI User Guide
to
change the global object for your application, call js_setglobalobject.
...a second drawback is that the system doesn't automatically respond to
changes in user privileges.
JS_DeleteProperty2
then one of the following cases applies: if obj has no property with the given name or id, or if obj inherits the specified property from its prototype, then *succeeded is set to true and obj's jsclass.delproperty hook is called (which may
change *succeeded).
...in this case, *succeeded is set to true and obj's jsclass.delproperty hook is called (which may
change *succeeded).
JS_SetArrayLength
syntax bool js_setarraylength(jscontext *cx, js::handle<jsobject*> obj, uint32_t length); name type description cx jscontext * the context in which to
change the length of the array.
...you can call js_setarraylength either to set the number of elements for an array object you created without specifying an initial number of elements, or to
change the number of elements allocated for an array.
JS_SetElement
js_setelement ordinarily leaves *vp un
changed, but a jsclass.addproperty hook or non-default setter may modify it.
... obsolete since jsapi 29 on success, js_setelement returns true and the value left in *vp is left un
changed unless an addproperty hook or setter modified it.
JS_SetProperty
ordinarily this function leaves v un
changed, but it is possible for a jsclass.addproperty hook or a non-default setter to assign to v.
... on success, js_setproperty returns true, and the value in v is left un
changed unless a hook or setter modified it.
SpiderMonkey 1.8
a handful of
changes are not backwards-compatible: the result of assigning to a property with a setter has
changed (bug 312354).
...there is also one obscure non-backwards-compatible
change.
TPS Password Lists
for example: var password_list = [ { hostname: "http://www.example.com", submiturl: "http://login.example.com", username: "joe", password: "secret123", usernamefield: "uname", passwordfield: "pword",
changes: { password: "zippity-do-dah" } }, { hostname: "http://www.example.com", realm: "login", username: "joe", password: "secretlogin" } ]; each object has the following properties: hostname: the hostname for the password.
...
changes: an object containing any of the above properties, which are applied during a modify action.
compare-locales
menu.tooltip +fullzoomenlargecmd.commandkey3 +fullzoomreducecmd.commandkey2 +fullzoomresetcmd.commandkey2 +organizebookmarks.label -showallbookmarkscmd2.label migration/migration.dtd -importfromfile.accesskey -importfromfile.label +importfromhtmlfile.accesskey +importfromhtmlfile.label you can assume
changed strings when you see entities removed and added with a similar name.
... 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 commandkeys.
Handling Mozilla Security Bugs
its membership should
change infrequently and only after consultation with the mozilla.org staff.
... as with other mozilla project issues, mozilla.org staff will have the final authority to make
changes to this policy, and will do so only after consulting with the various parties involved and with the public mozilla community, in order to ensure that all views are taken into account.
Signing Mozilla apps for Mac OS X
you'll of course need to
change the signing id, keychain, bundle path, and requirements.
...if any file is subsequently
changed, the folder will no longer validate.
Gecko Roles
role_animation represents an animation control, which contains content that
changes over time, such as a control that displays a series of bitmap frames.
...as the user manipulates the scroll bars, the contents of the viewport can
change.
XForms Accessibility
input a key xforms element to show and
change the instance data to which it is bound (see the spec, the docs).
... textarea serves to show/
change multiline text (see the spec, the docs).
extIPreferenceBranch
events readonly attribute extievents the events object for the preferences supports: "
change" methods has() check to see if a preference exists.
... 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 (seamonkey) known issues bug 488587 - function registered as fuel preference listener not always called ...
Bundling multiple binary components
the more likely case is that the component uses "unfrozen" interfaces and those interfaces can
change between gecko versions.
...create small wrappers for calling the methods, as you may need to thunk parameters depending on how much has
changed between gecko versions.
Creating a Python XPCOM component
defining the interface make a file named "nsipysimple.idl" to define the interface: #include "nsisupports.idl" [scriptable, uuid(2b324e9d-a322-44a7-bd6e-0d8c83d94883)] interface nsipysimple : nsisupports { attribute string yourname; void write( ); void
change(in string avalue); }; this is the same as the nsisimple interface used here.
... def __del__(self): if verbose: print "pysimple: __del__ method called - object is destructing" def write(self): print self.yourname def
change(self, newname): self.yourname = newname then register your component; the procedure is the same for any component, but will not work if python components weren't enabled.
Avoiding leaks in JavaScript XPCOM components
this article needs to be updated to reflect the
changes and the cases where they help.
...the situation with javascript properties on dom nodes may also improve—see bug 283129—but it requires substantial
changes.) things not to do everybody writing, reviewing, or checking in javascript code to mozilla cvs should understand why these things are bad.
XPCOM guide
in this document the term array refers to a container for multiple objects with a numeric, zero-based index.xpcom
changes in gecko 2.0several
changes that affect xpcom component compatibility are taking place in gecko 2.
... this article details those
changes, and provides suggestions for how to update your code.xpcom hashtable guidea hashtable is a data construct that stores a set of items.
Interfacing with the XPCOM cycle collector
add a line declaring that your class nsfoo participates in the cycle collection in nsfoo.cpp: ns_impl_cycle_collection_class(nsfoo)
change the line ns_decl_isupports to ns_decl_cycle_collecting_isupports in the definition of nsfoo.
...or if that doesn't work: ns_interface_table_head(nsfoo) ns_interface_table2(nsfoo, nsibar, nsibaz) ns_interface_table_to_map_segue_cycle_collection(nsfoo) ns_interface_map_end
change the line ns_impl_addref(nsfoo) to ns_impl_cycle_collecting_addref(nsfoo) in nsfoo.cpp, and similarly
change the line ns_impl_release(nsfoo) to ns_impl_cycle_collecting_release(nsfoo) in nsfoo.cpp.
Components.utils.exportFunction
modifying the argument while cloning creates a copy of an object, an xray for an object refers to the original, so any
changes to the argument that are made in the exported function will affect the original object that was passed in: // privileged scope: for example, a content script function
changemyname(user) { user.name = "bill"; } exportfunction(
changemyname, contentwindow, { defineas: "
changemyname" }); // less-privileged scope: for example, a page script var user = {name: "jim"}; var test = document.get...
...elementbyid("test"); test.addeventlistener("click", function() { console.log(user.name); // "jim" window.
changemyname(user); console.log(user.name); // "bill" }, false); note that this is subject to the normal rules of xrays: for example, an expando property added to a dom node will not be visible in the original object.
IAccessibleEditableText
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) this interface is typically used in conjunction with the iaccessibletext interface and complements that interface with the additional capability of clipboard operations.
...if endoffset is lower than startoffset, the result is the same as a call with the two arguments ex
changed.
IAccessibleHyperlink
1.0 66 introduced gecko 1.9 inherits from: iaccessibleaction last
changed in gecko 1.9 (firefox 3) this interface represents a hyperlink associated with a single substring of text or single non-text object.
...this is a volatile state that may
change without sending an appropriate event.
imgIContainer
66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) implemented by: ?????????????????????????????????????.
...do not
change these without looking at the implementations using them, struct gif_struct::disposal_method and gif_write() in particular.
imgIRequest
inherits from: nsirequest last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview void cancelandforgetobserver(in nsresult astatus); imgirequest clone(in imgidecoderobserver aobserver); void decrementanimationconsumers(); imgirequest getstaticrequest(); void incrementanimationconsumers(); void lockimage(); void requestdecode(); void unlockimage(); attributes attribute type description corsmode long the cors mode that this image was loaded with.
...the lock persists for the lifetime of the imgirequest (until unlockimage() is called) even if the underlying image
changes.
mozIPlaceInfo
warning: this interface is experimental and will
change after gecko 2.0.
... toolkit/components/places/public/moziasynchistory.idlscriptable this interface provides additional info for a places entry 1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description frecency long read only: the frecency of the place.
mozIStorageError
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports attributes attribute type description message autf8string a human readable error string with details; this may be null if no details are available.
... schema 17 the database schema
changed.
mozIStorageVacuumParticipant
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) to create an instance of this interface, use the category manger, with the category "vacuum-participant".
...note: if the database is using the wal journal node and the current page size is not the expected one, the journal node will be
changed to truncate because wal doesn't allow page size
changes.
nsIAccelerometerUpdate
xpcom/system/nsiaccelerometer.idlnot scriptable replaced by nsidevicemotionupdate 1.0 66 introduced gecko 2.0 obsolete gecko 6.0 inherits from: nsiaccelerometer last
changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamonkey 2.2) this method is only used in content tabs to receive nsiacceleration data from the chrome process.
... method overview void acceleration
changed(in double x, in double y, in double z); methods acceleration
changed() void acceleration
changed( in double x, in double y, in double z ); parameters x y z the coordinates of the nsiacceleration data.
nsIAsyncInputStream
inherits from: nsiinputstream last
changed in gecko 1.7 if an input stream is non-blocking, it may return ns_base_stream_would_block when read.
...once the stream is closed, the stream's status cannot be
changed.
nsIAsyncOutputStream
inherits from: nsioutputstream last
changed in gecko 1.7 if an output stream is non-blocking, it may return ns_base_stream_would_block when written to.
...once the stream is closed, the stream's status cannot be
changed.
nsIAuthModule
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void getnexttoken([const] in voidptr aintoken, in unsigned long aintokenlength, out voidptr aouttoken, out unsigned long aouttokenlength); void init(in string aservicename, in unsigned long aserviceflags, in wstring adomain, in wstring ausername, in wstring apassword); void unwrap([const] in voidptr aintoken, in unsigned long aintokenlength, out voidptr aouttoken, out unsigned long aouttokenlength); void wrap([const] in voidptr aintoken, in unsigned long aintokenlength, in boolean confidential, out voidptr aouttoken, out unsign...
... wrap() once a security context has been established through calls to getnexttoken() it may be used to protect data ex
changed between client and server.
nsIBrowserHistory
inherits from: nsiglobalhistory2 last
changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamonkey 2.19) implemented by: @mozilla.org/browser/nav-history-service;1.
... adobatchnotify obsolete since gecko 9.0 if set to true, the beginupdatebatch and endupdatebatch events are sent; otherwise, no notification of
changes to the history is provided.
nsIClipboardDragDropHooks
inherits from: nsisupports last
changed in gecko 1.7 embedders who want to have these hooks made available should implement nsiclipboarddragdrophooks and use the command manager to send the appropriate commands with these parameters/settings: command: cmd_clipboarddragdrophook params value type possible values "addhook" isupports nsiclipboarddragdrophooks as nsisupports "removehook" isupports nsiclipboarddragdrophooks as nsisupports note: overrides/hooks need to be added...
...on win32, this will
change the cursor to "reject".
nsIContentPrefService2
dom/interfaces/base/nsicontentprefservice2.idlscriptable asynchronous api for content preferences 1.0 66 introduced gecko 20.0 inherits from: nsisupports last
changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) description content preferences allow the application to associate arbitrary data, or "preferences", with specific domains, or web "content".
...pass null to observe all preference
changes regardless of name.
nsIContentView
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) see working with content views for details on how to use this api.
... id nscontentviewid id that can be used in conjunction with nsidomwindowutils to
change the actual document, instead of just how it is transformed; this is a 64-bit unsigned integer.
nsIDOMChromeWindow
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void beginwindowmove(in nsidomevent mousedownevent); void getattention(); void getattentionwithcyclecount(in long acyclecount); void maximize(); void minimize(); void notifydefaultbuttonloaded(in nsidomelement defaultbutton); void restore(); void setcursor(in domstring cursor); attributes attribute type description browserdomwindow nsibrowserdomwindow the related nsibrowserdomwindow instance which provides access to yet another layer of utility functions by chrome script.
...at that time, the cursor has been never
changed by cursor moving.
nsIDOMFile
this will likely
change in the future, so avoid using any non-standard methods offered by this interface in order to ensure future compatibility.
... last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports this interface implements the dom file object; for complete documentation, read up on that.
nsIDOMGeoPositionAddress
1.0 66 introduced gecko 1.9.2 obsolete gecko 14.0 inherits from: nsisupports last
changed in gecko 11 (firefox 11 / thunderbird 11 / seamonkey 2.8) this object is obtained from an nsidomgeopositionaddress object via its address attribute.
... historical note, which is likely of no interest to most readers: the types of the attributes below all
changed from string to domstring in gecko 1.9.2 beta 5.
nsIDOMHTMLSourceElement
last
changed in gecko 1.9.1.2 inherits from: nsidomhtmlelement the source element allows authors to specify multiple media resources for media elements.
...note that dynamically manipulating this value after the page has loaded has no effect on the containing element; instead,
change the src attribute of that element (audio or video) instead.
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 / seamonkey 2.0) gecko 1.9.2 note prior to gecko 1.9.2, this inherited from nsisupports instead of from nsidommouseevent.
...in long screenxarg, in long screenyarg, in long clientxarg, in long clientyarg, in boolean ctrlkeyarg, in boolean altkeyarg, in boolean shiftkeyarg, in boolean metakeyarg, 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.
nsIDOMNSHTMLDocument
inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 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); ...
...roughly equivalent to body.contenteditable domain domstring initially the host name of the document's url, but may be
changed to the parent (but not top-level) domain in order to facilitate data ex
change between documents from different sites in the same domain.
nsIDOMStorage
1.0 66 introduced gecko 1.8.1 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) a dom window's session storage object can be retrieved from the window's sessionstorage attribute.
...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.
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 / seamonkey 2.4) in gecko 8.0 this interface was merged into the nsidomwindow interface.
... method overview firefox 3.5 note the prompt() and find() methods
changed in firefox 3.5 to make all their parameters optional; in previous versions, all parameters were required.
nsIDialogParamBlock
inherits from: nsisupports last
changed in gecko 1.7 method overview print32 getint( in print32 inindex ); wstring getstring( in print32 inindex ); void setint( in print32 inindex, in print32 inint ); void setnumberstrings( in print32 innumstrings ); void setstring( in print32 inindex, in wstring instring); attributes attribute type description objects nsimutablearray a place where you can store an nsimutablearray to pass nsisupports.
...use before setting any string (if you want to
change it from the default).
getFile
symbolic names the list of symbolic names is subject to
change, so be sure to take a look at the xpcom/io/nsdirectoryservicedefs.h file for the version of gecko you're working with for the latest list.
...this
change was required in order to comply with apple's new gatekeeper v2 rules; without this
change, firefox would not work on any mac os x newer than 10.9.4.
nsIEditorSpellCheck
inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/editor/editorspellchecker;1.
...checkcurrentdictionary() call this after any
change in installed dictionaries to ensure that the spell checker is not using a current dictionary which is no longer available.
nsIFeedTextConstruct
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) implemented by: @mozilla.org/feed-textconstruct;1, but users usually don't need to create instances of this directly.
...if the type attribute is "text", this method returns the value of the text attribute un
changed.
nsIHttpChannelInternal
using features exposed by this interface is not recommended, as it will
change in unpredictable ways.
... 66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 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 afallbackkey); attributes attribute type description canceled boolean returns true if and only if the channel has been canceled.
nsIIOService
inherits from: nsisupports last
changed in gecko 1.2 this interface duplicates many of the nsiprotocolhandler methods in a protocol handler independent way (for example newuri() inspects the scheme in order to delegate creation of the new uri to the appropriate protocol handler).
...observers will be notified of
changes to this attribute.
nsIJetpack
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void sendmessage(in astring amessagename /* [optional] in jsval v1, [optional] in jsval v2, ...
... createhandle() this creates an opaque handle that can transparently be ex
changed between processes.
nsILoadGroup
inherits from: nsirequest last
changed in gecko 1.7 method overview void addrequest(in nsirequest arequest, in nsisupports acontext); void removerequest(in nsirequest arequest, in nsisupports acontext, in nsresult astatus); attributes attribute type description activecount unsigned long returns the count of "active" requests (that is requests without the load_background bit set).
...if the default load request is null, then the group's load flags are not
changed.
nsILoginMetaInfo
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) you can specifically modify these values by passing
changes into nsiloginmanager.modifylogin() using an nsipropertybag2 object as the input.
... timepassword
changed unsigned long long the time, in unix epoch milliseconds, when the login's password was last modified.
nsIMIMEInputStream
inherits from: nsiinputstream last
changed in gecko 1.3 implemented by: @mozilla.org/network/mime-input-stream;1.
...not allowed to be
changed once the stream has been started to be read.
nsIMemoryReporter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 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 interface is undergoing heavy development, and is subject to rapid
changes.
nsIMicrosummaryObserver
toolkit/components/places/public/nsimicrosummaryservice.idlscriptable this interface provides methods for observing
changes to micrummaries.
... 1.0 66 introduced gecko 1.8 obsolete gecko 6.0 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview void oncontentloaded(in nsimicrosummary microsummary); void onelementappended(in nsimicrosummary microsummary); void onerror(in nsimicrosummary microsummary); methods oncontentloaded() called when an observed microsummary updates its content.
nsIMicrosummaryService
1.0 66 introduced gecko 1.8 obsolete gecko 6.0 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) implemented by: @mozilla.org/microsummary/service;1 as a service: var microsummaryservice = components.classes["@mozilla.org/microsummary/service;1"] .getservice(components.interfaces.nsimicrosummaryservice); method overview void addgenerator(in nsiuri generatoruri); nsimicrosummary createmicrosummary(in nsiuri pageu...
...the set might
change after this method returns, since this method will trigger an asynchronous load of the page in question (if it isn't already loaded) to see if it references any page-specific microsummaries.
nsIMsgDBHdr
in clear, if you want to do a persistent
change to a message header, such as marking it as read, or replied to, or whatever, you must do it through its corresponding nsimsgfolder (msghdr.folder) or nsimsgdatabase (msghdr.folder.msgdatabase).
...this property does not
change the state of any thread objects, so only internal database code should set this attribute.
nsINavHistoryResultNode
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description accesscount unsigned long total number of times the uri has been accessed.
...using places services after quit-application is not reliable, so make sure to do any shutdown work on quit-application, or history synchronization could fail, losing latest
changes.
nsINavHistoryResultTreeViewer
1.0 66 introduced gecko 1.8 inherits from: nsinavhistoryresultobserver last
changed in gecko 1.9 (firefox 3) this object removes itself from the associated result when the tree is detached; this prevents circular references.
... it's important to be aware of this—if you want to reuse the same viewer, you need to keep your own reference to it, then reinitialize it when the tree
changes.
nsINavHistoryService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 22 (firefox 22 / thunderbird 22 / seamonkey 2.19) implemented by: "@mozilla.org/browser/nav-history-service;1".
...use this when a lot of things are about to
change.
nsIPipe
inherits from: nsisupports last
changed in gecko 1.6 method overview void init(in boolean nonblockinginput, in boolean nonblockingoutput, in unsigned long segmentsize, in unsigned long segmentcount, in nsimemory segmentallocator); attributes attribute type description inputstream nsiasyncinputstream the pipe's input end, which also implements nsisearchableinputstream.
...as a result, the pipe is an ideal mechanism to bridge data ex
change between two threads.
nsIPrincipal
inherits from: nsiserializable last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) for details on principals, how they work, and how to get the appropriate one, see security check basics.
...this may
change in a future release; note that nsiprincipal is unfrozen, not slated to be frozen.
nsIPrintingPrompt
inherits from: nsisupports last
changed in gecko 1.7 this interface is identical to nsipintingpromptservice but without the parent nsidomwindow parameter.
... aobs optional an observer to know if the contents of the print settings object has
changed while the dialog is being shown.
nsIPrivateBrowsingService
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface is deprecated since firefox 20, and will probably be completely removed in firefox 21.
... last
changedbycommandline boolean indicates whether or not the last private browsing mode transition was performed on the command line (using either the -private or -private-toggle switches) rather than the user interface.
nsIResumableChannel
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 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.
...similarly, the status of this channel during onstartrequest may be ns_error_entity_
changed, which indicates that the entity has
changed, as indicated by a
changed entityid.
nsISelection3
1.0 66 introduced gecko 2.0 obsolete gecko 8.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in gecko 8.0 this interface was merged into the nsiselection interface.
... "extend" leaves the start of the selection un
changed, and applies movement direction/granularity to the end of the selection.
nsISessionStartup
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: @mozilla.org/browser/sessionstartup;1.
...it was
changed in order to improve performance, which was suffering due to the need to parse and stringify the data.
nsIStringBundleService
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/intl/stringbundle;1.
... flushbundles() flushes the string bundle cache - useful when the locale
changes or when we need to get some extra memory back.
nsISupportsPriority
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this interface does not strictly define what happens when the priority of an object is
changed.
...it can be modified to
change the priority of the object.
nsITextInputProcessorNotification
dom/interfaces/base/nsitextinputprocessorcallback.idlscriptable this interface of a request or notification to ime 1.0 66 introduced gecko 38 inherits from: nsisupports last
changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) this interface tells details of a request or notification to ime.
...so, nsitextinputprocessorcallback won't be
changed for keeping backward compatibility.
nsIThreadPool
1.0 66 introduced gecko 1.9 inherits from: nsieventtarget last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) a thread pool provides a convenient way to process events off the main thread.
... threadlimit unsigned long the maximum number of threads allowed at once in the pool; you may
change this value by altering this attribute.
nsIToolkitProfileService
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) note: starting in gecko 1.9.1, this service is implemented by @mozilla.org/toolkit/profile-service;1.
...(not the profile currently in use.) not sure what happens if you
change this setting but someone said: you can
change profiles by setting this attribute's value.
nsIURIFixupInfo
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description consumer nsisupports consumer that asked for the fixed up uri.
... fixup
changedprotocol boolean if we
changed the protocol; instead of using one raw from the input.
nsIURLFormatter
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) variable names can contain 'a-z' letters and '_' characters.
...if a variable is unknown, it is left un
changed and a non-fatal error is reported.
nsIWebBrowserFind
inherits from: nsisupports last
changed in gecko 1.7 get one by doing a getinterface on an nsiwebbrowser.
...to
change this behavior, and to explicitly set the frame to search, queryinterface to nsiwebbrowserfindinframes.
nsIWebNavigation
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) this interface is implemented by the following components: * @mozilla.org/browser/shistory-internal;1 * @mozilla.org/browser/shistory;1 * @mozilla.org/embedding/browser/nswebbrowser;1 * @mozilla.org/docshell;1 gecko 1.9.2 note in gecko 1.9.2 (firefox 3.6), the @mozilla.org/webshell;1 component no longer exists; you need to use @mozilla.org/docshell;1 instead.
... load_flags_charset_
change 1024 this flag specifies that a reload was triggered as a result of detecting an incorrect character encoding while parsing a previously loaded document.
nsIWebNavigationInfo
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/webnavigation-info;1 as a service: var webnavigationinfo = components.classes["@mozilla.org/webnavigation-info;1"] .getservice(components.interfaces.nsiwebnavigationinfo); method overview unsigned long istypesupported(in acstring atype, in nsiwebnavigation awebnav); constants support type constants constant value description unsupported 0 returned by istypesupported() to indicate lack of support for a...
... note: this is guaranteed not to
change, so that boolean tests can be done on the return value if istypesupported to detect whether a type is supported at all.
nsIWinTaskbar
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) starting with windows 7, applications gain some control over their appearance in the taskbar.
...warning: this api has undergone
changes that are not yet documented.
nsIWindowWatcher
inherits from: nsisupports last
changed in gecko 0.9.6 usage notes: this component has an activewindow property.
... clients may expect this property to be always current, so to properly integrate this component the application will need to keep it current by setting the property as the active window
changes.
nsIXFormsModelElement
1.0 66 introduced gecko 1.8 obsolete gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview nsidomdocument getinstancedocument(in domstring instanceid); void rebuild(); void recalculate(); void refresh(); void revalidate(); methods getinstancedocument() nsidomdocument getinstancedocument( in domstring instanceid ); parameters instanceid the id of the instance element to be returned.
...thus, a full recalculation is necessary to ensure the proper
changes are effected throughout the xforms model.
nsIZipReader
inherits from: nsisupports last
changed in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamonkey 2.7) implemented by: @mozilla.org/libjar/zip-reader;1.
...
change "portabletester@jetpack.xpi" to the name of a xpi file in your extensions folder.
XPCOM Interface Reference
rkernsiaccelerometerupdatensiaccessnodensiaccessibilityservicensiaccessiblensiaccessiblecaretmoveeventnsiaccessiblecoordinatetypensiaccessibledocumentnsiaccessibleeditabletextnsiaccessibleeventnsiaccessiblehyperlinknsiaccessiblehypertextnsiaccessibleimagensiaccessibleprovidernsiaccessiblerelationnsiaccessibleretrievalnsiaccessiblerolensiaccessiblescrolltypensiaccessibleselectablensiaccessiblestate
changeeventnsiaccessiblestatesnsiaccessibletablensiaccessibletablecellnsiaccessibletable
changeeventnsiaccessibletextnsiaccessibletext
changeeventnsiaccessibletreecachensiaccessiblevaluensiaccessiblewin32objectnsialertsservicensiannotationobservernsiannotationservicensiappshellnsiappshellservicensiappstartupnsiappstartup_mozilla_2_0nsiapplicationcachensiapplicationcachechannelnsiapplicationcachecontainern...
...sicontentsniffernsicontentviewnsicontentviewmanagernsicontentviewernsicontrollernsicontrollersnsiconverterinputstreamnsiconverteroutputstreamnsicookiensicookie2nsicookieacceptdialognsicookieconsentnsicookiemanagernsicookiemanager2nsicookiepermissionnsicookiepromptservicensicookieservicensicookiestoragensicrashreporternsicryptohmacnsicryptohashnsicurrentcharsetlistenernsicyclecollectorlistenernsidb
changelistenernsidbfolderinfonsidnslistenernsidnsrecordnsidnsrequestnsidnsservicensidomcanvasrenderingcontext2dnsidomchromewindownsidomclientrectnsidomdesktopnotificationnsidomdesktopnotificationcenternsidomelementnsidomeventnsidomeventgroupnsidomeventlistenernsidomeventtargetnsidomfilensidomfileerrornsidomfileexceptionnsidomfilelistnsidomfilereadernsidomfontfacensidomfontfacelistnsidomgeogeolocationnsi...
Troubleshooting XPCOM components registration
see xpcom
changes in gecko 2.0 parsing errors in javascript components the most common reason for components written in javascript to fail is that there are parsing errors.
... when adding a component to a xulrunner application,
change the buildid in application.ini.
XPCOM tasks
changes to the build hierarchy there are things in xpcom that don't belong there.
... 5.1 3rd party code that doesn't use any services from our tree should be below xpcom; particularly, code xpcom could exploit, e.g., expat berkeley db
changes to apis, functionality, and implementations the following items are listed (very) roughly in their order of importance, i.e., fixing observers is the first thing i want to do.
XPCOM
the more likely case is that the component uses "unfrozen" interfaces and those interfaces can
change between gecko versions.
...if the referent object is destroyed before the weak reference, the pointer inside the weak reference is set to nsnull.working with multiple versions of interfacesin this short note we illustrate how one can update an xpcom module in order for it to work in both firefox 2 and firefox 3, even if the interfaces have
changed in the interim.working with out parameterswrappedjsobjectwrappedjsobject is a property sometimes available on xpconnect wrappers.
Address Book examples
editing contacts once you have obtained a card from an nsiabdirectory (see above), you can edit it in a two step process, firstly,
change the properties that you to edit: card.setproperty("firstname", "jane"); card.setproperty("lastname", "doe"); secondly, call modifycard to save the card in the database.
... the "mydomain" and "addrbook" behaviours can be
changed by passing an identity key (see nsimsgidentity.key) via an attribute autocompletesearchparam on the textbox element.
Events
ondisplayingfolder a folder gets displayed onfolderloading a folder is being loaded onleavingfolder a folder is being unloaded, includes deletion onloadingfolder a folder is being loaded onmakeactive a folderdisplaywidget becomes active onmessagecounts
changed the counts of the messages
changed onmessagesloaded the messages in the folder have been loaded onmessagesremovalfailed removing some messages from the current folder failed onmessagesremoved some messages of the current message list have been removed onsearching a folder view derived from a search is being loaded, e.g.
... saved searches, virtual folders, a quicksearch onsort
changed the sort method in the messages list has been
changed ...
Spam filtering
elaborate on the mime
changes that were made for spam.
... initial state user action table
changes unknown (user can't see this, looks like "not junk") mark as junk add tokens to bad unknown (user can't see this, looks like "not junk") mark as not junk add tokens to good not junk mark as junk remove tokens from good, add tokens to bad not junk mark as not junk no op junk mark as junk no op junk mark as not junk remove tokens from bad, add tokens to good ...
The libmime module
the alternative to that involves typing the literal name of the direct superclass of the class defined in this file, which will be a maintenance headache if the class hierarchy
changes.
... if you use the mime_superclass idiom, then a textual
change is required in only one place if this class's superclass
changes.
customDBHeaders Preference
some of the functionality described here is really new, so please try to be understanding if some of these things
change tomorrow (or have
changed already).
...also, it has been brought to my attention that the delimiter has been
changed to a space in the latest code.
Thunderbird extensions
also see thunderbird 57-60 add-ons guide for
changes introduced in thunderbird 60.
...functions for dealing with messages (delete, archive,
change tags, etc.) are included.
Constants - Plugins
plug-in version constants constant value description np_version_major 0 major version number;
changes with major code release number.
... np_version_minor 22 minor version number;
changes with point release number.
Drawing and Event Handling - Plugins
the browser calls npp_setwindow whenever the drawable
changes.
... the browser should call npp_setwindow again whenever the size or position of the instance
changes, passing it the same npwindow object each time, but with different values.
Plug-in Development Overview - Plugins
caution: gecko caches the values returned by these functions and will only call it if the plug-in's timestamp has
changed.
... to determine whether plug-in and the browser versions are compatible and possibly provide alternative processing for different versions: use the npn_version method to check for
changes in major and minor version numbers.
Streams - Plugins
the browser stores private data in stream->ndata; this value should not be
changed by the plug-in.
... for streams that are not in np_seek mode: the plug-in can call npn_requestread as long as the stream is inherently seekable; npn_requestread automatically
changes the mode to np_seek.
DOM Inspector internals - Firefox Developer Tools
one panel reacts to
changes to the inspected document, and the other panel reacts to
changes to the selection in the first panel.
...another convenient consequence of this is that if you use a properly set up development profile, then for the most part, the effects of development
changes can be seen by simply switching away from the current viewer and back.
Debugger - Firefox Developer Tools
if value is a primitive value, return it un
changed.
... source metadata generated from file: js/src/doc/debugger/debugger.md watermark: sha256:03b36132885e046a5f213130ba22b1139b473770f7324b842483c09ab7665f7c
changeset: e91b2c85aacd ...
DevTools API - Firefox Developer Tools
host-
changed the host for this toolbox has
changed.
... return this.destroysomethingasynchronosly() .then(() => console.log("destroyed")); }, handleclick: function(event) { console.log("clicked", event.originaltarget); }, }; eventemitter eventemitter is an interface many developer tool classes and objects implement and use to notify others about
changes in their internal state.
All keyboard shortcuts - Firefox Developer Tools
you need to reopen the editor for the
change to take effect.
...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.
Page inspector 3-pane mode - Firefox Developer Tools
with the 3-pane mode enabled, you can observe live
changes in css features as you edit the rules applied to the page.
... for example, you could edit a css grid property and observe the
change immediately in the grid inspector.
Edit CSS filters - Firefox Developer Tools
you can edit these lines, remove them individually, or drag the effects to
change the order in which they are applied.
...the
change will be apparent as soon as youpress enter.
Edit Shape Paths in CSS - Firefox Developer Tools
in the rules panel you can see the values for circle()
change as you edit the shape.
... moving and scaling shapes there is extra functionality available on the shape highlight — if you ctrl/cmd + click on the shapes icon for your shape the highlight will
change, instead providing the ability to scale and/or move it.
CSS Flexbox Inspector: Examine Flexbox layouts - Firefox Developer Tools
clicking the icon toggles the display of an overlay on the page, which appears over the selected flex container that displays an outline around each flex item: the overlay will still be shown when you select other elements from the inspector panel, so you can edit related css properties and see how the flex items are affected by your
changes.
... flex container options the flex container section of the layout view looks like this: there are two settings you can
change in the flex container section: you can control the color of the overlay by clicking on the small circle next to the selector.
Inspect and select colors - Firefox Developer Tools
if you click on the color sample, you'll see a color picker popup, enabling you to
change the color: if the color is a foreground color, the color picker tells you whether its contrast with the background color meets accessibility guidelines.
... the color picker includes an eyedropper icon: clicking this icon enables you to use the eyedropper to select a new color for the element from the page: clicking the color sample while holding down the shift key
changes the color format: ...
UI Tour - Firefox Developer Tools
the following image shows the 2-pane layout: in 2-pane mode, the inspector includes the html pane, and the css pane, which can contain one of six tools: rules view layout view computed view
changes view compatibility view (firefox developer edition 77 and later) fonts view animations view the following image shows the 3-pane mode (available from firefox 62 onwards) which moves the css rules view into a separate pane in the center of the inspector.
...
changes view when you are editing in the rules view, you can see the
changes you have made in the
changes view.
AnalyserNode - Web APIs
it is an audionode that passes the audio stream un
changed from the input to the output, but allows you to take the generated data, process it, and create audio visualizations.
...for more complete applied examples/information, check out our voice-
change-o-matic demo (see app.js lines 128–205 for relevant code).
Animation.reverse() - Web APIs
return value undefined example in the growing/shrinking alice game example, clicking or tapping the bottle causes alice's growing animation (alice
change) to play backwards, causing her to get smaller.
... it is done by setting alice
change's animation.playbackrate to -1 like so: var shrinkalice = function() { // play alice's animation in reverse alice
change.playbackrate = -1; alice
change.play(); // play the bottle's animation drinking.play() } but it could also have been done by calling reverse() on alice
change like so: var shrinkalice = function() { // play alice's animation in reverse alice
change.reverse(); // play the bottle's animation drinking.play() } specifications specification status comment web animationsthe definition of 'reverse()' in that specification.
AudioDestinationNode.maxChannelCount - Web APIs
if maxchannelcount is 0, like in offlineaudiocontext, the channel count cannot be
changed.
...ld set up a simple audio graph, featuring an audiodestinationnode with maxchannelcount of 2: var audioctx = new audiocontext(); var source = audioctx.createmediaelementsource(mymediaelement); source.connect(gainnode); audioctx.destination.maxchannelcount = 2; gainnode.connect(audioctx.destination); to see a more complete implementation, check out one of our mdn web audio examples, such as voice-
change-o-matic or violent theremin.
AudioListener.dopplerFactor - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.forwardX - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.forwardY - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.forwardZ - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.positionX - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.positionY - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.positionZ - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.setOrientation() - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.setPosition() - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.speedOfSound - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.upX - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.upY - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener.upZ - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioListener - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
AudioNode.channelInterpretation - Web APIs
the surround channels are passed un
changed.
...this fallback is therefore not future proof as the behavior of the browsers for a specific number of channels may
change in the future.
AudioParam.cancelAndHoldAtTime() - Web APIs
the cancelandholdattime() property of the audioparam interface cancels all scheduled future
changes to the audioparam but holds its value at a given time until further
changes are made using other methods.
... syntax var audioparam = audioparam.cancelandholdattime(canceltime) parameters canceltime a double representing the time (in seconds) after the audiocontext was first created after which all scheduled
changes will be cancelled.
AudioParam.cancelScheduledValues() - Web APIs
the cancelscheduledvalues() method of the audioparam interface cancels all scheduled future
changes to the audioparam.
... syntax var audioparam = audioparam.cancelscheduledvalues(starttime) parameters starttime a double representing the time (in seconds) after the audiocontext was first created after which all scheduled
changes will be cancelled.
AudioParam.exponentialRampToValueAtTime() - Web APIs
the exponentialramptovalueattime() method of the audioparam interface schedules a gradual exponential
change in the value of the audioparam.
... the
change starts at the time specified for the previous event, follows an exponential ramp to the new value given in the value parameter, and reaches the new value at the time given in the endtime parameter.
AudioParam.linearRampToValueAtTime() - Web APIs
the linearramptovalueattime() method of the audioparam interface schedules a gradual linear
change in the value of the audioparam.
... the
change starts at the time specified for the previous event, follows a linear ramp to the new value given in the value parameter, and reaches the new value at the time given in the endtime parameter.
AudioParamDescriptor - Web APIs
here, additionally, we'll create a custom gain parameter, so we can directly
change volume of the output (although you could use gainnode to achieve this as well).
... const audiocontext = new audiocontext() await audiocontext.audioworklet.addmodule('white-noise-processor.js') const whitenoisenode = new audioworkletnode(audiocontext, 'white-noise-processor') whitenoisenode.connect(audiocontext.destination) now we can
change the gain on the node like this: const gainparam = whitenoisenode.parameters.get('customgain') gainparam.setvalueattime(0, audiocontext.currenttime) gainparam.linearramptovalueattime(0.5, audiocontext.currenttime + 0.5) specifications specification status comment web audio apithe definition of 'audioparamdescriptor' in that specification.
AudioWorkletNode.parameters - Web APIs
here, additionally, we'll create a custom gain parameter, so we can directly
change volume of the output (although you could use gainnode to achieve this as well).
... const audiocontext = new audiocontext() await audiocontext.audioworklet.addmodule('white-noise-processor.js') const whitenoisenode = new audioworkletnode(audiocontext, 'white-noise-processor') whitenoisenode.connect(audiocontext.destination) now we can
change the gain on the node like this: const gainparam = whitenoisenode.parameters.get('customgain') gainparam.setvalueattime(0, audiocontext.currenttime) gainparam.linearramptovalueattime(0.5, audiocontext.currenttime + 0.5) specifications specification status comment web audio apithe definition of 'parameters' in that specification.
AudioWorkletProcessor.parameterDescriptors (static getter) - Web APIs
here, additionally, we'll create a custom gain parameter, so we can directly
change volume of the output (although you could use gainnode to achieve this as well).
... const audiocontext = new audiocontext() await audiocontext.audioworklet.addmodule('white-noise-processor.js') const whitenoisenode = new audioworkletnode(audiocontext, 'white-noise-processor') whitenoisenode.connect(audiocontext.destination) now we can
change the gain on the node like this: const gainparam = whitenoisenode.parameters.get('customgain') gainparam.setvalueattime(0, audiocontext.currenttime) gainparam.linearramptovalueattime(0.5, audiocontext.currenttime + 0.5) specifications specification status comment web audio apithe definition of 'parameterdescriptors' in that specification.
AudioWorkletProcessor.process - Web APIs
however, plans are already in place to revise the specification to allow the size of the audio blocks to be
changed depending on circumstances (for example, if the audio hardware or cpu utilization is more efficient with larger block sizes).
... this size may even be allowed to
change over time, so you mustn't look at just the first block and assume the sample buffers will always be the same size.
BaseAudioContext.createPanner() - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
BaseAudioContext.state - Web APIs
closed: the audio context has been closed (with the audiocontext.close() method.) example the following snippet is taken from our audiocontext states demo (see it running live.) the audiocontext.onstate
change hander is used to log the current state to the console every time it
changes.
... audioctx.onstate
change = function() { console.log(audioctx.state); } specifications specification status comment web audio apithe definition of 'state' in that specification.
BasicCardRequest.supportedNetworks - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.billingAddress - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.cardNumber - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.cardSecurityCode - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.cardholderName - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.expiryMonth - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
BasicCardResponse.expiryYear - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
Bluetooth - Web APIs
interface interface bluetooth : eventtarget { promise<boolean> getavailability(); attribute eventhandler onavailability
changed; [sameobject] readonly attribute bluetoothdevice?
... events bluetooth.onavailability
changed an event handler that runs when an event of type availability
changed has fired.
BudgetService - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
BudgetState.time - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
BudgetState - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
CDATASection - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'cdatasection' in that specification.
... obsolete no
change from document object model (dom) level 1 specification.
CSSPrimitiveValue - Web APIs
if the property attached with this value can not accept the specified unit or the float value, the value will be un
changed and a domexception will be raised.
...if the property attached to this value can't accept the specified unit or the string value, the value will be un
changed and a domexception will be raised.
CanvasRenderingContext2D.arcTo() - Web APIs
you can play around with range input to see how arc
changes.
...x, p.y + y); } const drawpoints = function (points){ for (let i = 0; i < points.length; i++) { var p = points[i]; labelpoint(p, { x: 0, y: -20 } , i) } } // draw arc const drawarc = function ([p0, p1, p2], r) { ctx.beginpath(); ctx.moveto(p0.x, p0.y); ctx.arcto(p1.x, p1.y, p2.x, p2.y, r); ctx.lineto(p2.x, p2.y); ctx.stroke(); } let t0 = 0; let rr = 0; // the radius that
changes over time let a = 0; // angle let pi2 = math.pi * 2; const loop = function (t) { t0 = t / 1000; a = t0 % pi2; rr = math.abs(math.cos(a) * r); ctx.clearrect(0, 0, canvas.width, canvas.height); drawarc([p1, p2, p3], rr); drawpoints([p1, p2, p3]); requestanimationframe(loop); } loop(0); result specifications specification status comment html living st...
CanvasRenderingContext2D - Web APIs
the following methods help you to work with that state: canvasrenderingcontext2d.save() saves the current drawing style state using a stack so you can revert any
change you make to it using restore().
... filters canvasrenderingcontext2d.filter applies a css or svg filter to the canvas, e.g., to
change its brightness or bluriness.
Applying styles and colors - Web APIs
ctx.fillstyle = 'rgb(' + math.floor(255 - 42.5 * i) + ', ' + math.floor(255 - 42.5 * j) + ', 0)'; ctx.fillrect(j * 25, i * 25, 25, 25); } } } <canvas id="canvas" width="150" height="150"></canvas> draw(); the result looks like this: screenshotlive sample a strokestyle example this example is similar to the one above, but uses the strokestyle property to
change the colors of the shapes' outlines.
...25 : -25; ctx.lineto(math.pow(i, 1.5) * 2, 75 + dy); } ctx.stroke(); return false; } <table> <tr> <td><canvas id="canvas" width="150" height="150"></canvas></td> <td>
change the <code>miterlimit</code> by entering a new value below and clicking the redraw button.<br><br> <form onsubmit="return draw();"> <label>miter limit</label> <input type="number" size="3" id="miterlimit"/> <input type="submit" value="redraw"/> </form> </td> </tr> </table> document.getelementbyid('miterlimit').value = document.getelementbyid('canvas').get...
Pixel manipulation with canvas - Web APIs
for example, to paint the entire image represented by myimagedata to the top left corner of the context, you can simply do the following: ctx.putimagedata(myimagedata, 0, 0); grayscaling and inverting colors in this example we iterate over all pixels to
change their values, then we put the modified pixel array back to the canvas using putimagedata().
...tx = document.getelementbyid('zoom').getcontext('2d'); var smoothbtn = document.getelementbyid('smoothbtn'); var togglesmoothing = function(event) { zoomctx.imagesmoothingenabled = this.checked; zoomctx.mozimagesmoothingenabled = this.checked; zoomctx.webkitimagesmoothingenabled = this.checked; zoomctx.msimagesmoothingenabled = this.checked; }; smoothbtn.addeventlistener('
change', togglesmoothing); var zoom = function(event) { var x = event.layerx; var y = event.layery; zoomctx.drawimage(canvas, math.min(math.max(0, x - 5), img.width - 10), math.min(math.max(0, y - 5), img.height - 10), 10, 10, 0, 0, 200, 200); }; canvas.addeventlistener('mous...
CharacterData - Web APIs
obsolete no
change from document object model (dom) level 2 core specification.
... obsolete no
change from document object model (dom) level 1 specification.
Comment - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'comment' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'comment' in that specification.
Console.countReset() - Web APIs
b" to the first invocation of count(), and the string "alice" to the second: let user = ""; function greet() { console.count(user); return "hi " + user; } user = "bob"; greet(); user = "alice"; greet(); greet(); console.countreset("bob"); console.count("alice"); we will see output like this: "bob: 1" "alice: 1" "alice: 2" "bob: 0" "alice: 3" resetting the value of the counter "bob" only
changes the value of that counter.
... the value of "alice" is un
changed.
ConstantSourceNode - Web APIs
example in the article controlling multiple parameters with constantsourcenode, a constantsourcenode is created to allow one slider control to
change the gain on two gainnodes.
... now, whenever the value of constantnode.offset
changes, the gain on both gainnode2 and gainnode3 will
change to have that same value.
Constraint validation API - Web APIs
try again!'); } }); the example renders like so: in brief: we check the valid state of the input element every time its value is
changed by running the checkvalidity() method via the input event handler.
... recommendation no
change from the previous snapshot html5.
CustomEvent - Web APIs
it's possible this has been
changed along the way through retargeting.
...in addition, work is underway to
change this to be a domhighrestimestamp instead.
DOMImplementation.createDocumentType() - Web APIs
living standard no
change from document object model (dom) level 3 core specification document object model (dom) level 3 core specificationthe definition of 'domimplementation.createdocumenttype' in that specification.
... obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'domimplementation.createdocumenttype' in that specification.
DOMImplementation.hasFeature() - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'domimplementation.hasfeature' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'domimplementation.hasfeature' in that specification.
DOMPoint.fromPoint() - Web APIs
although this interface is based on dompointreadonly, it is not read-only; the properties within may be
changed at will.
...the point's properties are mutable and may be
changed at any time.
DataTransfer.setData() - Web APIs
that is, the order of the types list is not
changed when replacing data of the same type.
... <!doctype html> <html lang=en> <title>examples of datatransfer's setdata(), getdata() and cleardata()</title> <meta content="width=device-width"> <style> div { margin: 0em; padding: 2em; } #source { color: blue; border: 1px solid black; } #target { border: 1px solid black; } </style> <script> function dragstart_handler(ev) { console.log("dragstart"); //
change the source element's background color to signify drag has started ev.currenttarget.style.border = "dashed"; // set the drag's format and data.
DataTransferItemList.remove() - Web APIs
if the index is less than zero or greater than one less than the length of the list, the list will not be
changed.
...if the index doesn't correspond to an existing item in the list, the list is left un
changed.
DedicatedWorkerGlobalScope.onmessage - Web APIs
messages are passed to the worker when the value inside the form input first
changes.
... var myworker = new worker("worker.js"); first.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } myworker.onmessage = function(e) { result.textcontent = e.data; console.log('message received from worker'); } in the worker.js script, a dedicatedworkerglobalscope.onmessage handler is used to handle messages from the main script: onmessage = function(e) { console.log('message received from main script'); var workerresult = 'result: ' + (e.data[0] * e.data[1]); console.log('posting message back to main script'); postmessage(workerresult); } notice how in the main script, onmessage has to be called on myworker, whe...
DeviceMotionEvent - Web APIs
the devicemotionevent provides web developers with information about the speed of
changes for the device's position and orientation.
... devicemotionevent.rotationrateread only an object giving the rate of
change of the device's orientation on the three orientation axis alpha, beta and gamma.
Document.createProcessingInstruction() - Web APIs
living standard no
change dom4the definition of 'createprocessinginstruction()' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'createprocessinginstruction()' in that specification.
Document.evaluate() - Web APIs
you can make
changes to the document by altering snapshot nodes.
... modifying the document doesn't invalidate the snapshot; however, if the document is
changed, the snapshot may not correspond to the current state of the document, since nodes may have moved, been
changed, added, or removed.
Document: keyup event - Web APIs
note: if you're looking for a way to react to
changes in an input's value, you should use the input event.
... some
changes are not detectable by keyup, for example pasting text from the context menu in a text input.
Document.mozSetImageElement() - Web APIs
the document.mozsetimageelement() method
changes the element being used as the css background for a background with a given background element id.
... example this example
changes the background of a <div> block each time the block is clicked by the user.
Document: selectstart event - Web APIs
if the event is canceled, the selection is not
changed.
... bubbles yes cancelable yes interface event event handler property onselectstart examples // addeventlistener version document.addeventlistener('selectstart', () => { console.log('selection started'); }); // onselectstart version document.onselectstart = () => { console.log('selection
changed.'); }; specifications specification status comment selection apithe definition of 'selectstart' in that specification.
Document.visibilityState - Web APIs
when the value of this property
changes, the visibility
change event is sent to the document.
... syntax var string = document.visibilitystate examples document.addeventlistener("visibility
change", function() { console.log( document.visibilitystate ); // modify behavior...
DocumentOrShadowRoot.elementFromPoint() - Web APIs
javascript function
changecolor(newcolor) { elem = document.elementfrompoint(2, 2); elem.style.color = newcolor; } the
changecolor() method simply obtains the element located at the specified point, then sets that element's current foreground color property to the color specified by the newcolor parameter.
... html <p id="para1">some text here</p> <button onclick="
changecolor('blue');">blue</button> <button onclick="
changecolor('red');">red</button> the html provides the paragraph whose color will be affected, as well as two buttons: one to
change the color to blue, and another to
change the color to red.
Example - Web APIs
<html> <head> <title>my document</title> <script type="text/javascript"> function
change() { // document.getelementsbytagname("h1") returns a nodelist of the h1 // elements in the document, and the first is number 0: var header = document.getelementsbytagname("h1").item(0); // the firstchild of the header is a text node: header.firstchild.data = "a dynamic document"; // now the header is "a dynamic document".
...ew element to be the second paragraph var newelement = document.createelement("p"); // put the text in the paragraph newelement.appendchild(newtext); // and put the paragraph on the end of the document by appending it to // the body (which is the parent of para) para.parentnode.appendchild(newelement); } </script> </head> <body> <input type="button" value="
change this document." onclick="
change()"> <h1>header</h1> <p>paragraph</p> </body> </head> ...
Element: DOMActivate event - Web APIs
bubbles yes cancelable yes interface mouseevent examples <svg xmlns="http://www.w3.org/2000/svg" version="1.2" baseprofile="tiny" xmlns:ev="http://www.w3.org/2001/xml-events" width="6cm" height="5cm" viewbox="0 0 600 500"> <desc>example: invoke an ecmascript function from a domactivate event</desc> <!-- ecmascript to
change the radius --> <script type="application/ecmascript"><![cdata[ function
change(evt) { var circle = evt.target; var currentradius = circle.getfloattrait("r"); if (currentradius == 100) circle.setfloattrait("r", currentradius * 2); else circle.setfloattrait("r", currentradius * 0.5); } ]]></script> <!-- act on each domactivate event --> <circ...
...le cx="300" cy="225" r="100" fill="red"> <handler type="application/ecmascript" ev:event="domactivate">
change(evt); </handler> </circle> <text x="300" y="480" font-family="verdana" font-size="35" text-anchor="middle"> activate the circle to
change its size </text> </svg> specifications specification status ui eventsthe definition of 'domactivate' in that specification.
Element.attributes - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'element.attributes' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'element.attributes' in that specification.
Element: auxclick event - Web APIs
the former
changes the color of the button background, while the latter
changes the button foreground (text) color.
...mcolor(); }; button.onauxclick = function(e) { e.preventdefault(); button.style.color = randomcolor(); } button.oncontextmenu = function(e) { e.preventdefault(); } notice that in addition to capturing the auxclick event using onauxclick, the contextmenu event is also captured, and preventdefault() called on that event, in order to prevent the context menu from popping up after the color
change is applied.
Element.id - Web APIs
living standard no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
Element.innerHTML - Web APIs
usage notes the innerhtml property can be used to examine the current html source of the page, including any
changes that have been made since the page was initially loaded.
...then the value of innerhtml is
changed to this new string.
Event.msConvertURL() - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... targettype [in] type: domstring one of the following values indicating the desired conversion type: "specified", "base64", or "un
changed".
Using Fetch - Web APIs
the spec
changed the default credentials policy to same-origin.
... firefox
changed since 61.0b13.) a basic fetch request is really simple to set up.
File.webkitRelativePath - Web APIs
when the
change event occurs, a list of all files contained within the selected directory hierarchies is generated and displayed.
... html content <input type="file" id="filepicker" name="filelist" webkitdirectory multiple /> <ul id="listing"></ul> javascript content document.getelementbyid("filepicker").addeventlistener("
change", function(event) { let output = document.getelementbyid("listing"); let files = event.target.files; for (let i=0; i<files.length; i++) { let item = document.createelement("li"); item.innerhtml = files[i].webkitrelativepath; output.appendchild(item); }; }, false); result specifications specification status comment file and directory entries apithe definition of 'webkitrelativepath' in that specification.
FileError - Web APIs
error codes note: do not rely on the numeric values of the constants, which might
change as the specifications continue to
change.
...for example, the state that was cached in an interface object has
changed since it was last read from disk.
FileException - Web APIs
constants note: do not rely on the numeric values of the constants, which might
change as the specifications continue to
change.
...for example, the state that was cached in an interface object has
changed since it was last read from disk.
FileReader.readAsDataURL() - Web APIs
example html <input type="file" on
change="previewfile()"><br> <img src="" height="200" alt="image preview..."> javascript function previewfile() { const preview = document.queryselector('img'); const file = document.queryselector('input[type=file]').files[0]; const reader = new filereader(); reader.addeventlistener("load", function () { // convert image file to base64 string preview.src = reader.result; }, false); ...
... if (file) { reader.readasdataurl(file); } } live result example reading multiple files html <input id="browse" type="file" on
change="previewfiles()" multiple> <div id="preview"></div> javascript function previewfiles() { var preview = document.queryselector('#preview'); var files = document.queryselector('input[type=file]').files; function readandpreview(file) { // make sure `file.name` matches our extensions criteria if ( /\.(jpe?g|png|gif)$/i.test(file.name) ) { var reader = new filereader(); reader.addeventlistener("load", function () { var image = new image(); image.height = 100; image.title = file.name; image.src = this.result; preview.appendchild( image ); }, false); reader.readasdataurl(fi...
FileSystemEntry - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
FileSystemFlags.create - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
FileSystemFlags.exclusive - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
FileSystemFlags - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
Geolocation API - Web APIs
geolocation.watchposition(): registers a handler function that will be called automatically each time the position of the device
changes, returning the updated location.
... interfaces geolocation the main class of this api — contains methods to retrieve the user's current position, watch for
changes in their position, and clear a previously-set watch.
GlobalEventHandlers.onblur - Web APIs
example this example uses onblur and onfocus to
change the text within an <input> element.
... html <input type="text" value="click here"> javascript let input = document.queryselector('input'); input.onblur = inputblur; input.onfocus = inputfocus; function inputblur() { input.value = 'focus has been lost'; } function inputfocus() { input.value = 'focus is here'; } result try clicking in and out of the form field, and watch its contents
change accordingly.
GlobalEventHandlers.onfocus - Web APIs
example this example uses onblur and onfocus to
change the text within an <input> element.
... html <input type="text" value="click here"> javascript let input = document.queryselector('input'); input.onblur = inputblur; input.onfocus = inputfocus; function inputblur() { input.value = 'focus has been lost'; } function inputfocus() { input.value = 'focus is here'; } result try clicking in and out of the form field, and watch its contents
change accordingly.
HTMLAnchorElement.rel - Web APIs
living standard no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specificationthe definition of 'rel' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'rel' in that specification.
HTMLBRElement - Web APIs
living standard no
change from html5 html5the definition of 'htmlbrelement' in that specification.
... recommendation no
change from document object model (dom) level 2 html specification ...
HTMLButtonElement - Web APIs
this is the default value if the attribute is not specified, html5 or if it is dynamically
changed to an empty or invalid value.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLCanvasElement.toBlob() - Web APIs
living standard no
change since the latest snapshot, html5 html 5.1the definition of 'htmlcanvaselement.toblob' in that specification.
... recommendation no
change html5the definition of 'htmlcanvaselement.toblob' in that specification.
HTMLCanvasElement.toDataURL() - Web APIs
,ivborw0kggoaaaansuheugaaaauaaaafcayaaacnby // blaaaadeleqvqimwngobmaaabpaafei8araaaaaelftksuqmcc" setting image quality with jpegs var fullquality = canvas.todataurl('image/jpeg', 1.0); // data:image/jpeg;base64,/9j/4aaqskzjrgabaq...9oadambaairaxeapwd/ad/6ap/z" var mediumquality = canvas.todataurl('image/jpeg', 0.5); var lowquality = canvas.todataurl('image/jpeg', 0.1); example: dynamically
change images you can use this technique in coordination with mouse events in order to dynamically
change images (gray-scale vs.
... living standard no
change since the latest snapshot, html5 html 5.1the definition of 'htmlcanvaselement.todataurl' in that specification.
HTMLDListElement - Web APIs
recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLDivElement - Web APIs
recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLElement.isContentEditable - Web APIs
living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'htmlelement.contenteditable' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'htmlelement.contenteditable' in that specification.
HTMLElement.title - Web APIs
living standard no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLFormElement: reset event - Web APIs
working draft no
change html 5.2the definition of 'reset' in that specification.
... recommendation no
change html 5.1the definition of 'reset' in that specification.
HTMLFormElement - Web APIs
; // add it to the document body f.action = "/cgi-bin/some.cgi"; // add action and method attributes f.method = "post"; f.submit(); // call the form's submit() method extract information from a <form> element and set some of its attributes: <form name="forma" action="/cgi-bin/test" method="post"> <p>press "info" for form details, or "set" to
change those details.</p> <p> <button type="button" onclick="getforminfo();">info</button> <button type="button" onclick="setforminfo(this.form);">set</button> <button type="reset">reset</button> </p> <textarea id="form-info" rows="15" cols="20"></textarea> </form> <script> function getforminfo(){ // get a reference to the form via its name var f = document.forms["forma"]; // th...
...this is mainly a technical
change.
HTMLHeadElement - Web APIs
recommendation no
change from html5.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'htmlheadelement' in that specification.
HTMLHtmlElement - Web APIs
recommendation no
change since the last snapshot html5the definition of 'htmlhtmlelement' in that specification.
... obsolete reflecting the element
change in html 4.01 specification, the version property is now deprecated.
HTMLInputElement.setSelectionRange() - Web APIs
living standard no
change html 5.1the definition of 'htmlinputelement.setselectionrange()' in that specification.
... recommendation no
change html5the definition of 'htmlinputelement.setselectionrange()' in that specification.
HTMLInputElement.stepDown() - Web APIs
given <input id="mytime" type="time" max="17:00" step="900" value="17:00">, invoking mytime.step(3) will
change the value to 16:15, decrementing the time by 3 * 900, or 45 minutes.
... <!-- decrements by intervals of 900 seconds (15 minute) --> <input type="time" max="17:00" step="900"> <!-- decrements by intervals of 7 days (one week) --> <input type="date" max="2019-12-25" step="7"> <!-- decrements by intervals of 12 months (one year) --> <input type="month" max="2019-12" step="12"> the method, when invoked,
changes the form control's value by the value given in the step attribute, multiplied by the parameter, within the constraints set within the form control.
HTMLInputElement.webkitdirectory - Web APIs
when the
change event occurs, a list of all files contained within the selected directory hierarchies is generated and displayed.
... html content <input type="file" id="filepicker" name="filelist" webkitdirectory multiple /> <ul id="listing"></ul> javascript content document.getelementbyid("filepicker").addeventlistener("
change", function(event) { let output = document.getelementbyid("listing"); let files = event.target.files; for (let i=0; i<files.length; i++) { let item = document.createelement("li"); item.innerhtml = files[i].webkitrelativepath; output.appendchild(item); }; }, false); result specifications specification status comment file and directory entries apithe definition of 'webkitdirectory' in that specification.
HTMLLinkElement.rel - Web APIs
living standard no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specificationthe definition of 'rel' in that specification.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'rel' in that specification.
HTMLOptGroupElement - Web APIs
recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLOrForeignElement.tabIndex - Web APIs
living standard no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLQuoteElement - Web APIs
recommendation no
change from document object model (dom) level 2 html specification.
... obsolete no
change from document object model (dom) level 1 specification.
HTMLSelectElement.add() - Web APIs
append to an existing collection var sel = document.getelementbyid("existinglist"); var opt = document.createelement("option"); opt.value = "3"; opt.text = "option: value 3"; sel.add(opt, null); /* takes the existing following select object: <select id="existinglist"> <option value="1">option: value 1</option> <option value="2">option: value 2</option> </select> and
changes it to: <select id="existinglist"> <option value="1">option: value 1</option> <option value="2">option: value 2</option> <option value="3">option: value 3</option> </select> */ the before parameter is optional.
...rting to an existing collection var sel = document.getelementbyid("existinglist"); var opt = document.createelement("option"); opt.value = "3"; opt.text = "option: value 3"; sel.add(opt, sel.options[1]); /* takes the existing following select object: <select id="existinglist"> <option value="1">option: value 1</option> <option value="2">option: value 2</option> </select> and
changes it to: <select id="existinglist"> <option value="1">option: value 1</option> <option value="3">option: value 3</option> <option value="2">option: value 2</option> </select> */ specifications specification status comment html living standardthe definition of 'htmlselectelement.add()' in that specification.
HTMLSelectElement.selectedIndex - Web APIs
example html <p id="p">selectedindex: 0</p> <select id="select"> <option selected>option a</option> <option>option b</option> <option>option c</option> <option>option d</option> <option>option e</option> </select> javascript var selectelem = document.getelementbyid('select') var pelem = document.getelementbyid('p') // when a new <option> is selected selectelem.addeventlistener('
change', function() { var index = selectelem.selectedindex; // add that data to the <p> pelem.innerhtml = 'selectedindex: ' + index; }) specifications specification status comment html living standardthe definition of 'htmlselectelement' in that specification.
... living standard no
change since the latest snapshot, html5.
HTMLTableColElement - Web APIs
living standard no
change from html5.
... obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'htmltablecolelement' in that specification.
HTMLTableElement - Web APIs
the htmlcollection is live and is automatically updated when the htmltableelement
changes.
...the htmlcollection is live and is automatically updated when the htmltableelement
changes.
HTMLVideoElement.msIsLayoutOptimalForPlayback - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... you can listen to the onmsvideooptimallayout
changed event to be notified when the msislayoutoptimalforplayback property
changes.
The HTML DOM API - Web APIs
beforeunloadevent hash
changeevent history location pagetransitionevent popstateevent web components interfaces these interfaces are used by the web components api to create and manage the available custom elements.
...abel> <input type="text" id="username"> (*) </p> <p> <label for="email">email:</label> <input type="email" id="useremail"> </p> <input type="submit" value="send" id="sendbutton"> </form> result specifications specification status comment html living standard living standard whatwg html specification html5 recommendation no
change from document object model (dom) level 2 html specification document object model (dom) level 2 html specification obsolete no
change from document object model (dom) level 1 specification.
Drag Operations - Web APIs
if you don't
change the effectallowed property, then any operation is allowed, just like with the 'all' value.
...the mouse pointer will
change to indicate which operation is desired.
HTML Drag and Drop API - Web APIs
// note:
change "example.gif" to a real image url or the image // will not be created and the default drag image will be used.
...to
change that behavior so that an element becomes a drop zone or is droppable, the element must have both ondragover and ondrop event handler attributes.
IDBDatabase.createObjectStore() - Web APIs
this method can be called only within a version
change transaction.
... exceptions this method may raise a domexception with a domerror of one of the following types: exception description invalidstateerror occurs if the method was not called from a version
change transaction callback.
IDBDatabase.deleteObjectStore() - Web APIs
as with idbdatabase.createobjectstore, this method can be called only within a version
change transaction.
... exceptions this method may raise a domexception of one of the following types: exception description invalidstateerror occurs if the method was not called from a version
change transaction callback.
IDBDatabase.transaction() - Web APIs
transactions are opened in one of three modes: readonly, readwrite and readwriteflush (non-standard, firefox-only.) version
change mode can't be specified here.
... if you need to open the object store in readwrite mode to
change data, you would use the following: var transaction = db.transaction('my-store-name', "readwrite"); as of firefox 40, indexeddb transactions have relaxed durability guarantees to increase performance (see bug 1112702), which is the same behaviour as other indexeddb-supporting browsers.
databases - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
IDBFactory - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
IDBIndex.name - Web APIs
exceptions there are a several exceptions which can occur when you attempt to
change an index's name.
...you can only rename indexes during upgrade transactions; that is, when the mode is "version
change".
IDBMutableFile - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... note: this interface used to be called filehandle , but it was
changed to this (bug 1006485.) as idbmutablefile objects are bound to a fake file system built on top of indexeddb, such an object is created using the idbdatabase.createmutablefile method.
IDBObjectStore.deleteIndex() - Web APIs
note that this method must be called only from a version
change transaction mode callback.
... return value undefined exceptions this method may raise a domexception of one of the following types: exception description invalidstateerror occurs if the method was not called from a version
change transaction mode callback.
IDBObjectStore.name - Web APIs
exceptions there are a several exceptions which can occur when you attempt to
change an object store's name.
... invalidstateerror either the object store has been deleted or the current transaction is not an upgrade transaction; you can only rename indexes during upgrade transactions; that is, when the mode is "version
change".
IDBOpenDBRequest: blocked event - Web APIs
the blocked handler is executed when an open connection to a database is blocking a version
change transaction on the same database.
... bubbles no cancelable no interface idbversion
changeevent event handler property onblocked examples using addeventlistener(): // open the database const dbopenrequest = window.indexeddb.open('todolist', 4); dbopenrequest.onupgradeneeded = (event) => { const db = event.target.result; db.onerror = () => { console.log('error creating database'); }; // create an objectstore for this database var objectstore = db.createobjectstore('todolist', { keypath: 'tasktitle' }); // define what data items the objectstore will contain objectstore.createindex('hours', 'hours', { unique: false }); objectstore.createindex('minutes', 'minutes', { unique: false }); objectstore.createindex('day', 'day', { unique: false }); objectstor...
IDBRequest.transaction - Web APIs
if a version upgrade is needed when opening a database then during the upgradeneeded event handler the transaction property will be an idbtransaction with mode equal to "version
change", and can be used to access existing object stores and indexes, or abort the the upgrade.
... openrequest.onupgradeneeded = function(event) { console.log(openrequest.transaction.mode); // will log "version
change".
IDBRequest - Web APIs
each request has a readystate that is set to the 'pending' state; this
changes to 'done' when the request is completed or fails.
...the state
changes to done when the request completes successfully or when an error occurs.
IIRFilterNode - Web APIs
once the node has been created, you can't
change its coefficients.
...it includes some different coefficient values for different lowpass frequencies — you can
change the value of the filternumber constant to a value between 0 and 3 to check out the different available effects.
ImageCapture.takePhoto() - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
InputEvent.data - Web APIs
this may be an empty string if the
change doesn't insert text (such as when deleting characters, for example).
... examples in the following simple example we've set up an event listener on the input event so that when any
change is made to the contents of the <input> element (either by typing or pasting), the text that was added is retrieved via the inputevent.data property and reported in the paragraph below the input.
InputEvent.inputType - Web APIs
the inputtype read-only property of the inputevent interface returns the type of
change made to editible content.
... possible
changes include for example inserting, deleting, and formatting text.
IntersectionObserverEntry.time - Web APIs
the intersectionobserverentry interface's read-only time property is a domhighrestimestamp that indicates the time at which the intersection
change occurred relative to the time at which the document was created.
... syntax var time = intersectionobserverentry.time; value a domhighrestimestamp which indicates the time at which the target element experienced the intersection
change described by the intersectionobserverentry.
KeyframeEffect - Web APIs
keyframeeffect.iterationcomposite gets and sets the iteration composite operation for resolving the property value
changes of this keyframe effect.
... keyframeeffect.composite gets and sets the composite operation property for resolving the property value
changes between this and other keyframe effects.
Location - Web APIs
changes done on it are reflected on the object it relates to.
...if
changed, the associated document navigates to the new page.
LockedFile.flush() - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... summary the flush method is used to ensure any
change made to a file is properly written on disk.
MIDIAccess - Web APIs
event handlers midiaccess.onstate
change called whenever a new midi port is added or an existing port
changes state.
... examples navigator.requestmidiaccess() .then(function(access) { // get lists of available midi controllers const inputs = access.inputs.values(); const outputs = access.outputs.values(); access.onstate
change = function(e) { // print information about the (dis)connected midi controller console.log(e.port.name, e.port.manufacturer, e.port.state); }; }); specifications specification status comment web midi api working draft initial definition.
MSCandidateWindowShow - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
...} when the ime candidate window
changes position or closes, it fires mscandidatewindowupdate or mscandidatewindowhide events.
MSGestureEvent - Web APIs
events using this interface include msgesturestart, msgestureend, msgesturetap, msgesturehold, msgesture
change, and msinertiastart.
... gesture event types msgesturestart msgestureend msgesturetap msgesturehold msgesture
change msinertiastart specifications not part of any specification.
MediaDevices - Web APIs
events device
change fired when a media input or output device is attached to or removed from the user's computer.
... also available via the ondevice
change property.
MediaStreamTrack.enabled - Web APIs
note: if the track has been disconnected, the value of this property can be
changed, but has no effect.
... finally, the new value of enabled is saved, making the
change take effect.
MediaTrackSettings.deviceId - Web APIs
that makes the device id not useful for any
changes to constraints when calling mediastreamtrack.applyconstraints().
... an exception to the rule that device ids are the same across browsing sessions: private browsing mode will use a different id, and will
change it each browsing session.
Metadata.size - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
Metadata - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.non-standard.
Microsoft API extensions - Web APIs
touch apis element.mszoomto() mscontentzoom msmanipulationevent msmanipulationstate
changed msmanipulationviewsenabled mspointerhover media apis htmlvideoelement.msframestep() htmlvideoelement.mshorizontalmirror htmlvideoelement.msinsertvideoeffect() htmlvideoelement.msislayoutoptimalforplayback htmlvideoelement.msisstereo3d htmlvideoelement.mszoom htmlaudioelement.msaudiocategory htmlaudioelement.msaudiodevicetype htmlmediaelement.mscleareffects() htmlmediaelement.msinser...
...taudioeffect() mediaerror.msextendedcode msgraphicstrust msgraphicstruststatus msisboxed msplaytodisabled msplaytopreferredsourceuri msplaytoprimary msplaytosource msrealtime mssetmediaprotectionmanager mssetvideorectangle msstereo3dpackingmode msstereo3drendermode onmsvideoformat
changed onmsvideoframestepcompleted onmsvideooptimallayout
changed msfirstpaint pinned sites apis mssitemodeevent mssitemodejumplistitemremoved msthumbnailclick other apis x-ms-aria-flowfrom x-ms-acceleratorkey x-ms-format-detection mscaching mscachingenabled mscapslockwarningoff event.msconverturl() mselementresize document.mselementsfromrect() msisstatichtml navigator.mslaunchuri() mslaunchuricallback element.msmatchesselector() msprotocols msputpropertyenabled mswritep...
MutationObserver.takeRecords() - Web APIs
the mutationobserver method takerecords() returns a list of all matching dom
changes that have been detected but not yet processed by the observer's callback function, leaving the mutation queue empty.
... return value an array mutationrecord objects, each describing one
change applied to the observed portion of the document's dom tree.
NamedNodeMap - Web APIs
a namednodemap object is live and will thus be auto-updated if
changes are made to its contents internally or elsewhere.
... obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'namednodemap' in that specification.
NavigationPreloadManager - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
Navigator.getBattery() - Web APIs
example this example fetches the current charging state of the battery and establishes a handler for the charging
change event, so that the charging state is recorded whenever it
changes.
... let batteryischarging = false; navigator.getbattery().then(function(battery) { batteryischarging = battery.charging; battery.addeventlistener('charging
change', function() { batteryischarging = battery.charging; }); }); for more examples and details, see battery status api.
Online and offline events - Web APIs
firefox 41 updates this property when the os reports a
change in network connectivity on windows, linux, and os x.
... firefox 41 fires these events when the os reports a
change in network connectivity on windows, linux, and os x.
NetworkInformation.downlinkMax - Web APIs
examples the following example monitors the connection using the
change event and logs
changes as they occur.
...max = 'not supported'; if ('connection' in navigator) { connectiontype = navigator.connection.effectivetype; if ('downlinkmax' in navigator.connection) { downlinkmax = navigator.connection.downlinkmax; } } console.log('current connection type: ' + connectiontype + ' (downlink max: ' + downlinkmax + ')'); } logconnectiontype(); navigator.connection.addeventlistener('
change', logconnectiontype); specifications specification status comment network information apithe definition of 'downlinkmax' in that specification.
NetworkInformation - Web APIs
the networkinformation interface provides information about the connection a device is using to communicate with the network and provides a means for scripts to be notified if the connection type
changes.
...it will be one of the following values: bluetooth cellular ethernet none wifi wimax other unknown event handlers networkinformation.on
change the event that's fired when connection information
changes and the
change is fired on this object.
Node.insertBefore() - Web APIs
obsolete no notable
changes document object model (dom) level 2 core specificationthe definition of 'node.insertbefore' in that specification.
... obsolete no notable
changes document object model (dom) level 1 specificationthe definition of 'node.insertbefore' in that specification.
Node.nextSibling - Web APIs
living standard no
change document object model (dom) level 2 core specificationthe definition of 'node.nextsibling' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'node.nextsibling' in that specification.
Node - Web APIs
the dom node interface is an abstract base class upon which many other dom api objects are based, thus letting those object types to be used similarly and often inter
changeably.
...nodelist being live means that if the children of the node
change, the nodelist object is automatically updated.
NodeList - Web APIs
live nodelists in some cases, the nodelist is live, which means that
changes in the dom automatically update the collection.
... for example, node.childnodes is live: const parent = document.getelementbyid('parent'); let child_nodes = parent.childnodes; console.log(child_nodes.length); // let's assume "2" parent.appendchild(document.createelement('div')); console.log(child_nodes.length); // outputs "3" static nodelists in other cases, the nodelist is static, where any
changes in the dom does not affect the content of the collection.
Notation - Web APIs
obsolete no
change document object model (dom) level 2 core specificationthe definition of 'notation' in that specification.
... obsolete no
change document object model (dom) level 1 specificationthe definition of 'notation' in that specification.
NotificationEvent - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
PannerNode.distanceModel - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PannerNode.maxDistance - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PannerNode.orientationX - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
...awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.orientationY - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
...awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.orientationZ - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
...awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.panningModel - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PannerNode.positionY - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
...note that in this case, the
change will mainly affect the timbre of the oscillator, as it's a simple mono wave.
PannerNode.positionZ - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
...note that in this case, the
change will mainly affect the timbre and perceived volume of the sound.
PannerNode.setOrientation() - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PannerNode.setPosition() - Web APIs
you might be moving a character around inside a game world for example, and wanting delivery of audio to
change realistically as your character moves closer to or further away from a music player such as a stereo.
... to see a complete implementation, check out our panner-node example (view the source code) — this demo transports you to the 2.5d "room of metal", where you can play a track on a boom box and then walk around the boom box to see how the sound
changes!
PaymentRequest.abort() - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 11.1webview android no support nochrome android full support 53firefox andro...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.use...
PaymentRequest.canMakePayment() - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 11.1webview android no support nochrome android full support 53firefox andro...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0legend full support full support no support no supportsee implementation notes.see implementation notes.use...
PaymentRequest.prototype.id - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 11.1webview android no support nochrome android full support 60firefox andro...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 8.0legend full support full support no support no supportsee implementatio...
PaymentRequest.shippingAddress - Web APIs
when the paymentrequest.onshippingaddress
change is called, updatedetails() is called to update the details of the paymentrequest, using shippingaddress to set the correct shipping cost.
...var payment = new paymentrequest(supportedinstruments, details, options); payment.addeventlistener('shippingaddress
change', function(evt) { evt.updatewith(new promise(function(resolve) { updatedetails(details, request.shippingaddress, resolve); })); }); payment.show().then(function(paymentresponse) { // processing of paymentresponse exerpted for brevity.
PaymentRequest.shippingType - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support 11.1webview android no support nochrome android full support 55firefox andro...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support 11.3samsung internet android full support 6.0legend full support full support no support no supportsee implementatio...
PaymentRequestUpdateEvent.updateWith() - Web APIs
syntax paymentrequestupdateevent.updatewith(details); parameters details a paymentdetailsupdate object specifying the
changes applied to the payment request: displayitems optional an array of paymentitem objects, each describing one line item for the payment request.
...you must update this value yourself anytime the total amount due
changes.
PaymentRequest.payerName - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 58firefox androi...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 7.0legend full support full support no support no supportsee implementation notes.see implementation notes.user ...
PaymentResponse.requestId - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari full support yeswebview android no support nochrome android full support 60firefox androi...
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios full support yessamsung internet android full support 8.0legend full support full support no support no supportsee implementation ...
PerformanceEventTiming - Web APIs
// keep track of whether (and when) the page was first hidden, see: // https://github.com/w3c/page-visibility/issues/29 // note: ideally this check would be performed in the document <head> // to avoid cases where the visibility state
changes before this code runs.
...0 : infinity; document.addeventlistener('visibility
change', (event) => { firsthiddentime = math.min(firsthiddentime, event.timestamp); }, {once: true}); // sends the passed data to an analytics endpoint.
PerformanceLongTaskTiming - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
imageWidth - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.
PointerEvent - Web APIs
pointermove this event is fired when a pointer
changes coordinates.
... pointerrawupdate this event is fired when any of a pointer's properties
change.
PublicKeyCredentialCreationOptions.attestation - Web APIs
"indirect": the client may
change the assertion from the authenticator (for instance, using an anonymization ca).
... examples var publickey = { 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(functio...
PushEvent.data - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PushEvent - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PushManager.hasPermission() - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PushManager.supportedContentEncodings - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
PushMessageData.blob() - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
PushMessageData.json() - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
PushMessageData.text() - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.
Push API - Web APIs
they also monitor and respond to push and subscription
change events.
... serviceworkerglobalscope.onpushsubscription
change an event handler fired whenever a pushsubscription
change event occurs; for example, when a push subscription has been invalidated, or is about to be invalidated (e.g.
RTCDTMFSender - Web APIs
tone
change the tone
change event is sent to the rtcdtmfsender instance's event handler to indicate that a tone has either started or stopped playing.
... also available using the ontone
change event handler property.
RTCIceCandidate.usernameFragment - Web APIs
this avoids crosstalk among multiple ongoing ice sessions, but, more importantly, helps secure ice transactions (and all of webrtc by extension) against attacks that might try to inject themselves into an ice ex
change.
... the usernamefragment and password both
change every time an ice restart occurs.
RTCIceCandidatePair - Web APIs
example in this example, an event handler for selectedcandidatepair
change is set up to update an on-screen display showing the protocol used by the currently selected candidate pair.
... var icetransport = pc.getsenders()[0].transport.icetransport; var localproto = document.getelementbyid("local-protocol"); var remoteproto = document.getelementbyid("remote-protocol"); icetransport.onselectedcandidatepair
change = function(event) { var pair = icetransport.getselectedcandidatepair(); localprotocol.innertext = pair.local.protocol.touppercase(); remoteprotocol.innertext = pair.remote.protocol.touppercase(); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcicecandidatepair' in that specification.
RTCPeerConnection.addStream() - Web APIs
pc.addstream(stream); }); migrating to addtrack() compatibility allowing, you should update your code to instead use the addtrack() method: navigator.getusermedia({video:true, audio:true}, function(stream) { var pc = new rtcpeerconnection(); stream.gettracks().foreach(function(track) { pc.addtrack(track, stream); }); }); the newer addtrack() api avoids confusion over whether later
changes to the track-makeup of a stream affects a peer connection (they do not).
... the exception is in chrome, where addstream() does make the peer connection sensitive to later stream
changes (though such
changes do not fire the negotiationneeded event).
RTCPeerConnection.canTrickleIceCandidates - Web APIs
if trickling isn't supported, or you aren't able to tell, you can check for a falsy value for this property and then wait until the value of icegatheringstate
changes to "completed" before creating and sending the initial offer.
...pc.setremotedescription(remoteoffer) .then(_ => pc.createanswer()) .then(answer => pc.setlocaldescription(answer)) .then(_ => if (pc.cantrickleicecandidates) { return pc.localdescription; } return new promise(r => { pc.addeventlistener('icegatheringstate
change', e => { if (e.target.icegatheringstate === 'complete') { r(pc.localdescription); } }); }); }) .then(answer => sendanswertopeer(answer)) // signaling message .catch(e => handleerror(e)); pc.addeventlistener('icecandidate', e => { if (pc.cantrickleicecandidates) { sendcandidatetopeer(e.candidate); // signaling message } }); specifications ...
RTCPeerConnection.currentLocalDescription - Web APIs
to
change the currentlocaldescription, call rtcpeerconnection.setlocaldescription(), which triggers a series of events which leads to this value being set.
... for details on what exactly happens and why the
change isn't necessarily instantaneous, see pending and current descriptions in webrtc connectivity.
RTCPeerConnection.currentRemoteDescription - Web APIs
to
change the currentremotedescription, call rtcpeerconnection.setremotedescription(), which triggers a series of events which leads to this value being set.
... for details on what exactly happens and why the
change isn't necessarily instantaneous, see pending and current descriptions in webrtc connectivity.
RTCPeerConnection.iceGatheringState - Web APIs
you can detect when the value of this property
changes by watching for an event of type icegatheringstate
change.
...you can detect when this value
changes by watching for an event of type icegatheringstate
change.
RTCPeerConnection.onicecandidate - Web APIs
when this happens, the connection's icegatheringstate has also
changed to complete.
... you don't need to watch for this explicitly; instead, if you need to sense the end of signaling, you should watch for a icegatheringstate
change event indicating that the ice negotiation has transitioned to the complete state.
RTCPeerConnection.onnegotiationneeded - Web APIs
this event is fired when a
change has occurred which requires session negotiation.
... this negotiation should be carried out as the offerer, because some session
changes cannot be negotiated as the answerer.
RTCRtpContributingSource.source - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera no support nosafari ?
...to
change preferences in firefox, visit about:config.opera android no support nosafari ios ?
RTCRtpTransceiver.stop() - Web APIs
the receiver then stops receiving media; the receiver's track is stopped, and the transceiver's direction is
changed to stopped, and renegotiation is triggered by sending a negotiationneeded event to the rtcpeerconnection.
... note: stopping the transceiver causes a negotiationneeded event to be sent to the transceiver's rtcpeerconnection, so the connection can adapt to the
change.
RTCRtpTransceiver.stopped - Web APIs
the transceiver is stopped if the stop() method has been called or if a
change to either the local or the remote description has caused the transceiver to be stopped for some reason.
... note: currently only firefox implements stopped, and has not yet been updated to implement this
change.
RTCSessionDescription() - Web APIs
value description answer the sdp contained in the sdp property is the definitive choice in the ex
change.
... offer the session description object describes the initial proposal in an offer/answer ex
change.
RTCSessionDescription - Web APIs
value description answer the sdp contained in the sdp property is the definitive choice in the ex
change.
... offer the session description object describes the initial proposal in an offer/answer ex
change.
RTCStatsReport - Web APIs
candidate pairs other than the currently active pair for the transport are deleted when the rtcpeerconnection
changes its rtcpeerconnection.icegatheringstate to new during an ice restart.
... the active candidate pair is deleted after the transport switches to another candidate pair; this
change cannot be detected otherwise.
RTCStatsType - Web APIs
candidate pairs other than the currently active pair for the transport are deleted when the rtcpeerconnection
changes its rtcpeerconnection.icegatheringstate to new during an ice restart.
... the active candidate pair is deleted after the transport switches to another candidate pair; this
change cannot be detected otherwise.
Range.cloneRange() - Web APIs
the returned clone is copied by value, not reference, so a
change in either range does not affect the other.
... living standard no
change.
Range.commonAncestorContainer - Web APIs
to
change the ancestor container of a node, consider using the various methods available to set the start and end positions of the range, such as range.setstart() and range.setend().
... living standard no
change.
Range.endContainer - Web APIs
to
change the end position of a node, use the range.setend() method or a similar one.
... living standard no
change.
Range.endOffset - Web APIs
to
change the endoffset of a range, use one of the range.setend methods.
... living standard no
change.
ResizeObserver() - Web APIs
the resizeobserver constructor creates a new resizeobserver object, which can be used to report
changes to the content or border box of an element or the bounding box of an svgelement.
...the function is called with two parameters: entries an array of resizeobserverentry objects that can be used to access the new dimensions of the element after each
change.
ResizeObserverEntry.target - Web APIs
when the viewport size is
changed, the box's rounded corners
change in proportion to the size of the box.
... to grab a reference to the observed element so we can update its border-radius value after each
change, we make use of the target property of each entry — entry.target.style.borderradius.
SVGCircleElement - Web APIs
function clickcircle() { var circle = document.getelementbyid("circle"); // randomly determine if the circle radius will increase or decrease var
change = math.random() > 0.5 ?
... 10 : -10; // clamp the circle radius to a minimum of 10 and a maximum of 250, // so it won't disappear or get bigger than the viewport var newvalue = math.min(math.max(circle.r.baseval.value +
change, 10), 250); circle.setattribute("r", newvalue); } click on the circle.
SVGNumber - Web APIs
note: if the svgnumber is read-only, a domexception with the code no_modification_allowed_err is raised on an attempt to
change the value.
... candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgnumber' in that specification.
SVGTransform - Web APIs
the matrix object is live, meaning that any
changes made to the svgtransform object are immediately reflected in the matrix object and vice versa.
... in case the matrix object is
changed directly (i.e., without using the methods on the svgtransform interface itself) then the type of the svgtransform
changes to svg_transform_matrix.
SVGTransformList - Web APIs
any
changes made to the item are immediately reflected in the list.
...any
changes made to the item are immediately reflected in the list.
Screen.lockOrientation() - Web APIs
so, if the lock is set for only one orientation, the screen orientation will never
change until the screen orientation is unlocked.
... otherwise, the screen orientation will
change from an orientation to another as long as the orientations are amongst the orientations the device has been locked to.
ScreenOrientation - Web APIs
event handlers screenorientation.on
change the eventhandler called whenever the screen
changes orientation.
... 38chrome android full support 38firefox android full support 43opera android full support 25safari ios no support nosamsung internet android full support 3.0on
changechrome full support 38edge full support 79firefox full support 43ie no support noopera full support 25safari no support nowebview ...
Using the Screen Capture API - Web APIs
note: constraints never cause
changes to the list of sources available for capture by the screen sharing api.
...related to this, the device
change event is never sent when there are
changes to the sources available for getdisplaymedia().
Selection.containsNode() - Web APIs
it uses addeventlistener() to check for selection
change events.
... html <p>can you find the secret word?</p> <p>hmm, where <span id="secret" style="color:transparent">secret</span> could it be?</p> <p id="win" hidden>you found it!</p> javascript const secret = document.getelementbyid('secret'); const win = document.getelementbyid('win'); // listen for selection
changes document.addeventlistener('selection
change', () => { const selection = window.getselection(); const found = selection.containsnode(secret); win.toggleattribute('hidden', !found); }); result specifications specification status comment selection apithe definition of 'selection.containsnode()' in that specification.
ServiceWorker.state - Web APIs
the code listens for any
change in the serviceworker.state and returns its value.
...r('#kind').textcontent = 'installing'; } else if (registration.waiting) { serviceworker = registration.waiting; document.queryselector('#kind').textcontent = 'waiting'; } else if (registration.active) { serviceworker = registration.active; document.queryselector('#kind').textcontent = 'active'; } if (serviceworker) { logstate(serviceworker.state); serviceworker.addeventlistener('state
change', function(e) { logstate(e.target.state); }); } specifications specification status comment service workersthe definition of 'state' in that specification.
ServiceWorkerGlobalScope - Web APIs
pushsubscription
change occurs when a push subscription has been invalidated, or is about to be invalidated (e.g.
... also available via the serviceworkerglobalscope.onpushsubscription
change property.
ServiceWorkerRegistration.navigationPreload - Web APIs
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.user must explicitly enable this feature.user must explicitly enable this feature.
SharedWorker - Web APIs
if the onmessage event is attached using addeventlistener, the port is manually started using its start() method: myworker.port.start(); when the port is started, both scripts post messages to the worker and handle messages sent from it using port.postmessage() and port.onmessage, respectively: first.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } myworker.port.onmessage = function(e) { result1.textcontent = e.data; console.log('message received from worker'); } inside the worker we use ...
... living standard no
change from unknown.
SourceBuffer.mode - Web APIs
you can, however,
change the value from segments to sequence.
... this property cannot be
changed during while the sourcebuffer is processing either an appendbuffer() or remove() call.
SpeechRecognitionEvent - Web APIs
speechrecognitionevent.resultindex read only returns the lowest index value result in the speechrecognitionresultlist "array" that has actually
changed.
... examples this code is excerpted from our speech color
changer example.
Using readable streams - Web APIs
pipe chains are only supported in chrome at the moment, and that functionality is subject to
change.
... this functionality is at a very experimental stage and is subject to
change, so we have no explored it too deeply as of yet.
Streams API - Web APIs
with streams being available to javascript, this all
changes — you can now start processing raw data with javascript bit by bit as soon as it is available on the client-side, without needing to generate a buffer, string, or blob.
...this may
change over time.
StylePropertyMap.set() - Web APIs
the set() method of the stylepropertymap interface
changes the css declaration with the given property.
...font, width, background color) to
change.
SubtleCrypto.deriveKey() - Web APIs
ecdh in this example alice and bob each generate an ecdh key pair, then ex
change public keys.
... return window.crypto.subtle.derivekey( { name: "ecdh", public: publickey }, privatekey, { name: "aes-gcm", length: 256 }, false, ["encrypt", "decrypt"] ); } async function agreesharedsecretkey() { // generate 2 ecdh key pairs: one for alice and one for bob // in more normal usage, they would generate their key pairs // separately and ex
change public keys securely let aliceskeypair = await window.crypto.subtle.generatekey( { name: "ecdh", namedcurve: "p-384" }, false, ["derivekey"] ); let bobskeypair = await window.crypto.subtle.generatekey( { name: "ecdh", namedcurve: "p-384" }, false, ["derivekey"] ); // alice then generates a secret key using her private key and bob...
Text - Web APIs
over time, more text nodes may be created as the document's content
changes.
... obsolete no
change from document object model (dom) level 1 specification.
Touch.identifier - Web APIs
example someelement.addeventlistener('touchmove', function(e) { // iterate through the list of touch points that
changed // since the last event and print each touch point's identifier.
... for (var i=0; i < e.
changedtouches.length; i++) { console.log("
changedtouches[" + i + "].identifier = " + e.
changedtouches[i].identifier); } }, false); specifications specification status comment touch events – level 2 draft no
change.
Touch.pageX - Web APIs
when the touchmove event handler is invoked, each touch point's touch.pagex and touch.pagey coordinates are accessed via the event's touchevent.
changedtouches list.
... var i; for (i=0; i < e.
changedtouches.length; i++) { console.log("touchpoint[" + i + "].pagex = " + e.
changedtouches[i].pagex); console.log("touchpoint[" + i + "].pagey = " + e.
changedtouches[i].pagey); } }, false); specifications specification status comment touch events – level 2 draft no
change from the previous version.
Touch.pageY - Web APIs
when the touchmove event handler is invoked, each touch point's touch.pagex and touch.pagey coordinates are accessed via the event's touchevent.
changedtouches list.
... var i; for (i=0; i < e.
changedtouches.length; i++) { console.log("touchpoint[" + i + "].pagex = " + e.
changedtouches[i].pagex); console.log("touchpoint[" + i + "].pagey = " + e.
changedtouches[i].pagey); } }, false); specifications specification status comment touch events – level 2 draft no
change from last version.
TouchEvent.touches - Web APIs
touches is a read-only touchlist listing all the touch objects for touch points that are currently in contact with the touch surface, regardless of whether or not they've
changed or what their target element was at touchstart time.
... syntax var touches = touchevent.touches; return value touches a touchlist listing all the touch objects for touch points that are still in contact with the touch surface, regardless of whether or not they've
changed or what their target element was at touchstart time.
TreeWalker.firstChild() - Web APIs
if no such child exists, returns null and the current node is not
changed.
... living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.firstchild' in that specification.
TreeWalker.lastChild() - Web APIs
if no such child exists, returns null and the current node is not
changed.
... living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.lastchild' in that specification.
TreeWalker.nextNode() - Web APIs
if no such node exists, returns null and the current node is not
changed.
... living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.nextnode' in that specification.
Visual Viewport API - Web APIs
when the user pinch-zooms into the page, the visual viewport shrinks but the layout viewport is un
changed.
...it also adds two events, onresize and onscroll, that fire whenever the visual viewport
changes.
Basic scissoring - Web APIs
the reason for this distinction is that fragment color (and other fragment values, such as depth) may be manipulated and
changed several times during graphics operations before finally being written to the screen.
... we have already seen how fragment color
changes during graphics operations, by applying color masking.
Clearing with colors - Web APIs
this only
changes some internal state of webgl, but does not draw anything yet.
...by tweaking those "dials" and "switches" you can modify the internal state of the webgl machine, which in turn
changes how input (in this case, a clear command) translates into output (in this case, all pixels are set to green).
WebGL constants - Web APIs
constant name value description static_draw 0x88e4 passed to bufferdata as a hint about whether the contents of the buffer are likely to be used often and not
change often.
... dynamic_draw 0x88e8 passed to bufferdata as a hint about whether the contents of the buffer are likely to be used often and
change often.
Using WebRTC data channels - Web APIs
in this guide, we'll examine how to add a data channel to a peer connection, which can then be used to securely ex
change arbitrary data; that is, any kind of data we wish, in any format we choose.
... concerns with large messages currently, it's not practical to use rtcdatachannel for messages larger than 64kib (16kib if you want to support cross-browser ex
change of data).
Using bounded reference spaces - Web APIs
that means you need to
change the code that calls requestreferencespace() to ask for a bounded reference space, then if that fails fall back to your backup choice, like this: let xrsession = null; let xrreferencespace = null; let spacetype = null; function onsessionstarted(session) { xrsession = session; spacetype = "bounded-floor"; xrsession.requestreferencespace(spacetype) .then(onrefspacecreated) .catch(() => ...
... this would
change the onrefspacecreated() method from the above snippet to: function onrefspacecreated(refspace) { xrsession.updaterenderstate({ baselayer: new xrwebgllayer(xrsession, gl) }); let startposition = vec3.fromvalues(0, 1.5, 0); const startorientation = vec3.fromvalues(0, 0, 1.0); xrreferencespace = xrreferencespace.getoffsetreferencespace( new xrrigidtransform(startposition, s...
Window.closed - Web APIs
examples
change the url of a window from a popup the following example demonstrates how a popup window can
change the url of the window that opened it.
... before attempting to
change the url, it checks that the current window has an opener using the window.opener property and that the opener isn't closed: // check that an opener exists and is not closed if (window.opener && !window.opener.closed) { window.opener.location.href = 'http://www.mozilla.org'; } note that popups can only access the window that opened them.
Window.event - Web APIs
to
change preferences in firefox, visit about:config.ie full support 4opera full support 7safari full support 1.1webview android full support 1chrome android full support 18firefox and...
...to
change preferences in firefox, visit about:config.opera android full support 10.1safari ios full support 1samsung internet android full support 1.0legend full support full supportsee implementation note...
Window.getComputedStyle() - Web APIs
the returned style is a live cssstyledeclaration object, which updates automatically when the element's styles are
changed.
...see plugging the css history leak and privacy-related
changes coming to css :visited for examples of how this is implemented.
Window.innerHeight - Web APIs
to
change the width of the window, call one of its resize methods, such as resizeto() or resizeby().
....innerheight; // or var intframeheight = self.innerheight; // will return the height of the frame viewport within the frameset var intframesetheight = parent.innerheight; // will return the height of the viewport of the closest frameset var intouterframesetheight = top.innerheight; // will return the height of the viewport of the outermost frameset fixme: link to an interactive demo here to
change the size of a window, see window.resizeby() and window.resizeto().
Window.matchMedia() - Web APIs
use this object's properties and events to detect matches and to monitor for
changes to those matches over time.
... if you need to be kept aware of whether or not the document matches the media query at all times, you can instead watch for the
change event to be delivered to the object.
Window.personalbar - Web APIs
syntax objref =window.personalbar example fixme: https://bugzilla.mozilla.org/show_bug.cgi?id=790023 the following complete html example shows the way that the visible property of the various "bar" objects is used, and also the
change to the privileges necessary to write to the visible property of any of the bars on an existing window.
...also be aware that dynamically updating the visibilty of the various toolbars can
change the size of the window rather dramatically, and may affect the layout of your page.
Window.resizeBy() - Web APIs
creating and resizing an external window for security reasons, it's no longer possible in firefox for a website to
change the default size of a window in a browser if the window wasn’t created by window.open(), or contains more than one tab.
... see the compatability table for details on the
change.
Window.statusbar - Web APIs
syntax objref = window.statusbar example the following complete html example shows a way that the visible property of the various "bar" objects is used, and also the
change to the privileges necessary to write to the visible property of any of the bars on an existing window.
...also be aware that dynamically updating the visibilty of the various toolbars can
change the size of the window rather dramatically, and may affect the layout of your page.
Window: storage event - Web APIs
bubbles no cancelable no interface storageevent event handler property onstorage examples log the samplelist item to the console when the storage event fires: window.addeventlistener('storage', () => { // when local storage
changes, dump the list to // the console.
... console.log(json.parse(window.localstorage.getitem('samplelist'))); }); the same action can be achieved using the onstorage event handler property: window.onstorage = () => { // when local storage
changes, dump the list to // the console.
Window.toolbar - Web APIs
syntax objref = window.toolbar example the following complete html example shows way that the visible property of the various "bar" objects is used, and also the
change to the privileges necessary to write to the visible property of any of the bars on an existing window.
...also be aware that dynamically updating the visibilty of the various toolbars can
change the size of the window rather dramatically, and may affect the layout of your page.
Worker.onmessage - Web APIs
messages are passed to the worker when the value inside the form input first
changes.
... var myworker = new worker('worker.js'); first.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } myworker.onmessage = function(e) { result.textcontent = e.data; console.log('message received from worker'); } in the worker.js script, an onmessage handler is used to the handle messages from the main script: onmessage = function(e) { console.log('message received from main script'); var workerresult = 'result: ' + (e.data[0] * e.data[1]); console.log('posting message back to main script'); postmessage(workerresult); } notice how in the main script, onmessage has to be called on myworker, whereas inside the worker ...
Worker.prototype.postMessage() - Web APIs
when either of two form inputs (first and second) have their values
changed,
change events invoke postmessage() to send the value of both inputs to the current worker.
... var myworker = new worker('worker.js'); first.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } for a full example, see ourbasic dedicated worker example (run dedicated worker).
Sending and Receiving Binary Data - Web APIs
receiving binary data using javascript typed arrays the responsetype property of the xmlhttprequest object can be set to
change the expected response type from the server.
... obviously you need to
change this value based on the actual size of the data being sent.
XMLHttpRequest.getAllResponseHeaders() - Web APIs
example this example examines the headers in the request's readystate
change event handler, xmlhttprequest.onreadystate
change.
... var request = new xmlhttprequest(); request.open("get", "foo.txt", true); request.send(); request.onreadystate
change = function() { if(this.readystate == this.headers_received) { // get the raw header string var headers = request.getallresponseheaders(); // convert the header string into an array // of individual headers var arr = headers.trim().split(/[\r\n]+/); // create a map of header names to values var headermap = {}; arr.foreach(function (line) { var parts = line.split(': '); var header = parts.shift(); var value = parts.join(': ');...
XMLHttpRequest.getResponseHeader() - Web APIs
example in this example, a request is created and sent, and a readystate
change handler is established to look for the readystate to indicate that the headers have been received; when that is the case, the value of the content-type header is fetched.
... var client = new xmlhttprequest(); client.open("get", "unicorns-are-teh-awesome.txt", true); client.send(); client.onreadystate
change = function() { if(this.readystate == this.headers_received) { var contenttype = client.getresponseheader("content-type"); if (contenttype != my_expected_type) { client.abort(); } } } specifications specification status comment xmlhttprequestthe definition of 'getresponseheader()' in that specification.
XMLHttpRequest.response - Web APIs
it works by creating an xmlhttprequest object and creating a listener for readystate
change events such that that when readystate
changes to done (4), the response is obtained and passed into the callback function provided to load().
... var url = 'somepage.html'; //a local page function load(url, callback) { var xhr = new xmlhttprequest(); xhr.onreadystate
change = function() { if (xhr.readystate === 4) { callback(xhr.response); } } xhr.open('get', url, true); xhr.send(''); } specifications specification status comment xmlhttprequest living standard whatwg living standard ...
XMLHttpRequest - Web APIs
xmlhttprequest.onreadystate
change an eventhandler that is called whenever the readystate attribute
changes.
... event handlers onreadystate
change as a property of the xmlhttprequest instance is supported in all browsers.
XRReferenceSpace.getOffsetReferenceSpace() - Web APIs
in this example, we'll show code that lets the user look around by right-clicking and moving the mouse to
change the viewing angle.
... this new reference space is one in which the viewer's position is un
changed, but their orientation has been altered based on the pitch and yaw values generated from the accumulated mouse inputs.
XRRigidTransform.matrix - Web APIs
it begins by allocating a new matrix and writing a 4x4 identity matrix into it: [1000010000100001]\begin{bmatrix} 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 1 \end{bmatrix} this is a transform that will not
change either the orientation or position of any point, vector, or object to which it's applied.
... next, the position is placed into the right-hand column, like this, resulting in a translation matrix that will transform a coordinate system by the specified distance in each dimension, with no rotational
change.
XRSession.inputSources - Web APIs
the returned object is live; as devices are connected to and removed from the user's system, the list's contents update to reflect the
changes.
... usage notes you can add a handler for the xrsession event inputsources
change to be advised when the contents of the session's connected devices list
changes.
XRSession.requestAnimationFrame() - Web APIs
note: despite the obvious similarities between these methods and the global requestanimationframe() function provided by the window interface, you must not treat these as inter
changeable.
... syntax requestid = xrsession.requestanimationframe(animationframecallback); parameters animationframecallback a function which is called before the next repaint in order to allow you to update and render the xr scene based on elapsed time, animation, user input
changes, and so forth.
XRSession.updateRenderState() - Web APIs
the updaterenderstate() method of the xrsession interface of webxr api schedules
changes to be applied to the active render state prior to rendering of the next frame.
... invalidstateerror this may occur for one of the following reasons: the xrsession has already ended, so you cannot
change its render state.
XRSession.visibilityState - Web APIs
every time the visibility state
changes, a visibility
change event is fired on the xrsession object.
... the possible values of visibilitystate are: hidden the virtual scene generated by the xrsession is not currently visible to the user, so its requestanimationframe() callbacks are not being executed until thevisibilitystate
changes.
XRSystem - Web APIs
events device
change sent when the set of available xr devices has
changed.
... also available using the ondevice
change event handler.
Using the alert role - Accessibility
the alert role is most useful for information that requires the user's immediate attention, for example: an invalid value was entered into a form field the user's login session is about to expire the connection to the server was lost, local
changes will not be saved because of its intrusive nature, the alert role must be used sparingly and only in situations where the user's immediate attention is required.
... dynamic
changes that are less urgent should use a less aggressive method, such as aria-live="polite" or other live region roles.
Using the link role - Accessibility
when this role is added to an element, tab can be used to
change focus to the link, and enter used to execute the link.
...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: alert role - Accessibility
when the display value is
changed with css or javascript, it would automatically trigger the screen reader to read out the content.
... <button type="button" onclick="triggeralert">trigger alert</button> <p class="alert">the alert will trigger when the button is pressed.</p> function triggeralert() { var alertel = document.queryselector('.alert'); alertel.addattribute("role", "alert"); } accessibility concerns the alert role should read out content that has
changed, or bring the user's attention to it immediately, so it should not be used for static content or used regularly.
ARIA: feed role - Accessibility
however, if the total number is extremely large, indefinite, or
changes often, set aria-setsize="-1" to indicate that the size of the feed is not known.
...make sure it's reset to false when the operation is complete or the
changes may not become visible.
ARIA: Suggestion role - Accessibility
the suggestion landmark role semantically denotes a single proposed
change to an editable document.
... examples when you’ve got a content
change that involves an insertion and a deletion, there is no way for a screenreader user to work out if the two are related or not.
ARIA: dialog role - Accessibility
<div role="dialog" aria-labelledby="dialog1title" aria-describedby="dialog1desc"> <h2 id="dialog1title">your personal details were successfully updated</h2> <p id="dialog1desc">you can
change your details at any time in the user account section.</p> <button>close</button> </div> description marking up a dialog element with the dialog role helps assistive technology identify the dialog's content as being grouped and separated from the rest of the page content.
...this approach is shown in the code snippet below: <div role="dialog" aria-labelledby="dialog1title" aria-describedby="dialog1desc"> <h2 id="dialog1title">your personal details were successfully updated</h2> <p id="dialog1desc">you can
change your details at any time in the user account section.</p> <button>close</button> </div> keep in mind that a dialog's title and description text do not have to be focusable in order to be perceived by screen readers operating in a non-virtual mode.
Web applications and ARIA FAQ - Accessibility
function updateprogress(percentcomplete) { progressbar.setattribute("aria-valuenow", percentcomplete); } will adding aria
change my page styles or behavior?
...though on its own aria will not
change any styles, as with any html attributes, css can take advantage of aria attributes as element selectors.
ARIA - Accessibility
live regions live regions provide suggestions to screen readers about how to handle
changes to the contents of a page.
... using aria live regions to announce content
changes a quick summary of live regions, by the makers of jaws screen reader software.
HTML To MSAA - Accessibility
eadonly attribute is used state_system_ protected n/a "activate" n/a input type="checkbox" role_system_ checkbutton n/a n/a state_system_ marqueed used as state checkable state_system_ mixed for html 5 if intermediate property of dom element returns true state_system_ checked if checked property of dom element returns true n/a "check"/"uncheck"/"cycle" depending on state event_object_ state
change when state is
changed input type="radio" role_system_ radiobutton n/a n/a state_system_ marqueed used as state checkable state_system_ checked if checked property of dom element returns true n/a "select" event_object_ state
change when state is
changed label role_system_ statictext from child nodes n/a n/a n/a n/a n/a legend role_system_ statictext n/a n/a n/a label_for (0x1002), poi...
...tionremove if unselected select @size > 1 role_system_ list n/a n/a state_system_ multiselectable if multiselectable n/a n/a n/a select @size = 1 role_system_ combobox n/a name of focused option state_system_ expanded if combobox open state_system_ collapsed if combobox is collapsed state_system_ haspopup state_system_ focusable n/a "open"/"close" depending on state event_object_ value
change when selected option is
changed table role_system_ table from @summary attribute n/a described_by (0x100e) points to caption element n/a n/a td, th role_system_ cell n/a n/a n/a n/a n/a n/a thead role_system_ columnheader n/a n/a n/a n/a n/a n/a abbr, acronym, blockquote, form, frame, h1-h6, iframe bstr role n/a n/a n/a n/a n/a n/a ...
Keyboard-navigable JavaScript widgets - Accessibility
use onfocus to track the current focus don't assume that all focus
changes will come via key and mouse events: assistive technologies such as screen readers can set the focus to any focusable element.
...for example, the code that updates the tabindex or the styling when users navigate using the arrow keys should also be used by mouse click handlers to produce the same
changes.
Keyboard - Accessibility
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).
... see also using css to
change the presentation of a ui component when it receives focus ...
::slotted() - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 37safari full support 10webview android full support 50chrome android full support 50firefox and...
...to
change preferences in firefox, visit about:config.opera android full support 37safari ios full support 10samsung internet android full support 5.0legend full support full support no support no supportuser must explicitly enable ...
:empty - CSS: Cascading Style Sheets
note: in selectors level 4 the :empty pseudo-class was
changed to act like :-moz-only-whitespace, but no browser currently supports this yet.
... working draft
changed to act like :-moz-only-whitespace.
:host() - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 41safari full support 10notes full support 10notes notes certain css selectors do not work (:host > .local-child) and styling slotted conten...
...to
change preferences in firefox, visit about:config.opera android full support 41safari ios full support 10notes full support 10notes notes certain css selectors do not work (:host > .local-child) and styling slotted content (::slotted) is buggy.samsung internet android ...
:host - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 41safari full support 10webview android full support 54chrome android full support 54firefox and...
...to
change preferences in firefox, visit about:config.opera android full support 41safari ios full support 10samsung internet android full support 6.0legend full support full support no support no supportuser must explicitly enable ...
:left - CSS: Cascading Style Sheets
note: this pseudo-class can be used to
change only the margin, padding, border, and background properties of the page box.
... working draft no
change.
:right - CSS: Cascading Style Sheets
note: this pseudo-class can be used to
change only the margin, padding, border, and background properties of the page box.
... working draft no
change.
:scope - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 15safari full support 7webview android full support ≤37chrome android full support 27firefox a...
...to
change preferences in firefox, visit about:config.opera android full support 15safari ios full support 7samsung internet android full support 1.5support in dom api such as in queryselector() and queryselectorall()chrome full support ...
aspect-ratio - CSS: Cascading Style Sheets
<style> @media (min-aspect-ratio: 8/5) { div { background: %239af; } } @media (max-aspect-ratio: 3/2) { div { background: %239ff; } } @media (aspect-ratio: 1/1) { div { background: %23f9a; } }</style><div id='inner'> watch this element as you resize your viewport's width and height.</div>"> </iframe> css iframe{ display:block; } javascript outer.style.width=outer.style.height="165px" w.on
change=w.oninput=function(){ outer.style.width=w.value+"px" wf.textcontent="width:"+w.value } h.on
change=h.oninput=function(){ outer.style.height=h.value+"px" hf.textcontent="height:"+h.value } result specifications specification status comment media queries level 4the definition of 'aspect-ratio' in that specification.
... candidate recommendation no
change.
update - CSS: Cascading Style Sheets
slow the layout may
change dynamically according to the usual rules of css, but the output device is not able to render or display
changes quickly enough for them to be perceived as a smooth animation.
... fast the layout may
change dynamically according to the usual rules of css, and the output device is not unusually constrained in speed, so regularly-updating things like css animations can be used.
Basic Concepts of grid layout - CSS: Cascading Style Sheets
in the current specification, we would edit the above nested grid example to
change the track definition of grid-template-columns: repeat(3, 1fr), to grid-template-columns: subgrid.
...if we return to our example with items positioned by line number, we can
change this to make two items overlap.
Consistent list indentation - CSS: Cascading Style Sheets
one of the most common style
changes made to lists is a
change in the indentation distance—that is, how far the list items are pushed over to the right.
...if it's
changed to inside, then the markers are brought inside the <li>'s content, as though they're an inline box placed at the very beginning of the <li>.
CSS Overflow - CSS: Cascading Style Sheets
basic example the following interactive example shows how changing the value of the overflow property,
changes how the overflow of a fixed height box is dealt with.
... working draft
changed syntax to allow one or two keywords instead of only one css level 2 (revision 1)the definition of 'overflow' in that specification.
Layout and the containing block - CSS: Cascading Style Sheets
if the position property is absolute or fixed, the containing block may also be formed by the edge of the padding box of the nearest ancestor element that has the following: a transform or perspective value other than none a will-
change value of transform or perspective a filter value other than none or a will-
change value of filter (only works on firefox).
...thus, the paragraph's dimensions
change based on the size of the browser window.
List group with badges - CSS: Cascading Style Sheets
recipe download this example choices made flexbox makes this particular pattern straightforward and also makes it easy to make
changes to the layout.
...if instead, you want the badge to align to the top of the content,
change this to align-items: flex-start.
Cubic Bezier Generator - CSS: Cascading Style Sheets
<html> <canvas id="bezier" width="336" height="336"> </canvas> <form> <label for="x1">x1 = </label><input on
change="updatecanvas();" type="text" maxlength=6 id="x1" value="0.79" class='field'> <label for="y1">y1 = </label><input on
change="updatecanvas();return true;" type="text" maxlength=6 id="y1" value="0.33" class='field'> <label for="x2">x2 = </label><input on
change="updatecanvas();return true;" type="text" maxlength=6 id="x2" value="0.14" class='field'> <label for="y2">y2 = </label><input on
change="updatecanvas();return true;" type="text" maxlength=6 id="y2" value="0.53" class='field'> <br> <output id="output">log</output> </form> </html> .field { width: 40px; } function updatecanvas() { var x1 = d...
...tbyid('y1').value; var x2 = document.getelementbyid('x2').value; var y2 = document.getelementbyid('y2').value; drawbeziercurve(x1, y1, x2, y2); } const radius = 4; // place needed to draw the rulers const rulers = 30.5; const margin = 10.5; const basic_scale_size = 5; // size of 0.1 tick on the rulers var scaling; //limitation: scaling is computed once: if canvas.height/canvas.width
change it won't be recalculated var dragsm = 0; // drag state machine: 0 = nodrag, others = object being dragged function initcanvas() { // get the canvas element using the dom var canvas = document.getelementbyid('bezier'); // make sure we don't execute when canvas isn't supported if (canvas.getcontext) { // use getcontext to use the canvas for drawing var ctx = canvas...
Type selectors - CSS: Cascading Style Sheets
working draft no
changes selectors level 3the definition of 'type selectors' in that specification.
... recommendation no
changes css level 2 (revision 1)the definition of 'type selectors' in that specification.
Using CSS custom properties (variables) - CSS: Cascading Style Sheets
for example, the same color might be used in hundreds of different places, requiring global search and replace if that color needs to
change.
... .five { background-color: var(--main-bg-color); } <div> <div class="one"></div> <div class="two">text <span class="five">- more text</span></div> <input class="three"> <textarea class="four">lorem ipsum</textarea> </div> this leads to the same result as the previous example, yet allows for one canonical declaration of the desired property value; very useful if you want to
change the value across the entire page later.
Viewport concepts - CSS: Cascading Style Sheets
the visual viewport is the part of the web page that is currently visible in the browser and can
change.
... 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 un
changed.
align-content - CSS: Cascading Style Sheets
baseline<content-distribution> = space-between | space-around | space-evenly | stretch<overflow-position> = unsafe | safe<content-position> = center | start | end | flex-start | flex-end examples css #container { height:200px; width: 240px; align-content: center; /* can be
changed in the live sample */ background-color: #8c8c8c; } .flex { display: flex; flex-wrap: wrap; } .grid { display: grid; grid-template-columns: repeat(auto-fill, 50px); } div > div { box-sizing: border-box; border: 2px solid #8c8c8c; width: 50px; display: flex; align-items: center; justify-content: center; } #item1 { background-color: #8cffa0; min-height: 30px; } #item2...
...>safe end</option> <option value="unsafe end">unsafe end</option> <option value="safe flex-end">safe flex-end</option> <option value="unsafe flex-end">unsafe flex-end</option> </select> </div> javascript var values = document.getelementbyid('values'); var display = document.getelementbyid('display'); var container = document.getelementbyid('container'); values.addeventlistener('
change', function (evt) { container.style.aligncontent = evt.target.value; }); display.addeventlistener('
change', function (evt) { container.classname = evt.target.value; }); result specifications specification status comment css box alignment module level 3the definition of 'align-content' in that specification.
align-items - CSS: Cascading Style Sheets
baseline<overflow-position> = unsafe | safe<self-position> = center | start | end | self-start | self-end | flex-start | flex-end examples css #container { height:200px; width: 240px; align-items: center; /* can be
changed in the live sample */ background-color: #8c8c8c; } .flex { display: flex; flex-wrap: wrap; } .grid { display: grid; grid-template-columns: repeat(auto-fill, 50px); } div > div { box-sizing: border-box; border: 2px solid #8c8c8c; width: 50px; display: flex; align-items: center; justify-content: center; } #item1 { background-color: #8cffa0; min-height: 30px; } #item2...
.../option> <option value="unsafe self-end">unsafe self-end</option> <option value="safe flex-end">safe flex-end</option> <option value="unsafe flex-end">unsafe flex-end</option> </select> </div> javascript var values = document.getelementbyid('values'); var display = document.getelementbyid('display'); var container = document.getelementbyid('container'); values.addeventlistener('
change', function (evt) { container.style.alignitems = evt.target.value; }); display.addeventlistener('
change', function (evt) { container.classname = evt.target.value; }); result specifications specification status comment css box alignment module level 3the definition of 'align-items' in that specification.
animation-timing-function - CSS: Cascading Style Sheets
mp-start | jump-end | jump-none | jump-both | start | end examples cubic-bezier examples <div class="parent"> <div class="ease">ease</div> <div class="easein">ease-in</div> <div class="easeout">ease-out</div> <div class="easeinout">ease-in-out</div> <div class="linear">linear</div> <div class="cb">cubic-bezier(0.2,-2,0.8,2)</div> </div> .parent > div[class] { animation-name:
changeme; animation-duration: 10s; animation-iteration-count: infinite; margin-bottom: 4px; } @keyframes
changeme { 0% { min-width: 12em; width: 12em; background-color: black; border: 1px solid red; color: white; } 100% { width: 90vw; min-width: 24em; background-color: magenta; color: yellow; border: 1px solid orange; } ...
... step examples <div class="parent"> <div class="jump-start">jump-start</div> <div class="jump-end">jump-end</div> <div class="jump-both">jump-both</div> <div class="jump-none">jump-none</div> <div class="start">start</div> <div class="end">end</div> <div class="step-start">step-start</div> <div class="step-end">step-end</div> </div> .parent > div[class] { animation-name:
changeme; animation-duration: 10s; animation-iteration-count: infinite; margin-bottom: 4px; } @keyframes
changeme { 0% { min-width: 12em; width: 12em; background-color: black; border: 1px solid red; color: white; } 100% { width: 90vw; min-width: 24em; background-color: magenta; color: yellow; border: 1px solid orange; } ...
attr() - CSS: Cascading Style Sheets
editor's draft
changed it to work like var().
... these
changes are experimental and may be dropped during the cr phase if browser support is too small.
background-size - CSS: Cascading Style Sheets
note: the behavior of <gradient>s
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5).
...rendering of <gradient>s in such cases
changed in firefox 8, and at present is generally inconsistent across browsers, which do not all implement rendering in full accordance with the css3 background-size specification and with the css3 image values gradient specification.
border-image-repeat - CSS: Cascading Style Sheets
lso applies to ::first-letter.inheritednocomputed valueas specifiedanimation typediscrete formal syntax [ stretch | repeat | round | space ]{1,2} examples repeating border images css #bordered { width: 12rem; margin-bottom: 1rem; padding: 1rem; border: 40px solid; border-image: url("https://mdn.mozillademos.org/files/4127/border.png") 27; border-image-repeat: stretch; /* can be
changed in the live sample */ } html <div id="bordered">you can try out various border repetition rules on me!</div> <select id="repetition"> <option value="stretch">stretch</option> <option value="repeat">repeat</option> <option value="round">round</option> <option value="space">space</option> <option value="stretch repeat">stretch repeat</option> <option value="space round">space roun...
...d</option> </select> javascript var repetition = document.getelementbyid("repetition"); repetition.addeventlistener("
change", function (evt) { document.getelementbyid("bordered").style.borderimagerepeat = evt.target.value; }); results specifications specification status comment css backgrounds and borders module level 3the definition of 'border-image-repeat' in that specification.
border-image-slice - CSS: Cascading Style Sheets
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.
... border-width:
changes the width of the border.
border-top - CSS: Cascading Style Sheets
candidate recommendation no direct
changes, though the modification of values for the border-top-color do apply to it.
... recommendation no significant
changes.
box-direction - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 15prefixed full support 15prefixed prefixed implemented with the vendor prefix: -webkit-safari full support 3prefixed full ...
...to
change preferences in firefox, visit about:config.opera android full support 14prefixed full support 14prefixed prefixed implemented with the vendor prefix: -webkit-safari ios full support 1prefixed full support 1prefixed pr...
<color> - CSS: Cascading Style Sheets
note: the list of accepted keywords has undergone many
changes during the evolution of css: css level 1 only included 16 basic colors, called the vga colors as they were taken from the set of displayable colors on vga graphics cards.
...f (stringtotest === "transparent") { return false; } const image = document.createelement("img"); image.style.color = "rgb(0, 0, 0)"; image.style.color = stringtotest; if (image.style.color !== "rgb(0, 0, 0)") { return true; } image.style.color = "rgb(255, 255, 255)"; image.style.color = stringtotest; return image.style.color !== "rgb(255, 255, 255)"; } inputelem.addeventlistener('
change', () => { if(validtextcolor(inputelem.value)) { divelem.style.backgroundcolor = inputelem.value; divelem.textcontent = ''; } else { divelem.style.backgroundcolor = 'white'; divelem.textcontent = 'invalid color value'; } }); result rgb syntax variations this example shows the many ways in which a single color can be created with the various rgb color syntaxes.
conic-gradient() - CSS: Cascading Style Sheets
the midpoint of the red to blue gradient
change, however, is at the 20% mark rather than the 50% mark as would have happened without the 80grad, or 20%, color hint.
...the following
changes from red to yellow at the 30% mark, and then transitions from yellow to blue over 35% of the gradient conic-gradient(red .8rad, yellow .6rad, blue 1.3rad); there are other effects you can create with conic gradients.
display - CSS: Cascading Style Sheets
.container { display: inline-flex; } for more information on these
changes to the specification, see the article adapting to the new two-value syntax of display.
...nd-color: black; color: white; margin: 1px; } article, span { padding: 10px; border-radius: 7px; } article, div { margin: 20px; } javascript const articles = document.queryselectorall('.container'); const select = document.queryselector('select'); function updatedisplay() { articles.foreach((article) => { article.style.display = select.value; }); } select.addeventlistener('
change', updatedisplay); updatedisplay(); result note: you can find more examples in the pages for each separate display data type, linked above.
<easing-function> - CSS: Cascading Style Sheets
the <easing-function> css data type denotes a mathematical function that describes how fast one-dimensional values
change during animations.
...iv > div'); startbtn.addeventlistener('click', () => { if(startbtn.textcontent === 'start animation') { divelem.style.animationname = 'move-right'; startbtn.textcontent = 'stop animation'; divelem.style.animationtimingfunction = selectelem.value; } else { divelem.style.animationname = 'unset'; startbtn.textcontent = 'start animation'; } }); selectelem.addeventlistener('
change', () => { divelem.style.animationtimingfunction = selectelem.value; }); result cubic-bezier() function examples these cubic bézier curves are valid for use in css: /* the canonical bézier curve with four <number> in the [0,1] range.
flex-basis - CSS: Cascading Style Sheets
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.
... then, that
change was reverted in bug 1093316, so auto once again means "look at my width or height property"; and a new content keyword is being introduced to trigger automatic sizing.
float - CSS: Cascading Style Sheets
inline-block block inline-table table table-row block table-row-group block table-column block table-column-group block table-cell block table-caption block table-header-group block table-footer-group block inline-flex flex inline-grid grid other un
changed note: if you're referring to this property from javascript as a member of the htmlelement.style object, modern browsers support float, but in older browsers you have to spell it as cssfloat, with internet explorer versions 8 and older using stylefloat.
... recommendation no
change css level 1the definition of 'float' in that specification.
font-family - CSS: Cascading Style Sheets
candidate recommendation no significant
change css level 2 (revision 1)the definition of 'font-family' in that specification.
... recommendation no significant
change css level 1the definition of 'font-family' in that specification.
font-size-adjust - CSS: Cascading Style Sheets
to
change preferences in chrome, visit chrome://flags.edge full support 79disabled full support 79disabled disabled from version 79: this feature is behind the enable experimental web platform features preference.firefox full support 40 full support ...
...to
change preferences in chrome, visit chrome://flags.firefox android full support 4opera android full support 30disabled full support 30disabled disabled from version 30: this feature is behind the enable experimental web platform features preference.safari ios ...
font-style - CSS: Cascading Style Sheets
candidate recommendation no
change css level 2 (revision 1)the definition of 'font-style' in that specification.
... recommendation no
change css level 1the definition of 'font-style' in that specification.
font-variant-caps - CSS: Cascading Style Sheets
to
change preferences in firefox, visit about:config.ie no support noopera full support 39safari no support nowebview android full support 52chrome android full support 52firefox andro...
...to
change preferences in firefox, visit about:config.opera android full support 41safari ios no support nosamsung internet android full support 6.0legend full support full support no support no suppor...
grid-auto-flow - CSS: Cascading Style Sheets
formal definition initial valuerowapplies togrid containersinheritednocomputed valueas specifiedanimation typediscrete formal syntax [ row | column ] | dense examples setting grid auto-placement html <div id="grid"> <div id="item1"></div> <div id="item2"></div> <div id="item3"></div> <div id="item4"></div> <div id="item5"></div> </div> <select id="direction" on
change="
changegridautoflow()"> <option value="column">column</option> <option value="row">row</option> </select> <input id="dense" type="checkbox" on
change="
changegridautoflow()"> <label for="dense">dense</label> css #grid { height: 200px; width: 200px; display: grid; grid-gap: 10px; grid-template: repeat(4, 1fr) / repeat(2, 1fr); grid-auto-flow: column; /* or 'row', 'row dense', 'co...
...lumn dense' */ } #item1 { background-color: lime; grid-row-start: 3; } #item2 { background-color: yellow; } #item3 { background-color: blue; } #item4 { grid-column-start: 2; background-color: red; } #item5 { background-color: aqua; } function
changegridautoflow() { var grid = document.getelementbyid("grid"); var direction = document.getelementbyid("direction"); var dense = document.getelementbyid("dense"); var gridautoflow = direction.value === "row" ?
image() - CSS: Cascading Style Sheets
if the directionality is omitted, the image won't be flipped if the language direction is
changed.
...what cursor do you see?</div> .box:hover { cursor: image("https://mdn.mozillademos.org/files/16411/sprite.png#xywh=32,64,16,16"); } when the user hovers over the box, the cursor will
change to display the 16x16 px section of the sprite image, starting at x=32 and y=64.
ime-mode - CSS: Cascading Style Sheets
note: in general, it's not appropriate for a public web site to
change the ime mode.
... values auto no
change is made to the current input method editor state.
justify-content - CSS: Cascading Style Sheets
[ <content-position> | left | right ]where <content-distribution> = space-between | space-around | space-evenly | stretch<overflow-position> = unsafe | safe<content-position> = center | start | end | flex-start | flex-end examples setting flex item distribution css #container { display: flex; justify-content: space-between; /* can be
changed in the live sample */ } #container > div { width: 100px; height: 100px; background: linear-gradient(-45deg, #788cff, #b4c8ff); } html <div id="container"> <div></div> <div></div> <div></div> </div> <select id="justifycontent"> <option value="start">start</option> <option value="end">end</option> <option value="flex-start">flex-start</option> <option value="flex-end">flex...
...ne</option> <option value="last baseline">last baseline</option> <option value="space-between" selected>space-between</option> <option value="space-around">space-around</option> <option value="space-evenly">space-evenly</option> <option value="stretch">stretch</option> </select> javascript var justifycontent = document.getelementbyid("justifycontent"); justifycontent.addeventlistener("
change", function (evt) { document.getelementbyid("container").style.justifycontent = evt.target.value; }); result specifications specification status comment css box alignment module level 3the definition of 'justify-content' in that specification.
<length> - CSS: Cascading Style Sheets
note: these units, especially em and rem, are often used to create scalable layouts, which maintain the vertical rhythm of the page even when the user
changes the font size.
... .results { margin-top: 10px; } .input-container { position: absolute; display: flex; justify-content: flex-start; align-items: center; height: 50px; } label { margin: 0 10px 0 20px; } javascript const inputdiv = document.queryselector('.inner'); const inputelem = document.queryselector('input'); const resultsdiv = document.queryselector('.results'); inputelem.addeventlistener('
change', () => { inputdiv.style.width = inputelem.value; const result = document.createelement('div'); result.classname = 'result'; result.style.width = inputelem.value; result.innerhtml = `<code>width: ${inputelem.value}</code>`; resultsdiv.appendchild(result); inputelem.value = ''; inputelem.focus(); }) result specifications specification status comment ...
linear-gradient() - CSS: Cascading Style Sheets
op, blue, red); /* color stop: a gradient going from the bottom to top, starting blue, turning green at 40% of its length, and finishing red */ linear-gradient(0deg, blue, green 40%, red); /* color hint: a gradient going from the left to right, starting red, getting to the midpoint color 10% of the way across the length of the gradient, taking the rest of the 90% of the length to
change to blue */ linear-gradient(.25turn, red, 10%, blue); /* multi-position color stop: a gradient tilted 45 degrees, with a red bottom-left half and a blue top-right half, with a hard line where the gradient
changes from red to blue */ linear-gradient(45deg, red 0 50%, blue 50% 100%); values <side-or-corner> the position of the gradient line's starting point.
...the following
changes from red to yellow at the 30% mark, and then transitions from yellow to blue over 35% of the gradient linear-gradient(red 40%, yellow 30%, blue 65%); multi-position color stop are allowed.
mask-clip - CSS: Cascading Style Sheets
e <shape-box> = <box> | margin-boxwhere <box> = border-box | padding-box | content-box examples clipping a mask to the border box css #masked { width: 100px; height: 100px; background-color: #8cffa0; margin: 20px; border: 20px solid #8ca0ff; padding: 20px; mask-image: url(https://mdn.mozillademos.org/files/12668/mdn.svg); mask-size: 100% 100%; mask-clip: border-box; /* can be
changed in the live sample */ } html <div id="masked"> </div> <select id="clipbox"> <option value="content-box">content-box</option> <option value="padding-box">padding-box</option> <option value="border-box" selected>border-box</option> <option value="margin-box">margin-box</option> <option value="fill-box">fill-box</option> <option value="stroke-box">stroke-box</option> <option value...
...="view-box">view-box</option> <option value="no-clip">no-clip</option> </select> javascript var clipbox = document.getelementbyid("clipbox"); clipbox.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.maskclip = evt.target.value; }); result specifications specification status comment css masking module level 1the definition of 'mask-clip' in that specification.
mask-origin - CSS: Cascading Style Sheets
roke-box | view-boxwhere <shape-box> = <box> | margin-boxwhere <box> = border-box | padding-box | content-box examples setting mask origin to border-box css #masked { width: 100px; height: 100px; margin: 10px; border: 10px solid blue; background-color: #8cffa0; padding: 10px; mask-image: url(https://mdn.mozillademos.org/files/12676/star.svg); mask-origin: border-box; /* can be
changed in the live sample */ } html <div id="masked"> </div> <select id="origin"> <option value="content-box">content-box</option> <option value="padding-box">padding-box</option> <option value="border-box" selected>border-box</option> <option value="margin-box">margin-box</option> <option value="fill-box">fill-box</option> <option value="stroke-box">stroke-box</option> <option value=...
..."view-box">view-box</option> </select> javascript var origin = document.getelementbyid("origin"); origin.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.maskorigin = evt.target.value; }); result specifications specification status comment css masking module level 1the definition of 'mask-origin' in that specification.
mask-position - CSS: Cascading Style Sheets
entage> ] ]where <length-percentage> = <length> | <percentage> examples setting mask position css #wrapper { border: 1px solid black; width: 250px; height: 250px; } #masked { width: 250px; height: 250px; background: blue linear-gradient(red, blue); mask-image: url(https://mdn.mozillademos.org/files/12676/star.svg); mask-repeat: no-repeat; mask-position: top right; /* can be
changed in the live sample */ margin-bottom: 10px; } html <div id="wrapper"> <div id="masked"> </div> </div> <select id="maskposition"> <option value="top">top</option> <option value="center">center</option> <option value="bottom">bottom</option> <option value="top right" selected>top right</option> <option value="center center">center center</option> <option value="bottom left">bo...
...ttom left</option> <option value="10px 20px">10px 20px</option> <option value="60% 20%">60% 20%</option> </select> javascript var maskposition = document.getelementbyid("maskposition"); maskposition.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.maskposition = evt.target.value; }); result specifications specification status comment css masking module level 1the definition of 'mask-position' in that specification.
mask-repeat - CSS: Cascading Style Sheets
e per dimensionanimation typediscrete formal syntax <repeat-style>#where <repeat-style> = repeat-x | repeat-y | [ repeat | space | round | no-repeat ]{1,2} examples setting repeat for a single mask css #masked { width: 250px; height: 250px; background: blue linear-gradient(red, blue); mask-image: url(https://mdn.mozillademos.org/files/12676/star.svg); mask-repeat: repeat; /* can be
changed in the live sample */ margin-bottom: 10px; } html content <div id="masked"> </div> <select id="repetition"> <option value="repeat-x">repeat-x</option> <option value="repeat-y">repeat-y</option> <option value="repeat" selected>repeat</option> <option value="space">space</option> <option value="round">round</option> <option value="no-repeat">no-repeat</option> </select> javascr...
...ipt content var repetition = document.getelementbyid("repetition"); repetition.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.maskrepeat = evt.target.value; }); result multiple mask image support you can specify a different <repeat-style> for each mask image, separated by commas: .examplethree { mask-image: url('mask1.png'), url('mask2.png'); mask-repeat: repeat-x, repeat-y; } each image is matched with the corresponding repeat style, from first specified to last.
max-height - CSS: Cascading Style Sheets
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.uses a non-standard name.uses a non-standard name.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
max-width - CSS: Cascading Style Sheets
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.uses a non-standard name.uses a non-standard name.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
min-width - CSS: Cascading Style Sheets
expect behavior to
change in the future.experimental.
... expect behavior to
change in the future.see implementation notes.see implementation notes.uses a non-standard name.uses a non-standard name.requires a vendor prefix or different name for use.requires a vendor prefix or different name for use.
overflow - CSS: Cascading Style Sheets
browsers always display scrollbars whether or not any content is actually clipped, preventing scrollbars from appearing or disappearing as content
changes.
... working draft
changed syntax to allow one or two keywords instead of only one css level 2 (revision 1)the definition of 'overflow' in that specification.
place-content - CSS: Cascading Style Sheets
n> <option value="unsafe">unsafe</option> </select><code>;</code> var update = function () { document.getelementbyid("container").style.placecontent = document.getelementbyid("aligncontentalignment").value + " " + document.getelementbyid("justifycontentalignment").value; } var aligncontentalignment = document.getelementbyid("aligncontentalignment"); aligncontentalignment.addeventlistener("
change", update); var justifycontentalignment = document.getelementbyid("justifycontentalignment"); justifycontentalignment.addeventlistener("
change", update); var writingm = document.getelementbyid("writingmode"); writingm.addeventlistener("
change", function (evt) { document.getelementbyid("container").style.writingmode = evt.target.value; }); var direction = document.getelementbyid("direction");...
... direction.addeventlistener("
change", function (evt) { document.getelementbyid("container").style.direction = evt.target.value; }); css #container { display: flex; height:240px; width: 240px; flex-wrap: wrap; background-color: #8c8c8c; writing-mode: horizontal-tb; /* can be
changed in the live sample */ direction: ltr; /* can be
changed in the live sample */ place-content: flex-end center; /* can be
changed in the live sample */ } div > div { border: 2px solid #8c8c8c; width: 50px; background-color: #a0c8ff; } .small { font-size: 12px; height: 40px; } .large { font-size: 14px; height: 50px; } result specifications specification status comment css box alignment module level 3the definition of 'place content' in that specifi...
<transform-function> - CSS: Cascading Style Sheets
thus, each coordinate
changes based on the values in the matrix: ac bd xy = ax+cy bx+dy it is even possible to apply several transformations in a row: a1 c1 b1 d1 a2 c2 b2 d2 = a1 a2 + c1 b2 a1 c2 + c1 d2 b1 a2 + d1 b2 b1 c2 + d1 d2 with this notation, it is possible to describe, and therefore compose, most common transformations: rotations, scaling, or skewing.
...) translatez(50px); } .top { background: rgba(210,210,0,.7); transform: rotatex(90deg) translatez(50px); } .bottom { background: rgba(210,0,210,.7); transform: rotatex(-90deg) translatez(50px); } .select-form { margin-top: 50px; } javascript const selectelem = document.queryselector('select'); const example = document.queryselector('#example-element'); selectelem.addeventlistener('
change', () => { if(selectelem.value === 'choose a function') { return; } else { example.style.transform = `rotate3d(1, 1, 1, 30deg) ${selectelem.value}`; settimeout(function() { example.style.transform = 'rotate3d(1, 1, 1, 30deg)'; }, 2000) } }) result specifications specification status comment css transforms level 2the definition of '<trans...
Used value - CSS: Cascading Style Sheets
the following are the css 2.1 properties that do depend on layout, so they have a different computed value and used value: (taken from css 2.1
changes: specified, computed, and actual values): background-position bottom, left, right, top height, width margin-bottom, margin-left, margin-right, margin-top min-height, min-width padding-bottom, padding-left, padding-right, padding-top text-indent specification specification status comment css level 2 (revision 2)the definition of 'used value' in that specifi...
... working draft no
change.
Audio and video manipulation - Developer guides
note that the playbackrate property works with both <audio> and <video>, but in both cases, it
changes the playback speed but not the pitch.
... allpass: allows all frequencies through, but
changes the phase relationship between the various frequencies.
HTML5 - Developer guides
connectivity web sockets allows creating a permanent connection between the page and the server and to ex
change non-html data through that means.
... detecting device orientation get the information when the device on which the browser runs
changes orientation.
Localizations and character encodings - Developer guides
for locales where the fallback encoding is currently iso-8859-1, it should be
changed to windows-1252.
...(be sure to use a browser installation that has its settings left to the defaults when investigating!) for locales where firefox has more market share than internet explorer, it's probably best not to
change the fallback encoding even if it doesn't follow the guidance given above.
Mobile Web Development - Developer guides
working with small screens responsive web design is a term for a set of techniques that enables your web site to adapt its layout as its viewing environment — most obviously, the size and orientation of the screen —
changes.
... it includes techniques such as: fluid css layouts, to make the page adapt smoothly as the browser window size
changes the use of media queries to conditionally include css rules appropriate for the device screen width and height the viewport meta tag instructs the browser to display your site at the appropriate scale for the user's device.
User input and controls - Developer guides
screen orientation when screen orientation matters for your application, you can read the screen orientation state, be informed when this state
changes, and able to lock the screen orientation to a specific state (usually portrait or landscape) through the screen orientation api.
...when screen.orientation
changes, the screen.orientation
change event is fired on the screen object.
HTML attribute reference - HTML: Hypertext Markup Language
cite <blockquote>, <del>, <ins>, <q> contains a uri which points to the source of the quote or
change.
... translate global attribute specify whether an element’s attribute values and the values of its text node children are to be translated when the page is localized, or whether to leave them un
changed.
<button>: The Button element - HTML: Hypertext Markup Language
by default, html buttons are presented in a style resembling the platform the user agent runs on, but you can
change buttons’ appearance with css.
... if overridden, it is important to ensure that the state
change when focus is moved to the button is high enough that people experiencing low vision conditions will be able to perceive it.
<input type="radio"> - HTML: Hypertext Markup Language
events
change and input supported common attributes checked and value idl attributes checked and value methods select() value the value attribute is a domstring containing the radio button's value.
... notice that when clicking on a radio button, there's a nice, smooth fade out/in effect as the two buttons
change state.
<input type="week"> - HTML: Hypertext Markup Language
value a domstring representing a week and year, or empty events
change and input supported common attributes autocomplete, list, readonly, and step idl attributes value, valueasdate, valueasnumber, and list.
...its value can, however, still be
changed by javascript code directly setting the htmlinputelement.value property.
<ins> - HTML: Hypertext Markup Language
cite this attribute defines the uri of a resource that explains the
change, such as a link to meeting minutes or a ticket in a troubleshooting system.
... datetime this attribute indicates the time and date of the
change and must be a valid date with an optional time string.
<menu> - HTML: Hypertext Markup Language
type 'list' is likely to
change to 'toolbar' according to html5.1.
... living standard no
change from latest snapshot, unknown html 5.1the definition of '<menu>' in that specification.
<ol>: The Ordered List element - HTML: Hypertext Markup Language
for example: steps in a recipe turn-by-turn directions the list of ingredients in decreasing proportion on nutrition information labels to determine which list to use, try changing the order of the list items; if the meaning
changes, use the <ol> element — otherwise you can use <ul>.
... living standard no
change since last w3c snapshot, html5.
<time> - HTML: Hypertext Markup Language
living standard no
change from html 5.1 html 5.1the definition of '<time>' in that specification.
... recommendation no
change from html5 html5the definition of '<time>' in that specification.
HTML elements reference - HTML: Hypertext Markup Language
usually, this is rendered visually by indentation (see notes for how to
change it).
... <hr> the html <hr> element represents a thematic break between paragraph-level elements: for example, a
change of scene in a story, or a shift of topic within a section.
draggable - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.1 html 5.2the definition of 'draggable' in that specification.
... recommendation no
change html 5.1the definition of 'draggable' in that specification.
id - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'id' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'id' in that specification.
lang - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'lang' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'lang' in that specification.
style - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'style' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'style' in that specification.
title - HTML: Hypertext Markup Language
living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'title' in that specification.
... recommendation snapshot of html living standard, no
change from html5 html5the definition of 'title' in that specification.
translate - HTML: Hypertext Markup Language
the translate global attribute is an enumerated attribute that is used to specify whether an element's translateable attribute values and its text node children should be translated when the page is localized, or whether to leave them un
changed.
... living standard no
change from latest snapshot, html 5.1 html 5.1the definition of 'translate' in that specification.
HTTP authentication - HTTP
in the case of a "basic" authentication like shown in the figure, the ex
change must happen over an https (tls) connection to be secure.
... firefox once used iso-8859-1, but
changed to utf-8 for parity with other browsers and to avoid potential problems as described in bug 1419658.
Resource URLs - HTTP
there may also be large incompatibilities between implementations and the behavior may
change in the future.
... solution in order to fix this problem, mozilla
changed the behavior of loading resource: uris in bug 863246, which landed in firefox 57 (quantum).
Connection management in HTTP/1.x - HTTP
several messages must be ex
changed between the client and the server.
...the http headers involved in defining the connection model, like connection and keep-alive, are hop-by-hop headers with their values able to be
changed by intermediary nodes.
Alt-Svc - HTTP
persist=1optional usually cached alternative service entries are cleared on network configuration
changes.
... use of the persist=1 parameter ensures that the entry is not deleted through such
changes.
Feature-Policy: unsized-media - HTTP
the http feature-policy header unsized-media directive controls whether the current document is allowed to
change the size of media elements after the initial layout is complete.
... this restriction solves "layout instability" problem caused by providing default dimensions for images whose size is not specified in advance so that image doesn't
change size after loading.
Feature-Policy - HTTP
this header is still in an experimental state, and is subject to
change at any time.
...the header has now been renamed to permissions-policy in the spec, and this article will eventually be updated to reflect that
change.
Tk - HTTP
the server is acting as a gateway to an ex
change involving multiple parties.
...the request resulted in a potential
change to the tracking status applicable to this user, user agent, or device.
Upgrade - HTTP
a server may also send the header as part of a 426 upgrade required response, to indicate that the server won't perform the request using the current protocol, but might do so if the protocol is
changed.
... the client can then request a protocol
change using the process above.
Firefox user agent string reference - HTTP
for a breakdown of
changes to the string in gecko 2.0, see final user agent string for firefox 4 (blog post).
...your distribution of linux might include an extension that
changes your user-agent.
Link prefetching FAQ - HTTP
yes, we send the following header along with each prefetch request: x-moz: prefetch of course, this request header is not at all standardized, and it may
change in future mozilla releases.
...add this line to your prefs.js file located in your profile directory (or make the appropriate
change via about:config): user_pref("network.prefetch-next", false); however, the theory is that if link prefetching needs to be disabled then there must be something wrong with the implementation.
HTTP Messages - HTTP
http messages are how data is ex
changed between a server and a client.
...no
changes are needed in the apis used by web developers to utilize http frames; when available in both the browser and the server, http/2 is switched on and used.
A typical HTTP session - HTTP
the post method sends data to a server so it may
change its state.
...this response code means that the uri of requested resource has been
changed.
302 Found - HTTP
it is therefore recommended to set the 302 code only as a response for get or head methods and to use 307 temporary redirect instead, as the method
change is explicitly prohibited in that case.
... in the cases where you want the method used to be
changed to get, use 303 see other instead.
307 Temporary Redirect - HTTP
in the cases where you want the method used to be
changed to get, use 303 see other instead.
... the only difference between 307 and 302 is that 307 guarantees that the method and the body will not be
changed when the redirected request is made.
Equality comparisons and sameness - JavaScript
object.defineproperty(number, 'negative_zero', { value: -0, writable: false, configurable: false, enumerable: false }); function attemptmutation(v) { object.defineproperty(number, 'negative_zero', { value: v }); } object.defineproperty will throw an exception when attempting to
change an immutable property, but it does nothing if no actual
change is requested.
... if v is -0, no
change has been requested, and no error will be thrown.
Functions - JavaScript
the statement return specifies the value returned by the function: return number * number; primitive parameters (such as a number) are passed to functions by value; the value is passed to the function, but if the function
changes the value of the parameter, this
change is not reflected globally or in the calling function.
...a non-primitive value, such as array or a user-defined object) as a parameter and the function
changes the object's properties, that
change is visible outside the function, as shown in the following example: function myfunc(theobject) { theobject.make = 'toyota'; } var mycar = {make: 'honda', model: 'accord', year: 1998}; var x, y; x = mycar.make; // x gets the value "honda" myfunc(mycar); y = mycar.make; // y gets the value "toyota" // (the make property was
changed by the function) function expressions while the function declaration above is syntactically a statement, functions can also be created by a function expression.
SyntaxError: missing = in const declaration - JavaScript
it cannot
change through re-assignment, and it can't be redeclared.
...an initializer for a constant is required; that is, you must specify its value in the same statement in which it's declared (which makes sense, given that it can't be
changed later).
setter - JavaScript
description in javascript, a setter can be used to execute a function whenever a specified property is attempted to be
changed.
... note the following when working with the set syntax: it can have an identifier which is either a number or a string; it must have exactly one parameter (see incompatible es5
change: literal getter and setter functions must now have exactly zero or one arguments for more information); it must not appear in an object literal with another set or with a data entry for the same property.
Array.prototype.concat() - JavaScript
this method does not
change the existing arrays, but instead returns a new array.
...that is, if a referenced object is modified, the
changes are visible to both the new and original arrays.
Array.prototype.fill() - JavaScript
the fill() method
changes all elements in an array to a static value, from a start index (default 0) to an end index (default array.length).
... fill is a mutator method: it will
change the array itself and return it, not a copy of it.
Array.prototype.length - JavaScript
property attributes of array.prototype.length writable yes enumerable no configurable no writable: if this attribute set to false, the value of the property cannot be
changed.
... configurable: if this attribute set to false, any attempts to delete the property or
change its attributes (writable, configurable, or enumerable) will fail.
Array.prototype.splice() - JavaScript
the splice() method
changes the contents of an array by removing or replacing existing elements and/or adding new elements in place.
... description if the specified number of elements to insert differs from the number of elements being removed, the array's length will be
changed.
Array - JavaScript
since an array's length can
change at any time, and data can be stored at non-contiguous locations in the array, javascript arrays are not guaranteed to be dense; this depends on how the programmer chooses to use them.
... console.log(vegetables) // ["cabbage", "carrot"] (the original array is
changed) console.log(removeditems) // ["turnip", "radish"] copy an array let shallowcopy = fruits.slice() // this is how to make a copy // ["strawberry", "mango"] accessing array elements javascript arrays are zero-indexed.
JSON.parse() - JavaScript
value * 2 // return value * 2 for numbers : value // return everything else un
changed ); // { 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 "".
... return value; // return the un
changed property value.
Object.assign() - JavaScript
in case of an error, for example if a property is non-writable, a typeerror is raised, and the target object is
changed if any properties are added before the error is raised.
... , b: { c: 0}}; let obj3 = json.parse(json.stringify(obj1)); obj1.a = 4; obj1.b.c = 4; console.log(json.stringify(obj3)); // { "a": 0, "b": { "c": 0}} } test(); merging objects const o1 = { a: 1 }; const o2 = { b: 2 }; const o3 = { c: 3 }; const obj = object.assign(o1, o2, o3); console.log(obj); // { a: 1, b: 2, c: 3 } console.log(o1); // { a: 1, b: 2, c: 3 }, target object itself is
changed.
Object.defineProperties() - JavaScript
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.
... writable true if and only if the value associated with the property may be
changed with an assignment operator.
Object.getOwnPropertyDescriptor() - JavaScript
writable true if and only if the value associated with the property may be
changed (data descriptors only).
... 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.
Object.getOwnPropertyDescriptors() - JavaScript
writable true if and only if the value associated with the property may be
changed (data descriptors only).
... 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.
Object - JavaScript
changes to the object prototype object are seen by all objects through prototype chaining, unless the properties and methods subject to those
changes are overridden further along the prototype chain.
...other code cannot delete or
change its properties.
Reflect.setPrototypeOf() - JavaScript
description the reflect.setprototypeof method
changes the prototype (i.e.
... examples using reflect.setprototypeof() reflect.setprototypeof({}, object.prototype) // true // it can
change an object's [[prototype]] to null.
RegExp.prototype.multiline - JavaScript
for example, if "m" is used, "^" and "$"
change from matching at only the start or end of the entire string to the start or end of any line within the string.
... you cannot
change this property directly.
Operator precedence - JavaScript
console.log(3 + 10 * 2); // logs 23 console.log(3 + (10 * 2)); // logs 23 because parentheses here are superfluous console.log((3 + 10) * 2); // logs 26 because the parentheses
change the order left-associativity (left-to-right) means that it is processed as (a op1 b) op2 c, while right-associativity (right-to-left) means it is interpreted as a op1 (b op2 c).
...thus, doing (2 ** 3) ** 2
changes the order and results in the 64 seen in the table above.
Right shift (>>) - JavaScript
since the new leftmost bit has the same value as the previous leftmost bit, the sign bit (the leftmost bit) does not
change.
...since the new leftmost bit has the same value as the previous leftmost bit, the sign bit (the leftmost bit) does not
change.
instanceof - JavaScript
// true c.prototype = {} let o2 = new c() o2 instanceof c // true // false, because c.prototype is nowhere in // o's prototype chain anymore o instanceof c d.prototype = new c() // add c to [[prototype]] linkage of d let o3 = new d() o3 instanceof d // true o3 instanceof c // true since c.prototype is now in o3's prototype chain note that the value of an instanceof test can
change based on
changes to the prototype property of constructors.
... it can also be
changed by changing an object's prototype using object.setprototypeof.
void operator - JavaScript
to be safe, when the return value of a function is not intended to be used, it can be passed to the void operator to ensure that (for example) changing apis do not cause arrow functions' behaviors to
change.
... button.onclick = () => void dosomething(); this ensures the return value of dosomething changing from undefined to true will not
change the behavior of this code.
const - JavaScript
the value of a constant can't be
changed through reassignment, and it can't be redeclared.
...(this makes sense, given that it can't be
changed later.) the const declaration creates a read-only reference to a value.
var - JavaScript
this means its property descriptor cannot be
changed and it cannot be deleted using delete.
... foo = 'f' // in non-strict mode, assumes you want to create a property named `foo` on the global object globalthis.hasownproperty('foo') // true in ecmascript 5, this behavior was
changed for strict mode.
MathML attribute reference - MathML
scriptminsize <mstyle> specifies a minimum font size allowed due to
changes in scriptlevel.
... scriptsizemultiplier <mstyle> specifies the multiplier to be used to adjust font size due to
changes in scriptlevel.
Autoplay guide for media and Web Audio APIs - Web media technologies
e element to true, and when autoplay is true, the media will automatically begin to play as soon as possible after the following have occurred: the page is allowed to use autoplay functionality the element has been created during page load enough media has been received to begin playback and continue to play through to the end of the media without interruption, assuming there are no dramatic
changes in network performance or bandwidth.
...if this has been
changed to false, media with an audio track will not be permitted to play even if muted.
Animation performance and frame rate - Web Performance
the rendering waterfall the process a browser uses to paint
changes to a page when an element is animating css properties can be described as a waterfall consisting of the following steps: recalculate style: when a property for an element
changes, the browser must recalculate computed styles.
... the process a browser uses to paint updated
changes to a canvas element is different.
Critical rendering path - Web Performance
the device-width
changes when a user rotates their phone between landscape and portrait mode.
...while a 20ms delay on load or orientation
change may be fine, it will lead to jank on animation or scroll.
Performance Monitoring: RUM vs synthetic monitoring - Web Performance
changes from baseline performance as part of continuous integration should fail a push.
...it is fairly easy, inexpensive, and great for spot-checking performance during development as an effective way to measure the effect of code
changes, but it doesn’t reflect what real users are experiencing and provides only a narrow view of performance.
SVG Event Attributes - SVG: Scalable Vector Graphics
attributes animation event attributes onbegin, onend, onrepeat document event attributes onabort, onerror, onresize, onscroll, onunload document element event attributes oncopy, oncut, onpaste global event attributes oncancel, oncanplay, oncanplaythrough, on
change, onclick, onclose, oncue
change, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, onduration
change, onemptied, onended, onerror, onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, ...
...onpause, onplay, onplaying, onprogress, onrate
change, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolume
change, onwaiting graphical event attributes onactivate, onfocusin, onfocusout ...
attributeName - SVG: Scalable Vector Graphics
the attributename attribute indicates the name of the css property or attribute of the target element that is going to be
changed during an animation.
... editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'attributename' in that specification.
calcMode - SVG: Scalable Vector Graphics
paced defines interpolation to produce an even pace of
change across the animation.
... editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'calcmode' in that specification.
font-style - SVG: Scalable Vector Graphics
working draft no
change css fonts module level 3the definition of 'font-style' in that specification.
... candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'font-style' in that specification.
gradientTransform - SVG: Scalable Vector Graphics
candidate recommendation no
change scalable vector graphics (svg) 2the definition of 'gradienttransformation for <radialgradient>' in that specification.
... candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'gradienttransformation for <lineargradient>' in that specification.
gradientUnits - SVG: Scalable Vector Graphics
candidate recommendation no
change scalable vector graphics (svg) 2the definition of 'gradientunits for <lineargradient>' in that specification.
... candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'gradientunits for <radialgradient>' in that specification.
pointer-events - SVG: Scalable Vector Graphics
to
change the color of the rect underneath you have to click outside the circle --> <rect x="0" y="0" height="10" width="10" fill="black" /> <circle cx="5" cy="5" r="4" fill="white" pointer-events="visiblepoint" /> <!-- the circle below will never catch a mouse event.
... the rect underneath will
change color whether you are clicking on the circle or the rect itself --> <rect x="10" y="0" height="10" width="10" fill="black" /> <circle cx="15" cy="5" r="4" fill="white" pointer-events="none" /> </svg> window.addeventlistener('mouseup', (e) => { // let's pick a random color between #000000 and #ffffff const color = math.round(math.random() * 0xffffff) // let's format the color to fit css requirements const fill = '#' + color.tostring(16).padstart(6,'0') // let's apply our color in the // element we actually clicked on e.target.style.fill = fill }) as a presentation attribute, it can be applied to any element but it is mostly relevant only on the following twenty-three elements: <a>, <circle>, <clippath>, <defs>, <ellipse>, <...
rendering-intent - SVG: Scalable Vector Graphics
sometimes pixel values that were originally within the target device gamut are
changed in order to avoid hue shifts and discontinuities and to preserve as much as possible the overall appearance of the scene.
... saturation this value leaves colors that fall inside the gamut un
changed.
rotate - SVG: Scalable Vector Graphics
usage notes value auto | auto-reverse | <number> default value 0 animatable no the auto and auto-reverse values allow the animated element's rotation to
change dynamically as it travels along the path.
... setting rotate's value to a number specifies a constant rotation, in degrees, that does not
change with the animation.
specularExponent - SVG: Scalable Vector Graphics
working draft no
change filter effects module level 1the definition of 'specularexponent for <fespotlight>' in that specification.
... working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'specularexponent for <fespecularlighting>' in that specification.
spreadMethod - SVG: Scalable Vector Graphics
candidate recommendation no
change scalable vector graphics (svg) 2the definition of 'spreadmethod for <lineargradient>' in that specification.
... candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'spreadmethod for <radialgradient>' in that specification.
surfaceScale - SVG: Scalable Vector Graphics
working draft no
change filter effects module level 1the definition of 'surfacescale for <fespecularlighting>' in that specification.
... working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'surfacescale for <fediffuselighting>' in that specification.
viewBox - SVG: Scalable Vector Graphics
html,body,svg { height:100% } svg:not(:root) { display: inline-block; } <svg viewbox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"> <!-- with relative unit such as percentage, the visual size of the square looks un
changed regardless of the viewbox --> <rect x="0" y="0" width="100%" height="100%"/> <!-- with a large viewbox the circle looks small as it is using user units for the r attribute: 4 resolved against 100 as set in the viewbox --> <circle cx="50%" cy="50%" r="4" fill="white"/> </svg> <svg viewbox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"> <!-- with relative unit such as percent...
...age, the visual size of the square looks un
changed regardless of the viewbox` --> <rect x="0" y="0" width="100%" height="100%"/> <!-- with a small viewbox the circle looks large as it is using user units for the r attribute: 4 resolved against 10 as set in the viewbox --> <circle cx="50%" cy="50%" r="4" fill="white"/> </svg> <svg viewbox="-5 -5 10 10" xmlns="http://www.w3.org/2000/svg"> <!-- the point of coordinate 0,0 is now in the center of the viewport, and 100% is still resolve to a width or height of 10 user units so the rectangle looks shifted to the bottom/right corner of the viewport --> <rect x="0" y="0" width="100%" height="100%"/> <!-- with the point of coordinate 0,0 in the center of the viewport the value 50% is resolve to 5 which means the cen...
z - SVG: Scalable Vector Graphics
working draft no
change filter effects module level 1the definition of 'z for <fespotlight>' in that specification.
... working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'z for <fepointlight>' in that specification.
SVG Attribute reference - SVG: Scalable Vector Graphics
peatdur, 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, on
change, onclick, onclose, oncue
change, ondblclick, ondrag, ondragend, ondragenter, ondragexit, ondragleave, ondragover, ondragstart, ondrop, onduration
change, onemptied, onended, onerror, onfocus, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, ...
...onpause, onplay, onplaying, onprogress, onrate
change, onreset, onresize, onscroll, onseeked, onseeking, onselect, onshow, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolume
change, onwaiting graphical event attributes onactivate, onfocusin, onfocusout ...
<feColorMatrix> - SVG: Scalable Vector Graphics
the <fecolormatrix> svg filter element
changes colors based on a transformation matrix.
... working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of '<fecolormatrix>' in that specification.
Positions - SVG: Scalable Vector Graphics
but svg wouldn't have the "scalable" in its name, if there weren't several possibilities to
change this behaviour.
...to explicitly
change this behaviour, there are several possibilities in svg.
mimeTypes.rdf corruption - SVG: Scalable Vector Graphics
symptoms previously you were able to open and display svg content with mozilla, but for no apparent reason its behaviour
changes and now it always pops up the "open or save file" dialog when you try to open local svg files, and displays the "additional plugins are required to display all the media on this page" bar when you try to view html with embedded svg.
...
change every occurance of "image/svg-xml" (or whatever the invalid media type is) to "image/svg+xml".
Web Components
attribute
changedcallback: invoked when one of the custom element's attributes is added, removed, or
changed.
... the slot
change event fired on an htmlslotelement instance (<slot> element) when the node(s) contained in that slot
change.
Introduction to using XPath in JavaScript - XPath
snapshots do not
change with document mutations, so unlike the iterators, the snapshot does not become invalid, but it may not correspond to the current document, for example, the nodes may have been moved, it might contain nodes that no longer exist, or new nodes could have been added.
...note that you still have to use some namespace prefix in your xpath expression, so that the resolver function will be able to
change it to your required namespace.
Understanding WebAssembly text format - WebAssembly
you could swap out the i32 for any of the other available types, and
change the value of the const to whatever you like (here we’ve set the value to 42).
...when growth occurs, since arraybuffers can’t
change size, the current arraybuffer is detached and a new arraybuffer is created to point to the newer, bigger memory.
Using the WebAssembly JavaScript API - WebAssembly
this allows the indirectly-callable set of functions to
change over time, which is necessary for dynamic linking techniques.
... the value of the global is then
changed, first to 42 using the global.value property, and then to 43 using the incglobal() function exported out of the global.wasm module (this adds 1 to whatever value is given to it and then returns the new value).
Module structure of the SDK - Archive of obsolete content
so a if you import a module using require, you can't
change the properties of the object returned: self = require("sdk/self"); // attempting to define a new property // will fail, or throw an exception in strict mode self.foo = 1; // attempting to modify an existing property // will fail, or throw an exception in strict mode self.data = "foo"; using modules from outside the add-on sdk you can use commonjs modules outside the add-on sdk, in any environ...
context-menu - Archive of obsolete content
cm = require("sdk/context-menu"); cm.item({ label: "edit image", context: cm.selectorcontext("img"), contentscript: 'self.on("click", function (node, data) {' + ' self.postmessage(node.src);' + '});', onmessage: function (imgsrc) { openimageeditor(imgsrc); } }); updating a menu item's label each menu item must be created with a label, but you can
change its label later using a couple of methods.
l10n - Archive of obsolete content
this enables you to write functional, localizable code without localizing any strings - just make the identifiers the default language: var _ = require("sdk/l10n").get; console.log(_("hello!")); however, this will make it more difficult to maintain your code if you have many localizations, because any
changes to the identifier values break all your .properties files.
passwords - Archive of obsolete content
for example, to remove all of joe's stored credentials: require("sdk/passwords").search({ username: "joe", oncomplete: function oncomplete(credentials) { credentials.foreach(require("sdk/passwords").remove); }) }); to
change an existing credential just call store after remove succeeds: require("sdk/passwords").remove({ realm: "user registration", username: "joe", password: "secret123" oncomplete: function oncomplete() { require("sdk/passwords").store({ realm: "user registration", username: "joe", password: "{new password}" }) } }); parameters options : object required options: ...
preferences/service - Archive of obsolete content
es/service").set("general.useragent.locale", "chrome://global/locale/intl.properties"); example: setting global preferences var { get, set } = require("sdk/preferences/service"); var { when: unload } = require("sdk/system/unload"); var oldvalue = get("browser.urlbar.autofill"); set("browser.urlbar.autofill", true); // by amo policy global preferences must be
changed back to their original value unload(function() { set("browser.urlbar.autofill", oldvalue); }); ...
Creating annotations - Archive of obsolete content
at the top of the file import the page-mod module and declare an array for the workers: var pagemod = require('sdk/page-mod'); var selectors = []; add detachworker(): function detachworker(worker, workerarray) { var index = workerarray.indexof(worker); if(index != -1) { workerarray.splice(index, 1); } } edit toggleactivation() to notify the workers of a
change in activation state: function activateselectors() { selectors.foreach( function (selector) { selector.postmessage(annotatorison); }); } function toggleactivation() { annotatorison = !annotatorison; activateselectors(); return annotatorison; } we'll be using this url in all our screenshots.
Display a Popup - Archive of obsolete content
you can run content scripts in the panel: although the script running in the panel can't directly access your main add-on code, you can ex
change messages between the panel script and the add-on code.
Downloading Files - Archive of obsolete content
var privacy = privatebrowsingutils.privacycontextfromwindow(aurlsourcewindow); var progresselement = document.getelementbyid("progress_element"); persist.progresslistener = { onprogress
change: function(awebprogress, arequest, acurselfprogress, amaxselfprogress, acurtotalprogress, amaxtotalprogress) { var percentcomplete = math.round((acurtotalprogress / amaxtotalprogress) * 100); progresselement.textcontent = percentcomplete +"%"; }, onstate
change: function(awebprogress, arequest, astateflags, astatus) { // do something } } persist.saveuri(obj_uri, null, null, null, ...
Finding window handles - Archive of obsolete content
comparing to the method above, by using this method, you don't have to compile your component with nsiwidget.h and other bunchs of h files that should not be exposed to outside, and could
change every time firefox updates, all you need is nsibasewindow.idl(it's not in gecko_sdk, get this from the latest firefox source, or http://mxr.mozilla.org/mozilla/sourc...basewindow.idl), and use xpidl to compile it to .h file, although that's stll a unfrozen interface, but it should be a lot better.
Scrollbar - Archive of obsolete content
so to make this work with osx, make an extra override: override chrome://global/skin/nativescrollbars.css chrome://app-global/skin/scrollbars.css
change some color values inside the app/chrome/skin/global/scrollbars.css to test that the css is used.
Tree - Archive of obsolete content
expanding/collapsing all tree nodes to expand all tree nodes: var treeview = tree.treeboxobject.view; for (var i = 0; i < treeview.rowcount; i++) { if (treeview.iscontainer(i) && !treeview.iscontaineropen(i)) treeview.toggleopenstate(i); } to collapse all tree nodes just
change the condition: var treeview = tree.treeboxobject.view; for (var i = 0; i < treeview.rowcount; i++) { if (treeview.iscontainer(i) && treeview.iscontaineropen(i)) treeview.toggleopenstate(i); } getting the text from the selected row assuming the given <tree>: <tree id="my-tree" seltype="single" onselect="ontreeselected()"> use the following javascript: function ontreeselected(){ var tree = document.getelementbyid("my-tree"); var cellindex = 0; var celltext = tree.v...
Enabling - Archive of obsolete content
jetpack.future.import("clipboard"); the goal here is to be able to remove the jetpack.future.import() call when the feature has been formally accepted into the core without additionally changing the script (barring any other
changes made during integration).
Message Summary Database - Archive of obsolete content
if we were to replace mork, we could do it at the mdb level (unlikely, because implementing the mdb interface on top of a different db would be very hard), the nsimsgdatabase level (probably the easiest), or we could invent a whole new database interface and
change all the code that uses the nsimsgdatabase interface.
Mozilla Application Framework - Archive of obsolete content
lxr a web interface to the mozilla codebase that shows you every file in the repository as well as a line-by-line breakdown of who
changed which line when in each file bonsai a web interface to the checkin log that you can query for checkins between certain dates, of certain files, or by certain developers.
Build - Archive of obsolete content
change directory into mozilla/ and checkout the latest prism code : cd mozilla/ svn co http://svn.mozilla.org/projects/webrunner/trunk prism create a file called .mozconfig make sure it is in the mozilla/ directory.
Extensions - Archive of obsolete content
the code snippet will look something like this: <em:targetapplication> <!– prism –> <description> <em:id>prism@developer.mozilla.org</em:id> <em:minversion>0.8</em:minversion> <em:maxversion>1.0.0.*</em:maxversion> </description> </em:targetapplication> in addition to the install manifest
changes, you may want to expose your extension into the prism ui.
Installer - Archive of obsolete content
one interesting side effect is that after this
change, you can select a link to a .webapp file in a web page and you get it run by prism - in ie this runs anywhere, but this won't work in firefox unless the webapp is being issued with an appropriate mime type on the server: application/x-webapp works (see an example ).
Remotely debugging Firefox for Metro - Archive of obsolete content
set up firefox for metro go to about:config in firefox for metro, and set the following required preference: devtools.debugger.remote-enabled = true you may also want to set these optional preferences: devtools.debugger.force-local = false (if you want to connect from a different machine over the network) devtools.debugger.remote-host (to
change the tcp hostname where firefox will listen for connections) devtools.debugger.remote-port (to
change the tcp port number where firefox will listen for connections) devtools.debugger.prompt-connection = false (allow connections without displaying a confirmation prompt.
Static Analysis for Windows Code under Linux - Archive of obsolete content
ac_add_options --enable-debug ac_add_options --disable-optimize ac_add_options --disable-tests ac_add_options --disable-embedding-tests ac_add_options --disable-installer ac_add_options --disable-accessibility ac_add_options --disable-vista-sdk-requirements ac_add_options --disable-updater #
change this to where your libidl-config file locate.
Actionscript Performance Tests - Archive of obsolete content
#
change the iterations $ ./runtests.py --iterations=10 sunspider/*.as test avm 95% conf metric sunspider/access-binary-trees.as 565 1.0% time [565, 586, 573, 577, 567, 567, 579, 576, 565, 585] sunspider/access-fannkuch.as 361 0.3% time [365, 366, 362, 363, 366, 361, 363, 363, 364, ...
increment - Archive of obsolete content
« xul reference home increment type: integer the amount by which the curpos (for scroll bars) or value (for number boxes and scale) attribute
changes when the arrows are clicked(or scales are dragged).
label - Archive of obsolete content
see also treeitem.label, <label> element examples in javascript <label value="whaw" id="the-big-label" command="the-big-button"/> <button id="the-big-button" label="click me" oncommand="alert(document.getelementbyid('the-big-label').value)"/> <label id="mylabel" value="my label"/> <button label="click me" oncommand="document.getelementbyid('mylabel').setattribute('value','value
changed');" /> <checkbox label="my checkbox" id="mycheckbox"/> <button label="another click" oncommand="document.getelementbyid('mycheckbox').setattribute('label','still not checked');"/> <button label="show label of checkbox" oncommand="alert( document.getelementbyid('mycheckbox').getattribute('label') )"/> ...
newlines - Archive of obsolete content
possible values: pasteintact paste newlines un
changed pastetofirst paste text up to the first newline, 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 ...
pageincrement - Archive of obsolete content
« xul reference home 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.
treecell - Archive of obsolete content
attributes editable, label, mode, properties, ref, src, value attributes editable type: boolean allows the contents of individual cells in the column to be
changed, especially useful when <treecol type="checkbox">.
Components - Archive of obsolete content
for new components or interface
changes of existing ones to be noticed at all, you need to
change the buildid in application.ini to trigger a re-registration of the components.
Using LDAP XPCOM with XULRunner - Archive of obsolete content
} library->setnativeleafname(ns_literal_cstring(krealcomponent)); prlibrary *lib; rv = library->load(&lib); if (ns_failed(rv)) return rv; nsgetmoduleproc getmoduleproc = (nsgetmoduleproc) pr_findfunctionsymbol(lib, ns_get_module_symbol); if (!getmoduleproc) return ns_error_failure; return getmoduleproc(acompmgr, alocation, aresult); } then
change your .mozconfig to add this line: ac_add_options --enable-extensions=ldapstub rebuild xulrunner.
Using SOAP in XULRunner 1.9 - Archive of obsolete content
questheader("method", "post"); < req.setrequestheader("content-length", soapclient.contentlength); < req.setrequestheader("soapserver", soapclient.soapserver); < req.setrequestheader("soapaction", soapreq.action); < } < }); --- > var xhr = new xmlhttprequest(); > xhr.mozbackgroundrequest = true; > xhr.open('post', soapclient.proxy, true); > xhr.onreadystate
change = function() { > if (4 != xhr.readystate) { return; } > getresponse(xhr); > }; > var headers = { > 'method': 'post', > 'content-type': soapclient.contenttype + '; charset="' + > soapclient.charset + '"', > 'content-length': soapclient.contentlength, > 'soapserver': soapclient.soapserver, > 'soapaction': soapreq.action > }; > for (var h in headers) { xh...
nsIContentPolicy - Archive of obsolete content
63 introduced gecko 1.0 inherits from: nsicontentpolicybase last
changed in gecko 42 (firefox 42 / thunderbird 42 / seamonkey 2.39) you can observe content that is being loaded into your browser by implementing nsicontentpolicy.
2006-11-22 - Archive of obsolete content
summary: mozilla.dev.accessibility - nov 17-nov 22, 2006 announcements mozilla osk project grant aaron leventhal (on behalf of michael curran) mentiond that there is now an nvda email list you can join if you wish to keep up to date with the latest
changes, or if you wish to discuss new features or talk with other nvda users.
2006-10-20 - Archive of obsolete content
jesper kristensen pointed the requester here
change download action for .rdp files on windows and os x a question regarding enabling firefox to associate .rdp files with microsoft remote desktop client so that the correct application opens the files automatically.
2006-10-20 - Archive of obsolete content
boris zbarsky's said: the reason why gtk1 builds are still being performed is because: when requests are made to
change build boxes to newer versions the people responsible for making the
change reply with "that would require an os upgrade".
2006-09-22 - Archive of obsolete content
summary: mozilla.dev.i18n - feb 2nd - sep 22nd, 2006 announcements testing a dummy greek bon echo nsis installer bug #69230: accelerators should not be affected by keyboard group/level proposal of code
changes for l10n in firefox 3 discussions thai language support: how can we add thai as an official localized build?
2006-11-24 - Archive of obsolete content
announcments bon echo status mike beltzner posted a small to-do list with regards to bon echo firefox 1.5.0.9/2.0.0.1 jay patel posted an update of bugs for the firefox 1.5.0.9/2.0.0.1 releases discussion non-ascii rendering performance boris zbarsky made some suggestions on how to improve international font rendering cvs commit access
changes a large discussion went on about
changes to policies surrounding cvs commit access project drivers and technical oversight mike connor suggested ways to better organize project management, policy making, and technical oversight.
2006-11-03 - Archive of obsolete content
summary: mozilla.dev.quality - october 27-november 3, 2006 announcements a
change in tp2's numbers - rob helmer is going to be landing a patch that adam guthrie made to fix how tp2 reports its average pageload times.
2006-11-10 - Archive of obsolete content
summary: mozilla.dev.tech.xpcom - oct 04-nov 10, 2006 announcements xptcall
changes in process - ports owners needed if you maintain an xptcall port, you are needed to submit a patch to that bug 349002 with xptcall updates.
::-ms-fill - Archive of obsolete content
by setting animation-name on ::-ms-fill, you can
change the animation, as shown in this table: value description none turns off the animation so that no dots are displayed.
Displaying notifications (deprecated) - Archive of obsolete content
notification was closed.</strong>"; document.body.appendchild(e); }; displaying the notification once the notification is configured the way you want it to be, call its show() method to display the notification: notification.show(); on android, for example, the resulting notification panel looks like this: when the user taps on the "hey, check this out!" notification here, the resulting
changes to the document look like this: if you're using firefox mobile, you can see this example live by tapping the button below.
E4X for templating - Archive of obsolete content
<output> {sort(fruits.*, function (a, b) a.text() > b.text() /* text() call may not be necessary */ )} </output>.toxmlstring() ); /* <output> <item>banana</item> <item>grapes</item> <item>pear</item> </output> */ the above utility also works if the input is an htmlcollection, an array of strings, an array of dom objects, or an array of e4x objects (assuming the comparison function is
changed or adapted accordingly).
ActiveXObject - Archive of obsolete content
for example, for the local intranet zone, you typically need to
change a custom setting to "initialize and script activex controls not marked as safe for scripting." to identify members of an automation object that you can use in your code, you may need to use a com object browser, such as the ole/com object viewer, if no reference documentation is available for the automation object.
background-size - Archive of obsolete content
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.
Building Mozilla XForms - Archive of obsolete content
if you are sure that older or newer firefox versions are compatible with your extension, you can unzip the xpi file (it's a regular zip file), edit the install.rdf and
change the minversion and maxversion entries.
Techniques for game development - Game development
using webrtc peer-to-peer data channels in addition to providing support for audio and video communication, webrtc lets you set up peer-to-peer data channels to ex
change text or binary data actively between your players.
Visual-js game engine - Game development
adding new script explanation : after adding new script and save script if you have extra
changes , open starter/run.js and you will found line : sys.script.load("scripts/new_script.js") ctrl+s use from menu run->choose browser for testing .
Cryptographic hash function - MDN Web Docs Glossary: Definitions of Web-related terms
to be used for cryptography, a hash function must have these qualities: quick to compute (because they are generated frequently) not invertible (each digest could come from a very large number of messages, and only brute-force can generate a message that leads to a given digest) tamper-resistant (any
change to a message leads to a different digest) collision-resistant (it should be impossible to find two different messages that produce the same digest) cryptographic hash functions such as md5 and sha-1 are considered broken, as attacks have been found that significantly reduce their collision resistance.
Idempotent - MDN Web Docs Glossary: Definitions of Web-related terms
client gets the same results: get /pagex http/1.1 get /pagex http/1.1 get /pagex http/1.1 get /pagex http/1.1 post /add_row http/1.1 is not idempotent; if it is called several times, it adds several rows: post /add_row http/1.1 post /add_row http/1.1 -> adds a 2nd row post /add_row http/1.1 -> adds a 3rd row delete /idx/delete http/1.1 is idempotent, even if the returned status code may
change between requests: delete /idx/delete http/1.1 -> returns 200 if idx exists delete /idx/delete http/1.1 -> returns 404 as it just got deleted delete /idx/delete http/1.1 -> returns 404 learn more general knowledge definition of idempotent in the http specification.
SQL Injection - MDN Web Docs Glossary: Definitions of Web-related terms
how to prevent before executing the queries for the user credentials, make some
changes like the following: $id = $_get['id'] (1) $id = stripslashes($id) (2) $id = mysql_real_escape_string($id) so due to (1) each single quote (') in the input string is replaced with double quotes ("), and due to (2) before every (') it adds (/).
What is a web server? - Learn web development
(for example, html documents, images, css stylesheets, and javascript files) a web server connects to the internet and supports physical data inter
change with other devices connected to the web.
Example 3 - Learn web development
change states html content <form class="no-widget"> <select name="myfruit" tabindex="-1"> <option>cherry</option> <option>lemon</option> <option>banana</option> <option>strawberry</option> <option>apple</option> </select> <div class="select" tabindex="0"> <span class="value">cherry</span> <ul class="optlist hidden"> <li class="option">cherry</li> <li class="option">lemon</li> <li class="option">banana</li> <li class="option">strawberry</li> <li class="option">apple</li> </ul> </div> </form> css content .widget select, .no-widget .select { position : absolute; left : -5000em; height : 0; overflow : hidden; } /* ------...
Example 4 - Learn web development
change states html content <form class="no-widget"> <select name="myfruit"> <option>cherry</option> <option>lemon</option> <option>banana</option> <option>strawberry</option> <option>apple</option> </select> <div class="select"> <span class="value">cherry</span> <ul class="optlist hidden"> <li class="option">cherry</li> <li class="option">lemon</li> <li class="option">banana</li> <li class="option">strawberry</li> <li class="option">apple</li> </ul> </div> </form> css content .widget select, .no-widget .select { position : absolute; left : -5000em; height : 0; overflow : hidden; } /* --------------- */ /* required styles */ /...
Example 5 - Learn web development
change states html content <form class="no-widget"> <select name="myfruit"> <option>cherry</option> <option>lemon</option> <option>banana</option> <option>strawberry</option> <option>apple</option> </select> <div class="select" role="listbox"> <span class="value">cherry</span> <ul class="optlist hidden" role="presentation"> <li class="option" role="option" aria-selected="true">cherry</li> <li class="option" role="option">lemon</li> <li class="option" role="option">banana</li> <li class="option" role="option">strawberry</li> <li class="option" role="option">apple</li> </ul> </div> </form> css content .widget select, .no-widget .select { posi...
HTML Cheatsheet - Learn web development
it's always possible to totally
change the look and feel of a given tag using css so, when using html, take the time to focus on the meaning rather than the appearance.
Document and website structure - Learn web development
e html<br> but his structure was bad, his semantics were sad<br> and his markup didn't read very well.</p> without the <br> elements, the paragraph would just be rendered in one long line (as we said earlier in the course, html ignores most whitespace); with <br> elements in the code, the markup renders like this: <hr> elements create a horizontal rule in the document that denotes a thematic
change in the text (such as a
change in topic or scene).
Ember resources and troubleshooting - Learn web development
mponent class would be needed: import component from '@glimmer/component'; import { tracked } from '@glimmer/tracking'; import { action } from '@ember/object'; export default class example extends component { @tracked somedata = false; @action setdata(newvalue) { this.somedata = newvalue; } } which would then be called in the template like so: <checkbox @data={{this.somedata}} @on
change={{this.setdata}} /> due to the conciseness of using mut, it may be desireable to reach for it.
Ember app structure and componentization - Learn web development
href="#">active</a> <a href="#">completed</a> </li> </ul> <button type="button" class="clear-completed"> clear completed </button> </footer> finally, the contents of application.hbs should be updated so that they call the appropriate components, like so: <section class="todoapp"> <h1>todos</h1> <header /> <todolist /> <footer /> </section> with these
changes made, run npm start in your terminal again, then head over to http://localhost:4200 to ensure that the todo app still looks as it did before the refactor.
React resources - Learn web development
it adds a new panel to your browser's developer tools, and with it you can inspect the state and props of various components, and even edit state and props to make immediate
changes to your application.
Beginning our React todo list - Learn web development
"btn-group"> <button type="button" classname="btn"> edit <span classname="visually-hidden">repeat</span> </button> <button type="button" classname="btn btn__danger"> delete <span classname="visually-hidden">repeat</span> </button> </div> </li> </ul> </div> ); } now open public/index.html and
change the <title> element’s text to todomatic.
Multiprocess on Windows
ensuring that the interceptor supports your interfaces this information is current, but is likely to
change when bug 1346957 is landed.
Obsolete
creating a skin for firefox uuid contents.rdf install.rdf theme
changes in firefox 2 theme
changes in firefox 3 theme
changes in firefox 3.5 theme
changes in firefox 4 building a theme common theme issues and their solutions making sure your theme works with rtl locales creating a skin for seamonkey 2 dom inspector inspectorwidget force rtl yet another theme tutorial ...
Themes
themes allow you to
change the look and feel of the user interface and personalize it to your tastes.
Command line options
depending on
changes between the two versions, some files in a profile may not be downwards compatible.
Creating JavaScript callbacks in components
so we could convert the example above to accept javascript functions in place of the stringparserobserver by making the following
changes: [scriptable, function, uuid(...)] interface stringparserobserver : nsisupports { void onword(string word); }; [scriptable, uuid(...)] interface stringparser { void parse(string data); void addobserver(stringparserobserver observer); }; note the only
change was adding function to the interface attributes of the callback interface.
Capturing a minidump
when the program is about to crash, windbg will spit out more data, and the prompt at the bottom will
change from saying "*busy*" to having a number in it.
Debugging Frame Reflow
other reflow reasons are: incremental reflow resize reflow style
change reflow dirty reflow the available width is 9180 twips.
Debugging OpenGL
if you start up firefox with this variable defined, the following behavior
changes occur: each time you issue an opengl call, a check is performed to ensure that the gl context is current, using a thread-local static variable to keep track of this.
Debugging Table Reflow
min_con des_con fix min_adj des_adj fix_adj pct pct_adj min_pro final 360 540 1230 -1 -1 -1 -1 -1 -1 360 there was no
change till the entrance of balancecolumnwidths balancecolumnwidths en count=1 ***start table dump*** mcolwidths=360 360 360 360 col frame cache -> 0=00b93138 1=00b931f0 2=024dd728 3=024dd780 **start col dump** colindex=0 isanonymous=0 constraint=0 widths=360 540 1230 -1 -1 -1 -1 -1 -1 360 **end col dump** **start col dump** colindex=1 isanonymous=0 constraint=0 widths=360 540 -1 -1 -1 -1 -1 -...
ESLint
setting up eslint ./mach eslint --setup running eslint eslint can be run via: ./mach lint -l eslint you can limit running it to a specific directory with: ./mach lint -l eslint browser/components or work directory
changes: ./mach lint -l eslint -w or outgoing commits only: ./mach lint -l eslint -o see ./mach eslint --help for more options when running eslint.
Inner and outer windows
consider that when the user is looking at a document in a browser window, not only can the document the user is currently viewing
change, but the document's contents can
change.
mach
a real faq for a
change!
Frame script loading and lifetime
you need to send a message to your frame scripts, telling them to disable themselves; for example, by undoing any
changes they've made or removing any event listeners.
Message manager overview
the jsm can then use the child process message manager to ex
change messages with the parent process message manager.
Blocked: All storage access requests
the permission can be
changed or removed by: going to preferences > content blocking in the custom content blocking section, selecting a value other than all cookies for the cookies item if the resource that is being blocked doesn't need authentication, you can fix the warning message by adding a crossorigin="anonymous" attribute to your element.
Blocked: Custom cookie permission
the permission can be
changed or removed by: going to preferences > content blocking > cookies and site data clicking on the manage permissions button and updating the listed exceptions ...
Blocked: All third-party storage access requests
the permission can be
changed or removed by: going to preferences > content blocking and either adding an exception with the manage exceptions… button choosing the custom content blocking and unchecking the cookies checkbox if the resource that is being blocked doesn't need authentication, you can fix the warning message by adding a crossorigin="anonymous" attribute to the relevant element.
Gecko SDK
get the sdk updates there is no need to download or rebuild the gecko sdk corresponding to security updates of mozilla (e.g., mozilla 1.7.3) since the headers and glue libs in the gecko sdk are usually not
changed as a result of security updates.
HTTP Cache
this returns a new empty entry to write the meta data and data to, the writer ex
changes its cache entry by this new one and handles it as a new one.
How to add a build-time test
in <tt>yourmoduledir/tests_type/makefile.in</tt>
change depth, module, and xpcshell_tests appropriately: depth should be a relative path pointing to <tt>mozilla/</tt>, e.g.
IPDL Tutorial
the following artificial example shows how these specifiers are used and how these specifiers
change the generated abstract actor classes.
Integrated Authentication
so, it is paramount that the browser does not freely ex
change ntlm user credentials with any server that requests them.
Introduction to Layout in Mozilla
(tables, blocks, xul boxes) reflow “global” reflows initial, resize, style-
change processed immediately via presshell method incremental reflows targeted at a specific frame dirty, content-
changed, style-
changed, user-defined nshtmlreflowcommand object encapsulates info queued and processed asynchronously, nsipressshell::appendreflowcommand, processreflowcommands incremental reflow recursively descend to target recovering ref...
Addon
for some add-ons this will
change immediately based on the appdisabled and userdisabled properties; for others it will only
change after an application restart.
Code Samples
m", function(addon) { addon.uninstall(); }); disable an add-on components.utils.import("resource://gre/modules/addonmanager.jsm"); addonmanager.getaddonbyid("youraddon@youraddon.com", function(addon) { if (addon.isactive) addon.userdisabled = addon.isactive; }); listening for add-on uninstall this example sets a variable beinguninstalled that you can check when you get a profile-before-
change message to do cleanup for your add-on on uninstall.
TypeListener
void ontypeadded( in addontype type ) parameters type the addontype that is being added needsrestart true if an application restart is necessary for the
change to take effect ontyperemoved() called when an add-on type has been removed.
DownloadLastDir.jsm
however, when private browsing mode is enabled, the last download directory path is instead maintained in memory, and the preference is not
changed.
DownloadTarget
it currently indicates the size of the main file (such as the html document) rather than the sum of all of the files' sizes, but you must not rely upon this behavior, as it is subject to
change.
JNI.jsm
void set(number aindex, cdata aval); parameters aindex the position in the array to
change.
Log.jsm
// use dots to create a hierarchy, this way you can later
change // the log level of sets of loggers under some common root let log = log.repository.getlogger("myextension.myclass"); log.level = log.level.debug; // a console appender logs to the browser console.
Promise
method overview promise then([optional] function onfulfill, [optional] function onreject); promise catch([optional] function onreject); constructor creates a new promise, initially in the pending state, and provides references to the resolving functions that can be used to
change its state.
Promise.jsm
return value a new object, containing the new promise in the promise property, and the methods to
change its state in the resolve and reject properties.
Deferred
a deferred object is returned by the promiseutils.defer() method to provide a new promise along with methods to
change its state.
PromiseUtils.jsm
return value a new object, containing the new promise in the promise property, and the methods to
change its state in the resolve and reject properties.
Sqlite.jsm
objects/named parameters are a little safer because
changes in the order of parameters in the statement won't
change how values are bound to those parameters.
Webapps.jsm
ymanifesturl: function(amanifesturl) getcoreappsbasepath: function() getwebappsbasepath: function() _islaunchable: function(aapp) _notifycategoryandobservers: function(subject, topic, data, msg) registerbrowserelementparentforapp: function(amsg, amn) receiveappmessage: function(appid, message) _clearprivatedata: function(appid, browseronly, msg) _sendprogressevent: function() updatestate
changed: function appobs_update(aupdate, astate) applicationcacheavailable: function appobs_cacheavail(aapplicationcache) ...
XPCOMUtils.jsm
this means that you shouldn't use a lazy getter for a property whose value you expect to
change, because the getter will not recalculate the value.
openLocationLastURL.jsm
this object lets you fetch and
change the url that is placed in the "open location" dialog box when it opens.
Localizing XLIFF files for iOS
xliff (extensible localisation inter
change file format) is a localization standard governed by the oasis standards body.
Translation phase
these are the mozilla application projects that are localized using the l10n tools above: firefox the award-winning firefox® web browser has security, speed and new features that will
change the way you use the web.
Localization quick start guide
as you near the end of this guide, you should be able to make a
change to firefox in your local setting and then see that
change in the firefox interface.
Fonts for Mozilla 2.0's MathML engine
reset old preferences if users have previously
changed the "font.mathfont-family" preference for a previous version of mozilla, then it is best to reset this to the default value.
MathML Torture Test
addeventlistener("
change", updatemathfont, false) } window.addeventlistener("load", load, false); the following test contains sample tex formulas from knuth's tex book and equivalent mathml representations.
Mozilla Development Strategies
if you update every day for a week, you might not have any conflicts, but if you update once a week and you've
changed a lot of code, you'll most likely have conflicts.
Profile Manager
version - allows you
change the default application version to be used with the profile.
Localization Use Cases
the javascript code hasn't
changed yet, but there's another improvement that can be introduced, which is described below.
L20n
l20n and translation memory ex
change (tmx) how l20n impacts the translation memory ex
change standard for translation memory data.
MailNews automated testing
these tests are run against almost every
changeset that gets committed to the thunderbird and seamonkey code bases.
Date and Time
pr_msec_per_sec pr_usec_per_sec pr_nsec_per_sec pr_usec_per_msec pr_nsec_per_msec types and constants types and constants defined for nspr dates and times are: prtime prtimeparameters prexplodedtime time parameter callback functions in some geographic locations, use of daylight saving time (dst) and the rule for determining the dates on which dst starts and ends have
changed a few times.
Hash Tables
a hash table lookup may
change the internal organization of the hash table (to speed up future lookups).
Locks
lock type lock functions in nspr, a mutex of type prlock controls locking, and associated condition variables communicate
changes in state among threads.
Monitors
unlike a mutex of type prlock, a mutex of type prmonitor has a single, implicitly associated condition variable that may be used to facilitate synchronization of threads with the
change in state of monitored data.
PLHashTable
the number of buckets in a hash table may be
changed by the library functions during the lifetime of the table to optimize speed and space.
PRLinger
the pr_sockopt_linger socket option, with a value represented by a structure of type prlinger, makes it possible to
change this default as follows: if polarity is set to pr_false, pr_close returns immediately, but if there are any data remaining in the socket send buffer, the runtime attempts to deliver the data to the peer.
PR ImportTCPSocket
warning in theory, code that uses pr_importtcpsocket may break when nspr's implementation
changes.
PR_InitializeNetAddr
this allows the caller to
change the network address' port number assignment without affecting the host address.
PR_Interrupt
when the interrupted thread reaches the prearranged point, it can communicate with its peer to discover the real reason behind the
change in plans.
PR_PushIOLayer
even if the id parameter indicates the topmost layer of the stack, the value of the file descriptor describing the original stack will not
change.
PR_Seek
if the function fails, the file pointer remains un
changed and the function returns -1.
PR_Seek64
if the function fails, the file pointer remains un
changed and the function returns -1.
PR_TicksPerSecond
this value is platform-dependent and does not
change after nspr is initialized.
Thread Pools
note: this api is a preliminary version in nspr 4.0 and is subject to
change.
Running NSPR tests
to build the test programs, you need to
change directory to mozilla/nsprpub/pr/tests and run gmake.
Certificate functions
mxr 3.4 and later cert_addrdn mxr 3.2.1 and later cert_asciitoname mxr 3.2 and later cert_cachecrl mxr 3.10 and later cert_clearocspcache mxr 3.11.7 and later cert_certchainfromcert mxr 3.2 and later cert_certlistfromcert mxr 3.2 and later cert_certtimesvalid mxr 3.2 and later cert_
changecerttrust mxr 3.2 and later cert_checkcertvalidtimes mxr 3.2 and later cert_checknamespace mxr 3.12 and later cert_checkcertusage mxr 3.3 and later cert_comparename mxr 3.2 and later cert_comparevaliditytimes mxr 3.11 and later cert_completecrldecodeentries mxr 3.6 and later cert_convertanddeco...
Cryptography functions
function name/documentation source code nss versions pk11_algtagtomechanism mxr 3.2 and later pk11_authenticate mxr 3.2 and later pk11_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_convertsessionprivkeytotokenprivkey mxr 3.6 and later pk11...
4.3.1 Release Notes
this default setting can also be
changed within the application by using the following jss methods: sslserversocket.enablerenegotiation(int mode) sslsocket.enablerenegotiation(int mode) sslsocket.enablerenegotiationdefault(int mode) the mode of renegotiation that the peer must use can be set to the following: sslsocket.ssl_renegotiate_never - never renegotiate at all.
Build instructions for JSS 4.3.x
if you're intention is to modify and build the jss source you need to apply for your own jce code-signing certificate if you made no
changes and your goal is to build jss you can use the signed binary release of the jss4.jar from ftp.mozilla.org.
JSS Provider Notes
once a jca object has been created it will continue to use the same token, even if the application later
changes the per-thread default token.
Mozilla-JSS JCA Provider notes
once a jca object has been created it will continue to use the same token, even if the application later
changes the per-thread default token.
JSS 4.4.0 Release Notes
jss 4.4.0 source distributions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/jss/releases/jss_4_4_0_rtm/src/ new in jss 4.40 new functionality new functions new macros notable
changes in jss 4.40 picks up work done downstream for fedora and rhel and used by various linux distributions with includes:.
NSS_3.12.2_release_notes.html
450536: remove obsolete xp_mac code bug 451024: certutil.exe crashes with segmentation fault inside pr_cleanup bug 451927: security/coreconf/winnt6.0.mk has invalid defines bug 452751: slot leak in pk11_findslotsbynames bug 452865: remove obsolete linker flags needed when libnss3 was linked with libsoftokn3 bug 454961: fix the implementation and use of pr_fgets in signtool bug 455348:
change hyphens to underscores in debug_$(shell whoami).
NSS 3.12.6 release notes
the behavior of nss for renegotiation can be
changed through api function calls, or with the following environment variables: nss_ssl_enable_renegotiation values: [0|n|n]: ssl_renegotiate_never never allow renegotiation - that was the default for 3.12.5 release.
NSS 3.14.2 release notes
new types: in certt.h cert_pi_useonlytrustanchors in secoidt.h sec_oid_ms_ext_key_usage_ctl_signing notable
changes in nss 3.14.2 bug 805604 - support for aes-ni and avx accelerated aes-gcm was contributed by shay gueron of intel.
NSS 3.19.3 release notes
notable
changes in nss 3.19.3 the following ca certificates were removed cn = buypass class 3 ca 1 sha1 fingerprint: 61:57:3a:11:df:0e:d8:7e:d5:92:65:22:ea:d0:56:d7:44:b3:23:71 cn = tÜrktrust elektronik sertifika hizmet sağlayıcısı sha1 fingerprint: 79:98:a3:08:e1:4d:65:85:e6:c2:1e:15:3a:71:9f:ba:5a:d3:4a:d9 cn = sg trust services racine sha1 ...
NSS 3.20 release notes
new types in sslt.h ssldhegrouptype - enumerates the set of dhe parameters embedded in nss that can be used with function ssl_dhegroupprefset new macros in ssl.h ssl_enable_server_dhe - a socket option user to enable or disable dhe ciphersuites for a server socket notable
changes in nss 3.20 the tls library has been extended to support dhe ciphersuites in server applications.
NSS 3.22.2 release notes
notable
changes in nss 3.22.2 bug 1247990 - the root ca
changes from nss 3.23 have been backported.
NSS 3.22 release notes
2_224 - prf based on hmac with sha-512 truncated to 224 bits for pbkdf (not supported) ckp_pkcs5_pbkd2_hmac_sha512_256 - prf based on hmac with sha-512 truncated to 256 bits for pbkdf (not supported) in secoidt.h nss_use_alg_in_ssl nss_use_policy_in_ssl in ssl.h ssl_enable_signed_cert_timestamps in sslt.h ssl_max_extensions is updated to 13 notable
changes in nss 3.22 nss c++ tests are built by default, requiring a c++11 compiler.
NSS 3.23 release notes
notable
changes in nss 3.23 the copy of sqlite shipped with nss has been updated to version 3.10.2 (bug 1234698) the list of tls extensions sent in the tls handshake has been reordered to increase compatibility of the extended master secret with servers (bug 1243641) the build time environment variable nss_enable_zlib has been renamed to nss_ssl_enable_zlib (bug 1243872).
NSS 3.25.1 release notes
notable
changes in nss 3.25.1 md5 signature algorithms sent by the server in certificaterequest messages are now properly ignored.
NSS 3.25 release notes
new functions in nssckfw.h nssckfwslot_getslotid nssckfwsession_getfwslot nssckfwinstance_destroysessionhandle nssckfwinstance_findsessionhandle notable
changes in nss 3.25 an ssl socket can no longer be configured to allow both tls 1.3 and ssl v3.
NSS 3.26.2 release notes
notable
changes in nss 3.26.2 md5 signature algorithms sent by the server in certificaterequest messages are now properly ignored.
NSS 3.26 release notes
utions are available on ftp.mozilla.org for secure https download: source tarballs: https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/nss_3_26_rtm/src/ new in nss 3.26 new functionality the selfserv test utility has been enhanced to support alpn (http/1.1) and 0-rtt added support for the system-wide crypto policy available on fedora linux, see http://fedoraproject.org/wiki/
changes/cryptopolicy introduced build flag nss_disable_libpkix which allows compilation of nss without the libpkix library notable
changes in nss 3.26 the following ca certificate was added cn = isrg root x1 sha-256 fingerprint: 96:bc:ec:06:26:49:76:f3:74:60:77:9a:cf:28:c5:a7:cf:e8:a3:c0:aa:e1:1a:8f:fc:ee:05:c0:bd:df:08:c6 npn is disabled, and alpn is enabled by def...
NSS 3.27.1 release notes
notable
changes in nss 3.27.1 availability of the tls 1.3 (draft) implementation has been re-disabled in the default build.
NSS 3.27.2 Release Notes
notable
changes in nss 3.27.2 the ssl_settrustanchors() function is used to set the distinguished names that an nss server includes in its tls certificaterequest message.
NSS 3.29.2 release notes
bugs fixed in nss 3.29.2 nss 3.29 and 3.29.1 included a
change that reduced the time that nss considered a tls session ticket to be valid.
NSS 3.29.3 release notes
notable
changes in nss 3.29.3 a rare crash when initializing an ssl socket fails has been fixed.
NSS 3.29 release notes
nss 3.29 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_29_rtm/src/ notable
changes in nss 3.29 fixed a nss 3.28 regression in the signature scheme flexibility that causes connectivity issues between ios 8 clients and nss servers with ecdsa certificates (bug1334114).
NSS 3.30 release notes
2_aes_cbc_128, pkcs12_aes_cbc_192, pkcs12_aes_cbc_256 - cipher family identifiers corresponding to the pkcs#5 v2.1 aes based encryption schemes used in the pkcs#12 support in nss in pkcs11n.h cka_nss_mozilla_ca_policy - identifier for a boolean pkcs#11 attribute, that should be set to true, if a ca is present because of it's acceptance according to the mozilla ca policy notable
changes in nss 3.30 the tls server code has been enhanced to support session tickets when no rsa certificate (e.g.
NSS 3.32 release notes
nss 3.32 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_32_rtm/src/ notable
changes in nss 3.32 various minor improvements and correctness fixes.
NSS 3.33 release notes
nss 3.33 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_33_rtm/src/ notable
changes in nss 3.33 tls compression is no longer supported.
NSS 3.34.1 release notes
nss 3.34.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_34_1_rtm/src/ notable
changes in nss 3.34.1 the following ca certificate was re-added.
NSS 3.36 release notes
notable
changes in nss 3.36 replaced existing vectorized chacha20 code with verified hacl* implementation.
NSS 3.37 release notes
nss 3.37 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_37_rtm/src/ notable
changes in nss 3.37 the tls 1.3 implementation was updated to draft 28.
NSS 3.38 release notes
new functions in secitem.h secitem_makeitem - allocate and make an item with the requested contents new macros in ssl.h ssl_record_size_limit - used to control the tls record size limit extension notable
changes in nss 3.38 fixed cve-2018-0495 in bug 1464971.
NSS 3.39 release notes
notable
changes in nss 3.39 the tls 1.3 implementation uses the final version number from rfc 8446.
NSS 3.41 release notes
bug 1493215 - enabled the following ciphersuites by default: tls_ecdhe_ecdsa_with_aes_256_gcm_sha384 tls_ecdhe_rsa_with_aes_256_gcm_sha384 tls_dhe_rsa_with_aes_256_gcm_sha384 tls_rsa_with_aes_256_gcm_sha384 new functions none notable
changes in nss 3.41 the following ca certificates were added: cn = certigna root ca sha-256 fingerprint: d48d3d23eedb50a459e55197601c27774b9d7b18c94d5a059511a10250b93168 cn = gts root r1 sha-256 fingerprint: 2a575471e31340bc21581cbd2cf13e158463203ece94bcf9d3cc196bf09a5472 cn = gts root r2 sha-256 fingerprint: c45d7bb08e6d67e62e4235110b564e5f78fd92ef058c840aea4e6...
NSS 3.42 release notes
new in nss 3.42 new functionality bug 818686 - support xdg basedir specification new functions none notable
changes in nss 3.42 the following ca certificates were added: none the following ca certificates were removed: none added support for some of the testcases from the wycheproof project: bug 1508666 - added aes-gcm test cases bug 1508673 - added chacha20-poly1305 test cases bug 1514999 - added the curve25519 test cases ...
NSS 3.43 release notes
note that while the mechanism is present, post-handshake authentication is currently not tls 1.3 compliant due to bug 1532312 notable
changes in nss 3.43 the following ca certificates were added: cn = emsign root ca - g1 sha-256 fingerprint: 40f6af0346a99aa1cd1d555a4e9cce62c7f9634603ee406615833dc8c8d00367 cn = emsign ecc root ca - g3 sha-256 fingerprint: 86a1ecba089c4a8d3bbe2734c612ba341d813e043cf9e8a862cd5c57a36bbe6b cn = emsign root ca - c1 sha-256 fingerprint: 125609aa301da0a249b9...
NSS 3.44 release notes
notable
changes in nss 3.44 it is now possible to build nss as a static library (bug 1543545) initial support for building for ios.
NSS 3.49 release notes
notable
changes in nss 3.49 the legacy dbm database, libnssdbm, is no longer built by default when using gyp builds.
NSS 3.50 release notes
notable
changes in nss 3.50 verified primitives from hacl* were updated, bringing performance improvements for several platforms.
NSS reference
pkcs #7 functions based on "archived pkcs #7 functions documentation." pkcs #5 functions password-based encryption sec_pkcs5getiv sec_pkcs5createalgorithmid sec_pkcs5getcryptoalgorithm sec_pkcs5getkeylength sec_pkcs5getpbealgorithm sec_pkcs5isalgorithmpbealg pkcs #12 functions based on "archived pkcs #12 functions documentation." used to ex
change data such as private keys and certificates between two parties.
gtstd.html
the security module database tool allows you to add and delete pkcs #11 modules,
change passwords, set defaults, list module contents, enable or disable slots, enable or disable fips-140-1 compliance, and assign default providers for cryptographic operations.
sslkey.html
if you attempt to do so, the
change affects all the shallow copies of that structure and can cause severe problems.
TLS Cipher Suite Discovery
phersuiteinfo 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 ex
change algorithm info */ const char * keatypename; sslkeatype keatype; /* symmetric encryption info */ const char * symciphername; sslcipheralgorithm symcipher; pruint16 symkeybits; pruint16 symkeyspace; pruint16 effectivekeybits; /* mac info */ const char * macalgorithmname; ...
NSS Tools
source, documentation, tasks/plans sslstrength ssl strength documentation ssltap 3.2 proxy requests for an ssl server and display the contents of the messages ex
changed between the client and server.
NSS Tools sslstrength
step-up step up is a mode where the connection starts out with 40-bit encryption, but due to a '
change-cipher-spec' handshake,
changes to 128-bit encryption.
Necko Architecture
mimetype - mime <-> file extension mapping nkabout - about: protocol nkdata - data: protocol nkfile - file: protocol nkftp - ftp: protocol nkkeyword - keyword: protocol nkresrc - resource: protocol cnvts - stream converters stremcnv - stream converter service these libraries will
change with time and illustrate the modularity of necko.
Multithreading in Necko
in the future, necko may be made thread safe to support
changes to gecko that would put some other processing work on background threads (eg.
Pork Tool Development
cppsourceloc will
change the previously provided location information (in variable cpp_source_loc._loc) from post-location to pre-location.
Download Rhino
binaries release release date
change log download link rhino 1.7r4 2012-06-18 new in rhino 1.7r4 rhino1_7r4.zip rhino 1.7r5 2015-01-29 release notes rhino1_7r5.zip rhino 1.7.6 2015-04-15 release notes rhino1.7.6.zip rhino 1.7.7 2015-06-17 release notes rhino1.7.7.zip rhino 1.7.7.1 2016-02-01 release notes rhino1.7.7.1.zip rhino 1.7.7.2 2017-08-24 release notes rhino1.7.7.2.zip rhino 1.7.8 2018-01-22 release notes rhino1.7.8.zip rhino 1.7.9 2018-03-15 release notes rhino1.7.9.zip rhino 1.7.10 2018-04-09 release notes rhino1.7.10.zip r...
Rhino overview
second, the value of the property security.requiresecuritydomain should be
changed to true in the resource bundle org.mozilla.javascript.resources.security.
JS_NewObject
see also mxr id search for js_newobject mxr id search for js_newobjectwithgivenproto js_newglobalobject js_newarrayobject js_valuetoobject bug 408871 bug 1136906, bug 1136345 -- remove parent parameter bug 1125567 --
change prototype lookup behaviour ...
JS_NumberValue
see also mxr id search for js_numbervalue bug 752223 bug 1184564 --
changed jsval to js::value ...
JS_SetParent
in fact, once an object is exposed to a script, the object's parent must not
change.
JS_SetVersion
js_setversion returns the js version in effect for the context before you
changed it.
JS_THREADSAFE
we have recently made major
changes to this feature.
JS_malloc
js_realloc tries to
change the allocation size of the region of memory at p to nbytes.
JS_updateMallocCounter
see also mxr id search for js_updatemalloccounter
changeset 88cfae411a2a js_newruntime js_getgcparameter bug 517665 ...
Profiling SpiderMonkey
here are some instrumented tests to work from: media:profiling-ammo.zip 3.) once you have some
changes you'd like to try, you can just rebuild the js/src directory, since it produces its own shared library, even in libxul and static builds.
SpiderMonkey 52
platform support migrating to spidermonkey 52 new javascript language features new c++ apis deleted apis api
changes known issues ...
Running Automated JavaScript Tests
for a smoke test or if you are not changing language-level functionality, you may wish to use jstests.py path_to_js_shell --exclude=test262 other options allow you to show the test command lines being run, command output and return codes, run tests named in a given file, exclude tests named in a given file, hide the progress bar,
change the timeout, run skipped tests, print output in tinderbox format, run a test in the debugger, or run tests in valgrind.
SavedFrame
source metadata generated from file: js/src/doc/savedframe/savedframe.md watermark: sha256:3475238d6704c659cb3e411b9c601d6ee836762dea14203f1f00ecf2c3b32452
changeset: 251fccc1f62b ...
Split object
outer objects are dangerous because their jsprincipals may
change over time.
Security and the jar protocol
prior to this
change, specifying the jar: protocol caused firefox to assume that the file being retrieved is a jar file, regardless of its mime type (in other words, its mime type was assumed to be application/zip, regardless of what it actually was).
A Web PKI x509 certificate primer
this type of hierarchy allows for a relatively simple long term root to be distributed to clients, and some flexibility on the intermediate cert so that you can
change parameters based on best practices and security research.
Implementation Details
under msaa/ia2, watch for event_hide under atk/at-spi, watch for children-
changed:remove to help developers in that regard, there is memory leak monitor, a firefox extension.
Embedded Dialog API
all code which actually poses dialogs, if it does this directly using window.open, wants to be
changed to go through the new interface.
Using the Places favicon service
this makes sure that we aren't obsessively reloading favicons into the database for every page viewed, but also that
changes in the favicon will be picked up quickly.
extISessionStorage
return type method boolean has(in astring aname) void set(in astring aname, in nsivariant avalue) nsivariant get(in astring aname, in nsivariant adefaultvalue) attributes attribute type description events readonly attribute extievents the events object for the storage supports: "
change" methods has() determines if a storage item exists with the given name.
Generating GUIDs
sfink's update-uuids will
change the uuid for a given interface and all of its descendants, updating all *.idl files within a directory tree.
XPCOM Glue without mozalloc
simply
change all references to "xpcomglue_s" in your compiler and linker flags to "xpcomglue_s_nomozalloc".
XPCOM glue
this is not a backwards-compatible
change with 1.9.x and earlier.
An Overview of XPCOM
using xpcom, developers create components that can be reused in different applications or that can be replaced to
change the functionality of existing applications.
Building the WebLock UI
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"/> <button label="add this url" oncommand="addthissite();"/> </hbox> <hbox align="center"> <radiogroup on
change="togglelock();"> <radio label="lock"/> <radio label="unlock"/> </radiogroup> <spacer flex="1"/> </hbox> </vbox> </hbox> </dialog> overlaying new user interface into mozilla you've got a dialog that will interact with the weblock component, but how do you install the dialog you've created into the browser?
Using XPCOM Components
in xpcom the interface is guaranteed to stay the same even if the underlying implementation
changes.
Components.isSuccessCode
note: nsiasyncstreamcopier.init() has
changed in gecko 1.9.2, omit last 2 boolean parameters if you're using gecko 1.9.1 and earlier.
Components.utils.Sandbox
window objects and nsiprincipal carry additional information such as origin attributes and same-origin privilege
changes caused by setting document.domain.
IAccessibleAction
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) every accessible object that can be manipulated via the native gui beyond the methods available either in the msaa iaccessible interface or in the set of iaccessible2 interfaces (other than this iaccessibleaction interface) should support the iaccessibleaction interface in order to provide assistive technology access to all the actions that can be performed by the object.
IAccessibleApplication
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) this interface provides the at with the information it needs to differentiate this application from other applications, from other versions of this application, or from other versions of this application running on different versions of an accessibility bridge or accessibility toolkit.
IAccessibleComponent
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) this interface provides the standard mechanism for an assistive technology to retrieve information concerning the graphical representation of an object.
IAccessibleHypertext
1.0 66 introduced gecko 1.9 inherits from: iaccessibletext last
changed in gecko 1.9 (firefox 3) the iaccessiblehypertext interface is the main interface to expose hyperlinks in a document, typically a text document, that are used to reference other documents.
IAccessibleImage
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) this interface is used for a representation of images like icons on buttons.
IAccessibleRelation
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) method overview [propget] hresult localizedrelationtype([out] bstr localizedrelationtype ); [propget] hresult ntargets([out] long ntargets ); [propget] hresult relationtype([out] bstr relationtype ); [propget] hresult target([in] long targetindex, [out] iunknown target ); [propget] hresult targets([in] long maxtargets, [out, size_is(maxtargets), length_is( ntargets)] iunknown targets, [out] long ntargets ); methods localizedrelationtype() returns a localized version of the relation type.
IAccessibleTableCell
1.0 66 introduced gecko 1.9.2 inherits from: iunknown last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview [propget] hresult columnextent([out] long ncolumnsspanned ); [propget] hresult columnheadercells([out, size_is(, ncolumnheadercells,)] iunknown cellaccessibles, [out] long ncolumnheadercells ); [propget] hresult columnindex([out] long columnindex ); [propget] hresult isselected([out] boolean isselected ); [propget] hresult rowcolumnextents([out] long row, [out] long column, [out] long rowextents, [out] long columnextents, [out] boolean isselected ); [propget] hresult rowextent([out] lo...
IAccessibleValue
1.0 66 introduced gecko 1.9 inherits from: iunknown last
changed in gecko 1.9 (firefox 3) the iaccessiblevalue interface represents a single numerical value and should be implemented by any class that supports numerical value like progress bars and spin boxes.
IDispatch
inherits from: nsisupports last
changed in gecko 1.7 ...
IJSDebugger
1.0 66 introduced gecko 9.0 inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/jsdebugger;1 as a service: var jsdebugger = components.classes["@mozilla.org/jsdebugger;1"] .createinstance(components.interfaces.ijsdebugger); note: you should almost never directly use this service; instead, you should use the javascript code module that does this for you.
amIInstallCallback
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void oninstallended(in astring aurl, in print32 astatus); methods oninstallended() called when an install completes or fails.
amIInstallTrigger
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean enabled(); boolean install(in nsivariant aargs, [optional] in amiinstallcallback acallback); boolean installchrome(in pruint32 atype, in astring aurl, in astring askin); deprecated since gecko 2.0 boolean startsoftwareupdate(in astring aurl, [optional] in print32 aflags); deprecated since gecko 2.0 boolean updateenabled(); deprecated since gecko 2.0 constants retained for backwards compatibility.
amIWebInstallInfo
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void install(); attributes attribute type description installs nsivariant an array of addoninstall objects.
amIWebInstallListener
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview boolean onwebinstallblocked(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); void onwebinstalldisabled(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); ...
amIWebInstallPrompt
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview void confirm(in nsidomwindow awindow, in nsiuri auri, [array, size_is(acount)] in nsivariant ainstalls, [optional] in pruint32 acount); prior to gecko 8.0, all references to nsidomwindow used in this interface were nsidomwindow.
amIWebInstaller
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview boolean installaddonsfromwebpage(in astring amimetype, in nsidomwindow awindow, in nsiuri areferer, [array, size_is(ainstallcount)] in wstring auris, [array, size_is(ainstallcount)] in wstring ahashes, [array, size_is(ainstallcount)] in wstring anames, [array, size_is(ainstallcount)] in wstring aicons, [optional] in amiinstallcallback acallback, [optional] in pruint32 ainstallcount); boolean isinstallenabled(in astring amimetype, in nsiuri areferer); note: prior ...
imgICache
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) as of firefox 18, there is no longer a single image cache.
imgIDecoder
inherits from: nsisupports last
changed in gecko 1.7 this interface is the base class for decoders for specific image formats.
imgIDecoderObserver
1.0 66 introduced gecko 12.0 inherits from: imgicontainerobserver last
changed in gecko 1.7 we make the distinction here between "load" and "decode" notifications.
imgIEncoder
1.0 66 introduced gecko 1.8 inherits from: nsiasyncinputstream last
changed in gecko 1.9 (firefox 3) method overview void addimageframe( [array, size_is(length), const] in pruint8 data, in unsigned long length, in pruint32 width, in pruint32 height, in pruint32 stride, in pruint32 frameformat, in astring frameoptions); void encodeclipboardimage(in nsiclipboardimage aclipboardimage, out nsifile aimagefile); obsolete since gecko 1.9 void endimageencode(); void initfromdata([array, size_is(length), const] in pruint8 data, in unsigned long length, in pruint32 width, in pruint32 height, in pruint32 stride, in pruint32 inputformat, in astring outputoptions); void...
imgILoader
inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by @mozilla.org/image/loader;1 as a service: var imgiloader = components.classes["@mozilla.org/image/loader;1"] .getservice(components.interfaces.imgiloader); method overview imgirequest loadimage(in nsiuri auri, in nsiuri ainitialdocumenturl, in nsiuri areferreruri, in nsiprincipal aloadingprincipal, in nsiloadgroup aloadgroup, in imgidecoderobserver aobserver, in nsisupports acx, in nsloadflags aloadflags, in nsisupports cachekey, in imgirequest arequest, in nsichannelpolicy channelpolicy); imgirequest loadimagewithchannel(in nsichannel achannel, in imgidecoder...
inIDOMUtils
inherits from: nsisupports last
changed in gecko 22.0 (firefox 22.0 / thunderbird 22.0 / seamonkey 2.19) implemented by: @mozilla.org/inspector/dom-utils;1 as a service: var inidomutils = components.classes["@mozilla.org/inspector/dom-utils;1"] .getservice(components.interfaces.inidomutils); method overview void addpseudoclasslock(in nsidomelement aelement, in domstring apseudoclass); void clearpseudoclasslocks(in nsidomelement aelement); [implicit_jscontext] jsval colornametorgb(in domstring acolorname); nsiarray getbindingurls(in nsidomelement aelement); nsidomnodelist getchildrenfornode(in nsidomnode anode, in boolean ashowinganonymouscontent); ...
jsdIStackFrame
inherits from: jsdiephemeral last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) strict mode is on.
mozIColorAnalyzer
toolkit/components/places/mozicoloranalyzer.idlscriptable provides methods to analyze colors in an image 1.0 66 introduced gecko 17.0 inherits from: nsisupports last
changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) method overview void findrepresentativecolor(in nsiuri imageuri, in mozirepresentativecolorcallback callback); methods findrepresentativecolor() given an image uri, find the most representative color for that image based on the frequency of each color.
mozIJSSubScriptLoader
66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 28 (firefox 28 / thunderbird 28 / seamonkey 2.25 / firefox os 1.3) implemented by: @mozilla.org/moz/jssubscript-loader;1.
mozIPersonalDictionary
1.0 66 introduced gecko 1.4.1 inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/spellchecker/personaldictionary;1.
mozIPlacesAutoComplete
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void registeropenpage(in nsiuri auri); void unregisteropenpage(in nsiuri auri); constants constant value description match_anywhere 0 match anywhere in each searchable term.
mozIRegistry
the primary
change to this component is that we will modify it to utilize the new moziregistry interface versus the nsreg.h functions it calls today.
mozIRepresentativeColorCallback
toolkit/components/places/mozicoloranalyzer.idlscriptable provides callback methods for mozicoloranalyzer 1.0 66 introduced gecko 17.0 inherits from: nsisupports last
changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) method overview void oncomplete(in boolean success, [optional] in unsigned long color); methods oncomplete() will be called when color analysis finishes.
mozIStorageAggregateFunction
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void onstep(in mozistoragevaluearray afunctionarguments); nsivariant onfinal(); methods onstep() this is called for each row of results returned by the query.
mozIStorageBindingParams
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports you can only create mozistoragebindingparams objects by calling the mozistoragebindingparamsarray.newbindingparams().
mozIStorageBindingParamsArray
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports you can only create these objects by calling the mozistoragestatement.newbindingparamsarray().
mozIStorageCompletionCallback
last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsisupports method overview void complete(); methods complete() called when an asynchronous storage routine has completed.
mozIStorageConnection
1.0 68 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) for a general overview on how to use this interface, see storage.
mozIStorageFunction
last
changed in gecko 1.9.1.4 (firefox 3.5.4) inherits from: nsisupports method overview nsivariant onfunctioncall(in mozistoragevaluearray afunctionarguments); methods onfunctioncall() the implementation of the function.
mozIStoragePendingStatement
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports method overview void cancel(); methods cancel() cancels the pending statement.
mozIStorageProgressHandler
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview boolean onprogress(in mozistorageconnection aconnection); methods onprogress() the onprogress() method is called periodically while an sqlite operation is ongoing.
mozIStorageResultSet
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview mozistoragerow getnextrow(); methods getnextrow() returns the next row from the result set.
mozIStorageRow
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: mozistoragevaluearray method overview nsivariant getresultbyindex(in unsigned long aindex); nsivariant getresultbyname(in autf8string aname); methods getresultbyindex() returns the value from a specific column in the row, using a zero-based index to identify the column.
mozIStorageService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) see mozistorageconnection method overview nsifile backupdatabasefile(in nsifile adbfile, in astring abackupfilename, [optional] in nsifile abackupparentdirectory); mozistorageconnection opendatabase(in nsifile adatabasefile); mozistorageconnection openspecialdatabase(in string astoragekey); mozistorageconnection openunshareddatabase(in nsifile adatabasefile); methods ...
mozIStorageStatement
inherits from: mozistoragevaluearray last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) for an introduction on how to use this interface, see the storage overview document.
mozIStorageStatementCallback
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview void handlecompletion(in unsigned short areason); void handleerror(in mozistorageerror aerror); void handleresult(in mozistorageresultset aresultset); constants constant value description reason_finished 0 the statement has finished executing normally.
mozIStorageStatementWrapper
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void initialize(in mozistoragestatement astatement); void reset(); boolean step(); void execute(); attributes attribute type description statement mozistoragestatement the statement that is wrapped.
mozIStorageValueArray
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview long gettypeofindex(in unsigned long aindex); long getint32(in unsigned long aindex); long long getint64(in unsigned long aindex); double getdouble(in unsigned long aindex); autf8string getutf8string(in unsigned long aindex); astring getstring(in unsigned long aindex); void getblob(in unsigned long aindex, out unsigned long adatasi...
mozITXTToHTMLConv
last
changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) inherits from nsistreamconverter implemented by @mozilla.org/txttohtmlconv;1 as a service: var ios = components.classes["@mozilla.org/txttohtmlconv;1"] .getservice(components.interfaces.mozitxttohtmlconv); method overview unsigned long citeleveltxt(in wstring line, out unsigned long loglinestart) void findurlinplaintext(in wstring text, in long alength, in long apos, out long astartpos, out long aendpos) wst...
mozIThirdPartyUtil
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean isthirdpartychannel(in nsichannel achannel, [optional] in nsiuri auri); boolean isthirdpartyuri(in nsiuri afirsturi, in nsiuri aseconduri); boolean isthirdpartywindow(in nsidomwindow awindow, [optional] in nsiuri auri); methods isthirdpartychannel() determine whether the given channel and its content window hierarchy is third party.
mozIVisitInfo
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description referreruri nsiuri read only: the referring uri of this visit.
mozIVisitStatusCallback
toolkit/components/places/moziasynchistory.idlscriptable this interface provides callback handling functionality for moziasynchistory.isurivisited 1.0 66 introduced gecko 11.0 inherits from: nsisupports last
changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) method overview void isvisited(in nsiuri auri, in boolean avisitedstatus); methods isvisited() called when the moziasynchistory.isurivisited() method's check to determine whether a given uri has been visited has completed.
nsIAboutModule
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview unsigned long geturiflags(in nsiuri auri); nsichannel newchannel(in nsiuri auri); constants constant value description uri_safe_for_untrusted_content (1 << 0) a flag that indicates whether a uri is safe for untrusted content.
nsIAbstractWorker
1.0 66 introduced gecko 1.9.1 inherits from: nsidomeventtarget last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) attributes attribute type description onerror nsidomeventlistener the error listener for the worker.
nsIAccessNode
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the nsiaccessnode implementations are instantiated lazily.
nsIAccessible
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) overview this section provides short overview of methods and attributes of this interface.
nsIAccessibleCaretMoveEvent
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) attributes attribute type description caretoffset long return caret offset.
nsIAccessibleCoordinateType
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) prior to gecko 1.9, these constants were implemented in nsiaccessibletext.
nsIAccessibleDocument
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) you can queryinterface to nsiaccessibledocument from the nsiaccessible or nsiaccessnode for the root node of a document.
nsIAccessibleEditableText
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void copytext(in long startpos, in long endpos); void cuttext(in long startpos, in long endpos); void deletetext(in long startpos, in long endpos); void inserttext(in astring text, in long position); void pastetext(in long position); void setattributes(in long startpos, in long endpos, in nsisupport...
nsIAccessibleHyperLink
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview nsiaccessible getanchor(in long index); note: renamed from getobject in gecko 1.9 nsiuri geturi(in long index); boolean isselected(); obsolete since gecko 1.9 boolean isvalid(); obsolete since gecko 1.9 attributes attribute type description anchorcount long the number of anchors within this hyperlink.
nsIAccessibleHyperText
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview nsiaccessiblehyperlink getlink(in long linkindex); long getlinkindex(in long charindex); long getselectedlinkindex(); obsolete since gecko 1.9 attributes attribute type description linkcount long the number of links contained within this hypertext object.
nsIAccessibleImage
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void getimageposition(in unsigned long coordtype, out long x, out long y); void getimagesize(out long width, out long height); methods getimageposition() returns the coordinates of the image accessible.
nsIAccessibleProvider
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) attributes attribute type description accessible nsiaccessible read only.
nsIAccessibleRelation
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) note: be carefull, do not
change constants until atk has a structure to map gecko constants into atk constants.
nsIAccessibleRetrieval
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 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 getattachedaccessiblefor(...
nsIAccessibleScrollType
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) constants constant value description scroll_type_top_left 0x00 scroll the top left of the object or substring to the top left of the window (or as close as possible).
nsIAccessibleSelectable
inherits from: nsisupports last
changed in gecko 1.7 method overview void addchildtoselection(in long index); void clearselection(); nsiarray getselectedchildren(); boolean ischildselected(in long index); nsiaccessible refselection(in long index); void removechildfromselection(in long index); boolean selectallselection(); attributes attribute type description selectioncount long the number of accessible children currently selected.
nsIAccessibleTable
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsiaccessible getcellat(in long rowindex, in long columnindex); note: renamed from cellrefat in gecko 1.9.2 long getcellindexat(in long rowindex, in long columnindex); note: renamed from getindexat in gecko 1.9.2 astring getcolumndescription(in long columnindex); long getcolumnextentat(in long row, in long column); long getcolumnindexat(in long cellindex); note: renamed from getcolumnatindex in gecko 1.9.2 void getrowandcolumnindicesat(in long cellindex, out long rowindex, out long columnindex); astring getrowdescri...
nsIAccessibleTableCell
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview boolean isselected(); attributes attribute type description columnextent long return the number of columns occupied by this cell.
nsIAccessibleText
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void addselection(in long startoffset, in long endoffset); nsiaccessible getattributerange(in long offset, out long rangestartoffset, out long 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 coord...
nsIAccessibleValue
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview boolean setcurrentvalue(in double value); obsolete since gecko 1.9 attributes attribute type description currentvalue double maximumvalue double read only.
nsIAccessibleWin32Object
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description hwnd voidptr handle to the external window implementing iaccessible.
nsIAlertsService
1.0 66 introduced gecko 1.7 inherits from: nsisupports last
changed in gecko 22 (firefox 22 / thunderbird 22 / seamonkey 2.19) by default a message is displayed in a small window that slides up from the bottom of the screen, holds there for a few seconds, then slides down.
nsIAnnotationObserver
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void onitemannotationremoved(in long long aitemid, in autf8string aname); void onitemannotationset(in long long aitemid, in autf8string aname); void onpageannotationremoved(in nsiuri auri, in autf8string aname); void onpageannotationset(in nsiuri apage, in autf8string aname); methods onitemannotationremoved() this method is called when an annotation is deleted for an item.
nsIAnnotationService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: "@mozilla.org/browser/annotation-service;1".
nsIAppShell
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void create(inout int argc, inout string argv); obsolete since gecko 1.9 void dispatchnativeevent(in prbool arealevent, in voidptr aevent); obsolete since gecko 1.9 void exit(); void favorperformancehint(in boolean favorperfoverstarvation, in unsigned long starvationdelay); void getnativeevent(in prboolref arealevent, in voidptrref aevent); obsolete since gecko 1.9 void listentoeventqueue(in nsieventqueue aqueue, in prbool alisten); obsolete since gecko 1.9 void resumenative(); void run()...
nsIAppShellService
inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: @mozilla.org/appshell/appshellservice;1 as a service: var appshellservice = components.classes["@mozilla.org/appshell/appshellservice;1"] .getservice(components.interfaces.nsiappshellservice); method overview void closetoplevelwindow(in nsixulwindow awindow); obsolete since gecko 1.8 void createhiddenwindow(in nsiappshell aappshell); native code only!
nsIAppStartup
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/toolkit/app-startup;1.
nsIAppStartup_MOZILLA_2_0
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in gecko 4.0 this interface was merged into the nsiappstartup interface.
nsIApplicationCache
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) each application cache has a unique client id for use with nsicacheservice.opensession() method, to access the cache's entries.
nsIApplicationCacheChannel
1.0 66 introduced gecko 1.9.1 inherits from: nsiapplicationcachecontainer last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void markofflinecacheentryasforeign(); attributes attribute type description chooseapplicationcache boolean when true, the channel will choose an application cache if one was not explicitly provided and none is available from the notification callbacks.
nsIApplicationCacheContainer
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) attributes attribute type description applicationcache nsiapplicationcache the application cache with which the object is associated.
nsIApplicationCacheNamespace
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) application caches can store a set of namespace entries that affect loads from the application cache.
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 / seamonkey 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), re...
nsIApplicationUpdateService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void adddownloadlistener(in nsirequestobserver listener); astring downloadupdate(in nsiupdate update, in boolean background); void pausedownload(); void removedownloadlistener(in nsirequestobserver listener); nsiupdate selectupdate([array, size_is(updatecount)] in nsiupdate updates, in unsigned long updatecount); attributes attribute type description backgroundchecker ns...
nsIArray
inherits from: nsisupports last
changed in gecko 1.7 an indexed collection of elements.
nsIAsyncStreamCopier
inherits from: nsirequest last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview void asynccopy(in nsirequestobserver aobserver, in nsisupports aobservercontext); void init(in nsiinputstream asource, in nsioutputstream asink, in nsieventtarget atarget, in boolean asourcebuffered, in boolean asinkbuffered, in unsigned long achunksize, in boolean aclosesource, in boolean aclosesink); methods asynccopy() starts the copy operation.
nsIAsyncVerifyRedirectCallback
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface implements the callbacks passed to the nsichanneleventsink.asynconchannelredirect() method.
nsIAuthPrompt
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) this interface is implemented by @mozilla.org/login-manager/prompter;1.
nsIAuthPrompt2
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) this interface is usually acquired using getinterface on notification callbacks or similar.
nsIAuthPromptAdapterFactory
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview nsiauthprompt2 createadapter(in nsiauthprompt aprompt); methods createadapter() wrap an object implementing nsiauthprompt so that it's usable via nsiauthprompt2.
nsIAuthPromptCallback
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) callers must call exactly one method if nsiauthprompt2.asyncpromptauth() returns successfully.
nsIAuthPromptProvider
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void getauthprompt(in pruint32 apromptreason, in nsiidref iid, [iid_is(iid),retval] out nsqiresult result); constants constant value description prompt_normal 0 normal (non-proxy) prompt request.
nsIAuthPromptWrapper
last
changed in gecko 1.7 inherits from: nsiauthprompt method overview void setpromptdialogs(in nsiprompt dialogs); methods setpromptdialogs() this method sets a prompt dialog using the given dialog implementation which will be used to display the prompts.
nsIAutoCompleteInput
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview acstring getsearchat(in unsigned long index); void onsearchbegin(); void onsearchcomplete(); boolean ontextentered(); boolean ontextreverted(); void selecttextrange(in long startindex, in long endindex); attributes attribute type description completedefaultindex boolean if a search result has its defaultindex set, this will optionally try to complete the text in t...
nsIAutoCompleteItem
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description classname string class name used to define some style through css like the colors, an icon url, and so on.
nsIAutoCompleteListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void onautocomplete(in nsiautocompleteresults result, in autocompletestatus status); void onstatus(in wstring statustext); attributes attribute type description param nsisupports private parameter used by the autocomplete widget.
nsIAutoCompleteObserver
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void onsearchresult(in nsiautocompletesearch search, in nsiautocompleteresult result); void onupdatesearchresult(in nsiautocompletesearch search, in nsiautocompleteresult result); methods onsearchresult() called when a search is complete and the results are ready.
nsIAutoCompleteSearch
inherits from: nsisupports last
changed in gecko 1.7 users call startsearch() and pass in an nsiautocompleteobserver when the search starts.
nsIBadCertListener2
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) replaces the obsolete nsibadcertlistener interface.
nsIBidiKeyboard
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 / seamonkey 2.6) method overview boolean islangrtl(); void setlangfrombidilevel(in pruint8 alevel); attributes attribute type description havebidikeyboards boolean indicates whether or not the system has at least one keyboard for each direction (left-to-right and right-to-left) installed.
nsIBinaryInputStream
inherits from: nsiinputstream last
changed in gecko 1.7 method overview pruint8 read8(); pruint16 read16(); pruint32 read32(); pruint64 read64(); unsigned long readarraybuffer(in pruint32 alength, in jsval aarraybuffer); prbool readboolean(); void readbytearray(in pruint32 alength, [array, size_is(alength), retval] out pruint8 abytes); void readbytes(in pruint32 ...
nsIBinaryOutputStream
inherits from: nsioutputstream last
changed in gecko 1.7 method overview void setoutputstream(in nsioutputstream aoutputstream); void write8(in pruint8 abyte); void write16(in pruint16 a16); void write32(in pruint32 a32); void write64(in pruint64 a64); void writeboolean(in prbool aboolean); void writebytearray([array, size_is(alength)] in pruint8 abytes, in pruint32 alength); void writebytes(alength)] in string astring,...
nsIBlocklistPrompt
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void prompt([array, size_is(acount)] in nsivariant aaddons, [optional] in pruint32 acount); methods prompt() prompt the user about newly blocked addons.
nsIBlocklistService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 29 (firefox 29 / thunderbird 29 / seamonkey 2.26) method overview unsigned long getaddonblockliststate(in jsval addon, [optional] in astring appversion, [optional] in astring toolkitversion); unsigned long getpluginblockliststate(in nsiplugintag plugin, [optional] in astring appversion, [optional] in astring toolkitversion); boolean isaddonblocklisted(in jsval addon, [optional] in astring appversion, [optional] in astring toolkitversion); constants constant value description state_not_blocked 0 state_softblocked 1 ...
nsIBoxObject
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) to get an instance, use the boxobject property.
nsIBrowserBoxObject
inherits from: nsicontainerboxobject last
changed in gecko 1.9 (firefox 3) the boxobject belonging to a xul browser element implements this interface.
nsIBrowserSearchService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/browser/search-service;1.
nsICRLInfo
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description lastfetchurl autf8string the url this crl was last fetched from.
nsICRLManager
inherits from: 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 crlkey); 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( i...
nsICache
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports constants constant value description access_none 0 access granted - no descriptor is provided.
nsICacheDeviceInfo
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description description string get a human readable description of the cache device.
nsICacheEntryDescriptor
inherits from: nsicacheentryinfo last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void close(); void doom(); void 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 get t...
nsICacheEntryInfo
inherits from: nsisupports last
changed in gecko 1.7 method overview boolean isstreambased(); attributes attribute type description clientid string get the client id associated with this cache entry.
nsICacheListener
inherits from: nsisupports last
changed in gecko 14 (firefox 14 / thunderbird 14 / seamonkey 2.11) method overview void oncacheentryavailable(in nsicacheentrydescriptor descriptor, in nscacheaccessmode accessgranted, in nsresult status); void oncacheentrydoomed(in nsresult status); methods oncacheentryavailable() this method is called when the requested access (or appropriate subset) is acquired.
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.
nsICacheService
66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface is no longer supported and planned to be removed soon: use nsicachestorageservice instead.
nsICacheSession
inherits from: nsisupports last
changed in gecko 14 (firefox 14 / thunderbird 14 / seamonkey 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 doomentr...
nsICacheVisitor
inherits from: nsisupports last
changed in gecko 1.7 method overview boolean visitdevice(in string deviceid, in nsicachedeviceinfo deviceinfo); boolean visitentry(in string deviceid, in nsicacheentryinfo entryinfo); methods visitdevice() this method is called to provide information about a cache device.
nsICachingChannel
inherits from: nsicacheinfochannel last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface provides: support for "stream as file" semantics (for jar and plugins).
nsICancelable
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void cancel(in nsresult areason); methods cancel() call this method to request that this object abort whatever operation it may be performing.
nsICategoryManager
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/categorymanager;1.
nsIChannelEventSink
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) channels will try to get this interface from a channel's notificationcallbacks or, if not available there, from the loadgroup's notificationcallbacks.
nsIChannelPolicy
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface exists to allow the content policy mechanism to function properly during channel redirects.
nsICharsetResolver
inherits from: nsisupports last
changed in gecko 1.7 method overview void notifyresolvedcharset(in acstring charset, in nsisupports closure); acstring requestcharset(in nsiwebnavigation awebnavigation, in nsichannel achannel, out boolean awantcharset, out nsisupports aclosure); methods notifyresolvedcharset() some implementations may request that they be notified when the charset is actually detected.
nsIChromeFrameMessageManager
1.0 66 introduced gecko 2.0 inherits from: nsiframemessagemanager last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void loadframescript(in astring aurl, in boolean aallowdelayedload); void removedelayedframescript(in astring aurl); methods loadframescript() loads a script into the remote frame.
nsIChromeRegistry
inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: @mozilla.org/chrome/chrome-registry;1 as a service: var chromeregistry = components.classes["@mozilla.org/chrome/chrome-registry;1"] .getservice(components.interfaces.nsichromeregistry); method overview void canonify(in nsiuri achromeurl); obsolete since gecko 1.8 void checkfornewchrome(); nsiuri convertchromeurl(in nsiuri achromeurl); boolean wrappersenabled(in nsiuri auri); violates the xpcom interface guidelines constants ...
nsIClassInfo
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsisupports gethelperforlanguage(in pruint32 language); void getinterfaces(out pruint32 count, [array, size_is(count), retval] out nsiidptr array); attributes attribute type description classdescription string a human readable string naming the class, or null.
nsIClipboard
inherits from: nsisupports last
changed in gecko 30.0 (firefox 30.0 / thunderbird 30.0 / seamonkey 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 supportsse...
nsIClipboardCommands
inherits from: nsisupports last
changed in gecko 1.7 method overview boolean cancopyimagecontents(); boolean cancopyimagelocation(); boolean cancopylinklocation(); boolean cancopyselection(); boolean cancutselection(); boolean canpaste(); void copyimagecontents(); void copyimagelocation(); void copylinklocation(); void copyselection(); void cutselection(); void paste(); void selectall(); void selectnone(); methods cancopyimagecontents() returns whether we can copy an...
nsIClipboardDragDropHookList
inherits from: nsisupports last
changed in gecko 1.7 note: this interface is not intended for direct use by embedders; it is an implementation detail.
nsIClipboardHelper
inherits from: nsisupports last
changed in gecko 1.7 method overview void copystring(in astring astring); void copystringtoclipboard(in astring astring, in long aclipboardid); methods copystring() this method copies string to (default) clipboard.
nsIClipboardOwner
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void losingownership(in nsitransferable atransferable); methods losingownership() this method notifies the owner of the clipboard transferable that the transferable is being removed from the clipboard.
nsICollection
inherits from: nsiserializable last
changed in gecko 1.7 method overview void appendelement(in nsisupports item); void clear(); pruint32 count(); nsienumerator enumerate(); nsisupports getelementat(in pruint32 index); void queryelementat(in pruint32 index, in nsiidref uuid, [iid_is(uuid),retval] out nsqiresult result); void removeelement(in nsisupports item); void setelementat(in pruint32 index, in nsisupports item); methods appendelement() appends a new item to the collection.
nsICommandController
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/embedcomp/base-command-controller;1.
nsICommandLine
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) components may implement the nsicommandlinehandler interface to add custom command line handling behavior.
nsICommandLineHandler
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) each command line handler is registered in the category "command-line-handler".
nsICommandLineRunner
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsicommandline method overview void init(in long argc, in nscharptrarray argv, in nsifile workingdir, in unsigned long state); void run(); void setwindowcontext(in nsidomwindow awindow); attributes attribute type description helptext autf8string process and combine the help text provided by each command-line handler.
nsIComponentManager
66 introduced gecko 0.7 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview void addbootstrappedmanifestlocation(in nsilocalfile alocation); void createinstance(in nscidref aclass, in nsisupports adelegate, in nsiidref aiid, [iid_is(aiid),retval] out nsqiresult result); void createinstancebycontractid(in string acontractid, in nsisupports adelegate, in nsiidref aiid, [iid_is(aiid),retval] out nsqiresult result); void getclassobject(in nscidref aclass, in nsiidref aiid, [iid_is(aiid),retval] out nsqiresult result); ...
nsIComponentRegistrar
inherits from: nsisupports last
changed in gecko 1.0 method overview void autoregister(in nsifile aspec); void autounregister(in nsifile aspec); string cidtocontractid(in nscidref aclass); nscidptr contractidtocid(in string acontractid); nsisimpleenumerator enumeratecids(); nsisimpleenumerator enumeratecontractids(); boolean iscidregistered(in nscidref aclass); boolean iscontractidregistered(in string acontractid); void registerfactory(in nscidref aclass, in string aclassname, in string acontractid, in nsifactory afactory); void registerfactorylocation(in nscidref aclass, in string aclassname, in string acontractid, in nsifil...
nsICompositionStringSynthesizer
dom/interfaces/base/nsicompositionstringsynthesizer.idlscriptable this interface is a composition string synthesizer interface that synthesizes composition string with arbitrary clauses and a caret 1.0 66 introduced gecko 26 obsolete gecko 38 inherits from: nsisupports last
changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) this interface is obsoleted in gecko 38.
nsIConsoleListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void observe(in nsiconsolemessage amessage); methods observe() called by the nsiconsoleservice when a message is posted to the console.
nsIConsoleMessage
inherits from: nsisupports last
changed in gecko 1.7 implementations may provide an object that can be query interfaced, nsisupports.queryinterface(), to provide more specific message information.
nsIConsoleService
inherits from: nsisupports last
changed in gecko 19 (firefox 19 / thunderbird 19 / seamonkey 2.16) implemented by: @mozilla.org/consoleservice;1 as a service: var consoleservice = components.classes["@mozilla.org/consoleservice;1"] .getservice(components.interfaces.nsiconsoleservice); method overview void getmessagearray([array, size_is(count)] out nsiconsolemessage messages, out uint32_t count);obsolete since gecko 19 void getmessagearray([optional] out uint32_...
nsIContainerBoxObject
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) the boxobject belonging to a xul browser, editor or iframe element implements this interface.
nsIContentPref
nsicontentpref dom/interfaces/base/nsicontentprefservice2.idlscriptable a content preference 1.0 66 introduced gecko 20.0 inherits from: nsisupports last
changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) attributes attribute type description domain astring read only.
nsIContentPrefCallback2
dom/interfaces/base/nsicontentprefservice2.idlscriptable callback used by nsicontentprefservice2 methods 1.0 66 introduced gecko 20.0 inherits from: nsisupports last
changed in gecko 20.0 (firefox 20.0 / thunderbird 20.0 / seamonkey 2.17) method overview void handlecompletion(in unsigned short reason); void handleerror(in nsresult error); void handleresult(in nsicontentpref pref); constants constant value description complete_ok 0 complete_error 1 methods handlecompletion() called when the method finishes.
nsIContentSecurityPolicy
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean permitsancestry(in nsidocshell docshell); void refinepolicy(in astring policystring, in nsiuri selfuri); void scanrequestdata(in nsihttpchannel achannel); void sendreports(in astring blockeduri, in astring violateddirective); short shouldload(in unsigned long acontenttype, in nsiuri acontentlocation, in nsiuri arequestorigin, in nsisupports acontext, in acstring amimetypeguess, in nsisupports aextra); short shouldprocess(in unsigned long acontenttype, in nsiuri a...
nsIContentSniffer
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) to implement this interface use net-content-sniffers category.
nsIContentViewManager
content/base/public/nsiframeloader.idlscriptable manages the content views contained in a browser 1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) to obtain a reference to the view manager for a document, you can queryinterface() the nsiframeloader object to nsicontentviewmanager.
nsIContentViewer
inherits from: nsisupports last
changed in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamonkey 2.7) implemented by: ?????????????????????????????????????.
nsIController
inherits from: nsisupports last
changed in gecko 1.7 method overview void docommand(in string command); boolean iscommandenabled(in string command); void onevent(in string eventname); boolean supportscommand(in string command); methods docommand() when this method is called, your implementation should execute the command with the specified name.
nsIControllers
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) this interface is used to manage instances of the nsicontroller interface.
nsIConverterInputStream
1.0 66 introduced gecko 1.8 inherits from: nsiunicharinputstream last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/intl/converter-input-stream;1.
nsIConverterOutputStream
1.0 66 introduced gecko 1.8 inherits from: nsiunicharoutputstream last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/intl/converter-output-stream;1.
nsICookie
last
changed in gecko 1.7 inherits from: nsisupports attributes attribute type description expires pruint64 expiration time in seconds since midnight (00:00:00), january 1, 1970 utc.
nsICookie2
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsicookie attributes attribute type description creationtime print64 the creation time of the cookie, in microseconds since midnight (00:00:00), january 1, 1970 utc.
nsICookieAcceptDialog
inherits from: nsisupports last
changed in gecko 1.7 constants constant value description accept_cookie 0 value for accepting a cookie object.
nsICookieConsent
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void getconsent(); methods getconsent() gives a decision on what should be done with a cookie, based on a site's p3p policy and the user's preferences.
nsICookieManager
last
changed in gecko 1.7 inherits from: nsisupports this interface is intended to be used as a service.
nsICookieManager2
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsicookiemanager this interface is included in the services.jsm javascript code module.
nsICookiePromptService
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview long cookiedialog(in nsidomwindow parent, in nsicookie cookie, in acstring hostname, in long cookiesfromhost, in boolean changingcookie, out boolean rememberdecision); constants constant value description deny_cookie 0 holds the value for a denying the cookie.
nsICookieStorage
last
changed in gecko 1.7 inherits from: nsisupports method overview void getcookie(in string acookieurl, in voidptr acookiebuffer, in pruint32ref acookiesize); void setcookie(in string acookieurl, in constvoidptr acookiebuffer, in unsigned long acookiesize); methods getcookie() retrieves a cookie from the browser's persistent cookie store.
nsICrashReporter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void annotatecrashreport(in acstring key, in acstring data); void appendappnotestocrashreport(in acstring data); void appendobjcexceptioninfotoappnotes(in voidptr aexception); native code only!
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 nsikeyobject akeyobject); 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.
nsICryptoHash
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview acstring finish(in prbool aascii); void init(in unsigned long aalgorithm); void initwithstring(in acstring aalgorithm); void update([const, array, size_is(alen)] in octet adata, in unsigned long alen); void updatefromstream(in nsiinputstream astream, in unsigned long alen)...
nsICurrentCharsetListener
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/intl/currentcharsetlistener;1.
nsICycleCollectorListener
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the order of calls will be call to begin(); then for every node in the graph a call to noteobject() and calls to noteedge() for every edge starting at that node; then a call to begindescriptions(); then for every black node in the cycle collector graph a call to either describerefcountedobject() or to describegcedobject(); and then a call to end().
nsIDNSListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void onlookupcomplete(in nsicancelable arequest, in nsidnsrecord arecord, in nsresult astatus); methods onlookupcomplete() called when an asynchronous host lookup completes.
nsIDNSRecord
inherits from: nsisupports last
changed in gecko 1.7 method overview prnetaddr getnextaddr(in pruint16 aport); native code only!
nsIDNSRequest
inherits from: nsisupports last
changed in gecko 1.7 method overview void cancel(); methods cancel() called to cancel a pending asynchronous dns request.
nsIDNSService
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) implemented by: @mozilla.org/network/dns-service;1.
nsIDOMClientRect
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) attributes attribute type description bottom float y-coordinate, relative to the viewport origin, of the bottom of the rectangle box.
nsIDOMElement
inherits from: nsidomnode last
changed in gecko 1.7 method overview domstring getattribute(in domstring name); nsidomattr getattributenode(in domstring name); nsidomattr getattributenodens(in domstring namespaceuri, in domstring localname); domstring getattributens(in domstring namespaceuri, in domstring localname); nsidomnodelist getelementsbytagname(in domstring name); nsidomnodelist getelementsbytagnamens(in domstring namespaceuri, in domstring localname); boolean hasattribute(in domstring name); boolean hasattributens(in domstring namespaceuri, in domstring localname); void removeattribute(in domstring name) nsidomattr removeattributenode(in ns...
nsIDOMEventGroup
inherits from: nsisupports last
changed in gecko 1.7 method overview boolean issameeventgroup(in nsidomeventgroup other); methods issameeventgroup() reports whether or not another event group is the same as this one.
nsIDOMEventTarget
inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) see the eventtarget documentation.
nsIDOMFileException
last
changed in gecko 1.9 (firefox 3) attributes attribute type description code unsigned short the error code describing the error condition that took place; see the constants list for details.
nsIDOMFileReader
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports implemented by: @mozilla.org/files/filereader;1.
nsIDOMFontFace
1.0 66 introduced gecko 7.0 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) this object describes a single font.
nsIDOMFontFaceList
1.0 66 introduced gecko 7.0 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) method overview nsidomfontface item(in unsigned long index); attributes attribute type description length unsigned long the number of items in the list.
nsIDOMGeoGeolocation
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports implemented by: @mozilla.org/geolocation;1.
nsIDOMGeoPosition
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) attributes attribute type description address nsidomgeopositionaddress the address of the user's current location, if available.
nsIDOMGeoPositionCallback
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void handleevent(in nsidomgeoposition position); methods handleevent() called when new position information is available.
nsIDOMGeoPositionCoords
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports attributes attribute type description latitude double the user's current latitude, in degrees.
nsIDOMGeoPositionError
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports attributes attribute type description code short numerical error code; see error constants for a complete list.
nsIDOMGeoPositionErrorCallback
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void handleevent(in nsidomgeopositionerror position); methods handleevent() called to handle a geolocation error.
nsIDOMGeoPositionOptions
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports attributes attribute type description enablehighaccuracy boolean if true, high accuracy mode is used.
nsIDOMGlobalPropertyInitializer
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) an xpcom component implementing this interface can be exposed to web content as a property on the window.
nsIDOMHTMLMediaElement
1.0 67 introduced gecko 1.9.1 inherits from: nsidomhtmlelement last
changed in gecko 1.1 the nsidomhtmlmediaelement interface implements the dom htmlmediaelement interface.
nsIDOMHTMLTimeRanges
last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsisupports method overview float start(in unsigned long index); float end(in unsigned long index); attributes attribute type description length unsigned long the number of ranges represented by the nsidomhtmltimeranges object.
nsIDOMMozNetworkStats
inherits from: nsisupports last
changed in gecko 1.0 implemented by: @mozilla.org/networkstats;1.
nsIDOMMozNetworkStatsData
1.0 66 introduced gecko 18.0 inherits from: nsisupports last
changed in gecko 18.0 (firefox 18.0 / thunderbird 18.0 / seamonkey 2.15) attributes attribute type description rxbytes unsigned long the number of bytes received on the connection.
nsIDOMMozNetworkStatsManager
inherits from: nsisupports last
changed in gecko 18.0 (firefox 18.0 / thunderbird 18.0 / seamonkey 2.15) implemented by: @mozilla.org/networkstatsmanager;1.
nsIDOMMozTouchEvent
last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 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, ...
nsIDOMNavigatorDesktopNotification
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) property that extends the navigator object.
nsIDOMNode
inherits from: nsisupports last
changed in gecko 0.9.6 method overview nsidomnode appendchild(in nsidomnode newchild) nsidomnode clonenode(in boolean deep); boolean hasattributes(); boolean haschildnodes(); nsidomnode insertbefore(in nsidomnode newchild, in nsidomnode refchild) boolean issupported(in domstring feature, in domstring version); void normalize(); nsidomnode removechild(in nsidomnode oldchild) nsidomnode replacechild(in nsidomnode newchild, in nsidomnode oldchild) attributes attribute type description attributes nsidomnamednodemap read only.
nsIDOMOfflineResourceList
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsisupports method overview void mozadd(in domstring uri); boolean mozhasitem(in domstring uri); domstring mozitem(in unsigned long index); void mozremove(in domstring uri); void swapcache(); void update(); attributes attribute type descr...
nsIDOMOrientationEvent
last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) inherits from: nsidomevent method overview void initorientationevent(in domstring eventtypearg, in boolean canbubblearg, in boolean cancelablearg, in double x, in double y, in double z); attributes attribute type description x double the amount of tilt along the x axis.
nsIDOMParser
to create a domparser when the constructor is not available (e.g., from a js xpcom component, a js module, or an xpcshell test), use: var parser = components.classes["@mozilla.org/xmlextras/domparser;1"] .createinstance(components.interfaces.nsidomparser); // optionally, call parser.init(principal, documenturi, baseuri); principals, document and base uri note: this section covers
changes introduced to domparser in gecko 1.9.
nsIDOMProgressEvent
1.0 66 introduced gecko 1.9.1 deprecated gecko 22 inherits from: nsidomevent last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) the nsidomprogressevent is used in the media elements (<video> and <audio>) to inform interested code of the progress of the media download.
nsIDOMSerializer
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/xmlextras/xmlserializer;1.
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 / seamonkey 2.0) the nsidomsimplegestureevent interface is the datatype for all mozilla-specific simple gesture events in the document object model.
nsIDOMStorage2
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 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 ...
nsIDOMStorageItem
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) gecko 1.9.1 note starting in gecko 1.9.1 (firefox 3.5), this is only used for session storage; previously, it was also used for global storage.
nsIDOMStorageList
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview nsidomstorage nameditem(in domstring domain); methods nameditem() called when the list of available access points
changes.
nsIDOMStorageManager
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by @mozilla.org/dom/storagemanager;1 as a service: var domstoragemanager = components.classes["@mozilla.org/dom/storagemanager;1"] .getservice(components.interfaces.nsidomstoragemanager); method overview void clearofflineapps(); nsidomstorage getlocalstorageforprincipal(in nsiprincipal aprincipal, in domstring adocumenturi); long getusage(in astring aownerdomain); methods clearofflineapps() clears keys owned by offline applications.
nsIDOMStorageWindow
1.0 66 introduced gecko 1.8.1 obsolete gecko 8.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in gecko 8.0 this interface has been merged into nsidomwindow, and this interface has been removed.
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.
nsIDOMWindow
66 introduced gecko 1.0 deprecated gecko 44 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) starting with firefox 44, this file is empty as its features were either no longer used or are only available from c++ code; see dom/base/nspidomwindow.h for those.
nsIDOMWindow2
inherits from: nsidomwindow last
changed in gecko 1.9 (firefox 3) because nsidomwindow is frozen, this interface was introduced in firefox 3 (gecko 1.9) to allow dom windows to take on new features.
nsIDOMXPathEvaluator
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/dom/xpath-evaluator;1.
nsIDOMXPathException
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description code unsigned short the error code; see error codes for details.
nsIDOMXPathExpression
dom/interfaces/xpath/nsidomxpathexpression.idlscriptable represents a compiled xpath query returned from nsidomxpathevaluator.createexpression or document.createexpression inherits from: nsisupports last
changed in gecko 1.7 method overview nsisupports evaluate(in nsidomnode contextnode, in unsigned short type, in nsisupports result) methods evaluate() evaluate the xpath expression.
nsIDOMXPathResult
dom/interfaces/xpath/nsidomxpathresult.idlscriptable this interface describes an xpath result returned by nsidomxpathevaluator or document.evaluate inherits from: nsisupports last
changed in gecko 1.7 method overview nsidomnode iteratenext(); nsidomnode snapshotitem(in unsigned long index); attributes attribute type description booleanvalue boolean if resulttype is boolean_type, the boolean value.
nsIDOMXULControlElement
66 introduced gecko 1.0 inherits from: nsidomxulelement last
changed in gecko 1.0 attributes attribute type description disabled boolean indicates whether the element is disabled or not.
nsIDOMXULElement
66 introduced gecko 1.0 inherits from: nsidomelement last
changed in gecko 1.9 (firefox 3) method overview void blur(); void click(); void docommand(); void focus(); nsidomnodelist getelementsbyattribute(in domstring name, in domstring value); nsidomnodelist getelementsbyattributens(in domstring namespaceuri, in domstring name, in domstring value); attributes attribute type description align domstring gets/sets the value of the element's align attribute.
nsIDOMXULLabeledControlElement
inherits from: nsidomxulcontrolelement last
changed in gecko 1.7 attributes attribute type description accesskey domstring this should be set to a character that is used as a shortcut key.
nsIDOMXULSelectControlElement
inherits from: nsidomxulcontrolelement last
changed in gecko 1.9 (firefox 3) method overview nsidomxulselectcontrolitemelement appenditem(in domstring label, in domstring value); long getindexofitem(in nsidomxulselectcontrolitemelement item); nsidomxulselectcontrolitemelement getitematindex(in long index); nsidomxulselectcontrolitemelement insertitemat(in long index, in domstring label, in domstring value); nsidomxulselectcontrolitemelement removeitemat(in long index); attributes attribute type description itemcount unsigned long read only.
nsIDOMXULSelectControlItemElement
inherits from: nsidomxulelement last
changed in gecko 1.7 attributes attribute type description accesskey domstring command domstring control nsidomxulselectcontrolelement read only.
nsIDataSignatureVerifier
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 apublickey); methods verifydata() verifies that the data matches the data that was used to generate the signature.
nsIDebug
inherits from: nsisupports last
changed in gecko 1.7 note: c/c++ consumers who are planning to use the nsidebug interface with the @mozilla.org/xpcom;1 contract should use ns_debugbreak() from xpcom glue instead, or alternatively the ns_abort, ns_assertion, ns_break, and ns_warning macros, which also call ns_debugbreak() if used in a debugging build.
nsIDebug2
xpcom/base/nsidebug2.idlscriptable adds access to additional information in debug builds of mozilla code by expanding upon the features in nsidebug 1.0 66 introduced gecko 1.9.2 inherits from: nsidebug last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) attributes attribute type description assertioncount long the number of assertions since process start.
nsIDeviceMotionData
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) note: this interface was named nsidevicemotiondata prior to gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3).
nsIDialogCreator
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void opendialog(in unsigned long atype, in acstring aname, in acstring afeatures, in nsidialogparamblock aarguments, [optional] in nsidomelement aframeelement); constants constant value description unknown_dialog 0 generic_dialog 1 select_dialog 2 methods opendialog() void opendialog( in unsigned long atype, in acstring aname, in acstring afeatures, in nsidialogparamblock aarguments, in nsidomelement aframeelement optional ); parameters atype aname afeatures aarguments aframeelement optional ...
nsIDictionary
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 / seamonkey 1.0) note: this interface was removed in firefox 3.5; use dict.jsm instead.
nsIDirIndex
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description contenttype string the content type; may be null if it is unknown.
nsIDirIndexListener
they can then be transformed into an output format (such as rdf, html and so on) inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void onindexavailable(in nsirequest arequest, in nsisupports actxt, in nsidirindex aindex); void oninformationavailable(in nsirequest arequest, in nsisupports actxt, in astring ainfo); methods onindexavailable() called for each directory entry.
nsIDirIndexParser
inherits from: nsistreamlistener last
changed in gecko 1.7 called for each directory entry.
nsIDirectoryEnumerator
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void close(); attributes attribute type description nextfile nsifile the next file in the sequence.
nsIDirectoryIterator
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void init(in nsifilespec parent, in boolean resolvesymlink); boolean exist(); void next(); attributes attribute type description currentspec nsifilespec init() void init( in nsifilespec parent, in boolean resolvesymlink ); parameters parent resolvesymlink exist() boolean exists(); next() void next(); ...
nsIDirectoryService
inherits from: nsisupports last
changed in gecko 1.7 method overview void init(); void registerprovider(in nsidirectoryserviceprovider prov); void unregisterprovider(in nsidirectoryserviceprovider prov); init() initializes the nsidirectoryservice instance.
nsIDirectoryServiceProvider2
inherits from: nsidirectoryserviceprovider last
changed in gecko 0.9.6 method overview nsisimpleenumerator getfiles(in string prop); methods getfiles() the directory service calls this when it gets a request for a prop and the requested type is nsisimpleenumerator.
nsIDiskCacheStreamInternal
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void closeinternal(); methods closeinternal() we use this method internally to close nsdiskcacheoutputstream under the cache service lock.
nsIDispatchSupport
inherits from: nsisupports last
changed in gecko 1.7 method overview void comvariant2jsval(in comvariantptr comvar, out jsval val); unsigned long gethostingflags(in string acontext); boolean isclassmarkedsafeforscripting(in nscidref cid, out boolean classexists); boolean isclasssafetohost(in jscontextptr cx, in nscidref cid, in boolean capscheck, out boolean classexists); boolean isobjectsafeforscripting(in voidptr theobject, in nsiidref id); void jsval2comvariant(in jsval var, out comvariant comvar); methods comvariant2jsval() converts a com variant to a jsval.
nsIDownload
download objects are used by the download manager (see nsidownloadmanager to manage files that are queued to download, being downloaded, and finished being downloaded.) inherits from: nsitransfer last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) note: once the download is completed, the download manager stops updating the nsidownload object.
nsIDownloadHistory
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void adddownload(in nsiuri asource, [optional] in nsiuri areferrer, [optional] in prtime astarttime); methods adddownload() adds a download to history.
nsIDownloadManager
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) implemented by: @mozilla.org/download-manager;1.
nsIDownloadManagerUI
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void getattention(); void show([optional] in nsiinterfacerequestor awindowcontext, [optional] in unsigned long aid, [optional] in short areason); attributes attribute type description visible boolean true if the download manager ui is visible; otherwise false.
nsIDownloadObserver
inherits from: nsisupports last
changed in gecko 1.7 method overview void ondownloadcomplete(in nsidownloader downloader, in nsirequest request, in nsisupports ctxt, in nsresult status, in nsifile result); methods ondownloadcomplete() called to signal a download that has completed.
nsIDownloader
inherits from: nsistreamlistener last
changed in gecko 1.7 method overview void init(in nsidownloadobserver observer, in nsifile downloadlocation); methods init() initialize this downloader.
nsIDragDropHandler
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void detach(); void hookupto(in nsidomeventtarget attachpoint, in nsiwebnavigation navigator); methods detach() unregisters all handlers related to drag and drop.
nsIDragSession
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void getdata( in nsitransferable atransferable, in unsigned long aitemindex ); boolean isdataflavorsupported( in string adataflavor ); attributes attribute type description candrop boolean set the current state of the drag, whether it can be dropped or not.
nsIDroppedLinkHandler
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean candroplink(in nsidomdragevent aevent, in prbool aallowsamedocument); astring droplink(in nsidomdragevent aevent, out astring aname, [optional] in boolean adisallowinherit); void droplinks(in nsidomdragevent aevent, [optional] in boolean adisallowinherit, [optional] out unsigned long acount, [retval, array, size_is(acount)] out nsidroppedlinkitem alinks); methods candroplink() determines if a link being dragged can be dropped.
nsIDroppedLinkItem
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) attributes attribute type description url domstring url of the dropped link.
nsIDynamicContainer
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) the service can fill result nodes directly into the container when it is opened.
nsIEditor
66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 18.0 (firefox 18.0 / thunderbird 18.0 / seamonkey 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); ...
nsIEditorBoxObject
inherits from: nsicontainerboxobject last
changed in gecko 1.9 (firefox 3) the boxobject belonging to a xul editor element implements this interface.
nsIEditorDocShell
inherits from: nsisupports last
changed in gecko 1.7 use nsieditingsession.makewindoweditable() and nsieditingsession.geteditorforwindow() from out side.
nsIEditorIMESupport
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void begincomposition(in nstexteventreplyptr areply); native code only!
nsIEditorLogging
inherits from: nsisupports last
changed in gecko 1.7 method overview void startlogging(in nsifile alogfile); void stoplogging(); methods startlogging() start logging.
nsIEditorMailSupport
inherits from: nsisupports last
changed in gecko 1.7 method overview nsisupportsarray getembeddedobjects(); nsidomnode insertascitedquotation(in astring aquotedtext, in astring acitation, in boolean ainserthtml); nsidomnode insertasquotation(in astring aquotedtext); void inserttextwithquotations(in domstring astringtoinsert); void pasteascitedquotation(in astring acitation, in long aselectiontype); void pasteasquotation(in long aselectiontype); void rewrap(in boolean arespectnewlines); void stripcites(); methods getembeddedobjects() get a list of img and object tags in the current document.
nsIEditorObserver
66 introduced gecko 1.0 obsolete gecko 18 inherits from: nsisupports last
changed in gecko 1.7 method overview void editaction(); methods editaction() called after the editor completes a user action.
nsIEffectiveTLDService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/network/effective-tld-service;1.
nsIEnvironment
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/process/environment;1 as a service: var env = components.classes["@mozilla.org/process/environment;1"].
nsIErrorService
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 geterrorstringbundlekey(in nsresult error); void registererrorstringbundle(in short errormodule, in string stringbundleurl); void registererrorstringbundlekey(in nsresult error, in string stringbundlekey); void unregistererrorstringbundle(in short errormodule); void unregistererrorstringbundlekey(in nsresult error);...
nsIEventListenerInfo
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview nsisupports getdebugobject(); astring tosource(); attributes attribute type description allowsuntrusted boolean indicates whether or not the event listener allows untrusted events.
nsIEventListenerService
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) implemented by: @mozilla.org/eventlistenerservice;1.
nsIEventSource
content/base/public/nsieventsource.idlscriptable this is the interface for server-sent dom events 1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) this implements the eventsource interface used for server-sent events.
nsIEventTarget
1.0 66 introduced gecko 1.6 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void dispatch(in nsirunnable event, in unsigned long flags); boolean isoncurrentthread(); void postevent(in pleventptr aevent); native code only!
nsIException
inherits from: nsisupports last
changed in gecko 1.7 method overview string tostring(); attributes attribute type description columnnumber pruint32 valid column numbers begin at 0.
nsIExternalHelperAppService
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/uriloader/external-helper-app-service;1.
nsIExternalProtocolService
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) you can ask the external protocol service if it has an external handler for a given protocol scheme.
nsIExternalURLHandlerService
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsihandlerinfo geturlhandlerinfofromos(in nsiuri aurl, out boolean afound); methods geturlhandlerinfofromos() given a url, looks up the handler info from the operating system.
nsIFTPChannel
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports attributes attribute type description lastmodifiedtime prtime the time at which the ftp channel was last updated.
nsIFTPEventSink
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void onftpcontrollog(in boolean server, in string msg) methods onftpcontrollog allows a consumer to receive a log of the ftp control connection conversation.
nsIFactory
inherits from: nsisupports last
changed in gecko 0.9.5 method overview void createinstance(in nsisupports aouter, in nsiidref iid, [retval, iid_is(iid)] out nsqiresult result); void lockfactory(in prbool lock); methods createinstance() creates an instance of the class associated with this factory.
nsIFaviconDataCallback
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void oncomplete(in nsiuri auri, in unsigned long adatalen, [const,array,size_is(adatalen)] in octet adata, in autf8string amimetype); methods oncomplete() called when the required favicon's information is available.
nsIFeed
1.0 66 introduced gecko 1.8 inherits from: nsifeedcontainer last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description cloud nsiwritablepropertybag2 the cloud element on a feed is used to identify the api endpoint of an rsscloud ping server, which distributes notifications of
changes to this feed.
nsIFeedContainer
toolkit/components/feeds/public/nsifeedcontainer.idlscriptable this interface provides standard fields used by both feeds (nsifeed) and feed entries (nsifeedentry) 1.0 66 introduced gecko 1.8 inherits from: nsifeedelementbase last
changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) method overview void normalize(); attributes attribute type description authors nsiarray an array of nsifeedperson objects describing the authors of the feed or entry.
nsIFeedElementBase
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description attributes nsisaxattributes all the attributes found on the element.
nsIFeedEntry
1.0 66 introduced gecko 1.8 inherits from: nsifeedcontainer last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description content nsifeedtextconstruct the full text of the entry's content.
nsIFeedGenerator
1.0 66 introduced gecko 1.8 inherits from: nsifeedelementbase last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description agent astring the name of the software that created the feed.
nsIFeedPerson
1.0 66 introduced gecko 1.8 inherits from: nsifeedelementbase last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description email astring the person's email address.
nsIFeedProcessor
1.0 66 introduced gecko 1.8.1 inherits from: nsistreamlistener last
changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) implemented by: @mozilla.org/feed-processor;1.
nsIFeedProgressListener
1.0 66 introduced gecko 1.8 inherits from: nsifeedresultlistener last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void handleentry(in nsifeedentry entry, in nsifeedresult result); void handlefeedatfirstentry(in nsifeedresult result); void handlestartfeed(in nsifeedresult result); void reporterror(in astring errortext, in long linenumber, in boolean bozo); methods handleentry() called ...
nsIFeedResult
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void registerextensionprefix(in astring anamespace, in astring aprefix); attributes attribute type description bozo boolean the feed processor sets the bozo bit when a feed triggers a fatal error during xml parsing.
nsIFeedResultListener
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void handleresult(in nsifeedresult result); methods handleresult() called when feed processing is complete.
nsIFileInputStream
inherits from: nsiinputstream last
changed in gecko 1.7 method overview void init(in nsifile file, in long ioflags, in long perm, in long behaviorflags); constants constant value description delete_on_close 1<<1 if this is set, the file will be deleted by the time the stream is closed.
nsIFileOutputStream
inherits from: nsioutputstream last
changed in gecko 1.7 method overview void init(in nsifile file, in long ioflags, in long perm, in long behaviorflags); constants behavior flag constants constant value description defer_open 1<<0 see the same constant in nsifileinputstream.
nsIFilePicker
inherits from: nsisupports last
changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) implemented by: @mozilla.org/filepicker;1.
nsIFileProtocolHandler
inherits from: nsiprotocolhandler last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview nsifile getfilefromurlspec(in autf8string url); autf8string geturlspecfromactualfile(in nsifile file); autf8string geturlspecfromdir(in nsifile file); autf8string geturlspecfromfile(in nsifile file); nsiuri newfileuri(in nsifile afile); nsiuri readurlfile(in nsifile file); methods getfilefromurlspec() converts the url string into the corresponding nsifile if possible.
nsIFileStreams
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void init(in nsifile file, in long ioflags, in long perm, in long behaviorflags); constants constants value description delete_on_close 1<<1 if this is set, the file will be deleted by the time the stream is closed.
nsIFileURL
inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) attributes attribute type description file nsifile get/set nsifile corresponding to this url.
nsIFileView
inherits from: nsisupports last
changed in gecko 1.7 note: nsifileview is linux-only interface.
nsIFormHistory2
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) note: this interface provides no means to access stored values.
nsIFrameLoader
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: this interface works in tandem with the nsicontentview interface to manage frames across processes if electrolysis is in use to support per-frame processes.
nsIFrameLoaderOwner
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview [noscript, notxpcom] alreadyaddrefed_nsframeloader getframeloader(); void swapframeloaders(in nsiframeloaderowner aotherowner); attributes attribute type description frameloader nsiframeloader the frame loader owned by this nsiframeloaderowner.
nsIFrameMessageListener
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface is used when implementing out-of-process handling of frames; the process handling a frame should implement this interface in order to receive messages.
nsIFrameMessageManager
1.0 66 introduced gecko 2.0 obsolete gecko 17.0 inherits from: nsisupports last
changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) this interface is obsolete and was removed in firefox 17.
nsIGSettingsCollection
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) 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 ); parameters ...
nsIGSettingsService
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) implemented by: @mozilla.org/gsettings-service;1 as a service: var gsettingsservice = components.classes["@mozilla.org/gsettings-service;1"] .createinstance(components.interfaces.nsigsettingsservice); method overview nsigsettingscollection getcollectionforschema(in autf8string schema); methods getcollectionforschema() nsigsettingscollection getcollectionforschema( in autf8string schema ); parameters schema return value ...
nsIGeolocationUpdate
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) interface provides a way for a geolocation provider to notify the system that a new location is available.
nsIGlobalHistory
66 introduced gecko 1.0 deprecated gecko 2.0 obsolete gecko 15.0 inherits from: nsisupports last
changed in gecko 1.7 method overview void addpage(in string aurl); boolean isvisited(in string aurl); methods addpage() add a page to the history.
nsIGlobalHistory2
inherits from: nsisupports last
changed in gecko 1.7 this interface replaces and deprecates nsiglobalhistory method overview void adduri(in nsiuri auri, in boolean aredirect, in boolean atoplevel, in nsiuri areferrer); boolean isvisited(in nsiuri auri); void setpagetitle(in nsiuri auri, in astring atitle); methods adduri() add a uri to global history.
nsIGlobalHistory3
1.0 66 introduced gecko 1.8 obsolete gecko 9.0 inherits from: nsiglobalhistory2 last
changed in gecko 1.9 (firefox 3) this interface was originally created as part of nsiglobalhistory2, but was split off during the transition to places.
nsIHTTPHeaderListener
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) note: the plugin author must provide an instance to {geturl,posturl}() that implements both nsipluginstreamlistener and nsihttpheaderlistener.
nsIHapticFeedback
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/widget/hapticfeedback;1 as a service: var hapticfeedback = components.classes["@mozilla.org/widget/hapticfeedback;1"] .getservice(components.interfaces.nsihapticfeedback); once you have the service, you can initiate haptic feedback (that is, cause the device to vibrate, if it's supported) by calling performsimpleaction(): hapticfeedback.performsimpleaction(components.interfaces.nsihapticfeedback.longpress); method overview void performsimpleaction(in lo...
nsIHttpActivityDistributor
1.0 66 introduced gecko 1.9.2 inherits from: nsihttpactivityobserver last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: mozilla.org/network/http-activity-distributor;1 as a service: var httpactivitydistributor = components.classes["@mozilla.org/network/http-activity-distributor;1"] .getservice(components.interfaces.nsihttpactivitydistributor); method overview void addobserver(in nsihttpactivityobserver aobserver); void removeobserver(in nsihttpactivityobs...
nsIHttpActivityObserver
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void observeactivity(in nsisupports ahttpchannel, in pruint32 aactivitytype, in pruint32 aactivitysubtype, in prtime atimestamp, in pruint64 aextrasizedata, in acstring aextrastringdata); attributes attribute type description isactive boolean true when the interface is active and should observe http activity, otherwise false.
nsIHttpChannel
inherits from: nsichannel last
changed in gecko 1.3 to create an http channel, use nsiioservice with a http uri, for example: var ios = components.classes["@mozilla.org/network/io-service;1"] .getservice(components.interfaces.nsiioservice); var ch = ios.newchannel("https://www.example.com/", null, null); method overview void getoriginalresponseheader(in acstring aheader, in nsihttpheadervisitor avisitor); acstring getrequestheader(in acstring aheader); acstring getresponseheader(in acstring header); boole...
nsIHttpHeaderVisitor
inherits from: nsisupports last
changed in gecko 1.7 method overview void visitheader(in acstring aheader, in acstring avalue); methods visitheader() called by the nsihttpchannel implementation when visiting request and response headers.
nsIHttpUpgradeListener
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) this is used, for example, by websockets in order to upgrade an http channel to use the websocket protocol.
nsIIDNService
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/network/idn-service;1 as a service: var idnservice = components.classes["@mozilla.org/network/idn-service;1"] .getservice(components.interfaces.nsiidnservice); method overview autf8string convertacetoutf8(in acstring input); autf8string converttodisplayidn(in autf8string input, out boolean isascii); acstring convertutf8toace(in autf8string input); boolean isace(in acstring input); autf8string normalize(in autf8string input); methods convertacetoutf8() converts an ace (a...
nsIIFrameBoxObject
inherits from: nsicontainerboxobject last
changed in gecko 1.9 (firefox 3) the boxobject belonging to a xul iframe element implements this interface.
nsIINIParser
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) typically, you'll create an nsiiniparser object by calling nsiiniparserfactory.createiniparser().
nsIINIParserFactory
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) see example for how to use this interface.
nsIIdleService
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 16 (firefox 16 / thunderbird 16 / seamonkey 2.13) you can get the idle time directly, but in most cases you will want to register an observer for a predefined interval.
nsIInProcessContentFrameMessageManager
1.0 66 introduced gecko 2.0 inherits from: nsicontentframemessagemanager last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsicontent getownercontent(); violates the xpcom interface guidelines methods violates the xpcom interface guidelines getownercontent() nsicontent getownercontent(); parameters none.
nsIInputStream
inherits from: nsisupports last
changed in gecko 17.0 (firefox 17.0 / thunderbird 17.0 / seamonkey 2.14) an input stream may be "blocking" or "non-blocking" (see the isnonblocking() method).
nsIInputStreamCallback
inherits from: nsisupports last
changed in gecko 1.7 method overview void oninputstreamready(in nsiasyncinputstream astream); methods oninputstreamready() called to indicate that the stream is either readable or closed.
nsIInstallLocation
1.0 66 introduced gecko 1.8 obsolete gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: while this api still works, firefox 4 no longer extracts xpis by default, so this will now point to the xpi file instead of to the directory.
nsIInterfaceRequestor
inherits from: nsisupports last
changed in gecko 0.9.5 this is similar to nsisupports.queryinterface().
nsIJSCID
inherits from: nsijsid last
changed in gecko 1.7 method overview nsisupports createinstance(); nsisupports getservice(); methods createinstance() nsisupports createinstance(); parameters none.
nsIJSID
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) the following methods return objects that implement this interface: components.interfaces.name components.classes[contract] components.interfacesbyid[uuid] components.classesbyid[cid] the first two cases create a named jsid while the last two cases create an unnamed jsid.
nsIJSON
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) note: this interface may only be used from javascript code, with the exception of the legacydecodetojsval() method.
nsIJetpackService
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/jetpack/service;1.
nsIJumpListItem
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: to consumers: it's reasonable to expect we'll need support for other types of jump list items (an audio file, an email message, etc.).
nsILivemarkService
1.0 66 introduced gecko 1.8 obsolete gecko 22.0 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) this interface is obsolete.
nsILocalFile
66 introduced gecko 1.0 deprecated gecko 14 inherits from: nsifile last
changed in gecko 1.0 implemented by: @mozilla.org/file/local;1.
nsILocalFileMac
inherits from: nsilocalfile last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview cfurlref getcfurl(); native code only!
nsILocale
inherits from: nsisupports last
changed in gecko 1.0 method overview astring getcategory(in astring category); methods getcategory() retrieves a string with the current locale name.
nsILocaleService
1.0 66 introduced gecko 1.6 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/intl/nslocaleservice;1.
nsILoginInfo
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports implemented by: @mozilla.org/login-manager/logininfo;1.
nsILoginManagerCrypto
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview 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.
nsILoginManagerIEMigrationHelper
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void migrateandaddlogin(in nsilogininfo alogin); methods migrateandaddlogin() takes a login provided from nsieprofilemigrator, migrates it to the current login manager format, and adds it to the list of stored logins.
nsIMacDockSupport
1.0 66 introduced gecko 2.0 inherits from: nsimacdocksupport last
changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) implemented by: @mozilla.org/cookie-monster;1.
nsIMarkupDocumentViewer
inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) method overview void scrolltonode(in nsidomnode node); void sizetocontent(); attributes attribute type description allowplugins boolean if true, plugins are allowed within the doc shell.
nsIMemory
inherits from: nsisupports last
changed in gecko 0.9.6 nsimemory is used to allocate and deallocate memory segments from a heap.
nsIMemoryMultiReporter
1.0 66 introduced gecko 7.0 inherits from: nsisupports last
changed in gecko 12.0 (firefox 12.0 / thunderbird 12.0 / seamonkey 2.9) if you want to gather multiple measurements in a single operation (such as a single traversal of a large data structure), you can use a multi-reporter to do so.
nsIMemoryMultiReporterCallback
1.0 66 introduced gecko 7.0 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 2.4) method overview void callback(in acstring process, in autf8string path, in print32 kind, in print32 units, in print64 amount, in autf8string description, in nsisupports closure); methods callback() called to provide information from a multi-reporter.
nsIMemoryReporterManager
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by @mozilla.org/memory-reporter-manager;1 as a service: var reportermanager = components.classes["@mozilla.org/memory-reporter-manager;1"] .getservice(components.interfaces.nsimemoryreportermanager); each memory reporter object, which implements nsimemoryreporter interface, provides information for a given code area.
nsIMenuBoxObject
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) to get access to the box object for a given menu, use code like this: var boxobject = xulmenu.boxobject.queryinterface(components.interfaces.nsimenuboxobject); method overview boolean handlekeypress(in nsidomkeyevent keyevent); void openmenu(in boolean openflag); attributes attribute type description activechild nsidomelement the currently active menu or menuitem child of the menu box.
nsIMessageListener
if the message is synchronous, the possible return value is returned as json (will be
changed to use structured clones).
nsIMessageListenerManager
1.0 66 introduced gecko 17 inherits from: nsisupports last
changed in gecko 41 (firefox 41 / thunderbird 41 / seamonkey 2.38) implemented by: @mozilla.org/globalmessagemanager;1.
nsIMessageWakeupService
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: this service was introduced in gecko 5.0 on firefox for android, but was not provided on desktop until gecko 13.0 (firefox 13).
nsIMicrosummary
1.0 66 introduced gecko 1.8 obsolete gecko 6.0 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview void addobserver(in nsimicrosummaryobserver observer); boolean equals(in nsimicrosummary aother); void removeobserver(in nsimicrosummaryobserver observer); void update(); attributes attribute type description content astring the content of the microsummary.
nsIMicrosummaryGenerator
1.0 66 introduced gecko 1.8 obsolete gecko 6.0 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview long calculateupdateinterval(in nsidomnode apagecontent); boolean equals(in nsimicrosummarygenerator aother); astring generatemicrosummary(in nsidomnode apagecontent); attributes attribute type description loaded boolean has the generator itself (which may be a remote resource) been loaded.
nsIMicrosummarySet
1.0 66 introduced gecko 1.8 obsolete gecko 6.0 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) warning: microsummary support was removed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) method overview void addobserver(in nsimicrosummaryobserver observer); nsisimpleenumerator enumerate(); void removeobserver(in nsimicrosummaryobserver observer); methods addobserver() add a microsummary observer to this microsummary set.
nsIMimeHeaders
inherits from: nsisupports last
changed in gecko 1.7 implemented by: ?????????????????????????????????????.
nsIModule
inherits from: nsisupports last
changed in gecko 0.9.9 method overview boolean canunload(in nsicomponentmanager acompmgr); void getclassobject(in nsicomponentmanager acompmgr, in nscidref aclass, in nsiidref aiid, [retval, iid_is(aiid)] out nsqiresult aresult); void registerself(in nsicomponentmanager acompmgr, in nsifile alocation, in string aloaderstr, in string atype); void unregisterself(in nsicomponentmanager acompmgr, in nsifile alocation, in string aloaderstr); methods canunload() this method may be queried to determine whether or not the component module ca...
nsIMsgAccount
inherits from: nsisupports last
changed in gecko 1.7 method overview void addidentity(in nsimsgidentity identity); void clearallvalues(); void init(); void removeidentity(in nsimsgidentity identity); astring tostring(); attributes attribute type description defaultidentity nsimsgidentity identities nsisupportsarray read only.
nsIMsgCustomColumnHandler
last
changed in gecko 1.9 (firefox 3) inherits from: nsitreeview this interface is meant to be implemented by extensions, as shown in the tutorial.
nsIMsgDBView
viewnavigate()
change the view to show a particular message.
nsIMsgFilterList
stream ) writestrattr() void nsimsgfilterlist::writestrattr ( in nsmsgfilterfileattribvalue attrib, in string value, in nsioutputstream stream ) writewstrattr() void nsimsgfilterlist::writewstrattr ( in nsmsgfilterfileattribvalue attrib, in string value, in nsioutputstream stream ) matchor
changefiltertarget() boolean nsimsgfilterlist::matchor
changefiltertarget ( in acstring olduri, in acstring newuri, in boolean caseinsensitive ) clearlog() void nsimsgfilterlist::clearlog () ensurelogfile() void nsimsgfilterlist::ensurelogfile () flushlogifnecessary () void nsimsgfilterlist::flushlogifnecessary () const const nsmsgfilterfileattribvalue nsim...
nsIMsgHeaderParser
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) to create an instance, use: var msgheaderparser = components.classes["@mozilla.org/messenger/headerparser;1"] .createinstance(components.interfaces.nsimsgheaderparser); method overview string extractheaderaddressmailboxes(in string line); void extractheaderaddressname(in string line, out string name); void extractheaderaddressnames(in string line, out string usernames); astring makefulladdress(in astring aname, in astring aaddress); string makefulladdressstri...
nsIMsgSearchSession
void addscopeterm(in nsmsgsearchscopevalue scope, in nsimsgfolder folder); parameters scope folder adddirectoryscopeterm() void adddirectoryscopeterm(in nsmsgsearchscopevalue scope); parameters scope clearscopes() void clearscopes(); scopeusescustomheaders() call this function everytime the scope
changes!
nsIMsgWindow
inherits from: nsisupports last
changed in gecko 8 (firefox 8 / thunderbird 8 / seamonkey 2.5) implemented by: @mozilla.org/messenger/msgwindow;1.
nsIMutableArray
inherits from: nsiarray last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) consumers of nsiarray should not queryinterface to nsimutablearray unless they own the array.
nsINavHistoryBatchCallback
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void runbatched(in nsisupports auserdata); methods runbatched() void runbatched( in nsisupports auserdata ); parameters auserdata see also nsinavhistoryservice.runinbatchmode() nsinavbookmarksservice.runinbatchmode() ...
nsINavHistoryContainerResultNode
1.0 66 introduced gecko 1.9 inherits from: nsinavhistoryresultnode last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsinavhistoryresultnode findnodebydetails(in autf8string auristring, in prtime atime, in long long aitemid, in boolean arecursive); nsinavhistoryresultnode getchild(in unsigned long aindex); unsigned long getchildindex(in nsinavhistoryresultnode anode); attributes attribute type description childcount unsigned long the number of child nod...
nsINavHistoryFullVisitResultNode
1.0 66 introduced gecko 1.9 inherits from: nsinavhistoryvisitresultnode last
changed in gecko 1.9 (firefox 3) the information returned in this interface is not commonly used, hence its separation into a separate query type for efficiency.
nsINavHistoryQuery
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the nsinavhistoryquery is not intended to be a super-general query mechanism.
nsINavHistoryQueryOptions
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) method overview nsinavhistoryqueryoptions clone(); attributes attribute type description applyoptionstocontainers boolean if true, the query options are only applied to the containers.
nsINavHistoryQueryResultNode
1.0 66 introduced gecko 1.8 inherits from: nsinavhistorycontainerresultnode last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: if you request that places not be expanded in the options that generated the node, the node will report that it has no children and will never try to populate itself.
nsINavHistoryVisitResultNode
1.0 66 introduced gecko 1.9 inherits from: nsinavhistoryresultnode last
changed in gecko 1.9 (firefox 3) attributes attribute type description sessionid long long the session id of the visit, used for session grouping when a tree view is sorted by date.
nsINetworkLinkService
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: @mozilla.org/network/network-link-service;1 as a service: var networklinkservice = components.classes["@mozilla.org/network/network-link-service;1"] .getservice(components.interfaces.nsinetworklinkservice); attributes attribute type description islinkup boolean this is set to true when the system is believed to have a usable network connection.
nsIObserverService
inherits from: nsisupports last
changed in gecko 0.9.6 the xpcom nsobserverservice implements this interface to provide global notifications for a variety of subsystems.
nsIOutputStream
inherits from: nsisupports last
changed in gecko 1.0 an output stream may be "blocking" or "non-blocking" (see the isnonblocking() method).
nsIOutputStreamCallback
inherits from: nsisupports last
changed in gecko 1.7 method overview void onoutputstreamready(in nsiasyncoutputstream astream); methods onoutputstreamready() called to indicate that the stream is either writable or closed.
nsIParentalControlsService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) note: currently, this interface is only supported on microsoft windows vista and newer as well as android 4.3 and newer.
nsIParserUtils
1.0 66 introduced gecko 13.0 inherits from: nsisupports last
changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) warning: do not use this from within gecko--use nscontentutils, nstreesanitizer, and so on directly instead.
nsIPasswordManager
netwerk/base/public/nsipasswordmanager.idlscriptable used to interface with the built-in password manager 66 introduced gecko 1.0 deprecated gecko 1.9 inherits from: nsisupports last
changed in gecko 1.0 see using nsipasswordmanager for examples.
nsIPermission
last
changed in gecko 2 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) inherits from: nsisupports attributes attribute type description capability pruint32 the permission to set: allow, deny, or unknown (which is the default).
nsIPlacesImportExportService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) in the past, this interface also offered methods for importing places data, but those methods are now part of the bookmarkhtmlutils.jsm javascript code module.
nsIPluginHost
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsifile createtempfiletopost(in string apostdataurl); native code only!
nsIPrefLocalizedString
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void setdatawithlength(in unsigned long length, [size_is(length)] in wstring data); wstring tostring(); attributes attribute type description data wstring provides access to string data stored in this property.
nsIPrefService
inherits from: nsisupports last
changed in gecko 1.7 method overview nsiprefbranch getbranch(in string aprefroot); nsiprefbranch getdefaultbranch(in string aprefroot); void readuserprefs(in nsifile afile); void resetprefs(); void resetuserprefs(); void savepreffile(in nsifile afile); methods getbranch() call to get a preferences "branch" which accesses user preference ...
nsIPrinterEnumerator
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void displaypropertiesdlg(in wstring aprinter, in nsiprintsettings aprintsettings); void enumerateprinters(out pruint32 acount,[retval, array, size_is(acount)] out wstring aresult); obsolete since gecko 1.9 void initprintsettingsfromprinter(in wstring aprintername, in nsiprintsettings aprintsettings); attributes attribute type description defaultprintername wstring the name of the system default printer.
nsIProcess
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/process/util;1.
nsIProcess2
1.0 66 introduced gecko 1.9.1 obsolete gecko 1.9.2 inherits from: nsiprocess last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) gecko 1.9.2 note this interface was removed in gecko 1.9.2 and its method added to nsiprocess.
nsIProfileLock
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void unlock(); attributes attribute type description directory nsilocalfile the main profile directory.
nsIProfileUnlocker
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void unlock(in unsigned long aseverity); constants constant value description attempt_quit 0 politely ask the process currently holding the profile's lock to quit.
nsIProgrammingLanguage
inherits from: nsisupports last
changed in gecko 0.9.5 constants identifiers for programming languages.
nsIProgressEventSink
inherits from: nsisupports last
changed in gecko 1.7 this interface is used to asynchronously convey channel status and progress information that is generally not critical to the processing of the channel.
nsIPrompt
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) note: this interface is identical to nsipromptservice but without the parent nsidomwindow parameter.
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.
nsIProperties
inherits from: nsisupports last
changed in gecko 1.2 implemented by: @mozilla.org/file/directory_service;1.
nsIProperty
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description name astring get the name of the property.
nsIPropertyBag
inherits from: nsisupports last
changed in gecko 1.0 method overview nsivariant getproperty(in astring name); attributes attribute type description enumerator nsisimpleenumerator get a nsisimpleenumerator whose elements are nsiproperty objects.
nsIPropertyBag2
inherits from: nsipropertybag last
changed in gecko 1.0 method overview nsivariant get(in astring prop); acstring getpropertyasacstring(in astring prop); astring getpropertyasastring(in astring prop); autf8string getpropertyasautf8string(in astring prop); boolean getpropertyasbool(in astring prop); double getpropertyasdouble(in astring prop); print32 getpropertyasint32(in astring prop); print64 getpropertyasint64(in astring prop); void getpropertyasinterface(in astring prop, in nsiidref iid, [iid_is(iid), retval] out nsqiresult result); pruint32 getprope...
nsIPropertyElement
inherits from: nsisupports last
changed in gecko 1.0 attributes attribute type description key autf8string the key used to refer to this property.
nsIProtocolHandler
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview boolean allowport(in long port, in string scheme); nsichannel newchannel(in nsiuri auri); nsiuri newuri(in autf8string aspec, in string aorigincharset, in nsiuri abaseuri); attributes attribute type description defaultport long the default port is the port the protocol uses by default.
nsIProtocolProxyCallback
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void onproxyavailable(in nsicancelable arequest, in nsiuri auri, in nsiproxyinfo aproxyinfo, in nsresult astatus); methods onproxyavailable() this method is called when proxy info is available or when an error in the proxy resolution occurs.
nsIProtocolProxyFilter
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this interface is used to apply filters to the proxies selected for a given uri.
nsIProtocolProxyService
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/network/protocol-proxy-service;1.
nsIProxyInfo
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports attributes attribute type description failoverproxy nsiproxyinfo this attribute specifies the proxy to failover to when this proxy fails.
nsIPushMessage
inherits from: nsisupports last
changed in gecko 46.0 (firefox 46.0 / thunderbird 46.0 / seamonkey 2.43) nsipushmessage is the subject of a push-message observer notification.
nsIPushSubscription
inherits from: nsisupports last
changed in gecko 46.0 (firefox 46.0 / thunderbird 46.0 / seamonkey 2.43) each subscription is associated with a unique url generated by the push service.
nsIRadioInterfaceLayer
1.0 66 introduced gecko 12.0 inherits from: nsisupports last
changed in gecko 14.0 (firefox 14.0 / thunderbird 14.0 / seamonkey 2.11) implemented by: @mozilla.org/telephony/system-worker-manager;1.
nsIRandomGenerator
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void generaterandombytes(in unsigned long alength, [retval, array, size_is(alength)] out octet abuffer); methods generaterandombytes() generates the specified amount of random bytes.
nsIRequest
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) for example nsichannel typically passes itself as the nsirequest argument to the nsistreamlistener on each onstartrequest, ondataavaliable, and onstoprequest invocation.
nsIRequestObserver
inherits from: nsisupports last
changed in gecko 1.0 method overview void onstartrequest(in nsirequest arequest, in nsisupports acontext); void onstoprequest(in nsirequest arequest, in nsisupports acontext, in nsresult astatuscode); methods onstartrequest() called to signify the beginning of an asynchronous request.
nsISHistory
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) in an embedded browser environment, the nsiwebbrowser object creates an instance of session history for each open window.
nsISHistoryListener
inherits from: nsisupports last
changed in gecko 1.7 a session history listener is notified when pages are added to, removed from, and loaded from session history.
nsISOCKSSocketInfo
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description destinationaddr prnetaddrptr the destination server address.
nsISSLErrorListener
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) note: the recipient of this ssl status notification should not block.
nsISSLSocketControl
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview void proxystartssl(); void starttls(); attributes attribute type description forcehandshake boolean obsolete since gecko 1.9 notificationcallbacks nsiinterfacerequestor methods proxystartssl() starts an ssl proxy connection.
nsIScreen
inherits from: nsisupports last
changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) use nsiscreenmanager to obtain references to screens.
nsIScreenManager
66 introduced gecko 0.9.5 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/gfx/screenmanager;1 as a service: var screenmanager = components.classes["@mozilla.org/gfx/screenmanager;1"] .getservice(components.interfaces.nsiscreenmanager); method overview nsiscreen screenfornativewidget( in voidptr nativewidget ); native code only!
nsIScriptError
66 introduced gecko 1.0 inherits from: nsiconsolemessage last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/scripterror;1.
nsIScriptError2
1.0 66 introduced gecko 2.0 obsolete gecko 12.0 inherits from: nsiscripterror last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) in gecko 12.0 this interface was merged into the nsiscripterror interface.
nsIScriptableInputStream
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview unsigned long available(); void close(); void init(in nsiinputstream ainputstream); string read(in unsigned long acount); acstring readbytes(in unsigned long acount); methods available() return the number of bytes currently available in the stream.
nsIScriptableUnescapeHTML
1.0 66 introduced gecko 1.8 obsolete gecko 14.0 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) note: as of firefox 14, this interface is obsolete (but still available for compatibility with legacy extensions) and all its functionality is available with more configuration options via the nsiparserutils interface.
nsIScriptableUnicodeConverter
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by: @mozilla.org/intl/scriptableunicodeconverter.
nsIScrollable
inherits from: nsiscrollable last
changed in gecko 29.0 (firefox 29.0 / thunderbird 29.0 / seamonkey 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 geck...
nsISearchEngine
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void addparam(in astring name, in astring value, in astring responsetype); nsisearchsubmission getsubmission(in astring data, [optional] in astring responsetype, [optional] in astring purpose); boolean supportsresponsetype(in astring responsetype); attributes attribute type description alias astring an optional shortcut alias for the engine.
nsISearchSubmission
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) attributes attribute type description postdata nsiinputstream the post data associated with a search submission, wrapped in a mime input stream.
nsISecurityCheckedComponent
inherits from: nsisupports last
changed in gecko 1.7 capability strings in gecko, a "capability" is a string identifying a set of actions that code is allowed to perform.
nsISeekableStream
inherits from: nsisupports last
changed in gecko 1.7 method overview void seek(in long whence, in long long offset); void seteof(); long long tell(); constants constant value description ns_seek_set 0 specifies that the offset is relative to the start of the stream.
nsISelection2
1.0 66 introduced gecko 1.8 obsolete gecko 8.0 inherits from: nsiselection last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) in gecko 8.0 this interface was merged into the nsiselectionprivate interface.
nsISelectionController
inherits from: nsiselectiondisplay last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void characterextendforbackspace(); native code only!
nsISelectionImageService
inherits from: nsisupports last
changed in gecko 1.7 method overview void getimage(in short selectionvalue, out imgicontainer container); void reset(); methods getimage() retrieve the image for alpha blending.
nsIServerSocket
last
changed in gecko 1.6 inherits from: nsisupports implemented by: @mozilla.org/network/server-socket;1.
nsIServerSocketListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void onsocketaccepted(in nsiserversocket aserv, in nsisockettransport atransport); void onstoplistening(in nsiserversocket aserv, in nsresult astatus); methods onsocketaccepted() this method is called when a client connection is accepted.
nsIServiceManager
inherits from: nsisupports last
changed in gecko 1.0 method overview void getservice(in nscidref aclass, in nsiidref aiid, [iid_is(aiid),retval] out nsqiresult result); void getservicebycontractid(in string acontractid, in nsiidref aiid, [iid_is(aiid),retval] out nsqiresult result); boolean isserviceinstantiated(in nscidref aclass, in nsiidref aiid); boolean isserviceinstantiatedbycontractid(in string acontractid, in nsiidref aiid); methods getservice() this method returns a reference to a particular xpcom servi...
nsISessionStore
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 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.
nsISimpleEnumerator
inherits from: nsisupports last
changed in gecko 0.9.6 method overview nsisupports getnext(); boolean hasmoreelements(); methods getnext() called to retrieve the next element in the enumerator.
nsISmsDatabaseService
nsismsdatabaseservice dom/sms/interfaces/nsismsdatabaseservice.idlscriptable used to store and manage sms text messages for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last
changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsdatabaseservice;1.
nsISmsRequestManager
nsismsrequestmanager dom/sms/interfaces/nsismsrequestmanager.idlscriptable used to manage sms related requests and notifications for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last
changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsrequestmanager;1.
nsISmsService
dom/sms/interfaces/nsismsservice.idlscriptable used to send sms text messages for the websms api 1.0 66 introduced gecko 13.0 inherits from: nsisupports last
changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) implemented by: @mozilla.org/sms/smsservice;1.
nsISocketProvider
inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) implemented by: @mozilla.org/network/socket;2?type=foo.
nsISocketProviderService
66 introduced gecko 1.0 inherits from: nsisupports last
changed in gecko 1.7 method overview nsisocketprovider getsocketprovider(in string sockettype); methods getsocketprovider() given a string representing a socket type, this method returns an nsisocketprovider representing that socket type.
nsISocketTransportService
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/network/socket-transport-service;1.
nsISound
inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) warning: this interface should not be used to play custom sounds in modern code.
nsISpeculativeConnect
1.0 66 introduced gecko 15.0 inherits from: nsisupports last
changed in gecko 15.0 (firefox 15.0 / thunderbird 15.0 / seamonkey 2.12) to use this service, simply call nsisupports.queryinterface() on the nsiioservice you plan to use for the connection, to get access to the i/o service's implementation of nsispeculativeconnect.
nsIStackFrame
inherits from: nsisupports last
changed in gecko 1.7 method overview string tostring(); attributes attribute type description caller nsistackframe read only.
nsIStandardURL
inherits from: nsimutable last
changed in gecko 1.9 (firefox 3) implemented by: @mozilla.org/network/standard-url;1.
nsIStreamConverter
inherits from: nsistreamlistener last
changed in gecko 1.7 suppose you had code that converted plain text into html.
nsIStreamListener
inherits from: nsirequestobserver last
changed in gecko 1.0 classes which want to consume data from a nsichannel need to implement this interface.
nsIStringBundle
inherits from: nsisupports last
changed in gecko 1.7 this interface is used by xul:stringbundle to retrieve strings.
nsIStringBundleOverride
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/intl/stringbundle/text-override;1.
nsIStringEnumerator
inherits from: nsisupports last
changed in gecko 1.7 method overview astring getnext(); boolean hasmore(); methods getnext() called to retrieve the next string in the enumerator.
nsIStructuredCloneContainer
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) you can copy an object into an nsistructuredclonecontainer using initfromvariant() or initfrombase64().
nsIStyleSheetService
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports implemented by: @mozilla.org/content/style-sheet-service;1.
nsISupports
last
changed in gecko 1.0 method overview nsrefcnt addref();violates the xpcom interface guidelines void queryinterface(in nsiidref uuid, [iid_is(uuid),retval] out nsqiresult result); nsrefcnt release();violates the xpcom interface guidelines methods violates the xpcom interface guidelines addref() notifies the object that an interface pointer has been duplicated.
nsISupportsArray
inherits from: nsicollection last
changed in gecko 1.7 method overview boolean appendelements(in nsisupportsarray aelements); violates the xpcom interface guidelines nsisupportsarray clone(); void compact(); void deleteelementat(in unsigned long aindex); void deletelastelement(in nsisupports aelement); nsisupports elementat(in unsigned long aindex); violates the xpcom interface guidelines boolean enumeratebackwards(in nsisupportsarrayenumfunc afunc, in voidptr adata); violates the xpcom interface guidelines boolean enumerateforwards(in nsisupportsarrayenumfunc afunc, in voidptr adata); violates the xpcom interface guidelines boolean equals([const] in nsisupportsarray other); violates ...
nsISupportsCString
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data acstring provides access to the native type represented by the object.
nsISupportsChar
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data char provides access to the native type represented by the object.
nsISupportsDouble
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data double provides access to the native type represented by the object.
nsISupportsFloat
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data float provides access to the native type represented by the object.
nsISupportsID
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data nsidptr provides access to the native type represented by the object.
nsISupportsInterfacePointer
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data nsisupports provides access to the native type represented by the object.
nsISupportsPRBool
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data prbool provides access to the native type represented by the object.
nsISupportsPRInt16
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data print16 provides access to the native type represented by the object.
nsISupportsPRInt32
66 introduced gecko 1.0 inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data print32 provides access to the native type represented by the object.
nsISupportsPRInt64
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data print64 provides access to the native type represented by the object.
nsISupportsPRTime
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data prtime provides access to the native type represented by the object.
nsISupportsPRUint16
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data pruint16 provides access to the native type represented by the object.
nsISupportsPRUint32
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data pruint32 provides access to the native type represented by the object.
nsISupportsPRUint64
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data pruint64 provides access to the native type represented by the object.
nsISupportsPRUint8
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data pruint8 provides access to the native type represented by the object.
nsISupportsPrimitive
inherits from: nsisupports last
changed in gecko 1.7 attributes attribute type description type unsigned short this attribute provides access to the type represented by the nsisupportsprimitive instance.
nsISupportsString
inherits from: nsisupportsprimitive last
changed in gecko 1.2 method overview string tostring(); attributes attribute type description data astring provides access to the native type represented by the object.
nsISupportsVoid
inherits from: nsisupportsprimitive last
changed in gecko 1.0 method overview string tostring(); attributes attribute type description data voidptr this attribute provides access to the native type represented by the object.
nsISupportsWeakReference
inherits from: nsisupports last
changed in gecko 1.7 method overview nsiweakreference getweakreference(); methods getweakreference() produces an appropriate instance of nsiweakreference.
nsISupports proxies
the api has
changed in mozilla 1.9, but the prose below hasn't been updated yet.
nsITXTToHTMLConv
inherits from: nsistreamconverter last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) implemented by "@mozilla.org/streamconv;1?from=text/plain&to=text/html".
nsITaggingService
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/browser/tagging-service;1.
nsITaskbarPreview
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can not directly instantiate this interface.
nsITaskbarPreviewButton
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can't directly instantiate this interface.
nsITaskbarProgress
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview void setprogressstate(in nstaskbarprogressstate state, in unsigned long long currentvalue optional, in unsigned long long maxvalue optional); constants constant value description state_no_progress 0 stop displaying progress on the taskbar button.
nsITaskbarTabPreview
1.0 66 introduced gecko 1.9.2 inherits from: nsitaskbarpreview last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) tab preview support is disabled by default in gecko 1.9.2 creating an nsitaskbartabpreview for a window will automatically hide that window's nsitaskbarwindowpreview; this is done by windows and cannot be prevented.
nsITaskbarWindowPreview
1.0 66 introduced gecko 1.9.2 inherits from: nsitaskbarpreview last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) you can't directly instantiate this interface; instead, call nsiwintaskbar.gettaskbarwindowpreview() to get the taskbar preview for a specific window.
nsITelemetry
1.0 66 introduced gecko 6.0 inherits from: nsisupports last
changed in gecko 7.0 (firefox 7.0 / thunderbird 7.0 / seamonkey 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 getkeyedhistogrambyid(in acstring id); void capturestack(in acstring name); jsval sn...
nsITextInputProcessorCallback
dom/interfaces/base/nsitextinputprocessor.idlscriptable a callback interface for nsitextinputprocessor user 1.0 66 introduced gecko 38 inherits from: nsisupports last
changed in gecko 38.0 (firefox 38.0 / thunderbird 38.0 / seamonkey 2.35) nsitextinputprocessorcallback is defined for receiving requests and notifications to ime from gecko.
nsIThread
last
changed in gecko 1.9 (firefox 3) inherits from: nsieventtarget method overview void shutdown() boolean haspendingevents() boolean processnextevent(in boolean maywait) attributes attribute type description prthread prthread the nspr thread object corresponding to the nsithread.
nsIThreadEventFilter
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview boolean acceptevent(in nsirunnable event);violates the xpcom interface guidelines methods violates the xpcom interface guidelines acceptevent() this method is called to determine whether or not an event may be accepted by a nested event queue.
nsIThreadInternal
last
changed in gecko 1.9 (firefox 3) inherits from: nsithread method overview void popeventqueue(); void pusheventqueue(in nsithreadeventfilter filter); attributes attribute type description observer nsithreadobserver get/set the current thread observer; set to null to disable observing.
nsIThreadManager
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview nsithread getthreadfromprthread(in prthread prthread); native code only!
nsIThreadPoolListener
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview void onthreadcreated(); void onthreadshuttingdown(); methods onthreadcreated() called when a new thread is created by the thread pool.
nsITimer
last
changed in gecko 5 (firefox 5 / thunderbird 5 / seamonkey 2.2) inherits from: nsisupports implemented by: @mozilla.org/timer;1.
nsITimerCallback
inherits from: nsisupports last
changed in gecko 1.7 method overview void notify(in nsitimer timer); methods notify() initialize a timer to fire after the given millisecond interval.
nsIToolkit
inherits from: nsisupports last
changed in gecko 1.0 method overview void init(in prthread athread); methods init() initialize this toolkit with athread.
nsIToolkitProfile
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) you should not create these objects yourself; to obtain them, use the nsitoolkitprofileservice interface to create and obtain them.
nsITraceableChannel
1.0 66 introduced gecko 1.9.0.4 inherits from: nsisupports last
changed in gecko 1.9.0.4 the typical way to use this interface is as follows: register for the "http-on-examine-response" notification to track all http responses; skip redirects (responsestatus = 3xx on nsihttpchannel), since otherwise you may end up with two listeners registered for a channel; qi the channel passed as the "subject" to your observer to nsitraceablechannel, and replace the default nsistreamlistener (that passes the data to the original requester - e.g.
nsITransaction
inherits from: nsisupports last
changed in gecko 1.7 method overview void dotransaction(); boolean merge(in nsitransaction atransaction); void redotransaction(); void undotransaction(); attributes attribute type description istransient boolean the transaction's transient state.
nsITransactionList
inherits from: nsisupports last
changed in gecko 1.7 method overview nsitransactionlist getchildlistforitem(in long aindex); nsitransaction getitem(in long aindex); long getnumchildrenforitem(in long aindex); boolean itemisbatch(in long aindex); attributes attribute type description numitems long the number of transactions contained in this list.
nsITransactionListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void didbeginbatch(in nsitransactionmanager amanager, in nsresult aresult); void diddo(in nsitransactionmanager amanager, in nsitransaction atransaction, in nsresult adoresult); void didendbatch(in nsitransactionmanager amanager, in nsresult aresult); void didmerge(in nsitransactionmanager amanager, in nsitransaction atoptransaction, in nsitransaction atransactiontomerge, in boolean adidmerge, in nsresult amergeresult); void didredo(in nsitransactionmanager amanager, in nsitransaction atransaction, in nsresult aredoresult); void didundo(in nsitransactionmanager amanager, in nsit...
nsITransactionManager
inherits from: nsisupports last
changed in gecko 1.7 method overview void addlistener(in nsitransactionlistener alistener); void beginbatch(); void clear(); void dotransaction(in nsitransaction atransaction); void endbatch(); nsitransactionlist getredolist(); nsitransactionlist getundolist(); nsitransaction peekredostack(); nsitransaction peekundostack(); void redotransaction(); void removelistener(in nsitransactionlistener alistener); void undotransaction(); attributes attribute type description maxtransactioncount long sets the maximum number of transaction items the transaction manager will maintain at any ti...
nsITransferable
inherits from: nsisupports last
changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) implemented by: @mozilla.org/widget/transferable;1.
nsITransport
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) this interface provides methods to open blocking or non-blocking, buffered or unbuffered streams to the resource.
nsITransportEventSink
inherits from: nsisupports last
changed in gecko 1.7 method overview void ontransportstatus(in nsitransport atransport, in nsresult astatus, in unsigned long long aprogress, in unsigned long long aprogressmax); methods ontransportstatus() transport status notification.
nsITransportSecurityInfo
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) attributes attribute type description errormessage wstring error message on connection failure.
nsITreeColumn
last
changed in gecko 1.9 (firefox 3) inherits from: nsisupports method overview void getidconst([shared] out wstring idconst); native code only!
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 getkeycolumn(); 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.
nsITreeContentView
last
changed in gecko 1.8.0 inherits from: nsisupports method overview long getindexofitem(in nsidomelement item); nsidomelement getitematindex(in long index); attributes attribute type description root nsidomelement the element in the dom which this view uses as root content.
nsIURI
inherits from: nsisupports last
changed in gecko 6.0 (firefox 6.0 / thunderbird 6.0 / seamonkey 2.3) see the following rfcs for details: rfc3490: internationalizing domain names in applications (idna) rfc3986: uniform resource identifier (uri): generic syntax rfc3987: internationalized resource identifiers subclasses of nsiuri, such as nsiurl, impose further structure on the uri.
nsIURIFixup
inherits from: nsisupports last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 2.6) implemented by: @mozilla.org/docshell/urifixup;1 as a service: var urifixup = components.classes["@mozilla.org/docshell/urifixup;1"] .createinstance(components.interfaces.nsiurifixup); method overview nsiuri createexposableuri(in nsiuri auri); nsiuri createfixupuri(in autf8string auritext, in unsigned long afixupflags); nsiuri keywordtouri(in autf8string akeyword); nsiurifixupinfo getfixupuriinfo(in autf8string auritext, in unsigned long afixupflags); constants constant value description ...
nsIURL
inherits from: nsiuri last
changed in gecko 9.0 (firefox 9.0 / thunderbird 9.0 / seamonkey 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 = component...
nsIURLParser
inherits from: nsisupports last
changed in gecko 1.7 method overview void parseauthority(in string authority, in long authoritylen, out unsigned long usernamepos, out long usernamelen, out unsigned long passwordpos, out long passwordlen, out unsigned long hostnamepos, out long hostnamelen, out long port); void parsefilename(in string filename, in long filenamelen, out unsigned long basenamepos, out long basenamelen, out unsigned long extensionpos, out long extensionlen); void parsefilepath(in string filepath, in long filepathlen, out unsigned long directorypos, out long directorylen, out unsigned long basenamepos, out long basenamelen...
nsIUTF8ConverterService
inherits from: nsisupports last
changed in gecko 1.7 method overview autf8string convertstringtoutf8(in acstring astring, in string acharset, in boolean askipcheck); autf8string converturispectoutf8(in acstring aspec, in string acharset); methods convertstringtoutf8() ensure that astring is encoded in utf-8.
nsIUTF8StringEnumerator
inherits from: nsisupports last
changed in gecko 1.7 method overview autf8string getnext(); boolean hasmore(); methods getnext() returns the next string in the enumerator.
nsIUUIDGenerator
1.0 66 introduced gecko 1.8.1 inherits from: nsisupports last
changed in gecko 1.8.1 (firefox 2 / thunderbird 2 / seamonkey 1.1) implemented by @mozilla.org/uuid-generator; as a service: var uuidgenerator = components.classes["@mozilla.org/uuid-generator;1"] .getservice(components.interfaces.nsiuuidgenerator); method overview nsidptr generateuuid(); void generateuuidinplace(in nsnonconstidptr id); native code only!
nsIUpdate
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsiupdatepatch getpatchat(in unsigned long index); nsidomelement serialize(in nsidomdocument updates); attributes attribute type description appversion astring the application version of this update.
nsIUpdateCheckListener
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void oncheckcomplete(in nsixmlhttprequest request, [array, size_is(updatecount)] in nsiupdate updates, in unsigned long updatecount); void onerror(in nsixmlhttprequest request, in nsiupdate update); void onprogress(in nsixmlhttprequest request, in unsigned long position, in unsigned long totalsize); methods oncheckcomplete() called when the update check is completed.
nsIUpdateChecker
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void checkforupdates(in nsiupdatechecklistener listener, in boolean force); void stopchecking(in unsigned short duration); constants constant value description current_check 1 constant for the stopchecking() method indicating that only the current update check should be stopped.
nsIUpdateItem
1.0 66 introduced gecko 1.8 obsolete gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface is obsolete; instead of using the extension manager, you should use the addon manager.
nsIUpdateManager
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview nsiupdate getupdateat(in long index); void saveupdates(); attributes attribute type description activeupdate nsiupdate an nsiupdate object describing the currently in use update.
nsIUpdatePatch
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsidomelement serialize(in nsidomdocument updates); attributes attribute type description finalurl astring the final url this patch was being downloaded from.
nsIUpdatePrompt
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void checkforupdates(); void showupdateavailable(in nsiupdate update); void showupdatedownloaded(in nsiupdate update, [optional] in boolean background); void showupdateerror(in nsiupdate update); void showupdatehistory(in nsidomwindow parent); void showupdateinstalled(); methods checkforupdates() presents a user interface that checks for and displays the available updates.
nsIUpdateTimerManager
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void registertimer(in astring id, in nsitimercallback callback, in unsigned long interval); methods registertimer() presents a user interface that checks for and displays the available updates.
nsIUploadChannel
inherits from: nsisupports last
changed in gecko 1.7 method overview void setuploadstream(in nsiinputstream astream, in acstring acontenttype, in long acontentlength); attributes attribute type description uploadstream nsiinputstream get the stream (to be) uploaded by this channel.
nsIUploadChannel2
1.0 66 introduced gecko 1.9.2 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview void explicitsetuploadstream(in nsiinputstream astream, in acstring acontenttype, in long long acontentlength, in acstring amethod, in boolean astreamhasheaders); methods explicitsetuploadstream() sets a stream to be uploaded by this channel with the specified content-type and content-length header values.
nsIUrlListManagerCallback
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void handleevent(in acstring value); methods handleevent() void handleevent( in acstring value ); parameters value ...
nsIUserCertPicker
inherits from: nsisupports last
changed in gecko 1.7 method overview nsix509cert pickbyusage(in nsiinterfacerequestor ctx, in wstring selectednickname, in long certusage, in boolean allowinvalid, in boolean allowduplicatenicknames, out boolean canceled); methods pickbyusage() nsix509cert pickbyusage( in nsiinterfacerequestor ctx, in wstring selectednickname, in long certusage, in boolean allowinvalid, in boolean allowduplicatenicknames, out boolean canceled ); parameters ctx selectednickname certusage allowinvalid allowduplicatenicknames canceled return value ...
nsIUserInfo
inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/userinfo;1.
nsIVariant
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview acstring getasacstring(); native code only!
nsIVersionComparator
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) version strings are dot-separated sequences of version-parts.
nsIWeakReference
inherits from: nsisupports last
changed in gecko 0.9.9 an instance of nsiweakreference is a proxy object that cooperates with its referent to give clients a non-owning, non-dangling reference.
nsIWebBrowser
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) warning: this interface was frozen for a very long time, but was unfrozen for gecko 2.0.
nsIWebBrowserChrome
inherits from: nsisupports last
changed in gecko 0.9.6 method overview void destroybrowserwindow(); void exitmodaleventloop(in nsresult astatus); boolean iswindowmodal(); void setstatus(in unsigned long statustype, in wstring status); void showasmodal(); void sizebrowserto(in long acx, in long acy); attributes attribute type description chromeflags unsigned long the chrome flags for this browser chrome.
nsIWebBrowserChrome2
1.0 66 introduced gecko 1.9 inherits from: nsiwebbrowserchrome last
changed in gecko 1.9 (firefox 3) method overview void setstatuswithcontext(in unsigned long statustype, in astring statustext, in nsisupports statuscontext); methods setstatuswithcontext() called when the status text in the chrome needs to be updated.
nsIWebBrowserChrome3
1.0 66 introduced gecko 2.0 inherits from: nsiwebbrowserchrome2 last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview astring onbeforelinktraversal(in astring originaltarget, in nsiuri linkuri, in nsidomnode linknode, in prbool isapptab); methods onbeforelinktraversal() determines the appropriate target for a link.
nsIWebBrowserChromeFocus
inherits from: nsisupports last
changed in gecko 1.7 method overview void focusnextelement(); void focusprevelement(); methods focusnextelement() set the focus at the next focusable element in the chrome.
nsIWebBrowserFindInFrames
inherits from: nsisupports last
changed in gecko 1.7 get an instance by doing a queryinterface from nsiwebbrowserfind.
nsIWebContentHandlerRegistrar
inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by @mozilla.org/embeddor.implemented/web-content-handler-registrar;1 as a service: var nsiwchr = cc["@mozilla.org/embeddor.implemented/web-content-handler-registrar;1"] .getservice(ci.nsiwebcontenthandlerregistrar); method overview void registercontenthandler(in domstring mimetype, in domstring uri, in domstring title, in nsidomwindow contentwindow) void registerprotocolhandler(in domstring protocol,...
nsIWebPageDescriptor
inherits from: nsisupports last
changed in gecko 1.7 method overview void loadpage(in nsisupports apagedescriptor, in unsigned long adisplaytype); attributes attribute type description currentdescriptor nsisupports retrieves the page descriptor for the current document.
nsIWebSocketChannel
1.0 66 introduced gecko 8.0 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) implemented by: ?????????????????????????????????????.
nsIWebSocketListener
1.0 66 introduced gecko 8.0 inherits from: nsisupports last
changed in gecko 8.0 (firefox 8.0 / thunderbird 8.0 / seamonkey 2.5) method overview void onacknowledge(in nsisupports acontext, in pruint32 asize); void onbinarymessageavailable(in nsisupports acontext, in acstring amsg); void onmessageavailable(in nsisupports acontext, in autf8string amsg); void onserverclose(in nsisupports acontext, in unsigned short acode, in autf8string areason); void onstart(in nsisupports acontext); void onstop(in nsisupports acontext, in nsresult ...
nsIWebappsSupport
1.0 66 introduced gecko 2.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview void installapplication(in wstring title, in wstring uri, in wstring iconuri, in wstring icondata); boolean isapplicationinstalled(in wstring uri); methods installapplication() this method installs a web application.
nsIWifiAccessPoint
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) attributes attribute type description mac acstring the wifi access point's mac address.
nsIWinAccessNode
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) method overview voidptr querynativeinterface([const] in mscomiidref aiid); methods querynativeinterface() voidptr querynativeinterface( [const] in mscomiidref aiid ); parameters aiid return value ...
nsIWinAppHelper
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: @mozilla.org/xre/app-info;1.
nsIWindowCreator
inherits from: nsisupports last
changed in gecko 0.9.6 method overview nsiwebbrowserchrome createchromewindow(in nsiwebbrowserchrome parent, in pruint32 chromeflags); methods createchromewindow() create a new window.
nsIWindowsShellService
inherits from: nsishellservice last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview string getregistryentry(in long ahkeyconstant, in string asubkeyname, 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.
nsIWorker
1.0 66 introduced gecko 1.9.1 inherits from: nsiabstractworker last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) for usage details, see worker and the article using dom workers.
nsIWorkerFactory
dom/interfaces/threads/nsidomworkers.idlscriptable creates and returns a new worker 1.0 66 introduced gecko 2.0 obsolete gecko 8.0 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) this interface was removed in gecko 8.0.
nsIWorkerGlobalScope
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) attributes attribute type description location nsiworkerlocation read only.
nsIWorkerMessageEvent
1.0 66 introduced gecko 1.9.1 inherits from: nsidomevent last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void initmessageevent(in domstring atypearg, in boolean acanbubblearg, in boolean acancelablearg, in domstring adataarg, in domstring aoriginarg, in nsisupports asourcearg); attributes attribute type description data domstring the event's data.
nsIWorkerMessagePort
1.0 66 introduced gecko 1.9.1 inherits from: nsisupports last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) method overview void postmessage(in domstring amessage); methods postmessage() posts a message into the event queue.
nsIWorkerScope
1.0 66 introduced gecko 1.9.1 inherits from: nsiworkerglobalscope last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview void postmessage(in domstring amessage, [optional] in nsiworkermessageport amessageport); void close(); attributes attribute type description onclose nsidomeventlistener a listener object to be called when the worker stops running.
nsIWritablePropertyBag
1.0 66 introduced gecko 1.8 inherits from: nsipropertybag last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void deleteproperty(in astring name); void setproperty(in astring name, in nsivariant value); methods deleteproperty() delete a property with the given name.
nsIWritablePropertyBag2
1.0 66 introduced gecko 1.8 inherits from: nsipropertybag2 last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void setpropertyasacstring(in astring prop, in acstring value); void setpropertyasastring(in astring prop, in astring value); void setpropertyasautf8string(in astring prop, in autf8string value); void setpropertyasbool(in astring prop, in boolean value); void setpropertyasdouble(in astring prop, in double value); void setpropertyasint32(in astring prop, in print32 value); void setpropertyasint64(in astring prop, in print64 value); ...
nsIXFormsNSInstanceElement
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) interface code [scriptable, uuid(80669b92-8331-4f92-aaf8-06e80e6827b3)] interface nsixformsnsinstanceelement : nsisupports { nsidomdocument getinstancedocument(); }; methods getinstancedocument nsidomdocument getinstancedocument(); getinstancedocument returns a dom document that corresponds to the instance data associated with the instance element.
nsIXFormsNSModelElement
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) interface code [scriptable, uuid(85fd60c7-1db7-40c0-ae8d-f723fdd1eea8)] interface nsixformsnsmodelelement : nsisupports { nsidomnodelist getinstancedocuments(); }; methods getinstancedocuments nsidomnodelist getinstancedocuments(); getinstancedocuments returns a nsidomnodelist containing all the instance documents for the model, making it possible to enumerate over instances in the model without knowing their names.
nsIXMLHttpRequest
the 'onload', 'onerror', and 'onreadystate
change' attributes moved to nsijsxmlhttprequest, but if you're coding in c++ you should avoid using those.
nsIXMLHttpRequestEventTarget
1.0 66 introduced gecko 1.9.1 inherits from: nsidomeventtarget last
changed in gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamonkey 2.2) attributes attribute type description onabort nsidomeventlistener a javascript function object that gets invoked if the operation is canceled by the user.
nsIXMLHttpRequestUpload
1.0 66 introduced gecko 1.9.1 inherits from: nsidomeventtarget last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) attributes attribute type description onabort nsidomeventlistener onerror nsidomeventlistener onload nsidomeventlistener onloadstart nsidomeventlistener onprogress nsidomeventlistener see also nsixmlhttprequest nsixmlhttprequesteventtarget xmlhttprequest using xmlhttprequest ...
nsIXPCException
inherits from: nsiexception last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) method overview void initialize(in string amessage, in nsresult aresult, in string aname, in nsistackframe alocation, in nsisupports adata, in nsiexception ainner); xpcexjsval stealjsval(); native code only!
nsIXPCScriptable
last
changed in gecko 1.9.1 (firefox 3.5 / thunderbird 3.0 / seamonkey 2.0) inherits from: nsisupports method overview void precreate(in nsisupports nativeobj, in jscontextptr cx, in jsobjectptr globalobj, out jsobjectptr parentobj); void create(in nsixpconnectwrappednative wrapper, in jscontextptr cx, in jsobjectptr obj); void postcreate(in nsixpconnectwrappednative wrapper, in jscontextptr cx, in jsobjectptr obj)...
nsIXPConnect
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 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!
nsIXSLTException
inherits from: nsiexception last
changed in gecko 1.7 attributes attribute type description sourcenode nsidomnode the context node, may be null.
nsIXSLTProcessor
content/xslt/public/nsixsltprocessor.idlscriptable xslt processor inherits from: nsisupports last
changed in gecko 1.7 implemented by: @mozilla.org/document-transformer;1?type=xslt.
nsIXULAppInfo
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) in xulrunner applications nsixulappinfo obtains app-specific information from application.ini.
nsIXULBrowserWindow
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the xulbrowserwindow attribute exists on the nsixulwindow interface although both firefox and seamonkey also store their nsixulbrowserwindow reference in the global xulbrowserwindow object accessible from javascript code.
nsIXULBuilderListener
inherits from: nsisupports last
changed in gecko 1.7 method overview void didrebuild(in nsixultemplatebuilder abuilder); void willrebuild(in nsixultemplatebuilder abuilder); methods didrebuild() called after a template builder has rebuilt its content.
nsIXULRuntime
1.0 66 introduced gecko 1.8 inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/xre/app-info;1.
nsIXULSortService
inherits from: nsisupports last
changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 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!
nsIXULTemplateQueryProcessor
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) a query processor takes a template query and generates results for it given a datasource and a reference point.
nsIXULTemplateResult
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) each result is identified by an id, which must be unique within the set of results produced from a query.
nsIXmlRpcClient
last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) inherits from: nsisupports method overview void init(in string serverurl); void setauthentication(in string username, in string password); void clearauthentication(in string username, in string password); void setencoding(in string encoding); void setencoding(in unsigned long type, out nsiidref uuid, out nsqiresult result); void asynccall (in nsixmlrpcclientlistener listener, in nsisupports ctxt, in string methodname, in nsisupports arguments, in pruint32 count); attributes attribute type description serverurl readonly nsiur...
nsIXmlRpcFault
inherits from: nsisupports last
changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) method overview void init(in print32 faultcode, in string faultsring); string tostring(); attributes attribute type description faultcode print32 read only.
nsIZipEntry
inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) attributes attribute type description compression unsigned short the type of compression used for the item.
nsIZipReaderCache
inherits from: nsisupports last
changed in gecko 10.0 (firefox 10.0 / thunderbird 10.0 / seamonkey 2.7) implemented by: @mozilla.org/libjar/zip-reader-cache;1.
nsIZipWriter
1.0 66 introduced gecko 1.9 inherits from: nsisupports last
changed in gecko 1.9 (firefox 3) once all the operations you wish to perform are added to the queue, a call to processqueue() will perform the operations in the order they were added to the queue.
nsMsgRuleActionType
defined in comm-central/ mailnews/ base/ search/ public/ nsmsgfiltercore.idl typedef long nsmsgruleactiontype; [scriptable, uuid(59af7696-1e28-4642-a400-fa327ae0b8d8)] interface nsmsgfilteraction { /* if you
change these, you need to update filter.properties, look for filteractionx */ /* these longs are all actually of type nsmsgfilteractiontype */ const long custom=-1; /* see nsmsgfilteraction */ const long none=0; /* uninitialized state */ const long movetofolder=1; const long
changepriority=2; const long delete=3; const long markread=4; const long killthread=5; const long watchthread=6; const long markflagged=7; const long label=8; const long reply=9; const long forward=10; const long stopexecution=11; ...
nsMsgSearchAttrib
the number can be
changed, * however, because we never persist attribvalues as integers.
nsPIPromptService
inherits from: nsisupports last
changed in gecko 1.9.2 (firefox 3.6 / thunderbird 3.1 / fennec 1.0) implemented by: the contract id isn't defined.
XPCOM Interface Reference by grouping
nsiupdatechecker nsiupdatechecklistener nsiupdateitem nsiupdatemanager nsiupdatepatch nsiupdateprompt nsiupdatetimermanager nsiprogramminglanguage thunderbird credentials nsimsgaccountmanagerextension element nsieditormailsupport message nsidb
changeannouncer nsidb
changelistener nsimessenger nsimsgcompfields nsimsgcustomcolumnhandler nsimsgdatabase nsimsgdbhdr nsimsgdbview nsimsgdbviewcommandupdater nsimsgfolder nsimsgidentity nsimsgmessageservice nsimsgsendlater nsimsgthread nsimsgwindow nsimsgwindowcommands user history nsibrows...
nsIAbCard/Thunderbird3
in a big
change from the original nsiabcard, properties are now stored in a hash table instead of as attributes on the interface, allowing it to be more flexible.
nsICookie2 MOZILLA 1 8 BRANCH
last
changed in gecko 1.9 (firefox 3) inherits from: nsicookie2 attributes attribute type description ishttponly boolean holds true if the cookie is an http only cookie.
nsMsgNavigationType
last
changed in gecko 1.9 (firefox 3) constants name value description firstmessage 1 go to the first message in the view.
nsMsgViewCommandCheckState
last
changed in gecko 1.9 (firefox 3) constants name value description notused 0 checked 1 unchecked 2 ...
nsMsgViewCommandType
last
changed in gecko 1.9 (firefox 3) constants name value description markmessagesread 0 marks the selected messages as read.
nsMsgViewSortOrder
last
changed in gecko 1.9 (firefox 3) constants name value description none 0 ascending 1 descending 2 ...
nsMsgViewSortType
last
changed in gecko 1.9 (firefox 3) constants name value description bynone 0x11 not sorted bydate 0x12 bysubject 0x13 byauthor 0x14 byid 0x15 bythread 0x16 bypriority 0x17 bystatus 0x18 bysize 0x19 byflagged 0x1a byunread 0x1b byrecipient 0x1c bylocation 0x1d bytags 0x1e byjunkstatus 0x1f byattachments 0x20 byaccount 0x21 bycustom 0x22 byreceived 0x23...
XPCOM reference
in a big
change from the original nsiabcard, properties are now stored in a hash table instead of as attributes on the interface, allowing it to be more flexible.nsicookie2 mozilla 1 8 branchnsimsgsearchvaluedefined in comm-central/ mailnews/ base/ search/ public/ nsimsgsearchvalue.idl nsmsgmessageflagsthe nsmsgmessageflags interface describes possible flags for messages.
Getting Started Guide
the only place you can't use an nscomptr without
change is where a raw xpcom interface pointer is an `out' parameter.
Using nsCOMPtr
contents status, recent
changes, and plans recent
changes to nscomptr getting started guide introduction using nscomptr summary reference manual the basics initialization and assignment using an nscomptr<t> as a t* efficiency and correctness compiler annoyances frequently asked questions buildtime errors runtime errors how do i...
Weak reference
after all, the observable must send messages to each observer, notifying it of the appropriate state
changes.
Working with out parameters
adata and adatalen are marked as out, meaning that they act as "return values" for this method, and are
changed during the method call.
wrappedJSObject
while this behavior is nice for production code as it forces you to clearly define the interfaces that should be used to access the component, it's inconvenient to write the interfaces (and recompile each time you
change them) when working on a prototype of the component.
Xptcall Porting Guide
to
change the number of stubs or to
change their specific declaration) using the perl script xptcall/public/genstubs.pl.
pyxpidl
ions to typelib n/a (feature removed) -w turn on warnings n/a (this is now the default and can't be turned off) -v verbose mode (nyi) n/a (feature removed) -t creates a typelib of a specific version number n/a (feature removed, and probably never actually worked) -i add an entry to start of include path for #include "nsifoo.idl" -i (un
changed) -o specify the base name for output (-o /tmp/nsifoo for example) -o outputfile (this isn't just the base name, but needs to include the extension; for example -o /tmp/nsifoo.idl) -e specify an explicit output file name (-e /tmp/nsifoo.idl for example) n/a (this is subsumed by -o now) -d write dependencies (requires -e) -d (un
changed) -m s...
XUL Overlays
any skins that are loaded by an overlay destructively replace the master skin for the base file, and can
change the basic appearance of the package's skin in unfortunate ways.
Autoconfiguration in Thunderbird
author: ben bucksch please do not
change this document without consulting the author thunderbird 3.1 and later (and 3.0 to some degree) includes mail account autoconfiguration functionality.
nsIMsgCloudFileProvider
this might
change in the future, but as it stands, this function can simply return ns_error_not_implemented unless there are plans to call createnewaccount from the management or settings xhtml files.
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.
Main Windows
i assume that customizetoolbars was originally not in the toolkit, but in firefox's chrome, or that there were some special
changes wanted for thunderbird's implementation at some point.
Adding items to the Folder Pane
each time the folder pane determines that it is necessary to invalidate all its data (because of too many
changes, or more commonly because the folder pane's "mode" (aka view) has
changed), a "rebuild" occurs.
Finding the code for a feature
looking that up in mxr, its underlying function uses a very strange call prevhdrfolder[toggler](messages, key) to
change the key.
Folders and message lists
changing the current message selection in addition to getting the currently-selected messages, you can also
change the selection: gfolderdisplay.selectmessage(msghdr): selects a single message, as specified by msghdr (an nsimsgdbhdr) and scrolls to its position in the message list.
Using MAPI with Thunderbird's Windows 7 developer builds
(one way to create an elevated shell is to invoke the command prompt from the start menu, right click, and select run as administrator.) in the elevated shell,
change to the objdir/mozilla/dist/bin directory and enter this command: regsvr32 mapiproxy_inuse.dll ...
Zombie compartments
(please note that you may need to close the about:addons ui before
changes are made).
Working with data
var i = ctypes.int32_t(9); // create a c integer variable whose value is 9 var p = i.address(); // get a pointer to i p.contents = 12; //
change the value of i to 12 checking to see if a pointer is null this example demonstrates the use of the isnull() method to determine whether or not a pointer is null.
Int64
warning: do not rely on the value returned by this method, as it's subject to
change at any time, depending on the debugging needs of the developers.
UInt64
warning: do not rely on the value returned by this method, as it's subject to
change at any time, depending on the debugging needs of the developers.
Flash Activation: Browser Comparison - Plugins
fallback content triggers ui yes, with exceptions no yes small/hidden flash triggers additional ui yes no no enabling flash automatically reloads the page no yes yes other features related to flash domain blocking plugin power saver peripheral content pause each of the browser vendors has a roadmap about the future of flash and
changes to the user experience.
Preferences System
you should also be careful to specify the width of the window (in em) as appropriate using the preprocessor for each targeted platform, as well as the height (in em) for platforms where the window size does not
change as the selected panel is
changed (e.g.
DOM Property Viewer - Firefox Developer Tools
refreshing the display if the dom
changes you can hit the refresh button to update the display: filtering there is a search box within the toolbar: this filters the list to show only items which match the search term.
Use watchpoints - Firefox Developer Tools
a get watchpoint pauses whenever a property is read; a set watchpoint pauses whenever a property value
changes; a get or set watchpoint pauses whenever a property value is accessed in either way.
Source map errors - Firefox Developer Tools
ressourcen-adresse: moz-extension://c7f0f003-4fcf-49fd-8ec0-c49361266581/background.js source-map-adresse: background.js.map the only workaround is to manually
change the map url to a public one (http://localhost:1234/file.map.js) and start a local webserver at this port.
Debugger.Environment - Firefox Developer Tools
source metadata generated from file: js/src/doc/debugger/debugger.environment.md watermark: sha256:3d6f67939e351803d5d7fe201ed38c4aaf766caf032f255e168df1f1c6fe73cb
changeset: 7ae377917236 ...
Debugger.Frame - Firefox Developer Tools
source metadata generated from file: js/src/doc/debugger/debugger.frame.md watermark: sha256:b1894f88b76b7afd661f3044a05690d76d1498c54c596ca729c6ee0d150d2da1
changeset: e91b2c85aacd ...
Debugger.Memory - Firefox Developer Tools
source metadata generated from file: js/src/doc/debugger/debugger.memory.md watermark: sha256:2c1529d6932efec8c624a6f1f366b09cb7fce625a6468657fab81788240bc7ae
changeset: e91b2c85aacd ...
Debugger.Script - Firefox Developer Tools
source metadata generated from file: js/src/doc/debugger/debugger.script.md watermark: sha256:8816a4e8617be32c4ce7f3ae54970fe9c8a7d248175d215a8990ccff23e6efa9
changeset: 5572465c08a9+ ...
Debugger-API - Firefox Developer Tools
source metadata generated from file: js/src/doc/debugger/debugger-api.md watermark: sha256:6ee2381145a0d2e53d2f798f3f682e82dd7ab0caa0ac4dd5e56601c2e49913a7
changeset: ffa775dd5bd4 ...
Eyedropper - Firefox Developer Tools
underneath the magnifying glass it shows the color value for the current pixel using whichever scheme you've selected in settings > inspector > default color unit: you can use it in one of two ways: to select a color from the page and copy it to the clipboard to
change a color value in the inspector's rules view to a color you've selected from the page copying a color to the clipboard open the eyedropper in one of these two ways: select "eyedropper" under the "web developer" menu open the page inspector tab and click the eyedropper button in its toolbar as you move the mouse around the page you'll see the current color value in the eyedropper
change.
Index - 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.
Frame rate - Firefox Developer Tools
for example, if moving the mouse over some page element triggers some javascript that
changes the element's appearance, and that triggers a reflow and a repaint, then all this work needs to be completed in that frame.
Animating CSS properties - Firefox Developer Tools
the css rendering waterfall the process the browser uses to update the page when a css property has
changed can be described as a waterfall consisting of the following steps: recalculate style: every time a css property for an element
changes, the browser must recalculate computed styles.
Debugging Firefox Desktop - Firefox Developer Tools
if you want to debug a firefox instance from an external machine, you can
change this option, but only do this on a trusted network or set a strong firewall rule to lock down which machines can access it.
Settings - Firefox Developer Tools
to
change the threshold at which attributes are truncated, you can edit the about:config preference "devtools.markup.collapseattributelength".
Cookies - Firefox Developer Tools
note: some of the columns are not shown by default — to
change the column display, right-click on the existing table headings and use the resulting context menu to show/hide the columns.
Web Audio Editor - Firefox Developer Tools
two good demos are: the voice-
change-o-matic, which can apply various effects to the microphone input and also provides a visualisation of the result the violent theremin, which
changes the pitch and volume of a sine wave as you move the mouse pointer visualizing the graph the web audio editor will now display the graph for the loaded audio context.
Firefox Developer Tools
the ellipsis menu on the right-hand side of developer tools contains several commands that let you perform actions or
change tool settings.
AnalyserNode.fftSize - Web APIs
for more complete applied examples/information, check out our voice-
change-o-matic demo (see app.js lines 128–205 for relevant code).
Animation.currentTime - Web APIs
at the start of the game, her height is set between the two extremes by setting her animation's currenttime to half her keyframeeffect's duration: alice
change.currenttime = alice
change.effect.timing.duration / 2; a more generic means of seeking to the 50% mark of an animation would be: animation.currenttime = animation.effect.getcomputedtiming().delay + animation.effect.getcomputedtiming().activeduration / 2; reduced time precision to offer protection against timing attacks and fingerprinting, the precision of animation.currenttime might get ro...
Animation.pause() - Web APIs
animations created with the element.animate() method immediately start playing and must be paused manually if you want to avoid that: // animation of the cupcake slowly getting eaten up var nommingcake = document.getelementbyid('eat-me_sprite').animate( [ { transform: 'translatey(0)' }, { transform: 'translatey(-80%)' } ], { fill: 'forwards', easing: 'steps(4, end)', duration: alice
change.effect.timing.duration / 2 }); // doesn't actually need to be eaten until a click event, so pause it initially: nommingcake.pause(); additionally, when resetting : // an all-purpose function to pause the animations on alice, the cupcake, and the bottle that reads "drink me." var stopplayingalice = function() { alice
change.pause(); nommingcake.pause(); drinking.pause(); }; // when the u...
Animation.ready - Web APIs
g the ready promise: animation.ready.then(function() { // do whatever needs to be done when // the animation is ready to run }); example in the following example, the state of the animation will be running when the current ready promise is resolved because the animation does not leave the pending play state in between the calls to pause and play and hence the current ready promise does not
change.
Animation.startTime - Web APIs
you can read this value to determine what the start time is currently set at, and you can
change this value to make the animation start at a different time.
Animation.updatePlaybackRate() - Web APIs
updateplaybackrate() is an asynchronous method that sets the speed of an animation after synchronizing with its current playback position, ensuring that the resulting
change in speed does not produce a sharp jump.
Attr - Web APIs
this
change is implemented in chrome since version 46.0 and firefox since version 48.0.
AudioBufferSourceNode.loopEnd - Web APIs
buttons are provided to play and stop the audio playback, and slider controls are used to
change the playbackrate, loopstart and loopend properties on the fly.
AudioDestinationNode - Web APIs
their speakers), so you can get it hooked up inside an audio graph using only a few lines of code: var audioctx = new audiocontext(); var source = audioctx.createmediaelementsource(mymediaelement); source.connect(gainnode); gainnode.connect(audioctx.destination); to see a more complete implementation, check out one of our mdn web audio examples, such as voice-
change-o-matic or violent theremin.
AudioNode.disconnect() - Web APIs
if this value is an audioparam, then the connection to that audioparam is terminated, and the node's contributions to that computed parameter become 0 going forward once the
change takes effect.
AudioNode - Web APIs
for example, a volume control (gainnode) should be the last node so that volume
changes take immediate effect.
AudioTrack.enabled - Web APIs
once those have been found, the values of the two tracks' enabled properties are ex
changed, which results in swapping which of the two tracks is currently active.
AudioWorkletGlobalScope - Web APIs
// test-processor.js class testprocessor extends audioworkletprocessor { constructor () { super() // current sample-frame and time at the moment of instantiation // to see values
change, you can put these two lines in process method console.log(currentframe) console.log(currenttime) } // the process method is required - simply output silence, // which the outputs are already filled with process (inputs, outputs, parameters) { return true } } // the sample rate is not going to
change ever, // because it's a read-only property of a baseaudiocontext // and is...
AudioWorkletNodeOptions - Web APIs
this has the effect of changing the output channel count to dynamically
change to the computed number of channels, based on the input's channel count and the current setting of the audionode property channelcountmode.
BaseAudioContext.createGain() - Web APIs
the below snippet wouldn't work as is — for a complete working example, check out our voice-
change-o-matic demo (view source.) <div> <button class="mute">mute button</button> </div> var audioctx = new (window.audiocontext || window.webkitaudiocontext)(); var gainnode = audioctx.creategain(); var mute = document.queryselector('.mute'); var source; if (navigator.mediadevices.getusermedia) { navigator.mediadevices.getusermedia ( // constraints - only audio needed for this app { a...
BiquadFilterNode() - Web APIs
allpass: an allpass filter allows all frequencies through, but
changes the phase relationship between the various frequencies.
BlobBuilder - Web APIs
this can be "transparent" (endings un
changed) or "native" (endings
changed to match host os filesystem convention).
Body.arrayBuffer() - Web APIs
function readfile(file) { return new response(file).arraybuffer(); } <input type="file" on
change="readfile(this.files[0])"> specifications specification status comment fetchthe definition of 'arraybuffer()' in that specification.
CSSMediaRule - Web APIs
working draft no
changes from document object model (dom) level 2 style specification document object model (dom) level 2 style specificationthe definition of 'cssmediarule' in that specification.
CSSPageRule - Web APIs
working draft no
changes from document object model (dom) level 2 style specification document object model (dom) level 2 style specificationthe definition of 'csspagerule' in that specification.
CSSRuleList - Web APIs
note that being indirect-modify (
changeable but only having read-methods), rules are not added or removed from the list directly, but instead here, only via its parent stylesheet.
CSSStyleRule - Web APIs
working draft no
changes document object model (dom) level 2 style specificationthe definition of 'cssrule' in that specification.
CSS Painting API - Web APIs
for example: aside { background-image: paint(mypaintedimage); } the api defines paintworklet, a worklet that can be used to programmatically generate an image that responds to computed style
changes.
CanvasCaptureMediaStreamTrack.requestFrame() - Web APIs
this may
change in the future, so it would be wise to plan ahead and watch for exceptions such as securityerror (although the specific error that might be thrown is not mentioned in the spec, this is a likely candidate).
CanvasPattern.setTransform() - Web APIs
, 'repeat'); pattern.settransform(matrix.rotate(-45).scale(1.5)); ctx.fillstyle = pattern; ctx.fillrect(0, 0, 400, 400); }; note that newer browser versions started to support dommatrix as an input to settransform(), so for example you could replace the svgmatrix in the above example with the following: const matrix = new dommatrix([1, .2, .8, 1, 0, 0]); edit the code below and see your
changes update live in the canvas: playable code <canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> <svg id="svg1" style="display:none"></svg> <div class="playable-buttons"> <input id="edit" type="button" value="edit" /> <input id="reset" type="button" value="reset" /> </div> <textarea id="code" class="playable-code" style="height:120px"> var img = new image(); img.src...
CanvasRenderingContext2D.addHitRegion() - Web APIs
(event.region) { alert('ouch, my eye :('); } }); ctx.beginpath(); ctx.arc(100, 100, 75, 0, 2 * math.pi); ctx.linewidth = 5; ctx.stroke(); // eyes ctx.beginpath(); ctx.arc(70, 80, 10, 0, 2 * math.pi); ctx.arc(130, 80, 10, 0, 2 * math.pi); ctx.fill(); ctx.addhitregion({id: "eyes"}); // mouth ctx.beginpath(); ctx.arc(100, 110, 50, 0, math.pi); ctx.stroke(); edit the code below to see your
changes update live in the canvas.
CanvasRenderingContext2D.scrollPathIntoView() - Web APIs
html <canvas id="canvas"></canvas> javascript const canvas = document.getelementbyid('canvas'); const ctx = canvas.getcontext('2d'); ctx.beginpath(); ctx.fillrect(10, 10, 30, 30); ctx.scrollpathintoview(); edit the code below to see your
changes update live in the canvas: playable code <canvas id="canvas" width="400" height="200" class="playable-canvas"> <input id="button" type="range" min="1" max="12"> </canvas> <div class="playable-buttons"> <input id="edit" type="button" value="edit" /> <input id="reset" type="button" value="reset" /> </div> <textarea id="code" class="playable-code"> ctx.beginpath(); ctx.rect(10, 10, 30, 30); ...
Basic animations - Web APIs
var img = new image(); // user variables - customize these to
change the image being scrolled, its // direction, and the speed.
Drawing text - Web APIs
a textbaseline example edit the code below and see your
changes update live in the canvas: ctx.font = '48px serif'; ctx.textbaseline = 'hanging'; ctx.stroketext('hello world', 0, 100); playable code <canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> <div class="playable-buttons"> <input id="edit" type="button" value="edit" /> <input id="reset" type="button" value="reset" /> </div> <textarea id="code" class="playable-code"...
Using images - Web APIs
for instance, if you want to make a chart you could have a png image containing all the necessary text in a single file and depending on your data could
change the scale of your chart fairly easily.
Clients.claim() - Web APIs
this triggers a "controller
change" event on navigator.serviceworker in any clients that become controlled by this service worker.
Clipboard - Web APIs
for example, firefox does not yet support the "clipboard-read" and "clipboard-write" permissions, so access to the methods that access and
change the contents of the clipboard are restricted in other ways.
CompositionEvent.data - Web APIs
this value doesn't
change even if content
changes the selection range; rather, it indicates the string that was selected when composition started.
Console.profileEnd() - Web APIs
if console.profileend() is passed a profile name and it does not match the name of a profile being recorded, no
changes will be made.
ConstantSourceNode.offset - Web APIs
so you can
change the value of offset by setting the value of constantsourcenode.offset.value: myconstantsourcenode.offset.value = newvalue; syntax let offsetparameter = constantaudionode.offset; let offset = constantsourcenode.offset.value; constantsourcenode.offset.value = newvalue; value an audioparam object indicating the a-rate value returned for every sample by this node.
CustomElementRegistry.define() - Web APIs
xt.split(/\s+/g).length; } var count = 'words: ' + countwords(wcparent); // create a shadow root var shadow = this.attachshadow({mode: 'open'}); // create text node and add word count to it var text = document.createelement('span'); text.textcontent = count; // append it to the shadow root shadow.appendchild(text); // update count when element content
changes setinterval(function() { var count = 'words: ' + countwords(wcparent); text.textcontent = count; }, 200) } } // define the new element customelements.define('word-count', wordcount, { extends: 'p' }); <p is="word-count"></p> specifications specification status comment html living standardthe definition of 'customelements.define()' in that specif...
CustomElementRegistry - Web APIs
xt.split(/\s+/g).length; } var count = 'words: ' + countwords(wcparent); // create a shadow root var shadow = this.attachshadow({mode: 'open'}); // create text node and add word count to it var text = document.createelement('span'); text.textcontent = count; // append it to the shadow root shadow.appendchild(text); // update count when element content
changes setinterval(function() { var count = 'words: ' + countwords(wcparent); text.textcontent = count; }, 200) } } // define the new element customelements.define('word-count', wordcount, { extends: 'p' }); note: the customelementregistry is available through the window.customelements property.
DOMImplementation.createDocument() - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'domimplementation.createdocument' in that specification.
DOMPoint.z - Web APIs
unless transforms have
changed the orientation, a z of 0 is the plane of the screen, with positive values extending outward toward the user from the screen, and negative values receding into the distance behind the screen.
DOMPoint - Web APIs
dompoint is based on dompointreadonly but allows its properties' values to be
changed.
DOMPointInit - Web APIs
this same code will work to create a dompointreadonly object; just
change the interface name in the code.
DataTransfer.addElement() - Web APIs
return value void example this example shows the use of the addelement() method function
change_drag_node(event, node) { var dt = event.datatransfer; dt.addelement(node); } specifications this method is not defined in any web standard.
DataTransfer.setDragImage() - Web APIs
use the event target's id for the data ev.datatransfer.setdata("text/plain", ev.target.id); // create an image and use it for the drag image // note:
change "example.gif" to an existing image or the image will not // be created and the default drag image will be used.
Document: DOMContentLoaded event - Web APIs
js const log = document.queryselector('.event-log-contents'); const reload = document.queryselector('#reload'); reload.addeventlistener('click', () => { log.textcontent =''; window.settimeout(() => { window.location.reload(true); }, 200); }); window.addeventlistener('load', (event) => { log.textcontent = log.textcontent + 'load\n'; }); document.addeventlistener('readystate
change', (event) => { log.textcontent = log.textcontent + `readystate: ${document.readystate}\n`; }); document.addeventlistener('domcontentloaded', (event) => { log.textcontent = log.textcontent + `domcontentloaded\n`; }); result specifications specification status comment html living standardthe definition of 'domcontentloaded' in that specification.
Document.adoptNode() - Web APIs
the adopted node and its subtree is removed from its original document (if any), and its ownerdocument is
changed to the current document.
Document.fonts - Web APIs
to
change preferences in firefox, visit about:config.ie no support noopera full support 47safari full support 10webview android full support 60chrome android full support 60firefox and...
Document: fullscreenerror event - Web APIs
bubbles yes cancelable no interface event event handler property onfullscreenerror as with the fullscreen
change event, two fullscreenerror events are fired; the first is sent to the element which failed to
change modes, and the second is sent to the document which owns that element.
Document.getElementById() - Web APIs
example html <html> <head> <title>getelementbyid example</title> </head> <body> <p id="para">some text here</p> <button onclick="
changecolor('blue');">blue</button> <button onclick="
changecolor('red');">red</button> </body> </html> javascript function
changecolor(newcolor) { var elem = document.getelementbyid('para'); elem.style.color = newcolor; } result usage notes the capitalization of "id" in the name of this method must be correct for the code to function; getelementbyid() is not valid and will not work, however...
Document.hidden - Web APIs
syntax var boolean = document.hidden examples document.addeventlistener("visibility
change", function() { console.log( document.hidden ); // modify behavior...
Document.onoffline - Web APIs
the document.onoffline event handler is called when an offline is fired on the <body> element and bubbles up, when navigator.online property
changes and becomes false.
Document.open() - Web APIs
this is no longer the case.document non-spec'ed parameters to document.open gecko-specific notes starting with gecko 1.9, this method is subject to the same same-origin policy as other properties, and does not work if doing so would
change the document's origin.
Element.attachShadow() - Web APIs
m().split(/\s+/g).length; } var count = 'words: ' + countwords(wcparent); // create a shadow root var shadow = this.attachshadow({mode: 'open'}); // create text node and add word count to it var text = document.createelement('span'); text.textcontent = count; // append it to the shadow root shadow.appendchild(text); // update count when element content
changes setinterval(function() { var count = 'words: ' + countwords(wcparent); text.textcontent = count; }, 200) } } // define the new element customelements.define('word-count', wordcount, { extends: 'p' }); specifications specification status comment domthe definition of 'attachshadow()' in that specification.
Element: fullscreenerror event - Web APIs
bubbles yes cancelable no interface event event handler property onfullscreenerror as with the fullscreen
change event, two fullscreenerror events are fired; the first is sent to the element which failed to
change modes, and the second is sent to the document which contains that element.
Element.getBoundingClientRect() - Web APIs
this means that the rectangle's boundary edges (top, right, bottom, left)
change their values every time the scrolling position
changes (because their values are relative to the viewport and not absolute).
Element.hasAttribute() - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'element.hasattribute()' in that specification.
Element.hasAttributes() - Web APIs
obsolete no
change from document object model (dom) level 2 core specification document object model (dom) level 2 core specificationthe definition of 'hasattributes()' in that specification.
Element: mouseenter event - Web APIs
mouseenter the following trivial example uses the mouseenter event to
change the border on the div when the mouse enters the space alloted to it.
Element: mouseleave event - Web APIs
mouseleave the following trivial example uses the mouseenter event to
change the border on the <div> when the mouse enters the space alloted to it.
Element.onfullscreenerror - Web APIs
since full-screen mode
changes are only permitted in response to a user input, this causes an error to occur, which triggers the delivery of the fullscreenerror event to the error handler, let elem = document.queryselector("video")}} elem.onfullscreenerror = function ( event ) { displaywarning("unable to switch into full-screen mode."); }; //....
Element.outerHTML - Web APIs
notes if the element has no parent element, setting its outerhtml property will not
change it or its descendants.
Element: overflow event - Web APIs
</style> <script> var wrapper = document.getelementbyid("wrapper"), child = document.getelementbyid("child"), toggle = document.getelementbyid("toggle"); wrapper.addeventlistener("overflow", function( event ) { console.log( event ); }, false); wrapper.addeventlistener("underflow", function( event ) { console.log( event ); }, false); toggle.addeventlistener("
change", function( event ) { if ( event.target.checked ) { child.style.width = "40px"; child.style.height = "40px"; } else { child.style.width = "10px"; child.style.height = "10px"; } }, false); </script> specifications not part of any specification.
Element.part - Web APIs
here the part attribute is used to find the shadow parts, and the part property is then used to
change the part identifiers of each tab so the correct styling is applied to the active tab when tabs are clicked.
Element.shadowRoot - Web APIs
connectedcallback() { console.log('custom square element added to page.'); updatestyle(this); } attribute
changedcallback(name, oldvalue, newvalue) { console.log('custom square element attributes
changed.'); updatestyle(this); } in the updatestyle() function itself, we get a reference to the shadow dom using element.shadowroot.
Element: underflow event - Web APIs
</style> <script> var wrapper = document.getelementbyid("wrapper"), child = document.getelementbyid("child"), toggle = document.getelementbyid("toggle"); wrapper.addeventlistener("overflow", function( event ) { console.log( event ); }, false); wrapper.addeventlistener("underflow", function( event ) { console.log( event ); }, false); toggle.addeventlistener("
change", function( event ) { if ( event.target.checked ) { child.style.width = "40px"; child.style.height = "40px"; } else { child.style.width = "10px"; child.style.height = "10px"; } }, false); </script> specifications not part of any specification.
ElementTraversal - Web APIs
it has been split into two interfaces, containing the useful methods and properties for each kind of nodes: childnode parentnode as it was a pure interface, with no object of this type, this
change has no effect on the web.
Event.eventPhase - Web APIs
example html <h4>event propagation chain</h4> <ul> <li>click 'd1'</li> <li>analyse event propagation chain</li> <li>click next div and repeat the experience</li> <li>
change capturing mode</li> <li>repeat the experience</li> </ul> <input type="checkbox" id="chcapture" /> <label for="chcapture">use capturing</label> <div id="d1">d1 <div id="d2">d2 <div id="d3">d3 <div id="d4">d4</div> </div> </div> </div> <div id="divinfo"></div> css div { margin: 20px; padding: 4px; border: thin black solid; } #divinfo { margin: 18px; p...
FetchEvent() - Web APIs
resultingclientid read only a domstring containing the new clientid if the client
changes as a result of the page load.
Fetch basic concepts - Web APIs
as summarized below: new object's type creating constructor guard setting of associated headers object request request() request request() with mode of no-cors request-no-cors response response() response error() or redirect() methods immutable a header's guard affects the set(), delete(), and append() methods which
change the header's contents.
Cross-global fetch usage - Web APIs
so in the case described above, it is resolved against the iframe's location: let absolute = new url(relative, frame.contentwindow.location.href) there is a lot of discussion in progress about getting new specs to align with this behavior
change, to mitigate potential problems going forward.
Fetch API - Web APIs
in august 2017, the spec
changed the default credentials policy to 'same-origin'.
File.fileName - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
File.lastModified - Web APIs
example reading from file input <input type="file" multiple id="fileinput"> const fileinput = document.queryselector('#fileinput'); fileinput.addeventlistener('
change', (event) => { // files is a filelist object (similar to nodelist) const files = event.target.files; for (let file of files) { const date = new date(file.lastmodified); console.log(`${file.name} has a last modified date of ${date}`); } }); try the results out below: dynamically created files if a file is created dynamically, the last modified time can be supplied in the new...
File.name - Web APIs
example <input type="file" multiple on
change="processselectedfiles(this)"> function processselectedfiles(fileinput) { var files = fileinput.files; for (var i = 0; i < files.length; i++) { alert("filename " + files[i].name); } } try the results out below: specifications specification status comment file apithe definition of 'name' in that specification.
File.type - Web APIs
syntax var name = file.type; value a string, containing the media type(mime) indicating the type of the file, for example "image/png" for png images example <input type="file" multiple on
change="showtype(this)"> function showtype(fileinput) { var files = fileinput.files; for (var i = 0; i < files.length; i++) { var name = files[i].name; var type = files[i].type; alert("filename: " + name + " , type: " + type); } } note: based on the current implementation, browsers won't actually read the bytestream of a file to determine its media type.
FileList - Web APIs
/body> <script> var pullfiles=function(){ // love the query selector var fileinput = document.queryselector("#myfiles"); var files = fileinput.files; // cache files.length var fl = files.length; var i = 0; while ( i < fl) { // localize file var in the loop var file = files[i]; alert(file.name); i++; } } // set the input element on
change to call pullfiles document.queryselector("#myfiles").on
change=pullfiles; //a.t </script> </html> specifications specification status comment file apithe definition of 'filelist' in that specification.
FileReader: abort event - Web APIs
listener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } reader.abort(); } fileinput.addeventlistener('
change', handleselected); result specifications specification status file api working draft ...
FileReader: error event - Web APIs
input.files[0]; if (selectedfile) { reader.addeventlistener('error', () => { console.error(`error occurred reading file: ${selectedfile.name}`); }); reader.addeventlistener('load', () => { console.error(`file: ${selectedfile.name} read successfully`); }); reader.readasdataurl(selectedfile); } } fileinput.addeventlistener('
change', handleselected); specifications specification status file api working draft ...
FileReader: load event - Web APIs
reader.addeventlistener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } } fileinput.addeventlistener('
change', handleselected); result specifications specification status file api working draft ...
FileReader: loadend event - Web APIs
reader.addeventlistener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } } fileinput.addeventlistener('
change', handleselected); result specifications specification status file api working draft ...
FileReader: loadstart event - Web APIs
reader.addeventlistener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } } fileinput.addeventlistener('
change', handleselected); result specifications specification status file api working draft ...
onerror - Web APIs
the filereader onerror handler receives an event object, not an error object, as a parameter, but an error can be accessed from the filereader object, as instanceoffilereader.error // callback from a <input type="file" on
change="on
change(event)"> function on
change(event) { var file = event.target.files[0]; var reader = new filereader(); reader.onerror = function(event) { alert("failed to read file!\n\n" + reader.error); reader.abort(); // (...does this do anything useful in an onerror handler?) }; reader.readastext(file); } ...
FileReader.onload - Web APIs
example // callback from a <input type="file" on
change="on
change(event)"> function on
change(event) { var file = event.target.files[0]; var reader = new filereader(); reader.onload = function(e) { // the file's text will be printed here console.log(e.target.result) }; reader.readastext(file); } ...
FileReader: progress event - Web APIs
reader.addeventlistener('progress', handleevent); reader.addeventlistener('error', handleevent); reader.addeventlistener('abort', handleevent); } function handleselected(e) { eventlog.textcontent = ''; const selectedfile = fileinput.files[0]; if (selectedfile) { addlisteners(reader); reader.readasdataurl(selectedfile); } } fileinput.addeventlistener('
change', handleselected); result specifications specification status file api working draft ...
FileReader.readAsText() - Web APIs
when the read operation is complete, the readystate is
changed to done, the loadend event is triggered, and the result property contains the contents of the file as a text string.
FileRequest - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
GainNode() - Web APIs
the gainnode() constructor of the web audio api creates a new gainnode object which an audionode that represents a
change in volume.
HTMLHeadingElement - Web APIs
obsolete no
change document object model (dom) level 1 specificationthe definition of 'htmlheadingelement' in that specification.
HTMLImageElement.alt - Web APIs
view the css editors: if you
change the css below, please be sure to close the details box using the toggle at the top of the css view before saving.
HTMLImageElement.border - Web APIs
for example, if you have the following html: <img src="image.png" border="2"> the following will provide the same appearance using css instead of this obsolete property: <img src="image.png" style="border: 2px;"> you can further provide additional information to
change the color and other features of the border: <img src="image.png" style="border: dashed 2px #333388;"> specifications specification status comment html living standardthe definition of 'htmlimageelement.border' in that specification.
HTMLImageElement.complete - Web APIs
it's worth noting that due to the image potentially being received asynchronously, the value of complete may
change while your script is running.
HTMLImageElement.loading - Web APIs
preventing element shift during image lazy loads when an image whose loading has been delayed by the loading attribute being set to lazy is finally loaded, the browser will determine the final size of the <img> element based on the style and intrinsic size of the image, then reflow the document as needed to update the positions of elements based on any size
change made to the element to fit the image.
HTMLImageElement - Web APIs
this may
change as the image is adjusted due to changing conditions, as directed by any media queries which are in place.
HTMLInputElement.stepUp() - Web APIs
ncrements: <input type="time" min="09:00" step="900"> datetime-local 1 (day) same day of the week: <input type="datetime-local" min="019-12-25t19:30" step="7"> number 1 0.1 increments <input type="number" min="0" step="0.1" max="10"> range 1 increments by 2: <input type="range" min="0" step="2" max="10"> the method, when invoked,
changes the form control's value by the value given in the step attribute, multiplied by the parameter, within the constraints set on the form control.
HTMLInputElement.webkitEntries - Web APIs
html <input id="files" type="file" multiple> javascript document.getelementbyid("files").addeventlistener("
change", function(event) { event.target.webkitentries.foreach(function(entry) { /* do stuff with the entry */ }); }); each time a
change event occurs, this code iterates over the selected files, obtaining their filesystementry-based objects and acting on them.
HTMLInputElement - Web APIs
events listen to these events using addeventlistener() or by assigning an event listener to the oneventname property of this interface: input fires when the value of an <input>, <select>, or <textarea> element has been
changed.
HTMLIsIndexElement - Web APIs
obsolete no
change from document object model (dom) level 1 specification document object model (dom) level 1 specificationthe definition of 'htmlisindexelement' in that specification.
MSSiteModeEvent - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
msExtendedCode - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
expiration - Web APIs
this value may
change during a session lifetime, such as when an action triggers the start of a window.
createSession() - Web APIs
the mediakeys.createsession() method returns a new mediakeysession object, which represents a context for message ex
change with a content decryption module (cdm).
MediaKeys - Web APIs
methods mediakeys.createsession() returns a new mediakeysession object, which represents a context for message ex
change with a content decryption module (cdm).
MediaQueryList.addListener() - Web APIs
syntax mediaquerylist.addlistener(func) parameters func a function or function reference representing the callback function you want to run when the media query status
changes.
MediaQueryListEvent - Web APIs
the mediaquerylistevent object stores information on the
changes that have happened to a mediaquerylist object — instances are available as the event object on a function referenced by a mediaquerylist.on
change property or mediaquerylist.addlistener() call.
MediaStreamTrack: mute event - Web APIs
r("mute", event => { document.getelementbyid("timeline-widget").style.backgroundcolor = "#aaa"; }, false); musictrack.addeventlistener("unmute", event => { document.getelementbyid("timeline-widget").style.backgroundcolor = "#fff"; }, false); with these event handlers in place, when the track musictrack enters its muted state, the element with the id timeline-widget gets its background color
changed to #aaa.
MediaStreamTrack.onended - Web APIs
examples this example sets up an event handler for the ended event which
changes an on-screen icon to indicate that the track is no longer active.
MediaStreamTrack.onunmute - Web APIs
example this example creates an unmute event handler which
changes the state of a visual indicator to display the emoji character representing a "speaker" icon.
MediaStreamTrack: unmute event - Web APIs
r("mute", event => { document.getelementbyid("timeline-widget").style.backgroundcolor = "#aaa"; }, false); musictrack.addeventlistener("unmute", event => { document.getelementbyid("timeline-widget").style.backgroundcolor = "#fff"; }, false); with these event handlers in place, when the track musictrack enters its muted state, the element with the id timeline-widget gets its background color
changed to #aaa.
Using the MediaStream Recording API - Web APIs
shadow: 1px 1px 1px black; width: 100%; height: 100%; transform: translatex(100%); transition: 0.6s all; background-color: #999; background-image: linear-gradient(to top right, rgba(0,0,0,0), rgba(0,0,0,0.5)); } last, we write a rule to say that when the checkbox is checked (when we click/focus the label), the adjacent <aside> element will have its horizontal translation value
changed and transition smoothly into view: input[type=checkbox]:checked ~ aside { transform: translatex(0); } basic app setup to grab the media stream we want to capture, we use getusermedia().
MediaTrackConstraints.deviceId - Web APIs
an exception to the rule that device ids are the same across browsing sessions: private browsing mode will use a different id, and will
change it each browsing session.
MediaTrackConstraints.groupId - Web APIs
that means that a given track will only return one value for the groupid when you call getcapabilities(), and keep in mind that this value will
change for each browsing session.
MediaTrackSettings - Web APIs
these values will adhere as closely as possible to any constraints previously described using a mediatrackconstraints object and set using applyconstraints(), and will adhere to the default constraints for any properties whose constraints haven't been
changed, or whose customized constraints couldn't be matched.
Media Capture and Streams API (Media Stream) - Web APIs
capabilities, constraints, and settingsthe twin concepts of constraints and capabilities let the browser and web site or app ex
change information about what constrainable properties the browser's implementation supports and what values it supports for each one.
MessageEvent - Web APIs
if the onmessage event is attached using addeventlistener, the port is manually started using its start() method: myworker.port.start(); when the port is started, both scripts post messages to the worker and handle messages sent from it using port.postmessage() and port.onmessage, respectively: first.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } myworker.port.onmessage = function(e) { result1.textcontent = e.data; console.log('message received from worker'); } inside the worker we use ...
NodeFilter.acceptNode() - Web APIs
living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'nodefilter.acceptnode()' in that specification.
Notification.close() - Web APIs
function spawnnotification(thebody, theicon, thetitle) { var options = { body: thebody, icon: theicon }; var n = new notification(thetitle,options); document.addeventlistener('visibility
change', function() { if (document.visibilitystate === 'visible') { // the tab has become visible so clear the now-stale notification.
OfflineAudioContext - Web APIs
offlineaudiocontext.startrendering() starts rendering the audio, taking into account the current connections and the current scheduled
changes.
PannerNode.coneInnerAngle - Web APIs
awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.coneOuterAngle - Web APIs
awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.coneOuterGain - Web APIs
awtooth'; const panner = new pannernode(context); panner.panningmodel = 'hrtf'; next, we set up the cone of our spatialised sound, determining the area in which it can be heard: // this value determines the size of the area in which the sound volume is constant // if coneinnerangle == 30, it means that when the sound is rotated // by at most 15 (30/2) degrees either direction, the volume won't
change panner.coneinnerangle = 30; // this value determines the size of the area in which the sound volume decreases gradually // if coneouterangle == 45 and coneinnerangle == 30, it means that when the sound is rotated // by between 15 (30/2) and 22.5 (45/2) degrees either direction, // the volume will decrease gradually panner.coneouterangle = 45; // this value determines the volume of the sound outsi...
PannerNode.positionX - Web APIs
the audioparam contained by this property is read only; however, you can still
change the value of the parameter by assigning a new value to its audioparam.value property.
Path2D - Web APIs
the starting point is the last point in the current path, which can be
changed using moveto() before creating the bézier curve.
PaymentRequest.PaymentRequest() - Web APIs
starting with more recent browsers, this parameter is more generic than credit cards, it is a single domstring, and the meaning of the data parameter
changes with the supportedmethods.
PaymentRequest: merchantvalidation event - Web APIs
related events payerdetail
change, paymentmethod
change, shippingaddress
change, and shippingoption
change specifications specification status comment payment request apithe definition of 'merchantvalidation' in that specification.
PaymentResponse.retry() - Web APIs
async function recursivevalidate(request, response) { const promisestofixthings = []; const errors = await validate(request, response); if (!errors) { return; } if (errors.shippingaddress) { // "shippingaddress
change" fired at request object const promise = fixfield(request, "shippingaddress
change", shippingvalidator); promisestofixthings.push(promise); } if (errors.payer) { // "payerdetail
change" fired at response object const promise = fixfield(response, "payerdetail
change", payervalidator); promisestofixthings.push(promise); } await promise.all([response.retry(errors), ...promis...
Using the Payment Request API - Web APIs
in the following snippet we do just this — depending on whether the user can make a fast payment or needs to add payment credentials first, the title of the checkout button
changes between "fast checkout with w3c" and "setup w3c checkout".
PerformanceTiming.domComplete - Web APIs
the legacy performancetiming.domcomplete read-only property returns an unsigned long long representing the moment, in miliseconds since the unix epoch, when the parser finished its work on the main document, that is when its document.readystate
changes to 'complete' and the corresponding readystate
change event is thrown.
PerformanceTiming.domInteractive - Web APIs
the legacy performancetiming.dominteractive read-only property returns an unsigned long long representing the moment, in miliseconds since the unix epoch, when the parser finished its work on the main document, that is when its document.readystate
changes to 'interactive' and the corresponding readystate
change event is thrown.
PerformanceTiming.domLoading - Web APIs
the legacy performancetiming.domloading read-only property returns an unsigned long long representing the moment, in miliseconds since the unix epoch, when the parser started its work, that is when its document.readystate
changes to 'loading' and the corresponding readystate
change event is thrown.
PermissionStatus.state - Web APIs
syntax var permission = permissionstatus.state; example navigator.permissions.query({name:'geolocation'}).then(function(permissionstatus) { console.log('geolocation permission state is ', permissionstatus.state); permissionstatus.on
change = function() { console.log('geolocation permission status has
changed to ', this.state); }; }); specification specification status comment permissionsthe definition of 'state' in that specification.
Permissions API - Web APIs
permissionstatus provides access to the current status of a permission, and an event handler to respond to
changes in permission status.
PopStateEvent - Web APIs
a popstate event is dispatched to the window every time the active history entry
changes between two history entries for the same document.
PublicKeyCredential.id - Web APIs
examples var publickey = { 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { var id = newcredentialinfo.id; // do something with the id // send attestation response and client extensions // to the server to proce...
PublicKeyCredential.rawId - Web APIs
examples var options = { challenge: new uint8array(26) /* 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey: options }) .then(function (pubkeycredential) { var rawid = pubkeycredential.rawid; // do something with rawid }).catch(function (err) { // deal with any error }); specifications ...
PublicKeyCredentialCreationOptions.authenticatorSelection - Web APIs
examples var publickey = { authenticatorselection:{ authenticatorattachment: "cross-platform", requireresidentkey: true, userverification: "required" }, 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { ...
PublicKeyCredentialCreationOptions.challenge - Web APIs
examples var publickey = { 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(functio...
PublicKeyCredentialCreationOptions.excludeCredentials - Web APIs
id : new uint8array(26) /* this actually is given by the server */ }, { type: "public-key", // the id for john-doe@example.com id : new uint8array(26) /* another id */ } ], 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { ...
PublicKeyCredentialCreationOptions.extensions - Web APIs
examples var publickey = { extensions:{ uvi: true, loc: false, uvm: false, exts: true }, 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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // mybuffer will contain the result of any of the processing of the extensions var mybuffer = newcredentialinfo.getclientextensionresults(); // send atte...
PublicKeyCredentialCreationOptions.pubKeyCredParams - Web APIs
elliptic curve to be used if possible { type: "public-key", alg: -7 }, // if not, then we will fallback on an rsa algorithm { type: "public-key", alg: -37 } ], challenge: new uint8array(26) /* this actually is given from the server */, rp: { name: "example corp", id : "login.example.com" }, user: { id: new uint8array(26), /* to be
changed for each user */ name: "jdoe@example.com", displayname: "john doe", } }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(function (err) { console.error(err); }); specifications specificatio...
PublicKeyCredentialCreationOptions.timeout - Web APIs
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", }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send attestation response and client extensions // to the server to proceed with the registration // of the credential }).catch(functio...
PublicKeyCredentialCreationOptions.user - Web APIs
examples var publickey = { 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" }, pubkeycredparams: [ { type: "public-key", alg: -7 } ] }; navigator.credentials.create({ publickey }) .then(function (newcredentialinfo) { // send at...
RTCAnswerOptions - Web APIs
however, this is likely to
change in the future, so the type has been defined in preparation for that eventuality.
RTCConfiguration.iceServers - Web APIs
if the list of servers is
changed while a connection is already active by calling the the rtcpeerconnection method setconfiguration(), no immediate effect occurs.
RTCConfiguration - Web APIs
this configuration option cannot be
changed after it is first specified; once the certificates have been set, this property is ignored in future calls to rtcpeerconnection.setconfiguration().
RTCDataChannel.bufferedAmount - Web APIs
example the snippet below includes a function which
changes the contents of a block with the id "buffersize" to a string indicating the number of bytes currently buffered on an rtcdatachannel.
RTCDataChannel - Web APIs
the peer being invited to ex
change data receives a datachannel event (which has type rtcdatachannelevent) to let it know the data channel has been added to the connection.
RTCIceCandidateInit.candidate - Web APIs
that usage would
change the above sample to look like this: function goticecandidatemessage(msg) { var icecandidate = new rtcicecandidate(msg.candidate); pc.addicecandidate(icecandidate).catch({ /* handle error */ }); } specifications specification status comment webrtc 1.0: real-time communication between browsersthe definition of 'rtcicecandidateinit.candidate' in that specifi...
RTCIceServer - Web APIs
older versions of the webrtc specification included an url property instead of urls; this was
changed in order to let you specify multiple addresses for each server in the list, as shown in the example below.
RTCInboundRtpStreamStats.bytesReceived - Web APIs
this value can be used to calculate an approximation of the average media data rate: avgdatarate = rtcinboundrtpstreamstats.bytesreceived / elapsedtime; this value gets reset to zero if the sender's ssrc identifier
changes for any reason.
RTCInboundRtpStreamStats.qpSum - Web APIs
it's important to keep in mind that the value of qp can
change periodically—even every frame—so it's difficult to know for certain how substantial the compression is.
RTCOfferOptions - Web APIs
this is useful if network conditions have
changed in a way that make the current configuration untenable or impractical, for instance.
RTCPeerConnection() - Web APIs
this configuration option cannot be
changed after it is first specified; once the certificates have been set, this property is ignored in future calls to rtcpeerconnection.setconfiguration().
RTCPeerConnection.removeTrack() - Web APIs
if the connection has already been negotiated (signalingstate is set to "stable"), it is marked as needing to be negotiated again; the remote peer won't experience the
change until this negotiation occurs.
RTCRtpContributingSource.audioLevel - Web APIs
a value of 1.0 represents 0 dbov (maximum volume), a value of 0.0 represents silence, and a value of 0.5 represents approximately 6 db spl (decibels of sound pressure level)
change in the sound pressure level from 0 dbov.
RTCRtpReceiver.transport - Web APIs
syntax let transport = rtcrtpreceiver.transport; value an rtcdtlstransport object representing the underlying transport being used by the receiver to ex
change packets with the remote peer, or null if the receiver isn't yet connected to a transport.
RTCRtpSendParameters - Web APIs
transactionid a string containing a unique id for the last set of parameters applied; this value is used to ensure that setparameters() can only be called to alter
changes made by a specific previous call to getparameters().
SVGAnimateMotionElement - Web APIs
editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svganimatemotionelement' in that specification.
SVGAnimatedPoints - Web APIs
additionally, the points attribute on the original element accessed via the xml dom (e.g., using the getattribute() method call) will reflect any
changes made to the svganimatedpoints.points attribut.
cx - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgcircleelement.cx' in that specification.
cy - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgcircleelement.cy' in that specification.
r - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgcircleelement.r' in that specification.
SVGElement: resize event - Web APIs
bubbles no cancelable no interface svgevent event handler property onresize examples svgelem.addeventlistener('resize', () => { console.log('svg resized.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'event
changes in svg2' in that specification.
SVGElement: scroll event - Web APIs
bubbles no cancelable no interface svgevent event handler property onscroll examples svgelem.addeventlistener('scroll', () => { console.log('svg scrolled.'); }) specifications specification status comment scalable vector graphics (svg) 2the definition of 'event
changes in svg2' in that specification.
SVGEllipseElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgellipseelement' in that specification.
SVGFEBlendElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfeblendelement' in that specification.
SVGFEColorMatrixElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfecolormatrixelement' in that specification.
SVGFECompositeElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfecompositeelement' in that specification.
SVGFESpotLightElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfespotlightelement' in that specification.
SVGFETileElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfetileelement' in that specification.
SVGFETurbulenceElement - Web APIs
working draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgfeturbulenceelement' in that specification.
SVGGElement - Web APIs
candidate recommendation
changed the inheritance from svgelement to svggraphicselement and removed the implemented interfaces svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable.
SVGImageElement - Web APIs
candidate recommendation
changed the inheritance from svgelement to svggraphicselement, removed the implemented interfaces svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable and added the crossorigin property.
SVGLength - Web APIs
for example, if the original value were "0.5cm" and the method was invoked to convert to millimeters, then the unittype would be
changed to svg_lengthtype_mm, valueinspecifiedunits would be
changed to the numeric value 5 and valueasstring would be
changed to "5mm".
SVGLineElement - Web APIs
candidate recommendation
changed the inheritance from svgelement to svggeometryelement and removed the implemented interfaces svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable.
SVGLinearGradientElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svglineargradientelement' in that specification.
SVGMetadataElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgmetadataelement' in that specification.
SVGPreserveAspectRatio - Web APIs
exceptions on setting: a domexception with code no_modification_allowed_err is raised on an attempt to
change the value of an attribute on a read only object.
SVGRadialGradientElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgradialgradientelement' in that specification.
SVGSVGElement - Web APIs
to suspend redraw actions as a collection of svg dom
changes occur, precede the
changes to the svg dom with a method call similar to: const suspendhandleid = suspendredraw(maxwaitmilliseconds) and follow the
changes with a method call similar to: unsuspendredraw(suspendhandleid) note that multiple suspendredraw() calls can be used at once, and that each such method call is treated independently of the other suspendredraw() method calls.
SVGScriptElement - Web APIs
a domexception is raised with the code no_modification_allowed_err on an attempt to
change the value of a read only attribut.
SVGSetElement - Web APIs
editor's draft no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgsetelement' in that specification.
SVGStylable - Web APIs
the returned object is live;
changes to the objects represent immediate
changes to the objects to which the cssvalue is attached.
SVGSwitchElement - Web APIs
candidate recommendation
changed the inheritance from svgelement to svggraphicselement and removed the implemented interfaces svgtests, svglangspace, svgexternalresourcesrequired, svgstylable, and svgtransformable.
SVGSymbolElement - Web APIs
candidate recommendation
changed the inheritance from svgelement to svggraphicselement and removed the implemented interfaces svglangspace, svgexternalresourcesrequired, and svgstylable.
SVGTSpanElement - Web APIs
candidate recommendation no
changes scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgtspanelement' in that specification.
SVGTextContentElement - Web APIs
candidate recommendation
changed inheritance from svgelement to svggraphicselement and getstartpositionofchar() and removed implementations of svgtests, svglangspace, svgexternalresourcesrequired, svgstylable interfaces and getendpositionofchar() to return a dompoint instead of an svgpoint.
SVGTextPathElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgtextpathelement' in that specification.
SVGTextPositioningElement - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgtextpositioningelement' in that specification.
SVGUnitTypes - Web APIs
candidate recommendation no
change scalable vector graphics (svg) 1.1 (second edition)the definition of 'svgunittypes' in that specification.
Screen - Web APIs
events handler screen.onorientation
change a handler for the orientation
change event.
Screen Orientation API - Web APIs
38chrome android full support 38firefox android full support 43opera android full support 25safari ios no support nosamsung internet android full support 3.0on
changechrome full support 38edge full support 79firefox full support 43ie no support noopera full support 25safari no support nowebview ...
Selection.type - Web APIs
var selection; document.onselection
change = function() { console.log('new selection made'); selection = document.getselection(); console.log(selection.type); }; specifications specification status comment selection apithe definition of 'selection.type' in that specification.
ServiceWorkerRegistration.onupdatefound - Web APIs
the onupdatefound property of the serviceworkerregistration interface is an eventlistener property called whenever an event of type state
change is fired; it is fired any time the serviceworkerregistration.installing property acquires a new service worker.
ShadowRoot.mode - Web APIs
when the mode of a shadow root is "closed", the shadow root’s implementation internals are inaccessible and un
changeable from javascript—in the same way the implementation internals of, for example, the <video> element are inaccessible and un
changeable from javascript.
ShadowRoot - Web APIs
connectedcallback() { console.log('custom square element added to page.'); updatestyle(this); } attribute
changedcallback(name, oldvalue, newvalue) { console.log('custom square element attributes
changed.'); updatestyle(this); } in the updatestyle() function itself, we get a reference to the shadow dom using element.shadowroot.
SharedWorker() - Web APIs
examples the following code snippet shows creation of a sharedworker object using the sharedworker() constructor and subsequent usage of the object: var myworker = new sharedworker('worker.js'); myworker.port.start(); first.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } second.on
change = function() { myworker.port.postmessage([first.value,second.value]); console.log('message posted to worker'); } myworker.port.onmessage = function(e) { result1.textcontent = e.data; console.log('message received from worker'); } for a full example, see o...
SpeechGrammarList.SpeechGrammarList() - Web APIs
examples in our simple speech color
changer example, we create a new speechrecognition object instance using the speechrecognition() constructor, create a new speechgrammarlist, add our grammar string to it using the speechgrammarlist.addfromstring method, and set it to be the grammar that will be recognised by the speechrecognition instance using the speechrecognition.grammars property.
SpeechGrammarList - Web APIs
examples in our simple speech color
changer example, we create a new speechrecognition object instance using the speechrecognition() constructor, create a new speechgrammarlist, add our grammar string to it using the speechgrammarlist.addfromstring method, and set it to be the grammar that will be recognised by the speechrecognition instance using the speechrecognition.grammars property.
SpeechSynthesis.getVoices() - Web APIs
nt = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); document.getelementbyid("voiceselect").appendchild(option); } } populatevoicelist(); if (typeof speechsynthesis !== 'undefined' && speechsynthesis.onvoices
changed !== undefined) { speechsynthesis.onvoices
changed = populatevoicelist; } html <select id="voiceselect"></select> specifications specification status comment web speech apithe definition of 'getvoices()' in that specification.
SpeechSynthesisVoice - Web APIs
var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.appendchild(option); } } populatevoicelist(); if (speechsynthesis.onvoices
changed !== undefined) { speechsynthesis.onvoices
changed = populatevoicelist; } inputform.onsubmit = function(event) { event.preventdefault(); var utterthis = new speechsynthesisutterance(inputtxt.value); var selectedoption = voiceselect.selectedoptions[0].getattribute('data-name'); for(i = 0; i < voices.length ; i++) { if(voices[i].name === selectedoption) { utterthis.voice = voic...
StereoPannerNode.pan - Web APIs
we then use an oninput event handler to
change the value of the stereopannernode.pan parameter and update the pan value display when the slider is moved.
StereoPannerNode - Web APIs
we then use an oninput event handler to
change the value of the stereopannernode.pan parameter and update the pan value display when the slider is moved.
Storage API - Web APIs
to
change an origin's box mode requires permission to use the "persistent-storage" feature.
StyleSheet - Web APIs
working draft no
change from document object model (dom) level 2 style specification.
SubtleCrypto.deriveBits() - Web APIs
; sharedsecretvalue.classlist.add("fade-in"); sharedsecretvalue.addeventlistener("animationend", () => { sharedsecretvalue.classlist.remove("fade-in"); }); sharedsecretvalue.textcontent = `${buffer}...[${sharedsecret.bytelength} bytes total]`; } // generate 2 ecdh key pairs: one for alice and one for bob // in more normal usage, they would generate their key pairs // separately and ex
change public keys securely const generatealiceskeypair = window.crypto.subtle.generatekey( { name: "ecdh", namedcurve: "p-384" }, false, ["derivebits"] ); const generatebobskeypair = window.crypto.subtle.generatekey( { name: "ecdh", namedcurve: "p-384" }, false, ["derivebits"] ); promise.all([generatealiceskeypair, generatebobskeypair]).then(values => { const alicesk...
Touch() - Web APIs
(for example, the user agent may use the rotationangle value from the previous touch event, to avoid sudden
changes.).
Touch.radiusX - Web APIs
</div> var src = document.getelementbyid("src"); src.addeventlistener('touchstart', rotate); src.addeventlistener('touchmove', rotate); src.addeventlistener('touchend', rotate); function rotate (e) { var touch = e.
changedtouches.item(0); // turn off default event handling e.preventdefault(); // rotate element 'src'.
TouchEvent() - Web APIs
"
changedtouches", optional and defaulting to [], of type touch[], that is a list of objects for every point of contact which contributed to the event.
TrackEvent - Web APIs
the trackevent interface, which is part of the html dom specification, is used for events which represent
changes to a set of available tracks on an html media element; these events are addtrack and removetrack.
TreeWalker.currentNode - Web APIs
living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.currentnode' in that specification.
TreeWalker.filter - Web APIs
living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.filter' in that specification.
TreeWalker.root - Web APIs
living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.root' in that specification.
TreeWalker.whatToShow - Web APIs
living standard no
change from document object model (dom) level 2 traversal and range specification document object model (dom) level 2 traversal and range specificationthe definition of 'treewalker.whattoshow' in that specification.
UIEvent.view - Web APIs
obsolete from document object model (dom) level 2 events specification,
changed the type of view from abstractview to windowproxy.
UIEvent - Web APIs
obsolete added the uievent() constructor, deprecated the inituievent() method and
changed the type of view from abstractview to windowproxy.
URL - Web APIs
you can then easily read the parsed components of the url or make
changes to the url.
URL API - Web APIs
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.
USBInterface - Web APIs
it can be
changed by calling usbdevice.selectalternateinterface() with any other value found in alternates.
WaveShaperNode - Web APIs
for applied examples/information, check out our voice-
change-o-matic demo (see app.js for relevant code).
WebGLContextEvent - Web APIs
the webcontextevent interface is part of the webgl api and is an interface for an event that is generated in response to a status
change to the webgl rendering context.
WebGLRenderingContext.vertexAttribPointer() - Web APIs
texture coordinates, normalized to [0, 1] gl.vertexattribpointer(2, 2, gl.unsigned_short, true, 20, 16); gl.enablevertexattribarray(2); //set the attributes in the vertex shader to the same indices gl.bindattriblocation(shaderprogram, 0, 'position'); gl.bindattriblocation(shaderprogram, 1, 'normal'); gl.bindattriblocation(shaderprogram, 2, 'texuv'); //since the attribute indices have
changed, we must re-link the shader //note that this will reset all uniforms that were previously set.
Clearing by clicking - Web APIs
<p>a very simple webgl program that still shows some color and user interaction.</p> <p>you can repeatedly click the empty canvas or the button below to
change color.</p> <canvas id="canvas-view">your browser does not seem to support html5 canvas.</canvas> <button id="color-switcher">press here to switch color</button> body { text-align : center; } canvas { display : block; width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : inline-block; font-size : inherit; ...
Hello vertex attributes - Web APIs
click on the canvas to
change the horizontal position of the square.</p> <canvas>your browser does not seem to support html5 canvas.</canvas> body { text-align : center; } canvas { width : 280px; height : 210px; margin : auto; padding : 0; border : none; background-color : black; } button { display : block; font-size : inherit; margin : auto; padding : 0.6em; } <script type="x-shader/x-vertex" id="vertex-shader"> #version 100...
Scissor animation - Web APIs
the clear color state of webgl remains at the set value, until we
change it again when a new square is created.
Matrix math for the web - Web APIs
the amount of
change to apply to each of the width, height, and depth is placed diagonally starting at the top-left corner and making their way down toward the bottom-right.
Using shaders to apply color in WebGL - Web APIs
coloring the fragments as a refresher, here's what our fragment shader looked like previously: const fssource = ` void main() { gl_fragcolor = vec4(1.0, 1.0, 1.0, 1.0); } `; in order to pick up the interpolated color for each pixel, we need to
change this to fetch the value from the vcolor varying: const fssource = ` varying lowp vec4 vcolor; void main(void) { gl_fragcolor = vcolor; } `; each fragment receives the interpolated color based on its position relative to the vertex positions instead of a fixed value.
Using WebGL extensions - Web APIs
if you wish to work with the bleeding edge of extensions, and want to keep working on upon ratification (assuming, of course, that the extension doesn't
change in incompatible ways), that you query the canonical extension name as well as the vendor extension name.
Improving compatibility using WebRTC adapter.js - Web APIs
what adapter.js does for each version of each browser that supports webrtc, adapter.js implements the needed polyfills, establishes the non-prefixed names of apis, and applies any other
changes needed to make the browser run code written to the webrtc specification.
WebRTC Statistics API - Web APIs
mapping of statistic category names to the dictionaries they implement statistic category name (rtcstatstype) description dictionaries implemented candidate-pair statistics describing the
change from one rtcicetransport to another, such as during an ice restart.
WebSocket.onclose - Web APIs
the websocket.onclose property is an eventhandler that is called when the websocket connection's readystate
changes to closed.
WebSocket.onopen - Web APIs
the websocket.onopen property is an eventhandler that is called when the websocket connection's readystate
changes to 1; this indicates that the connection is ready to send and receive data.
Web Animations API Concepts - Web APIs
the two models: timing and animation the web animations api runs on top of two models, one that handles time—timing—and one that handles visual
change over time—animation.
Using IIR filters - Web APIs
it includes some different coefficient values for different lowpass frequencies — you can
change the value of the filternumber constant to a value between 0 and 3 to check out the different available effects.
Web NFC API - Web APIs
the web nfc api allows exchanging data over nfc via light-weight nfc data ex
change format (ndef) messages.
WheelEvent - Web APIs
instead, detect value
changes to scrollleft and scrolltop of the target in the scroll event.
Window: blur event - Web APIs
bubbles no cancelable no interface focusevent event handler property onblur sync / async sync composed yes examples live example this example
changes the appearance of a document when it loses focus.
Window.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.
Window.content - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
Window: focus event - Web APIs
bubbles no cancelable no interface focusevent event handler property onfocus sync / async sync composed yes examples live example this example
changes the appearance of a document when it loses focus.
Window.frameElement - Web APIs
example const frameel = window.frameelement; // if we're embedded,
change the containing element's url to 'http://mozilla.org/' if (frameel) { frameel.src = 'http://mozilla.org/'; } specifications specification status comment html living standardthe definition of 'window.frameelement' in that specification.
Window.getDefaultComputedStyle() - Web APIs
see http://blog.mozilla.com/security/2010/03/31/plugging-the-css-history-leak/ and http://hacks.mozilla.org/2010/03/privacy-related-
changes-coming-to-css-vistited/ for details of the examples of how this is implemented.
Window.innerWidth - Web APIs
to
change the window's width, use one of the window methods for resizing windows, such as resizeby() or resizeto().
Window: load event - Web APIs
} js const log = document.queryselector('.event-log-contents'); const reload = document.queryselector('#reload'); reload.addeventlistener('click', () => { log.textcontent =''; window.settimeout(() => { window.location.reload(true); }, 200); }); window.addeventlistener('load', (event) => { log.textcontent = log.textcontent + 'load\n'; }); document.addeventlistener('readystate
change', (event) => { log.textcontent = log.textcontent + `readystate: ${document.readystate}\n`; }); document.addeventlistener('domcontentloaded', (event) => { log.textcontent = log.textcontent + `domcontentloaded\n`; }); result specifications specification status comment ui eventsthe definition of 'load' in that specification.
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.
Window.sessionStorage - Web APIs
// get the text field that we're going to track let field = document.getelementbyid("field"); // see if we have an autosave value // (this will only happen if the page is accidentally refreshed) if (sessionstorage.getitem("autosave")) { // restore the contents of the text field field.value = sessionstorage.getitem("autosave"); } // listen for
changes in the text field field.addeventlistener("
change", function() { // and save the results into the session storage object sessionstorage.setitem("autosave", field.value); }); note: please refer to the using the web storage api article for a full example.
Window.speechSynthesis - Web APIs
var option = document.createelement('option'); option.textcontent = voices[i].name + ' (' + voices[i].lang + ')'; if(voices[i].default) { option.textcontent += ' -- default'; } option.setattribute('data-lang', voices[i].lang); option.setattribute('data-name', voices[i].name); voiceselect.appendchild(option); } } populatevoicelist(); if (speechsynthesis.onvoices
changed !== undefined) { speechsynthesis.onvoices
changed = populatevoicelist; } inputform.onsubmit = function(event) { event.preventdefault(); var utterthis = new speechsynthesisutterance(inputtxt.value); var selectedoption = voiceselect.selectedoptions[0].getattribute('data-name'); for(i = 0; i < voices.length ; i++) { if(voices[i].name === selectedoption) { utterthis.voice = voic...
Window.window - Web APIs
another advantage, is that the objects of such a class (even if the class were defined outside of a module) could
change their reference to the window at will, they would not be able to do this if they had hard-coded a reference to "window".
WindowEventHandlers.onafterprint - Web APIs
the beforeprint and afterprint events allow pages to
change their content before printing starts (perhaps to remove a banner, for example) and then revert those
changes after printing has completed.
WindowEventHandlers.onbeforeprint - Web APIs
the beforeprint and afterprint events allow pages to
change their content before printing starts (perhaps to remove a banner, for example) and then revert those
changes after printing has completed.
WindowProxy - Web APIs
when a browsing context is navigated, the window object its windowproxy wraps is
changed.
Worker() - Web APIs
examples the following code snippet shows creation of a worker object using the worker() constructor and subsequent usage of the object: var myworker = new worker('worker.js'); first.on
change = function() { myworker.postmessage([first.value,second.value]); console.log('message posted to worker'); } for a full example, see our basic dedicated worker example (run dedicated worker).
Worker - Web APIs
example the following code snippet creates a worker object using the worker() constructor, then uses the worker object: var myworker = new worker('/worker.js'); var first = document.queryselector('input#number1'); var second = document.queryselector('input#number2'); first.on
change = function() { myworker.postmessage([first.value, second.value]); console.log('message posted to worker'); } for a full example, see ourbasic dedicated worker example (run dedicated worker).
HTML in XMLHttpRequest - Web APIs
est file is small and is not well-formed xml: <title>&&<</title> if the file is named detect.html, the following function can be used for detecting html parsing support: function detecthtmlinxhr(callback) { if (!window.xmlhttprequest) { window.settimeout(function() { callback(false); }, 0); return; } var done = false; var xhr = new window.xmlhttprequest(); xhr.onreadystate
change = function() { if (this.readystate == 4 && !done) { done = true; callback(!!(this.responsexml && this.responsexml.title && this.responsexml.title == "&&<")); } } xhr.onabort = xhr.onerror = function() { if (!done) { done = true; callback(false); } } try { xhr.open("get", "detect.html"); xhr.responsetype = "document"; xhr.send(); } catc...
XMLHttpRequest.send() - Web APIs
}; xhr.send(null); // xhr.send('string'); // xhr.send(new blob()); // xhr.send(new int8array()); // xhr.send(document); example: post var xhr = new xmlhttprequest(); xhr.open("post", '/server', true); //send the proper header information along with the request xhr.setrequestheader("content-type", "application/x-www-form-urlencoded"); xhr.onreadystate
change = function() { // call a function when the state
changes.
XRInputSourceEvent() - Web APIs
the xrinputsourceevent() constructor creates and returns a new xrinputsourceevent object describing an event (state
change) which has occurred on a webxr user input device represented by an xrinputsource.
XRPermissionStatus - Web APIs
the xrpermissionstatus interface defines the object returned by calling navigator.permissions.query() for the xr permission name; it indicates whether or not the app or site has permission to use webxr, an may be monitored over time for
changes to that permissions tate.
XRReferenceSpaceEvent() - Web APIs
transform an xrrigidtransform which maps the old coordinate system (from before the
changes indicated by this event) to the new coordiante system.
XRReferenceSpaceEvent.transform - Web APIs
the read-only xrreferencespaceevent property transform indicates the position and orientation of the affected referencespace's native origin after the
changes the event represents are applied.
XRReferenceSpaceEvent - Web APIs
event types reset the reset event is sent to a reference space when its native origin is
changed due to a discontinuity, recalibration, or device reset.
XRReferenceSpaceEventInit.transform - Web APIs
the xrreferencespaceeventinit property transform indicates the position and orientation of the affected reference space's native origin after the
changes the event represents are applied.
XRReferenceSpaceEventInit - Web APIs
transform an xrrigidtransform which maps the old coordinate system (from before the
changes indicated by this event) to the new coordiante system.
XRRenderState - Web APIs
when you apply
changes using the xrsession method updaterenderstate(), the specified
changes take effect after the current animation frame has completed, but before the next one begins.
msthumbnailclick - Web APIs
there may also be large incompatibilities between implementations and the behavior may
change in the future.
Using the status role - Accessibility
<p role="status">your
changes were automatically saved.</p> working examples: notes aria attributes used status related aria techniques alert role live region roles live region attributes compatibility the paciello group published some data on compatibility via their 2014 blog post: screen reader support for aria live regions tbd: add updated support information for common ua and at product c...
ARIA: grid role - Accessibility
aria-readonly if the user can navigate the grid but not
change the value or values of the grid, the aria-readonly should be set to true.
ARIA: heading role - Accessibility
the heading role and aria-level attribute should only be used to retrofit accessibility on legacy code that you cannot make major
changes to.
ARIA: textbox role - Accessibility
for example, in a combobox, focus may remain on the textbox while the value of aria-activedescendant on the textbox element refers to a descendant of a popup listbox that is controlled by the textbox.this attribute must be updated programmatically as the focus
changes.
WAI-ARIA Roles - Accessibility
a rowgroup contains one or more rows of cells, grid cells, column headers, or row headers within a grid, table or treegrid.aria: search rolethe search landmark role is used to identify a section of the page used to search the page, site, or collection of sites.aria: suggestion rolethe suggestion landmark role semantically denotes a single proposed
change to an editable document.
Basic form hints - Accessibility
<button aria-describedby="descriptionrevert">revert</button> <div id="descriptionrevert">reverting will undo any
changes that have been made since the last save.</div> note: the aria-describedby attribute is used for other purposes, in addition to form controls.
Alerts - Accessibility
we need to
change the two inputs for e-mail and name for this: <input name="name" id="name" aria-required="true" onblur="checkvalidity('name', ' ', 'invalid name entered!');"/> <br /> <input name="email" id="email" aria-required="true" onblur="checkvalidity('email', '@', 'invalid e-mail address');"/> testing the example if you use firefox 3 and a currently-supported screen reader, try the fo...
Operable - Accessibility
guideline 2.3 — seizures and physical reactions: do not design content in a way that is known to cause seizures or physical reactions this refers to content that, if not
changed, could cause seizures in users with conditions such as epilepsy or could cause physical reactions (like dizziness) for users with conditions such as vestibular disorders.
-moz-user-input - CSS: Cascading Style Sheets
formal definition initial valueautoapplies toall elementsinheritedyescomputed valueas specifiedanimation typediscrete formal syntax auto | none | enabled | disabled examples disabling user input for an element input.example { /* the user will be able to select the text, but not
change it.
-webkit-text-stroke-color - CSS: Cascading Style Sheets
)where <alpha-value> = <number> | <percentage><hue> = <number> | <angle> examples varying the stroke color html <p>text with stroke</p> <input type="color" value="#ff0000"> css p { margin: 0; font-size: 4em; -webkit-text-stroke-width: 3px; -webkit-text-stroke-color: #ff0000; /* can be
changed in the live sample */ } javascript var colorpicker = document.queryselector("input"); colorpicker.addeventlistener("
change", function(evt) { document.queryselector("p").style.webkittextstrokecolor = evt.target.value; }); results specifications specification status comment compatibility standardthe definition of '-webkit-text-stroke-color' in that specifica...
::selection - CSS: Cascading Style Sheets
for people experiencing cognitive concerns or who are less technologically literate, unexpected
changes to selection styles may hurt their understanding of the functionality.
CSS reference - CSS: Cascading Style Sheets
nsform-origintransform-styletransitiontransition-delaytransition-durationtransition-propertytransition-timing-functiontranslatetranslate()translate3d()translatex()translatey()translatez()turnuunicode-bidiunicode-range (@font-face)unset<url>url()user-zoom (@viewport)v:validvar()vertical-alignvh@viewportviewport-fit (@viewport)visibility:visitedvmaxvminvwwwhite-spacewidowswidthwidth (@viewport)will-
changeword-breakword-spacingword-wrapwriting-modexxzz-indexzoom (@viewport)others--* selectors the following are the various selectors, which allow styles to be conditional based on various features of elements within the dom.
CSS Tutorials - CSS: Cascading Style Sheets
css transforms transforms allow you to
change the position of elements by modifying their coordinate space: it allows for translating, rotating, and deforming them in the 2d or 3d spaces.
background-blend-mode - CSS: Cascading Style Sheets
<option>exclusion</option> <option>hue</option> <option>saturation</option> <option>color</option> <option>luminosity</option> </select> #div { width: 300px; height: 300px; background: url('https://mdn.mozillademos.org/files/8543/br.png'),url('https://mdn.mozillademos.org/files/8545/tr.png'); background-blend-mode: screen; } document.getelementbyid("select").on
change = function(event) { document.getelementbyid("div").style.backgroundblendmode = document.getelementbyid("select").selectedoptions[0].innerhtml; } console.log(document.getelementbyid('div')); specifications specification status comment compositing and blending level 1the definition of 'background-blend-mode' in that specification.
background-color - CSS: Cascading Style Sheets
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.
box-ordinal-group - CSS: Cascading Style Sheets
formal definition initial value1applies tochildren of box elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax <integer> examples basic usage example in an older version of the spec, box-ordinal-group was included to allow you to
change the display order of flex children inside a flex container: article:nth-child(1) { -webkit-box-ordinal-group: 2 -moz-box-ordinal-group: 2 box-ordinal-group: 2 } article:nth-child(2) { -webkit-box-ordinal-group: 1 -moz-box-ordinal-group: 1 box-ordinal-group: 1 } the modern flexbox equivalent is order.
box-sizing - CSS: Cascading Style Sheets
on the other hand, when using position: relative or position: absolute, use of box-sizing: content-box allows the positioning values to be relative to the content, and independent of
changes to border and padding sizes, which is sometimes desirable.
mask-composite - CSS: Cascading Style Sheets
perator>#where <compositing-operator> = add | subtract | intersect | exclude examples compositing mask layers with addition css #masked { width: 100px; height: 100px; background-color: #8cffa0; mask-image: url(https://mdn.mozillademos.org/files/12668/mdn.svg), url(https://mdn.mozillademos.org/files/12676/star.svg); mask-size: 100% 100%; mask-composite: add; /* can be
changed in the live sample */ } html <div id="masked"> </div> <select id="compositemode"> <option value="add">add</option> <option value="subtract">subtract</option> <option value="intersect">intersect</option> <option value="exclude">exclude</option> </select> javascript var clipbox = document.getelementbyid("compositemode"); clipbox.addeventlistener("
change", function (evt) { document...
mask-mode - CSS: Cascading Style Sheets
and all graphics elementsinheritednocomputed valueas specifiedanimation typediscrete formal syntax <masking-mode>#where <masking-mode> = alpha | luminance | match-source examples using alpha mask mode css #masked { width: 227px; height: 200px; background: blue linear-gradient(red, blue); mask-image: url(https://mdn.mozillademos.org/files/12668/mdn.svg); mask-mode: alpha; /* can be
changed in the live sample */ } html <div id="masked"> </div> <select id="maskmode"> <option value="alpha">alpha</option> <option value="luminance">luminance</option> <option value="match-source">match-source</option> </select> javascript var maskmode = document.getelementbyid("maskmode"); maskmode.addeventlistener("
change", function (evt) { document.getelementbyid("masked").style.maskmod...
max() - CSS: Cascading Style Sheets
this ensure it is legible and ensures accessibility <h1>this text is always legible, but doesn't
change size</h1> <h1 class="responsive">this text is always legible, and is responsive, to a point</h1> think of the max() function as finding the minimum value allowed for a property.
place-items - CSS: Cascading Style Sheets
ption value="first baseline auto">first baseline auto</option> <option value="last baseline normal">last baseline normal</option> <option value="stretch auto">stretch auto</option> </select> </div> javascript var values = document.getelementbyid('values'); var display = document.getelementbyid('display'); var container = document.getelementbyid('container'); values.addeventlistener('
change', function (evt) { container.style.placeitems = evt.target.value; }); display.addeventlistener('
change', function (evt) { container.classname = evt.target.value; }); css #container { height:200px; width: 240px; place-items: center; /* you can
change this value by selecting another option in the list */ background-color: #8c8c8c; } .flex { display: flex; flex-wrap: wrap; } .
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.
matrix() - CSS: Cascading Style Sheets
homogeneous coordinates on ℝℙ2 cartesian coordinates on ℝ3 homogeneous coordinates on ℝℙ3 ac bd actxbdty001 actxbdty001 ac0txbd0ty00100001 [a b c d tx ty] the values represent the following functions: matrix( scalex(), skewy(), skewx(), scaley(), translatex(), translatey() ) examples html <div>normal</div> <div class="
changed">
changed</div> css div { width: 80px; height: 80px; background-color: skyblue; } .
changed { transform: matrix(1, 2, -1, 1, 80, 80); background-color: pink; } result specifications specification status comment css transforms level 1the definition of 'matrix()' in that specification.
transform-style - CSS: Cascading Style Sheets
a(0,0,210,.7); transform: rotatey(-90deg) translatez(50px); } .top { background: rgba(210,210,0,.7); transform: rotatex(90deg) translatez(50px); } .bottom { background: rgba(210,0,210,.7); transform: rotatex(-90deg) translatez(50px); } javascript const cube = document.getelementbyid('example-element'); const checkbox = document.getelementbyid('preserve'); checkbox.addeventlistener('
change', () => { if(checkbox.checked) { cube.style.transformstyle = 'preserve-3d'; } else { cube.style.transformstyle = 'flat'; } }) result specifications specification status comment css transforms level 2the definition of 'transform-style' in that specification.
transition - CSS: Cascading Style Sheets
y name | duration */ transition: margin-right 4s; /* property name | duration | delay */ transition: margin-right 4s 1s; /* property name | duration | timing function */ transition: margin-right 4s ease-in-out; /* property name | duration | timing function | delay */ transition: margin-right 4s ease-in-out 1s; /* apply to 2 properties */ transition: margin-right 4s, color 1s; /* apply to all
changed properties */ transition: all 0.5s ease-out; /* global values */ transition: inherit; transition: initial; transition: unset; the transition property is specified as one or more single-property transitions, separated by commas.
user-modify - CSS: Cascading Style Sheets
examples html <div class="readwrite">the user is able to
change this text.</div> css .readwrite { -moz-user-modify: read-write; -webkit-user-modify: read-write; } specifications not part of any standard.
visibility - CSS: Cascading Style Sheets
visibility: collapse may
change the layout of a table if the table has nested tables within the cells that are collapsed, unless visibility: visible is specified explicitly on nested tables.
white-space - CSS: Cascading Style Sheets
ckground-color: rgb(220, 220, 220); font-size: 16px; font-family: monospace; } #css-code select { font-family: inherit; } #results { background-color: rgb(230, 230, 230); overflow-x: scroll; height: 400px; white-space: normal; font-size: 14px; } var select = document.queryselector("#css-code select"); var results = document.queryselector("#results p"); select.addeventlistener("
change", function(e) { results.setattribute("style", "white-space: "+e.target.value); }) <p> lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ajax - Developer guides
sending and receiving binary data the responsetype property of the xmlhttprequest object can be set to
change the expected response type from the server.
Creating a cross-browser video player - Developer guides
when a video goes into fullscreen mode, it usually displays a message indicating that the user can press the esc key to exit fullscreen mode, so the code also needs to listen for relevant events in order to call the setfullscreendata() function to ensure the control styling is correct: document.addeventlistener('fullscreen
change', function(e) { setfullscreendata(!!(document.fullscreen || document.fullscreenelement)); }); document.addeventlistener('webkitfullscreen
change', function() { setfullscreendata(!!document.webkitisfullscreen); }); document.addeventlistener('mozfullscreen
change', function() { setfullscreendata(!!document.mozfullscreen); }); document.addeventlistener('msfullscreen
change', function() { se...
HTML attribute: crossorigin - HTML: Hypertext Markup Language
the "anonymous" keyword means that there will be no ex
change 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.
<img>: The Image Embed element - HTML: Hypertext Markup Language
abbreviation file format mime type file extension(s) browser compatibility apng animated portable network graphics image/apng .apng chrome, edge, firefox, opera, safari bmp bitmap file image/bmp .bmp chrome, edge, firefox, internet explorer, opera, safari gif graphics inter
change format image/gif .gif chrome, edge, firefox, internet explorer, opera, safari ico microsoft icon image/x-icon .ico, .cur chrome, edge, firefox, internet explorer, opera, safari jpeg joint photographic expert group image image/jpeg .jpg, .jpeg, .jfif, .pjpeg, .pjp chrome, edge, firefox, internet explorer, opera, safari png portable net...
<slot> - HTML: Hypertext Markup Language
content categories flow content, phrasing content permitted content transparent events slot
change tag omission none, both the starting and ending tag are mandatory.
<tbody>: The Table Body element - HTML: Hypertext Markup Language
css table { border: 2px solid #555; border-collapse: collapse; font: 16px "lucida grande", "helvetica", "arial", sans-serif; } th, td { border: 1px solid #bbb; padding: 2px 8px 0; text-align: left; } thead > tr > th { background-color: #cce; font-size: 18px; border-bottom: 2px solid #999; } most of the css is un
changed.
Link types - HTML: Hypertext Markup Language
<a>, <area>, <form> <link> opener reverts implicit rel="noopener" addition on links with target="_blank" (see related html spec discussion, webkit
change, and firefox bug discussion).
Common MIME types - HTTP
c microsoft word application/msword .docx microsoft word (openxml) application/vnd.openxmlformats-officedocument.wordprocessingml.document .eot ms embedded opentype fonts application/vnd.ms-fontobject .epub electronic publication (epub) application/epub+zip .gz gzip compressed archive application/gzip .gif graphics inter
change format (gif) image/gif .htm .html hypertext markup language (html) text/html .ico icon format image/vnd.microsoft.icon .ics icalendar format text/calendar .jar java archive (jar) application/java-archive .jpeg .jpg jpeg images image/jpeg .js javascript text/javascript, per the following speci...
MIME types (IANA media types) - HTTP
h to be considered safe for use on web pages: abbreviation file format mime type file extension(s) browser compatibility apng animated portable network graphics image/apng .apng chrome, edge, firefox, opera, safari bmp bitmap file image/bmp .bmp chrome, edge, firefox, internet explorer, opera, safari gif graphics inter
change format image/gif .gif chrome, edge, firefox, internet explorer, opera, safari ico microsoft icon image/x-icon .ico, .cur chrome, edge, firefox, internet explorer, opera, safari jpeg joint photographic expert group image image/jpeg .jpg, .jpeg, .jfif, .pjpeg, .pjp chrome, edge, firefox, internet explorer, opera, safari png portable net...
Basics of HTTP - HTTP
separating identity and location of a resource: the alt-svc http header most of the time the identity and location of a web resource are shared, this can be
changed with the alt-svc header.
Compression in HTTP - HTTP
end-to-end compression refers to a compression of the body of a message that is done by the server and will last un
changed until it reaches the client.
204 No Content - HTTP
if the page should be
changed to the newly updated page, the 200 should be used instead.
301 Moved Permanently - HTTP
it is therefore recommended to use the 301 code only as a response for get or head methods and to use the 308 permanent redirect for post methods instead, as the method
change is explicitly prohibited with this status.
308 Permanent Redirect - HTTP
the request method and the body will not be altered, whereas 301 may incorrectly sometimes be
changed to a get method.
412 Precondition Failed - HTTP
for example, when editing mdn, the current wiki content is hashed and put into an etag in the response: etag: "33a64df551425fcc55e4d42a148795d9f25f89d4" when saving
changes to a wiki page (posting data), the post request will contain the if-match header containing the etag values to check freshness against.
HTTP
evolution of http a brief description of the
changes between the early versions of http, to the modern http/2, the emergent http/3 and beyond.
CSS Houdini
advantages of houdini houdini enables faster parse times than using javascript .style for style
changes.
Expressions and operators - JavaScript
use this either with the dot or the bracket notation: this['propertyname'] this.propertyname suppose a function called validate validates an object's value property, given the object and the high and low values: function validate(obj, lowval, hival) { if ((obj.value < lowval) || (obj.value > hival)) console.log('invalid value!'); } you could call validate in each form element's on
change event handler, using this to pass it to the form element, as in the following example: <p>enter a number between 18 and 99:</p> <input type="text" name="age" size=3 on
change="validate(this, 18, 99);"> grouping operator the grouping operator ( ) controls the precedence of evaluation in expressions.
Iterators and generators - JavaScript
// if we
change it's @@iterator method to a function/generator // which returns a new iterator/generator object, (it) // can iterate many times it[symbol.iterator] = function* () { yield 2; yield 1; }; user-defined iterables you can make your own iterables like this: const myiterable = { *[symbol.iterator]() { yield 1; yield 2; yield 3; } } for (let value of myiterable) ...
Numbers and dates - JavaScript
you cannot
change the values of these properties and you use them as follows: var biggestnum = number.max_value; var smallestnum = number.min_value; var infinitenum = number.positive_infinity; var neginfinitenum = number.negative_infinity; var notanum = number.nan; you always refer to a property of the predefined number object as shown above, and not as a property of a number object you create yourself.
Text formatting - JavaScript
you can't
change individual characters because strings are immutable array-like objects: const hello = 'hello, world!'; const hellolength = hello.length; hello[0] = 'l'; // this has no effect, because strings are immutable hello[0]; // this returns "h" characters whose unicode scalar values are greater than u+ffff (such as some rare chinese/japanese/korean/vietnamese characters and some emoji) are stored in ut...
Inheritance and the prototype chain - JavaScript
this means that all the stuff you define in prototype is effectively shared by all instances, and you can even later
change parts of prototype and have the
changes appear in all existing instances, if you wanted to.
constructor - JavaScript
this.name = 'square'; } get area() { return this.height * this.width; } set area(value) { this.height = value**0.5; this.width = value**0.5; } } another example here the prototype of square class is
changed—but the constructor of its base class polygon is still called when a new instance of a square is created.
Classes - JavaScript
by defining things which are not visible outside of the class, you ensure that your classes' users can't depend on internals, which may
change version to version.
Arrow function expressions - JavaScript
`return`, we can remove `return` and remove // the surrounding curly brackets elements.map(element => element.length); // [8, 6, 7, 9] // in this case, because we only need the length property, we can use destructuring parameter: // notice that the `length` corresponds to the property we want to get whereas the // obviously non-special `lengthfoobarx` is just the name of a variable which can be
changed // to any valid variable name you want elements.map(({ length: lengthfoobarx }) => lengthfoobarx); // [8, 6, 7, 9] // this destructuring parameter assignment can also be written as seen below.
Method definitions - JavaScript
const obja = { method() {} } new obja.method // typeerror: obj.method is not a constructor const objb = { * g() {} } new objb.g // typeerror: obj.g is not a constructor (
changed in es2016) examples simple test case const obj = { a: 'foo', b() { return this.a } }; console.log(obj.b()) // "foo" computed property names the shorthand syntax also supports computed property names.
Array.prototype.filter() - JavaScript
eof 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; } } } } res.length = c; // shrink down array ...
Array.prototype.find() - JavaScript
if an existing, yet-unvisited element of the array is
changed by callback, its value passed to the callback will be the value at the time find visits that element's index.
Array.prototype.findIndex() - JavaScript
if an existing, unvisited element of the array is
changed by callback, its value passed to the callback will be the value at the time findindex() visits the element's index.
Array.prototype.forEach() - JavaScript
if existing elements of the array are
changed or deleted, their value as passed to callback will be the value at the time foreach() visits them; elements that are deleted before being visited are not visited.
Array.prototype.some() - JavaScript
if an existing, unvisited element of the array is
changed by callback, its value passed to the visiting callback will be the value at the time that some() visits that element's index.
Array.prototype.values() - JavaScript
var arr = ['a', 'b', 'c', 'd', 'e']; var iterator = arr.values(); console.log(iterator); // array iterator { } iterator.next().value; // "a" arr[1]='n'; iterator.next().value; // "n" if the values in the array
changed the array iterator object values
change too.
Date.prototype.setUTCDate() - JavaScript
for example, if you use 40 for dayvalue, and the month stored in the date object is june, the day will be
changed to 10 and the month will be incremented to july.
Date - JavaScript
due to the differing lengths of days (due to daylight saving
changeover), months, and years, expressing elapsed time in units greater than hours, minutes, and seconds requires addressing a number of issues, and should be thoroughly researched before being attempted.
Function.displayName - JavaScript
tion expressions you can define a function with a display name in a function expression: var object = { somemethod: function() {} }; object.somemethod.displayname = 'somemethod'; console.log(object.somemethod.displayname); // logs "somemethod" try { somemethod } catch(e) { console.log(e); } // referenceerror: somemethod is not defined changing displayname dynamically you can dynamically
change the displayname of a function: var object = { // anonymous somemethod: function(value) { arguments.callee.displayname = 'somemethod (' + value + ')'; } }; console.log(object.somemethod.displayname); // "undefined" object.somemethod('123') console.log(object.somemethod.displayname); // "somemethod (123)" specifications not part of any standard.
Intl.Collator.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in collation, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is not used with indonesian and a specialized german for indonesia is unlikely to be supported.
Intl.DateTimeFormat.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in date and time formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to date and time formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
Intl.DisplayNames.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in date and time formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to date and time formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
Intl.ListFormat.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in date and time formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to date and time formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
Intl.NumberFormat.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in number formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to number formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
Intl.PluralRules.supportedLocalesOf() - JavaScript
examples using supportedlocalesof() assuming a runtime that supports indonesian and german but not balinese in plural formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to plural formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
Intl.RelativeTimeFormat.supportedLocalesOf() - JavaScript
examples using supportedlocalesof assuming a runtime that supports indonesian and german but not balinese in date and time formatting, supportedlocalesof returns the indonesian and german language tags un
changed, even though pinyin collation is neither relevant to date and time formatting nor used with indonesian, and a specialized german for indonesia is unlikely to be supported.
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.
Object.prototype.constructor - JavaScript
function type () {} let types = [ new array(), [], new boolean(), true, // remains un
changed new date(), new error(), new function(), function () {}, math, new number(), 1, // remains un
changed new object(), {}, new regexp(), /(?:)/, new string(), 'test' // remains un
changed ] for (let i = 0; i < types.length; i++) { types[i].constructor = type types[i] = [types[i].constructor, types[i] instanceof type, types[i].tostring()] } con...
Object.prototype.toString() - JavaScript
const tostring = object.prototype.tostring; tostring.call(new date); // [object date] tostring.call(new string); // [object string] tostring.call(math); // [object math] // since javascript 1.8.5 tostring.call(undefined); // [object undefined] tostring.call(null); // [object null] using tostring() in this way is unreliable; objects can
change the behavior of object.prototype.tostring() by defining a symbol.tostringtag property, leading to unexpected results.
Promise.all() - JavaScript
> resolve('three'), 3000); }); var p4 = new promise((resolve, reject) => { settimeout(() => resolve('four'), 4000); }); var p5 = new promise((resolve, reject) => { reject(new error('reject')); }); // using .catch: promise.all([p1, p2, p3, p4, p5]) .then(values => { console.log(values); }) .catch(error => { console.error(error.message) }); //from console: //"reject" it is possible to
change this behaviour by handling possible rejections: var p1 = new promise((resolve, reject) => { settimeout(() => resolve('p1_delayed_resolution'), 1000); }); var p2 = new promise((resolve, reject) => { reject(new error('p2_immediate_rejection')); }); promise.all([ p1.catch(error => { return error }), p2.catch(error => { return error }), ]).then(values => { console.log(values[0]) // "p1_d...
handler.set() - JavaScript
interceptions this trap can intercept these operations: property assignment: proxy[foo] = bar and proxy.foo = bar inherited property assignment: object.create(proxy)[foo] = bar reflect.set() invariants if the following invariants are violated, the proxy will throw a typeerror: cannot
change the value of a property to be different from the value of the corresponding target object property if the corresponding target object property is a non-writable, non-configurable data property.
String.prototype.big() - JavaScript
examples using big() the following example uses string methods to
change the size of a string: var worldstring = 'hello, world'; console.log(worldstring.small()); // <small>hello, world</small> console.log(worldstring.big()); // <big>hello, world</big> console.log(worldstring.fontsize(7)); // <fontsize=7>hello, world</fontsize> with the element.style object you can get the element's style attribute and manipulate it more generically, for example: docume...
String.prototype.blink() - JavaScript
examples using blink() the following example uses string methods to
change the formatting of a string: var worldstring = 'hello, world'; console.log(worldstring.blink()); // <blink>hello, world</blink> console.log(worldstring.bold()); // <b>hello, world</b> console.log(worldstring.italics()); // <i>hello, world</i> console.log(worldstring.strike()); // <strike>hello, world</strike> specifications specification ecmascript (ecma-262)the definit...
String.prototype.bold() - JavaScript
examples using bold() the following example uses string methods to
change the formatting of a string: var worldstring = 'hello, world'; console.log(worldstring.blink()); // <blink>hello, world</blink> console.log(worldstring.bold()); // <b>hello, world</b> console.log(worldstring.italics()); // <i>hello, world</i> console.log(worldstring.strike()); // <strike>hello, world</strike> specifications specification ecmascript (ecma-262)the definition of 'string.prototype.bold' in that specification.
String.prototype.charCodeAt() - JavaScript
fixedcharcodeat('\ud800\udc00', 1); // false idx = idx || 0; var code = str.charcodeat(idx); var hi, low; // high surrogate (could
change last hex to 0xdb7f // to treat high private surrogates // as single characters) if (0xd800 <= code && code <= 0xdbff) { hi = code; low = str.charcodeat(idx + 1); if (isnan(low)) { throw 'high surrogate not followed by ' + 'low surrogate in fixedcharcodeat()'; } return ( (hi - 0xd800) * 0x400) + (low - 0xdc00) + 0x10000; } if (0xdc00 <= code ...
String.prototype.fixed() - JavaScript
examples using fixed() the following example uses the fixed method to
change the formatting of a string: var worldstring = 'hello, world'; console.log(worldstring.fixed()); // "<tt>hello, world</tt>" specifications specification ecmascript (ecma-262)the definition of 'string.prototype.fixed' in that specification.
String.prototype.fontsize() - JavaScript
examples using fontsize() the following example uses string methods to
change the size of a string: var worldstring = 'hello, world'; console.log(worldstring.small()); // <small>hello, world</small> console.log(worldstring.big()); // <big>hello, world</big> console.log(worldstring.fontsize(7)); // <font size="7">hello, world</fontsize> with the element.style object you can get the element's style attribute and manipulate it more generically, for example: doc...
String.prototype.italics() - JavaScript
examples using italics() the following example uses string methods to
change the formatting of a string: var worldstring = 'hello, world'; console.log(worldstring.blink()); // <blink>hello, world</blink> console.log(worldstring.bold()); // <b>hello, world</b> console.log(worldstring.italics()); // <i>hello, world</i> console.log(worldstring.strike()); // <strike>hello, world</strike> specifications specification ecmascript (ecma-262)the definition of 'string.prototype.italics' in that specification.
String.prototype.matchAll() - JavaScript
const regexp = regexp('[a-c]',''); const str = 'abc'; str.matchall(regexp); // typeerror matchall internally makes a clone of the regexp—so, unlike regexp.exec(), lastindex does not
change as the string is scanned.
String.prototype.normalize() - JavaScript
ngs: let string1 = '\ufb00'; let string2 = '\u0066\u0066'; console.log(string1); // ff console.log(string2); // ff console.log(string1 === string2); // false console.log(string1.length); // 1 console.log(string2.length); // 2 string1 = string1.normalize('nfkd'); string2 = string2.normalize('nfkd'); console.log(string1); // ff <- visual appearance
changed console.log(string2); // ff console.log(string1 === string2); // true console.log(string1.length); // 2 console.log(string2.length); // 2 when applying compatibility normalization it's important to consider what you intend to do with the strings, since the normalized form may not be appropriate for all applications.
String.prototype.small() - JavaScript
examples using small() the following example uses string methods to
change the size of a string: var worldstring = 'hello, world'; console.log(worldstring.small()); // <small>hello, world</small> console.log(worldstring.big()); // <big>hello, world</big> console.log(worldstring.fontsize(7)); // <font size="7">hello, world</fontsize> with the element.style object you can get the element's style attribute and manipulate it more generically, for example: document.getelementbyid('yourelemid').style.fontsize = '...
String.prototype.strike() - JavaScript
examples using strike() the following example uses string methods to
change the formatting of a string: var worldstring = 'hello, world'; console.log(worldstring.blink()); // <blink>hello, world</blink> console.log(worldstring.bold()); // <b>hello, world</b> console.log(worldstring.italics()); // <i>hello, world</i> console.log(worldstring.strike()); // <strike>hello, world</strike> specifications specification ecmascript (ecma-262)the definition of 'string.prototype.strike' in that speci...
String - JavaScript
creating strings strings can be created as primitives, from string literals, or as objects, using the string() constructor: const string1 = "a string primitive"; const string2 = 'also a string primitive'; const string3 = `yet another string primitive`; const string4 = new string("a string object"); string primitives and string objects can be used inter
changeably in most situations.
Symbol.toStringTag - JavaScript
ring.call(new validatorclass()); // "[object object]" custom tag with tostringtag now, with the help of tostringtag, you are able to set your own custom tag: class validatorclass { get [symbol.tostringtag]() { return 'validator'; } } object.prototype.tostring.call(new validatorclass()); // "[object validator]" tostringtag available on all dom prototype objects due to a webidl spec
change in mid-2020, browsers are adding a symbol.tostringtag property to all dom prototype objects.
TypeError - JavaScript
a typeerror may be thrown when: an operand or argument passed to a function is incompatible with the type expected by that operator or function; or when attempting to modify a value that cannot be
changed; or when attempting to use a value in an inappropriate way.
TypedArray.prototype.filter() - JavaScript
if existing elements of the typed array are
changed, or deleted, their value as passed to callback will be the value at the time filter() visits them; elements that are deleted are not visited.
TypedArray.prototype.find() - JavaScript
if an existing, unvisited element of the typed array is
changed by callback, its value passed to the visiting callback will be the value at the time that find visits that element's index; elements that are deleted are not visited.
TypedArray.prototype.findIndex() - JavaScript
if an existing, unvisited element of the typed array is
changed by callback, its value passed to the visiting callback will be the value at the time that findindex visits that element's index; elements that are deleted are not visited.
TypedArray.prototype.forEach() - JavaScript
if the values of existing elements of the typed array are
changed, the value passed to callback will be the value at the time foreach() visits them; elements that are deleted before being visited are not visited.
TypedArray.prototype.map() - JavaScript
if existing elements of the typed array are
changed, or deleted, their value as passed to mapfn will be the value at the time map() visits them; elements that are deleted are not visited.
WebAssembly.Global() constructor - JavaScript
the value of the global is then
changed, first to 42 using the global.value property, and then to 43 using the incglobal() function exported out of the global.wasm module (this adds 1 to whatever value is given to it and then returns the new value).
WebAssembly.Global - JavaScript
the value of the global is then
changed, first to 42 using the global.value property, and then to 43 using the incglobal() function exported out of the global.wasm module (this adds 1 to whatever value is given to it and then returns the new value).
eval() - JavaScript
if the argument of eval() is not a string, eval() returns the argument un
changed.
try...catch - JavaScript
ied exceptions logmyerrors(e); // pass exception object to error handler } } a common use case for this is to only catch (and silence) a small subset of expected errors, and then re-throw the error in other cases: try { myroutine(); } catch (e) { if (e instanceof rangeerror) { // statements to handle this very common expected error } else { throw e; // re-throw the error un
changed } } the exception identifier when an exception is thrown in the try-block, exception_var (i.e., the e in catch (e)) holds the exception value.
with - JavaScript
the scope chain
change required by 'with' is not computationally expensive.
display - Web app manifests
the display mode
changes how much of browser ui is shown to the user and can range from browser (when the full browser window is shown) to fullscreen (when the app is full-screened).
MathML element reference - MathML
-expressions) s <ms> (string literal) <mscarries> (annotations such as carries) <mscarry> (single carry, child element of <mscarries>) <msgroup> (grouped rows of <mstack> and <mlongdiv> elements) <msline> (horizontal lines inside <mstack> elements) <mspace> (space) <msqrt> (square root without an index) <msrow> (rows in <mstack> elements) <mstack> (stacked alignment) <mstyle> (style
change) <msub> (subscript) <msup> (superscript) <msubsup> (subscript-superscript pair) t <mtable> (table or matrix) <mtd> (cell in a table or a matrix) <mtext> (text) <mtr> (row in a table or a matrix) u <munder> (underscript) <munderover> (underscript-overscript pair) other elements <semantics> (container for semantic annotations) <annotation> (data annotations) <annotation-xml>...
MathML documentation index - MathML
30 <mstyle> mathml, mathml reference, mathml:element, mathml:general layout schemata the mathml <mstyle> element is used
change the style of its children.
Web audio codec guide - Web media technologies
no loss of fidelity unlikely to get more than 40-50% compression lossy compression always some loss of fidelity; the higher the compression, the more the loss compression of up to 80-95% possible quality setting the higher the quality, the better the fidelity of the encoded audio the higher the fidelity, the larger the resulting file becomes, though the amount of
change varies from codec to codec bit rate the higher the bit rate, the higher the quality can be the higher the bit rate, the larger the encoded file is likely to be audio frequency bandwidth if there is any audio in the removed frequency band(s), there may be a noticeable loss of fidelity removing frequency bands means less data to encode, thus smaller encoded files ...
The "codecs" parameter in common media types - Web media technologies
as is the case with any mime type parameter, codecs must be
changed to codecs* (note the asterisk character, *) if any of the properties of the codec use special characters which must be percent-encoded per rfc 2231, section 4: mime parameter value and encoded word extensions.
Using images in HTML - Web media technologies
mapping the width and height attributes of media container elements to their aspect-ratio this
changes how browsers load images so their aspect ratios are calculated by the browser early on and can later be used to correct the display size of an image before it's loaded.
Lazy loading - Web Performance
event handlers when browser compatibility is crucial, there are a few options: polyfill intersection observer fallback to scroll, resize or orientation
change event handlers to determine if a specific element is in viewport specifications specification status comment html living standard living standard ...
Optimizing startup performance - Web Performance
in between calculations, update your progress indicator, make
changes to the display, or anything else you might be able to do to help the user feel like your app is doing something instead of sitting there quietly.
Add to Home screen - Progressive web apps (PWAs)
en((choiceresult) => { if (choiceresult.outcome === 'accepted') { console.log('user accepted the a2hs prompt'); } else { console.log('user dismissed the a2hs prompt'); } deferredprompt = null; }); }); }); so here we: call event.preventdefault() to stop chrome 67 and earlier from calling the install prompt automatically (this behavior
changed in chrome 68).
Mobile first - Progressive web apps (PWAs)
background: url(../img/firefox-os.png) bottom left no-repeat, linear-gradient(to bottom, #fff, #eee); } .main > p { background: rgba(255,255,255,0.3); } nav li a { padding: 0 10px; font-size: 2em; } } the first one cancels out the css display: table behaviour, hides the links to jump to and from the navigation, as they are not needed anymore in the wider layout, and
changes the vertical menu to a horizontal menu that makes better use of the horizontal space available.
dx - SVG: Scalable Vector Graphics
0" xmlns="http://www.w3.org/2000/svg"> <!-- lines materialized the position of the glyphs --> <line x1="0" x2="100%" y1="25%" y2="25%" /> <line x1="0" x2="100%" y1="50%" y2="50%" /> <line x1="0" x2="100%" y1="75%" y2="75%" /> <line x1="10%" x2="10%" y1="0" y2="100%" /> <line x1="30%" x2="30%" y1="0" y2="100%" /> <line x1="60%" x2="60%" y1="0" y2="100%" /> <!-- behaviors
change based on the number of values in the attributes --> <text dx="20%" x="10%" y="25%">svg</text> <text dx="0 10%" x="10%" y="50%">svg</text> <text dx="0 10% 20%" x="10%" y="75%">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.
dy - SVG: Scalable Vector Graphics
.w3.org/2000/svg"> <!-- horizontal lines --> <line x1="0" x2="100%" y1="30" y2="30" /> <line x1="0" x2="100%" y1="40" y2="40" /> <line x1="0" x2="100%" y1="50" y2="50" /> <line x1="0" x2="100%" y1="60" y2="60" /> <!-- vertical lines --> <line x1="10" x2="10" y1="0" y2="100%" /> <line x1="50" x2="50" y1="0" y2="100%" /> <line x1="90" x2="90" y1="0" y2="100%" /> <!-- behaviors
change based on the number of values in the attributes --> <text dy="20" x="10" y="30">svg</text> <text dy="0 10" x="50" y="30">svg</text> <text dy="0 10 20" x="90" y="30">svg</text> </svg> line { stroke: red; stroke-width: .5px; stroke-dasharray: 3px; } tref warning: as of svg2 <tref> is deprecated and shouldn't be used.