我有几个这样的点击声明

$('.button1').click(function() {
//grab current scroll position
    var currentscrollpos = $(window).scrollTop()

    $("html, body").animate({ scrollTop: 0 }, 500);

});

$('.button2').click(function() {
    //go back to scroll position
    $("html, body").animate({ scrollTop: currentscrollpos }, 500);

});


我不确定如何获取当前的滚动pos并将其存储在变量中,以便可以在其他click函数中使用它

有没有办法做到这一点?

最佳答案

在外部范围内定义变量,以便其他函数可以使用它:

var currentscrollpos;

$('.button1').click(function() {
    currentscrollpos = $(window).scrollTop()
    $("html, body").animate({ scrollTop: 0 }, 500);
});

$('.button2').click(function() {
    $("html, body").animate({ scrollTop: currentscrollpos }, 500);
});


您可以并且应该将其包装到一个闭包中,以防止使用不必要的变量污染名称空间,但这至少可以帮助您入门。

关于jquery - jQuery商店滚动位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4555724/

10-12 15:30