Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   WTF! Как то странно работает вывод функции (https://javascript.ru/forum/jquery/47597-wtf-kak-stranno-rabotaet-vyvod-funkcii.html)

Giden 30.05.2014 14:01

WTF! Как то странно работает вывод функции
 
Доброго времени суток. Появилась необходимость написать свой обработчик для скроллинга(вверх или вниз). Написал код:
jQuery(window).scroll(function (){
       console.log(isTop());
    });

    function isTop() {
        var first = jQuery(window).scrollTop();
        var rez = false;
        jQuery(window).scrollTop(function() {
            if (first < jQuery(window).scrollTop()) {
            } else if (first > jQuery(window).scrollTop()) {
                rez = true;
            }
        });
        return rez;
    }

Постоянно возвращает false. Внутри условия все гуд. А возвращает не то, что нужно. :help:

рони 30.05.2014 14:08

Giden,
$(function ()
  	  {var first = jQuery(window).scrollTop();
  	    jQuery(window).scroll(function ()
  	      {
  	        console.log(isTop());
  	      }
  	    );
  	    function isTop() {
  	      var rez = false;
  	      if (first > jQuery(window).scrollTop()) {
  	        rez = true;
  	      }
  	      first = jQuery(window).scrollTop();
  	      return rez;
  	    }
  	  }
  	)

WorM32 30.05.2014 14:22

var $window = $(window),
    lastScrollTop = 0;

function onScroll (e) {
    var top = $window.scrollTop();
    if (lastScrollTop > top) {
        console.log('top');
    } else if (lastScrollTop < top) {
        console.log('down');
    }
    lastScrollTop = top;
}

$window.on('scroll', onScroll);


Часовой пояс GMT +3, время: 09:40.