Skip to content

Commit 878b724

Browse files
committed
fix(model-viewer): handle resize
1 parent 118f100 commit 878b724

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

resources/app.ts

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,33 @@ createInertiaApp({
2323
},
2424
})
2525

26-
window.requestIdleCallback(() => {
27-
if (!window.matchMedia('(min-width: 768px)').matches) {
26+
let modelViewerScriptLoaded = false
27+
28+
function loadModelViewerScript() {
29+
if (!window.matchMedia('(min-width: 768px)').matches || modelViewerScriptLoaded) {
2830
return
2931
}
3032

3133
const scriptEl = document.createElement('script')
3234
scriptEl.src = 'https://ajax.googleapis.com/ajax/libs/model-viewer/3.3.0/model-viewer.min.js'
3335
scriptEl.async = true
36+
scriptEl.type = 'module'
3437
scriptEl.onload = () => {
3538
const modelViewerEls = document.querySelectorAll('model-viewer[data-not-loaded]')
3639

3740
for (const modelViewerEl of modelViewerEls) {
3841
modelViewerEl.removeAttribute('data-not-loaded')
3942
}
4043
}
44+
4145
document.body.appendChild(scriptEl)
46+
modelViewerScriptLoaded = true
47+
}
48+
49+
window.requestIdleCallback(() => {
50+
loadModelViewerScript()
51+
})
52+
53+
window.addEventListener('resize', () => {
54+
loadModelViewerScript()
4255
})

0 commit comments

Comments
 (0)