function pauseVideos(scope) { (scope || document).querySelectorAll('video').forEach(video => { if (!video.paused) video.pause(); }); } // 标签页切换功能:只切换当前模块内部内容,避免其他产品/服务出现空白 function switchTab(evt, tabName) { const section = evt.currentTarget.closest('.product-section, .about-section'); const scope = section || document; pauseVideos(scope); const tabContents = scope.querySelectorAll('.tab-content'); const tabBtns = evt.currentTarget.parentElement.querySelectorAll('.tab-btn'); tabContents.forEach(content => content.classList.remove('active')); tabBtns.forEach(btn => btn.classList.remove('active')); const activeContent = document.getElementById(tabName); if (activeContent) activeContent.classList.add('active'); evt.currentTarget.classList.add('active'); } function normalizeSectionTarget(targetId) { if (!targetId) return targetId; if (targetId.indexOf('#wgs-') === 0) return '#wgs'; return targetId; } function setDropdownActive(originalTargetId, targetId) { document.querySelectorAll('.dropdown-menu a').forEach(link => { const href = link.getAttribute('href') || ''; const hash = href.includes('#') ? href.substring(href.indexOf('#')) : href; link.classList.toggle('active', hash === originalTargetId || hash === targetId); }); } function showContentSection(targetId) { const originalTargetId = targetId; targetId = normalizeSectionTarget(targetId); pauseVideos(document); const sections = document.querySelectorAll('.product-content > section'); const navItems = document.querySelectorAll('.nav-section .nav-item'); const target = document.querySelector(targetId); if (!target || sections.length === 0) return; sections.forEach(section => section.classList.remove('active-section')); target.classList.add('active-section'); navItems.forEach(nav => { nav.classList.toggle('active', nav.getAttribute('href') === targetId); }); const firstTab = target.querySelector('.tab-btn'); const firstContent = target.querySelector('.tab-content'); if (firstTab && firstContent) { target.querySelectorAll('.tab-btn').forEach(btn => btn.classList.remove('active')); target.querySelectorAll('.tab-content').forEach(content => content.classList.remove('active')); firstTab.classList.add('active'); firstContent.classList.add('active'); } setDropdownActive(originalTargetId, targetId); history.replaceState(null, '', originalTargetId || targetId); } document.addEventListener('DOMContentLoaded', function () { initImageLightbox(); const navItems = document.querySelectorAll('.nav-section .nav-item'); navItems.forEach(item => { item.addEventListener('click', function (e) { e.preventDefault(); showContentSection(this.getAttribute('href')); }); }); const hash = window.location.hash; const normalizedHash = normalizeSectionTarget(hash); const initialItem = normalizedHash ? document.querySelector(`.nav-section .nav-item[href="${normalizedHash}"]`) : navItems[0]; if (initialItem) showContentSection(hash || initialItem.getAttribute('href')); document.querySelectorAll('.dropdown-menu a[href*="#"]').forEach(link => { link.addEventListener('click', function (e) { const href = this.getAttribute('href'); const targetHash = href.includes('#') ? href.substring(href.indexOf('#')) : href; const normalizedTarget = normalizeSectionTarget(targetHash); const matchingSidebar = document.querySelector(`.nav-section .nav-item[href="${normalizedTarget}"]`); const samePage = !href.includes('.html') || href.split('#')[0] === '' || window.location.pathname.endsWith(href.split('#')[0]); if (matchingSidebar && samePage) { e.preventDefault(); showContentSection(targetHash); } }); }); const path = window.location.pathname; document.querySelectorAll('.nav-menu > li > .nav-link').forEach(link => { const href = link.getAttribute('href') || ''; const isCurrent = (href.includes('products') && path.includes('products')) || (href.includes('services') && path.includes('services')) || (href.includes('applications') && path.includes('applications')) || (href.includes('advantages') && path.includes('advantages')) || (href.includes('resources') && path.includes('resources')) || (href.includes('about') && path.includes('about')); if (isCurrent) link.classList.add('active'); }); }); document.addEventListener('DOMContentLoaded', function () { const logoSection = document.querySelector('.logo-section'); if (logoSection) { logoSection.addEventListener('click', () => { window.location.href = document.location.pathname.includes('pages/') ? '../index.html' : 'index.html'; }); } }); function initImageLightbox() { if (document.querySelector('.image-lightbox')) return; const box = document.createElement('div'); box.className = 'image-lightbox'; box.innerHTML = '图片预览'; document.body.appendChild(box); const img = box.querySelector('img'); const close = () => box.classList.remove('open'); box.querySelector('button').addEventListener('click', close); box.addEventListener('click', event => { if (event.target === box) close(); }); document.addEventListener('keydown', event => { if (event.key === 'Escape') close(); }); document.querySelectorAll('.product-content img, .resource-content img, .about-container img, .products-preview img, .hero-slide img').forEach(item => { item.addEventListener('click', () => { img.src = item.currentSrc || item.src; img.alt = item.alt || '图片预览'; box.classList.add('open'); }); }); }