我正在尝试创建一个追踪菜单(当窗口向下滚动时显示)。
我收到了此代码并尝试将其复制粘贴到我的网站上。
$(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>
问题是,无论我如何滚动窗口滚动条,它总是设置'display:none'而不是'display:block'。所以它总是被隐藏起来。
如果我将chaser变量代码中的hide()函数消除一点:
chaser = $('.rt-menubar.fusionmenu').clone().appendTo(document.body).wrap("<div class='chaser'></div>");
追踪菜单出现并正常工作。但是,这不是我想要的。我希望追踪菜单隐藏在页面顶部,并在我向下滚动窗口时显示。
如何解决这个问题?
谢谢你的帮助!
答案 0 :(得分:0)
找到了答案!
我忘记了:
<div class="forchaser"></div>
在主体区域的某个地方。这是给你一个标记作为你的追逐菜单的起点。