添加jquery滚动/单击功能

时间:2014-04-22 01:40:42

标签: jquery css scroll

有人可以告诉我如何将这两个功能正确添加到一起吗?我希望只有当它的top:值低于/等于-70px时才能点击.nav。它现在基本上工作正常,但如果用户位于屏幕的顶部,我不希望它们能够关闭.nav,直到滚动功能移动它-70px然后使点击功能激活。谢谢!

$(window).scroll(function () {
    var topMove = -1 * (620 * $(this).scrollTop() / $('body').height());
    console.log(topMove);
    if(topMove >= -70) {
        $('.nav').css({ top: Math.max(topMove) });
    }
});

$('.nav').click(function () {
    if (!$('.nav').hasClass('clicked')) {
        $(".nav").stop().animate({ top: "0px" }, 750);
        $('.nav').addClass('clicked');
    } 
    else if ($('.nav').hasClass('clicked')) {
        $(".nav").stop().animate({ top: "-60px" }, 750);
        $('.nav').removeClass('clicked');
    }
});

http://jsfiddle.net/UXZ4E/3/

1 个答案:

答案 0 :(得分:1)

只需将其添加到点击功能的顶部(jsfiddle example):

if($(document).scrollTop() <= 70) return false;

它基本上只是停止浏览器的功能,不会向下滚动至少70个像素。