Comments (4)
- Main thread is ~available
- Calculation TBD.
Maybe this is when there's enough yielding that the UI can change or interact or show progress every 16.7ms (i.e. 60 FPS)?
5. Any other ideas?
Maybe mention that deferred work may be scheduled and run while not affecting TTI (as long as it's not clogging things up)?
from lighthouse.
I've updated the definition of the TTI above metric based on latest discussions with @benshayden, @skyostil, japhet@, @pbakaus and others.
from lighthouse.
Are we sure TTI should block on domContentLoadedEventEnd? I find that many pages start to become interactable before parsing is complete. If for instance there's a script in the footer inserted via doc.write, this can delay DCL firing when the CPU will be idle and the page interactive.
That said, I think it's also reasonable to discourage pages from running the parser a long time after their content is usable - we can message to devs that they shouldn't do this and if they do so, our loading indicators may stay visible longer than they would like. But that also means that some existing content will continue to show a loading indicator / not be considered interactive until after it has reached the interactive state.
from lighthouse.
Are we sure TTI should block on domContentLoadedEventEnd?
Hah. Pat pretty much the same comment yesterday on the Progressive page Load Metrics doc yesterday(https://docs.google.com/document/d/1oiy0_ych1v2ADhyG_QW7Ps4BNER2ShlJjx2zCbVzVyY/edit#)
Quoting him, then me..
This isn't necessarily tied to anything visual. A site can have a lot of js at the end of the body that needs to get loaded/parsed/executed that will delay DCL but may not cause any visual change to the page, though by-definition if you are waiting for the progress indicator this may be included anyway as part of that logic.
Fair. This isn't directly a visual dependency, so I'll adjust that.
I agree that DCL be a direct dependency here as its not visual. Main thread availability will tackle CPU contention, and layout stability for the rest of the blocking script impact.
from lighthouse.
Related Issues (20)
- How to configure triggered of the end of a navigation?
- Utilize localized failure messages from axe HOT 1
- Excessive style recalcs caused by CSS usage tracking HOT 4
- Improve documentation on standalone mode runners HOT 5
- Page crashes when running test from large DOM.getDocument response HOT 4
- Unexpected changes in main thread time reported around March 8th HOT 8
- Sequential network requests are simulated as parallel and the first rtt is ignored
- Lone surrogate character breaks PSI proto conversion HOT 4
- Was filing bug report when site crashed multiple before I could get the first report in HOT 2
- On certain audited pages, `totalBodyElements` are different from `MainDocumentContent` body nodes count HOT 1
- The Future of WordPress in the Age of AI Integration HOT 2
- Site security issues while making payment to Comcast. HOT 1
- SEO updates from recent search conversations
- Unexpected changes on main thread work from 11.6.0 to 11.7.1 HOT 3
- Viewport resizing to window size
- Lighthouse LCP Issue HOT 1
- LCP not recognized in many pages for this site. HOT 1
- Print stylesheet picked for Render-blocking resource HOT 1
- Incorrect user agent on pagespeed.web.dev HOT 1
- Protocol error (Target.getTargetInfo): Protocol error (Target.getTargetInfo): 'Target.getTargetInfo' wasn't found HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lighthouse.