Показать сообщение отдельно
  #1 (permalink)  
Старый 18.11.2015, 20:07
Новичок на форуме
Отправить личное сообщение для To_wave Посмотреть профиль Найти все сообщения от To_wave
 
Регистрация: 15.09.2010
Сообщений: 7

Как получить позицию scrollbar при touchmove событии?
Доброго времени.
Есть такая проблемка.
При событии 'touchmove' scrollTop() всегда возвращает 0. Если touchmove поменять на 'scroll' то возвращает нормальное значение (только на десктопе).
Суть в том что, 'scroll' не работает на touch девайсах (и в дебаггере chrome при дебагге как девайс), а собственно для них и пишется эта функция (чтоб меню при скролле зафиксировать наверху).

var myWindow = angular.element($window);
      myWindow.on("touchmove", function (e) {
             console.log(myWindow.scrollTop());
      });


Какие еще есть методы, чтобы получать текущую позицию скроллбара?

UPD:
Обнаружил такую странность - проблема возникает при ширине экрана до 767px. После scrollTop() возвращает правильное значение

UPD2:
Проблему решил.
Стал "смотреть" не на window а на 1й div

angular.element(".main-block").on("scroll", function (e) {
                        console.log('e', angular.element(".main-block").scrollTop());
                    });

Последний раз редактировалось To_wave, 18.11.2015 в 20:57. Причина: UPD2
Ответить с цитированием