簡體   English   中英

滾動時始終不顯示Javascript中的Chaser菜單

[英]Chaser Menu in Javascript Doesn't Show When Scrolled, Always Hidden

我正在嘗試創建一個追蹤器菜單(當窗口向下滾動時顯示)。

我收到了此代碼,並嘗試將其復制粘貼到我的網站中。

$(function ($) {
//////////////////////////////////////////////////////////////////////////
////// START - CODE FOR LOADING THE TOP MENU CHASING BAR
//////////////////////////////////////////////////////////////////////////

    var doc = $(document), win = $(window), chaser, forch,
        forchBottom, visible;
    function shown() {
        visible = true;
    }
    function hidden() {
        visible = false;
    }
    chaser = $('.rt-menubar.fusionmenu').clone().hide().appendTo(document.body).wrap("<div class='chaser'></div>");
    forch = $('.forchaser').first();
    forchBottom = forch.height() + forch.offset().top;
    hidden();
    win.bind('scroll', function () {
        var top = doc.scrollTop();
        if (!visible && top > forchBottom) {
            chaser.slideDown(300, shown);
        } else if (visible && top < forchBottom) {
            chaser.slideUp(200, hidden);
        }
    });
});

這是我得到的結果:

<div class="rt-menubar fusionmenu" style="display: none;">
//code of list menu
</div>

問題是,無論我如何滾動窗口滾動條,始終將其設置為“顯示:無”,而不是“顯示:塊”。 因此它總是隱藏的。

如果我在追逐程序變量代碼中消除了hide()函數,可以執行以下操作:

chaser = $('.rt-menubar.fusionmenu').clone().appendTo(document.body).wrap("<div class='chaser'></div>");

追逐器菜單出現,並且工作正常。 但是,這不是我想要的。 我希望追蹤器菜單隱藏在頁面頂部,並在向下滾動窗口時顯示。

如何解決這個問題?

感謝您的幫助!

找到了答案!

我忘了說:

<div class="forchaser"></div>

在主體區域的某個地方。 這是給一個標記作為起點,您將顯示追逐器菜單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM