Blog*
Category
ExperientialInsight
tag console.log("=== MODEL VIEWER DIAGNOSTICS ==="); // Check WebAssembly support console.log("WebAssembly support:", typeof WebAssembly); // Check if model-viewer script is loaded at all const modelViewerScripts = document.querySelectorAll('script[src*="model-viewer"]'); console.log("Found model-viewer scripts:", modelViewerScripts.length); modelViewerScripts.forEach(script => { console.log("Script:", script.src); }); // Check if model-viewer custom element is defined console.log("model-viewer custom element defined:", !!customElements.get('model-viewer')); // Check for model-viewer elements const modelViewers = document.querySelectorAll('model-viewer'); console.log("Found model-viewer elements:", modelViewers.length); // Check if we can access model-viewer elements properly if (modelViewers.length > 0) { console.log("First model-viewer src:", modelViewers[0].src); console.log("First model-viewer innerHTML:", modelViewers[0].innerHTML); } // Try manually loading model-viewer script const script = document.createElement('script'); script.type = 'module'; script.src = 'https://cdn.jsdelivr.net/npm/@google/model-viewer@2.1.1/dist/model-viewer.min.js'; script.onload = function() { console.log("Manual model-viewer script loaded"); console.log("Custom element now defined:", !!customElements.get('model-viewer')); // Try to update the models after script is loaded setTimeout(() => { const updatedModelViewers = document.querySelectorAll('model-viewer'); console.log("Model viewers after load:", updatedModelViewers.length); if (updatedModelViewers.length > 0) { // Force a reload of the first model const firstModel = updatedModelViewers[0]; const originalSrc = firstModel.src; console.log("Attempting to reload model with src:", originalSrc); // Force a reload cycle firstModel.src = ''; setTimeout(() => { firstModel.src = originalSrc; console.log("Model src reset to:", originalSrc); }, 100); } }, 500); }; document.head.appendChild(script);