Skip to content

How should we handle content changing when scrolling down the page? #8647

@mattzeunert

Description

@mattzeunert

When a gatherer scroll down the page it can change the page layout, e.g. due lazy loading or infinite scroll loading more content. That might matter because:

  • page content varies between gatherers, so whether the page has been scrolled can affect the scores of audits that look at the DOM
  • the new tap targets gatherer first collects elements location and then scrolls through the page to call elementFromPoint. If an element moves while scrolling down the page the gatherer will think the tap target is invisible
  • if we take a full page screenshot it should match what other gatherers see so we correctly identify elements on it

The accessibility gatherer used to run early on and it scrolled to the bottom of the page. Moving it to run last had a minor impact on some sites' scores.

Should we do anything to make this more consistent and predictable?

  • can we scroll all the way to the bottom of the page once before running any gatherers?
  • maybe after scrolling down once we could get the height of the page and if the page grows again we ignore content beyond that page height? That page height could also be the max height of the full page screenshot.

cc @patrickhulce

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions