From 617566c1c6b544101e18529df0e146b6748339f7 Mon Sep 17 00:00:00 2001
From: Domenic Denicola
inert
attributeThe inert
attribute is a boolean attribute that
+ indicates, by its presence, that the element and all its descendants is to be made
+ inert.
When an element has an inert
attribute, the user agent
+ must mark that element and all its descendants as inert.
By default, there is no visual indication of a subtree being inert. Authors are
+ encouraged to clearly mark what parts of their document are active and which are inert, to avoid
+ user confusion. In particular, it is worth remembering that not all users can see all parts of a
+ page at once; for example, users of screen readers, users on small devices or with magnifiers, and
+ even users just using particularly small windows might not be able to see the active part of a
+ page and may get frustrated if inert sections are not obviously inert. For individual controls,
+ the disabled
attribute is probably more appropriate.
The inert
IDL attribute must reflect
+ the content attribute of the same name.
When an element has an inert
attribute, the user agent
must mark that element and all its descendants as inert.
By default, there is no visual indication of a subtree being inert. Authors are
- encouraged to clearly mark what parts of their document are active and which are inert, to avoid
- user confusion. In particular, it is worth remembering that not all users can see all parts of a
- page at once; for example, users of screen readers, users on small devices or with magnifiers, and
- even users just using particularly small windows might not be able to see the active part of a
- page and may get frustrated if inert sections are not obviously inert. For individual controls,
- the disabled
attribute is probably more appropriate.
By default, there is no persistent visual indication of a subtree being inert.
+ Since inert subtrees may not be the target of user interaction events,
+ including text selection,
+ user agents should show the default cursor when an the user indicates an element in an inert subtree
+ using a pointing device.
+ Authors are encouraged to clearly mark what parts of their document are active and which are inert,
+ to avoid user confusion.
+ In particular, it is worth remembering that not all users can see all parts of a page at once;
+ for example, users of screen readers, users on small devices or with magnifiers,
+ and even users just using particularly small windows
+ might not be able to see the active part of a page and may get frustrated
+ if inert sections are not obviously inert.
+ For individual controls, the disabled
attribute
+ is probably more appropriate.
The inert
IDL attribute must reflect
the content attribute of the same name.
This section does not define or create any content attribute - named "inert". This section merely defines an abstract concept of - inertness.
+ named "inert". This section merely defines an abstract concept of inertness. Seeinert
for an explanation of
+ the attribute of the same name.
A node (in particular elements and text nodes) can be marked as inert. When a node - is inert, then the user agent must act as if the node was absent for the purposes of - targeting user interaction events, may ignore the node for the purposes of - find-in-page, and may prevent the user from selecting text in that node. User agents - should allow the user to override the restrictions on search and text selection, however.
+ is inert, then: + +the user agent must act as if the node's event listener list is empty for the + purposes of event invocation,
the user agent may ignore the node for the purposes of find-in-page, and
the user agent may prevent the user from selecting text in that node.
User agents should allow the user to override the restrictions on search and text selection, + however.
For example, consider a page that consists of just a single inert
- paragraph positioned in the middle of a body
. If a user moves their pointing device
- from the body
over to the inert paragraph and clicks on the paragraph,
- no mouseover
event would be fired, and the mousemove
and click
events would
- be fired on the body
element rather than the paragraph.
button
positioned in the middle of a body
. If a user clicks on the
+ button, the click
event would cause no event listeners on
+ button
to be run, and the event would bubble up to the body
element
+ regardless of any event listeners on the button
.
When a node is inert, it generally cannot be focused. Inert nodes that are commands will also get disabled.
+User agents should show the default cursor when a user indicates an element in an inert subtree + using a pointing device.
+While a browsing context container is marked as inert, its
nested browsing context's active document, and all nodes in that
Document
, must be marked as inert.
dialog
element to its node
document's top layer.
- inert
attributeinert
attributeThe inert
attribute is a boolean attribute that
indicates, by its presence, that the element and all its descendants is to be made
@@ -72558,19 +72568,13 @@ END:VCARD
must mark that element and all its descendants as inert.
By default, there is no persistent visual indication of a subtree being inert.
- Since inert subtrees may not be the target of user interaction events,
- including text selection,
- user agents should show the default cursor when an the user indicates an element in an inert subtree
- using a pointing device.
- Authors are encouraged to clearly mark what parts of their document are active and which are inert,
- to avoid user confusion.
- In particular, it is worth remembering that not all users can see all parts of a page at once;
- for example, users of screen readers, users on small devices or with magnifiers,
- and even users just using particularly small windows
- might not be able to see the active part of a page and may get frustrated
- if inert sections are not obviously inert.
- For individual controls, the disabled
attribute
- is probably more appropriate.
disabled
attribute is probably
+ more appropriate.
The inert
IDL attribute must reflect
the content attribute of the same name.
A node (in particular elements and text nodes) can be marked as inert. When a node is inert, then:
-the user agent must act as if the node's event listener list is empty for the - purposes of event invocation,
the user agent may ignore the node for the purposes of find-in-page, and
the user agent may prevent the user from selecting text in that node.
the user agent must not fire any of the following events on the node:
+blur
focus
focusin
focusout
auxclick
click
dblclick
mousedown
mouseenter
mouseleave
mousemove
mouseout
mouseover
mouseup
touchstart
touchend
touchmove
touchcancel
wheel
beforeinput
input
keydown
keyup
compositionstart
compositionupdate
compositionend
if one of the above events would otherwise be fired on the element + as a result of a user interaction, where the process for determining the + event target entails "hit testing", the event must instead be targeted at + the non-inert ancestor of the element which would be the topmost "hit + testing" result for the point at which the interaction occurred, if the inert + element, its inert ancestors, and any unrelated elements were not + present;
the user agent may ignore the node for the purposes of text search user interfaces + (commonly known as "find in page"); and
the user agent may prevent the user from selecting text in that node, and may prevent
+ code calling setSelectionRange()
+ on the node.
User agents should allow the user to override the restrictions on search and text selection, @@ -72527,8 +72569,7 @@ END:VCARD
For example, consider a page that consists of just a single inert
button
positioned in the middle of a body
. If a user clicks on the
button, the click
event would cause no event listeners on
- button
to be run, and the event would bubble up to the body
element
- regardless of any event listeners on the button
.
button
to be run, and the event would instead be targeted at the body
element.
When a node is inert, it generally cannot be focused. Inert nodes that are commands will also get disabled.
From c173dae2267dda1a7dd7d7f8fae8f56115386510 Mon Sep 17 00:00:00 2001 From: Alice Boxhallkeydown
eventkeypress
eventkeyup
eventfocusin
eventfocusout
eventbeforeinput
eventcompositionstart
eventcompositionupdate
eventcompositionend
eventThe following features are defined in Touch Events:
From 5da910e9c8e12244787832be45ada76e809fbad3 Mon Sep 17 00:00:00 2001 From: Alice BoxhallThis section does not define or create any content attribute
- named "inert". This section merely defines an abstract concept of inertness. See inert
for an explanation of
+
See also inert
for an explanation of
the attribute of the same name.
A node (in particular elements and text nodes) can be marked as inert. When a node @@ -72559,13 +72557,31 @@ END:VCARD -
if one of the above events would otherwise be fired on the element - as a result of a user interaction, where the process for determining the - event target entails "hit testing", the event must instead be targeted at - the non-inert ancestor of the element which would be the topmost "hit - testing" result for the point at which the interaction occurred, if the inert - element, its inert ancestors, and any unrelated elements were not - present;
If one of the following events would be fired as a result of user input, such that the + inert element would be the topmost event + target, an alternative event target must be found as + follows:
+Let originalElement be the topmost event + target for the event.
Let candidate be the same element.
Let ineligible be an empty list.
While candidate is inert, or candidate is not an an + ancestor of originalElement:
+Add candidate to ineligible.
Let candidate be the element which would be the topmost event target if all the elements in + ineligible were excluded from consideration.
If candidate is not null, let candidate be the new event target.
Otherwise, do not fire the event.
the user agent may ignore the node for the purposes of text search user interfaces (commonly known as "find in page"); and
the user agent must not fire any of the following events on the node:
-blur
focus
focusin
focusout
auxclick
click
dblclick
mousedown
mouseenter
mouseleave
mousemove
mouseout
mouseover
mouseup
touchstart
touchend
touchmove
touchcancel
wheel
beforeinput
input
keydown
keyup
compositionstart
compositionupdate
compositionend
If one of the following events would be fired as a result of user input, such that the +
If an event would be fired as a result of user input, such that the inert element would be the topmost event target, an alternative event target must be found as follows:
@@ -72583,12 +72551,10 @@ END:VCARDthe user agent may ignore the node for the purposes of text search user interfaces +
The user agent may ignore the node for the purposes of text search user interfaces (commonly known as "find in page"); and
the user agent may prevent the user from selecting text in that node, and may prevent
- code calling setSelectionRange()
- on the node.
The user agent may prevent the user from selecting text in that node.
User agents should allow the user to override the restrictions on search and text selection,
From a69465a6ef877ada931dc9788fd718a8df897adb Mon Sep 17 00:00:00 2001
From: Alice Boxhall keypress
eventkeyup
eventfocusin
eventfocusout
eventbeforeinput
eventcompositionstart
eventcompositionupdate
eventcompositionend
eventInvalidStateError
" DOMException
.
If this element is inert
, return.
Set the selection range with start, end, and direction.
Add candidate to ineligible.
Let candidate be the element which would be the Set candidate to the element which would be the topmost event target if all the elements in
- ineligible were excluded from consideration.
If candidate is not null, let candidate be the new
The user agent may prevent the user from selecting text in that node. User agents should allow the user to override the restrictions on search and text selection,
+ User agents may allow the user to override the restrictions on search and text selection,
however. For example, consider a page that consists of just a single inert
+ Consider a page that consists of just a single inert
button
positioned in the middle of a body
. If a user clicks on the
button, the click
event would cause no event listeners on
- button
to be run, and the event would instead be targeted at the body
element.button
to be run, and the event would instead be targeted at the body
+ element.
When a node is inert, it generally cannot be focused. Inert nodes that are commands will also get disabled.
@@ -72571,6 +72566,8 @@ END:VCARDUser agents should show the default cursor when a user indicates an element in an inert subtree using a pointing device.
+By default, an element is not inert.
+While a browsing context container is marked as inert, its
nested browsing context's active document, and all nodes in that
Document
, must be marked as inert.