Skip to content
This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Commit 2fe4dcd

Browse files
authored
fix(demos): Fix ready.js to avoid false positive before document load (#2180)
1 parent 13b5605 commit 2fe4dcd

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

demos/ready.js

+6-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ window.demoReady = (function(root) {
2727
var POLL_MAX_WAIT_MS = 60 * 1000;
2828

2929
var isReadyCached = false;
30+
var isDomLoaded = false;
3031
var handlers = [];
3132
var testDom = null;
3233
var startTimeMs = null;
@@ -38,7 +39,7 @@ window.demoReady = (function(root) {
3839
}
3940
ensureDetectionDom();
4041
isReadyCached = getComputedStyle(testDom).position === 'relative' &&
41-
(Boolean(window.mdc) || !root.querySelector('script[src*="material-components-web.js"]'));
42+
(Boolean(window.mdc) || (isDomLoaded && !root.querySelector('script[src*="material-components-web.js"]')));
4243
return isReadyCached;
4344
}
4445

@@ -94,6 +95,10 @@ window.demoReady = (function(root) {
9495
handlers.length = 0;
9596
}
9697

98+
root.addEventListener('DOMContentLoaded', function() {
99+
isDomLoaded = true;
100+
});
101+
97102
return function addHandler(handler) {
98103
if (isReady()) {
99104
handler(root);

0 commit comments

Comments
 (0)