2016-04-09 3 views
0

Я использую следующий код для добавления переменных 1 в js. но он всегда показывает тот же результат.Добавить 1, когда страница, прокрутите страницу вниз

Javascript

$(window).scroll(function() { 
    var lmp = 5, 
     lma = 0; 
     if($(document).height() - 50 <= $(window).scrollTop() + $(window).height()) { 
      $('.div').append('<div></div><div></div><div></div><div></div><div></div>'); 
     lmp++; 
     lma++; 
     console.log(lmp +" : "+ lma); 
     } 
    }); 

jsfiddle: - https://jsfiddle.net/n75epL5u/проверка консоли результатов

ответ

1

Объявите переменные вне вашего события прокрутки. В противном случае вы инициализируете их в каждом прокрутке.

var lmp = 5, lma = 0; 
$(window).scroll(function() { 
    if ($(document).height() - 50 <= $(window).scrollTop() + $(window).height()) { 
    $('.div').append('<div></div><div></div><div></div><div></div><div></div>'); 
    lmp++; 
    lma++; 
    console.log(lmp + " : " + lma); 
    } 
}); 
+1

Спасибо. Ты спас мой день ... –

1

Причина, по которой ваш код не работает?

Каждый раз, когда вы прокручиваете объявленные переменные.

Решение

переменная Переместить объявление вне функции.

var lmp = 5, 
    lma = 0; 
    $(window).scroll(function() { 

    if ($(document).height() - 50 <= $(window).scrollTop() + $(window).height()) { 
     $('.div').append('<div></div><div></div><div></div><div></div><div></div>'); 
     lmp++; 
     lma++; 
     console.log(lmp + " : " + lma); 
    } 
    }); 

Fiddle Demo

+1

спасибо .. для ответа. –

0

Пожалуйста переместить переменные вне обработчика события прокрутки. Далее его лучше обернуть ваш код в анонимной функции, чтобы он не загрязнял глобальное пространство имен ...

;(function() { 
    var lmp = 5, lma = 0; 

    $(window).scroll(function() { 
     if ($(document).height() - 50 <= $(window).scrollTop() + $(window).height()) { 
     $('.div').append('<div></div><div></div><div></div><div></div><div></div>'); 
     lmp++; 
     lma++; 
     console.log(lmp + " : " + lma); 
    }); 
}());