diff --git a/source b/source index 479bb9636ff..993ecb58413 100644 --- a/source +++ b/source @@ -3909,6 +3909,8 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
The following terms and features are defined in CSS Positioned Layout: @@ -4061,6 +4063,8 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
scrollend
eventThe following features and terms are defined in CSS Syntax: @@ -104568,6 +104572,9 @@ location.href = '#foo';
If documentIsNew is true, then:
Update the initial scroll positions for scroll containers in + document.
Try to scroll to the fragment for document.
At this point scripts may run for the newly-created document @@ -104700,6 +104707,8 @@ location.href = '#foo';
To try to scroll to the fragment for a Document
document,
perform the following steps in parallel:
To update the initial scroll positions for scroll containers in a
+ Document
document:
Let scrollers be the list obtained by performing a + tree order traversal of document's flat tree, and filtering + to keep only the elements that establish a scrolling box.
For each scroller of scrollers:
+ +Update the initial scroll position for scroller.
To update the initial scroll position for an element scroller, perform + the following steps in parallel:
+ +Wait for an implementation-defined amount of time. (This is intended to allow + the user agent to optimize the user experience in the face of performance concerns.)
Queue a global task on the navigation and traversal task source + given document's relevant global object to run these steps:
+ +If the user agent has reason to believe the user is no longer interested in scrolling to + the initial scroll position of the + scrollable overflow rectangle of scroller's scrolling box, + then abort these steps.
Let position be the initial scroll + position of the scrollable overflow rectangle of scroller's + scrolling box.
Perform a scroll of scroller's scrolling box to position, with scroller as + the associated element.
Update the initial scroll position for scroller.
Although try to scroll to the fragment and update the initial + scroll positions for scroll containers take place at the same point, and both use a polling + system to prediodically re-attempt the scrolling, their goals are different. Try to scroll + to the fragment polls repeatedly until the indicated part is found since it + might take a while for the element to show up during the document load. Update the initial + scroll positions for scroll containers does not have such a finish condition; it can run + indefinitely, as long as the user does not indicate disinterest. This is necessary to achieve the + desired behavior of keeping a scroll container anchored to the position indicated by + CSS properties that determine the initial scroll position.
+ +To make document unsalvageable, given a Document
document and a string reason: