HEX
Server: Apache
System: Linux server-674799.igrow.ws 5.14.0-611.27.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Feb 4 04:40:11 EST 2026 x86_64
User: elrashedytravel (1025)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/elrashedytravel/public_html/wp-content/themes/custom-functions-1767952375/js/header-scroll.js
document.addEventListener('DOMContentLoaded', function() {
    const header = document.getElementById('masthead');

    // If the header element doesn't exist, do nothing.
    if (!header) {
        return;
    }

    let lastScrollTop = 0;
    let isScrolling = false;

    // 防抖函数
    function debounce(func, wait) {
        let timeout;
        return function executedFunction(...args) {
            const later = () => {
                clearTimeout(timeout);
                func(...args);
            };
            clearTimeout(timeout);
            timeout = setTimeout(later, wait);
        };
    }

    function handleScroll() {
        const currentScrollTop = window.pageYOffset || document.documentElement.scrollTop;

        // 如果在页面顶部,始终显示header
        if (currentScrollTop <= 0) {
            header.classList.remove('header-hidden');
            header.classList.add('header-visible');
            lastScrollTop = currentScrollTop;
            return;
        }

        // 滚动距离小于header高度时不隐藏
        if (currentScrollTop < 100) {
            header.classList.remove('header-hidden');
            header.classList.add('header-visible');
            lastScrollTop = currentScrollTop;
            return;
        }

        // 向下滚动 - 隐藏header
        if (currentScrollTop > lastScrollTop && !header.classList.contains('header-hidden')) {
            header.classList.remove('header-visible');
            header.classList.add('header-hidden');
        }
        // 向上滚动 - 显示header
        else if (currentScrollTop < lastScrollTop && !header.classList.contains('header-visible')) {
            header.classList.remove('header-hidden');
            header.classList.add('header-visible');
        }

        lastScrollTop = currentScrollTop;
    }

    // 使用防抖优化滚动性能
    const debouncedHandleScroll = debounce(handleScroll, 10);

    // 添加滚动监听器
    window.addEventListener('scroll', debouncedHandleScroll, { passive: true });

    // 初始状态
    header.classList.add('header-visible');
});