更改var值onscroll Jquery

时间:2013-08-12 05:31:41

标签: php jquery html

我正在创建一个函数,我在其顶部添加了if语句。我想在用户滚动时更改变量值。如果用户滚动if语句检查变量值并运行if语句

中的函数
var usrscrolled = 'notscroll';
    function scrolled() {
        //do by scroll start
        usrscrolled = 'scroll';
    }
    $(window).on('scroll', scrolled);
    if (usrscrolled = 'notscroll') {

}

此代码有效,但onscroll变量不会更改,if语句在滚动

上运行

3 个答案:

答案 0 :(得分:1)

=用于分配值,比较您需要使用==,所以更改

if (usrscrolled = 'notscroll') {

if (usrscrolled == 'notscroll') {

答案 1 :(得分:0)

我认为你错过了在滚动之后if语句没有运行:

// Unnecessary if; usrscrolled will always be 'notscroll' here
// This does _not_ run on scroll
if (usrscrolled === 'notscroll') {

}

如果你想要,你需要将它包装在on处理程序中,例如:

function scrolled() {
    if (usrscrolled === 'notscroll') {
        // Do something before the variable is set to 'scroll'
        // I.e. first time user scrolls
    }
    usrscrolled = 'scroll';
}
$(window).on('scroll', scrolled);

答案 2 :(得分:0)

我添加了此代码

var delay = 1000;
var timeout = null;
$(window).bind('scroll', function() {
    clearTimeout(timeout);
    timeout = setTimeout(function() {
        usrscrolled = 'notscroll';
    }, delay);
});

当用户停止滚动时,它会在1秒后更改变量值。它适用于我