From 702ed44c68b497912b8a79416842f043b3822cc6 Mon Sep 17 00:00:00 2001
From: Will Bamberg In technical terms, we apply a Blackman window and smooth the values over time. The default value is good enough for most cases. Note: If a value outside the range 0–1 is set, an Note: If a value outside the range 0–1 is set, an Value
INDEX_SIZE_ERR
exception is thrown.INDEX_SIZE_ERR
exception is thrown.Example
diff --git a/files/en-us/web/api/audioworkletprocessor/process/index.html b/files/en-us/web/api/audioworkletprocessor/process/index.html
index 2c8a6d209f1631b..d312d307ab1be3a 100644
--- a/files/en-us/web/api/audioworkletprocessor/process/index.html
+++ b/files/en-us/web/api/audioworkletprocessor/process/index.html
@@ -30,7 +30,7 @@
invoked to do so.
Note: Currently, audio data blocks are always 128 frames +
Note: Currently, audio data blocks are always 128 frames long—that is, they contain 128 32-bit floating-point samples for each of the inputs' channels. 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 diff --git a/files/en-us/web/api/cache/addall/index.html b/files/en-us/web/api/cache/addall/index.html index 187c7aa39a504e9..0c257ec9186ebe6 100644 --- a/files/en-us/web/api/cache/addall/index.html +++ b/files/en-us/web/api/cache/addall/index.html @@ -22,7 +22,7 @@ retrieval become keys to the stored response operations.
Note: addAll()
will overwrite any key/value pairs
+
Note: addAll()
will overwrite any key/value pairs
previously stored in the cache that match the request, but will fail if a
resulting put()
operation would overwrite a previous cache entry stored
by the same addAll()
method.
Note:The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
Note: The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
Note:The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
Note: The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
Note:The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
Note: The url
option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document's URL.
The CSS Font Loading API provides events and interfaces for dynamically loading font resources.
Note: This feature is available in Web Workers (self.fonts
provides access to {{domxref('FontFaceSet')}}).
Note: This feature is available in Web Workers (self.fonts
provides access to {{domxref('FontFaceSet')}}).
- Note: Be aware that block-level elements
- like <p>
will be automatically closed if another
+
Note: Be aware that block-level elements
+ like <p>
will be automatically closed if another
block-level element is nested inside and therefore parsed before the closing </p>
tag.
NotFoundError
pointerId
does not match any of the active pointers.
- Note: Firefox versions before Firefox +
Note: Firefox versions before Firefox
82 incorrectly throw InvalidPointerId
.
{{APIRef("File API")}}{{non-standard_header}}{{deprecated_header}}
Note:This method was removed from Firefox 7.0 and onward.
+Note: This method was removed from Firefox 7.0 and onward.
Note:This method was removed from Firefox 7.0 and onward.
+Note: This method was removed from Firefox 7.0 and onward.
Note: For accessibility reasons, you should generally avoid using +
Note: For accessibility reasons, you should generally avoid using server-side image maps, as they require the use of a mouse. Use a client-side image map instead.
diff --git a/files/en-us/web/api/idbcursor/index.html b/files/en-us/web/api/idbcursor/index.html index 104d25b6f30b9b8..3993f5cc5637896 100644 --- a/files/en-us/web/api/idbcursor/index.html +++ b/files/en-us/web/api/idbcursor/index.html @@ -27,7 +27,7 @@Note: {{domxref("IDBCursorWithValue")}} is an IDBCursor
interface with an additional value
property.
Note: {{domxref("IDBCursorWithValue")}} is an IDBCursor
interface with an additional value
property.
{{ LiveSampleLink('Full_IndexedDB_example', "Test the online live demo") }}
Note: window.indexedDB.open()
is asynchronous; the method will finish running long before the success
event is fired. This means that a function (e.g. openDb()
) that calls open()
and onsuccess
will return before the onsuccess
handler has run. This issue is also true of other request methods such as transaction()
and get()
.
Note: window.indexedDB.open()
is asynchronous; the method will finish running long before the success
event is fired. This means that a function (e.g. openDb()
) that calls open()
and onsuccess
will return before the onsuccess
handler has run. This issue is also true of other request methods such as transaction()
and get()
.
Note: The display capabilities functionality mentioned in the third point above have not yet appeared in any browser. They will be a useful feature of the API once available, but there is a high probability of the display capabilities functionality changing a great deal before browser implementations arrive.
+Note: The display capabilities functionality mentioned in the third point above have not yet appeared in any browser. They will be a useful feature of the API once available, but there is a high probability of the display capabilities functionality changing a great deal before browser implementations arrive.
Note:The URL template supplied when registering must be of the same domain as the webpage attempting to perform the registration or the registration will fail. For example, http://example.com/homepage.html
can register a protocol handler for http://example.com/handle_mailto/%s
, but not for http://example.org/handle_mailto/%s
.
Note: The URL template supplied when registering must be of the same domain as the webpage attempting to perform the registration or the registration will fail. For example, http://example.com/homepage.html
can register a protocol handler for http://example.com/handle_mailto/%s
, but not for http://example.org/handle_mailto/%s
.
Registering the same protocol handler more than once will pop up a different notification, indicating that the protocol handler is already registered. Therefore, it is a good idea to guard your call to register the protocol handler with a check to see if it is already registered, such as in the example below.
@@ -86,7 +86,7 @@Server side code can extract the query string parameters and perform the desired action.
-Note:The server side code is passed the entire contents of the href
. This means the server side code will have to parse out the protocol from the data.
Note: The server side code is passed the entire contents of the href
. This means the server side code will have to parse out the protocol from the data.
Note: This API shouldn't be used just to have the notification +
Note: This API shouldn't be used just to have the notification removed from the screen after a fixed delay since this method will also remove the notification from any notification tray, preventing users from interacting with it after it was initially shown. A valid use for this API would be to remove a diff --git a/files/en-us/web/api/permissions_api/index.html b/files/en-us/web/api/permissions_api/index.html index 587107866f70412..821d3029d44855c 100644 --- a/files/en-us/web/api/permissions_api/index.html +++ b/files/en-us/web/api/permissions_api/index.html @@ -15,7 +15,7 @@
The Permissions API provides a consistent programmatic way to query the status of API permissions attributed to the current context. For example, the Permissions API can be used to determine if permission to access a particular API has been granted or denied.
Note: This feature is available in Web Workers (although not current versions of Firefox, as WorkerNavigator.permissions is not implemented).
+Note: This feature is available in Web Workers (although not current versions of Firefox, as WorkerNavigator.permissions is not implemented).
Much of today's web content assumes the user's pointing device will be a mouse. However, since many devices support other types of pointing input devices, such as pen/stylus and touch surfaces, extensions to the existing pointing device event models are needed. Pointer events address that need.
Note: Pointer events are not available in Web Workers.
+Note: Pointer events are not available in Web Workers.
Pointer events are DOM events that are fired for a pointing device. They are designed to create a single DOM event model to handle pointing input devices such as a mouse, pen/stylus or touch (such as one or more fingers).
diff --git a/files/en-us/web/api/publickeycredentialrequestoptions/allowcredentials/index.html b/files/en-us/web/api/publickeycredentialrequestoptions/allowcredentials/index.html index 159718ff6f45353..60b64f4b09aeb4f 100644 --- a/files/en-us/web/api/publickeycredentialrequestoptions/allowcredentials/index.html +++ b/files/en-us/web/api/publickeycredentialrequestoptions/allowcredentials/index.html @@ -18,8 +18,7 @@ credential descriptors.Note: - {{domxref("PublicKeyCredentialCreationOptions.excludeCredentials")}} may be used +
Note: {{domxref("PublicKeyCredentialCreationOptions.excludeCredentials")}} may be used
during the creation of the credentials in order to avoid creating new credentials
for an existing user with existing public key credential. Contrary to
allowCredentials
, it is used to filter out credentials.
The API enables a page, which has an media element such as a video or audio file, to initiate and control playback of that media on a connected remote device. For example, playing a video on a connected TV.
Note:Safari for iOS has some APIs which enable remote playback on AirPlay. Details of these can be found in the Safari 9.0 release notes.
+Note: Safari for iOS has some APIs which enable remote playback on AirPlay. Details of these can be found in the Safari 9.0 release notes.
Android versions of Firefox and Chrome also contain some remote playback features. These devices will show a Cast button if there is a Cast device available in the local network.
Note:
- The rate at which touchmove
events is sent is browser-specific,
- and may also vary depending on the capability of the user's hardware.
- You must not rely on a specific granularity of these events.
+
Note: The rate at which touchmove
events is sent is browser-specific, and may also vary depending on the capability of the user's hardware. You must not rely on a specific granularity of these events.
Note: getAnimations()
and effect
are not shipping in all browsers as of this writing, but the polyfill does support them today.
Note: getAnimations()
and effect
are not shipping in all browsers as of this writing, but the polyfill does support them today.
Note: We also don't have to use the default wave types for either of these oscillators we're creating — we could use a wavetable and the periodic wave method as we did before. There is a multitude of possibilities with just a minimum of nodes.
+Note: We also don't have to use the default wave types for either of these oscillators we're creating — we could use a wavetable and the periodic wave method as we did before. There is a multitude of possibilities with just a minimum of nodes.
Note: In digital audio, 44,100 Hz (alternately represented as 44.1 kHz) is a common sampling frequency. Why 44.1kHz?
+
Note: In digital audio, 44,100 Hz (alternately represented as 44.1 kHz) is a common sampling frequency. Why 44.1kHz?
Firstly, because the hearing range of human ears is roughly 20 Hz to 20,000 Hz. Via the Nyquist–Shannon sampling theorem, the sampling frequency must be greater than twice the maximum frequency one wishes to reproduce. Therefore, the sampling rate has to be greater than 40 kHz.
@@ -99,7 +99,7 @@
If you use this call, you will get a mono buffer with just one channel), that when played back on an AudioContext running at 44100Hz, will be automatically resampled to 44100Hz (and therefore yield 44100 frames), and last for 1.0 second: 44100 frames/44100Hz = 1 second.
Note: audio resampling is very similar to image resizing. Say you've got a 16 x 16 image, but you want it to fill a 32x32 area. You resize (or resample) it. The result has less quality (it can be blurry or edgy, depending on the resizing algorithm), but it works, with the resized image taking up less space. Resampled audio is exactly the same: you save space, but in practice you will be unable to properly reproduce high frequency content, or treble sound.
+Note: Audio resampling is very similar to image resizing. Say you've got a 16 x 16 image, but you want it to fill a 32x32 area. You resize (or resample) it. The result has less quality (it can be blurry or edgy, depending on the resizing algorithm), but it works, with the resized image taking up less space. Resampled audio is exactly the same: you save space, but in practice you will be unable to properly reproduce high frequency content, or treble sound.
Returning false
from the process()
method tells the API that it should follow its normal logic and shut down your processor node if it deems it appropriate to do so. If the API determines that your node is no longer needed, process()
will not be called again.
Note: At this time, unfortunately, Chrome does not implement this algorithm in a manner that matches the current standard. Instead, it keeps the node alive if you return true
and shuts it down if you return false
. Thus for compatibility reasons you must always return true
from process()
, at least on Chrome. 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.
Note: At this time, unfortunately, Chrome does not implement this algorithm in a manner that matches the current standard. Instead, it keeps the node alive if you return true
and shuts it down if you return false
. Thus for compatibility reasons you must always return true
from process()
, at least on Chrome. 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.
Web Workers makes it possible to run a script operation in a background thread separate from the main execution thread of a web application. The advantage of this is that laborious processing can be performed in a separate thread, allowing the main (usually the UI) thread to run without being blocked/slowed down.
Note: Web Workers can also use the Web Worker API (i.e. workers can spawn workers, provided they are hosted within the same origin as the parent page).
+Note: Web Workers can also use the Web Worker API (i.e. workers can spawn workers, provided they are hosted within the same origin as the parent page).
Here, we apply our closeVideoCall()
function when the ICE connection state changes to "closed"
or "failed"
. This handles shutting down our end of the connection so that we're ready start or accept a call once again.
Note: We don't watch the disconnected
signaling state here as it can indicate temporary issues and may go back to a connected
state after some time. Watching it would close the video call on any temporary network issue.
Note: We don't watch the disconnected
signaling state here as it can indicate temporary issues and may go back to a connected
state after some time. Watching it would close the video call on any temporary network issue.
Note: WebVR API is replaced by WebXR API. WebVR was never ratified as a standard, was implemented and enabled by default in very few browsers and supported a small number of devices.
Note: WebVR API is replaced by WebXR API. WebVR was never ratified as a standard, was implemented and enabled by default in very few browsers and supported a small number of devices.
This article discusses some of the concepts and theory behind virtual reality (VR). If you are a newcomer to the area, it is worthwhile getting an understanding of these topics before you start diving into code.
diff --git a/files/en-us/web/api/webvr_api/index.html b/files/en-us/web/api/webvr_api/index.html index 3630be88b967c5d..934dc3eb068e77b 100644 --- a/files/en-us/web/api/webvr_api/index.html +++ b/files/en-us/web/api/webvr_api/index.html @@ -14,7 +14,7 @@ ---{{DefaultAPISidebar("WebVR API")}}{{Deprecated_Header}}
-Note: WebVR API is replaced by WebXR API. WebVR was never ratified as a standard, was implemented and enabled by default in very few browsers and supported a small number of devices.
Note: WebVR API is replaced by WebXR API. WebVR was never ratified as a standard, was implemented and enabled by default in very few browsers and supported a small number of devices.
WebVR provides support for exposing virtual reality devices — for example, head-mounted displays like the Oculus Rift or HTC Vive — to web apps, enabling developers to translate position and movement information from the display into movement around a 3D scene. This has numerous, interesting applications, from virtual product tours and interactive training apps to immersive first-person games.
diff --git a/files/en-us/web/api/wheelevent/index.html b/files/en-us/web/api/wheelevent/index.html index 33d3b91764588d7..f2ecfb412d2e5ff 100644 --- a/files/en-us/web/api/wheelevent/index.html +++ b/files/en-us/web/api/wheelevent/index.html @@ -14,7 +14,7 @@The WheelEvent
interface represents events that occur due to the user moving a mouse wheel or similar input device.
Note: This is the standard wheel event interface to use. Old versions of browsers implemented the non-standard and non-cross-browser-compatible {{DOMxRef("MouseWheelEvent")}} and {{DOMxRef("MouseScrollEvent")}} interfaces. Use this interface and avoid the non-standard ones.
+Note: This is the standard wheel event interface to use. Old versions of browsers implemented the non-standard and non-cross-browser-compatible {{DOMxRef("MouseWheelEvent")}} and {{DOMxRef("MouseScrollEvent")}} interfaces. Use this interface and avoid the non-standard ones.
{{APIRef()}}{{deprecated_header}}
Note:This method was removed from Firefox 23 and onward.
+Note: This method was removed from Firefox 23 and onward.
Warning: Due to the lossy nature of converting to and from premultiplied alpha color values, +
Warning: Due to the lossy nature of converting to and from premultiplied alpha color values,
pixels that have just been set using putImageData()
might be returned to
an equivalent getImageData()
as different values.
{{APIRef("Console API")}}{{Non-standard_header}}
Warning: Calling this API immediately after console.profile() can cause it to not work. To +
Warning: Calling this API immediately after console.profile() can cause it to not work. To work around this, call it in a setTimeout with at least 5ms delay. See {{bug(1240249)}}.
Examples of keys that produce a character value are alphabetic, numeric, and punctuation keys. Examples of keys that don't produce a character value are modifier keys such as Alt, Shift, Ctrl, or Meta.
Warning: Since this event has been deprecated, you should look to use beforeinput
or keydown
instead.
Warning: Since this event has been deprecated, you should look to use beforeinput
or keydown
instead.