Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.10.2015, 11:34
Аспирант
Отправить личное сообщение для goooooch Посмотреть профиль Найти все сообщения от goooooch
 
Регистрация: 24.10.2010
Сообщений: 46

Как узнать насколько проскроллена страница в режиме реального времени
Всем привет.

Есть некий элемент с неким классом, который находится на странице в некотором месте.

Например, <div class="content">Я тут</div>

Нужно сделать так, чтобы в тот момент, когда пользователь доскроллил документ до div.content, происходило некое действие.

Работает такая конструкция:

if($(window).scrollTop() + $(window).height() > $(".content").offset().top)
		alert('GO AJAX!');


но у нее имеется недостаток — значение $(window).scrollTop() считается только на момент загрузки страницы.

Если мы будем скроллить страницу после того, как страница загрузилась, $(window).scrollTop() остается неизменной величиной, а нужно, чтобы эта величина передавалась в режиме реального времени.

Возможно, есть другое решение моей задачи. Возможно, можно тюнинговать мою конструкцию. Буду рад за любую помощь в решении данного вопроса.
Ответить с цитированием
  #2 (permalink)  
Старый 16.10.2015, 11:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Сообщение от goooooch
Если мы будем скроллить страницу после того, как страница загрузилась, $(window).scrollTop() остается неизменной величиной, а нужно, чтобы эта величина передавалась в режиме реального времени.
так и поставьте ваше условие в
Сообщение от goooooch
скроллить страницу
http://api.jquery.com/scroll/
Ответить с цитированием
  #3 (permalink)  
Старый 18.10.2015, 22:36
Новичок на форуме
Отправить личное сообщение для kreker Посмотреть профиль Найти все сообщения от kreker
 
Регистрация: 28.09.2015
Сообщений: 5

конструкция должна быть вне $(document).ready(function() {});
$(window).scroll(function() {
	if($(window).scrollTop() + $(window).height() > $(".content").offset().top)
        alert('GO AJAX!');
	});
});
Ответить с цитированием
  #4 (permalink)  
Старый 24.11.2015, 13:56
Аспирант
Отправить личное сообщение для goooooch Посмотреть профиль Найти все сообщения от goooooch
 
Регистрация: 24.10.2010
Сообщений: 46

Можно ли при ресайзе окна браузера в режиме реального времени получать информацию о том, на каком расстоянии от "левого края" окна находится объект div.info, например?

left_position = $('.info').offset().left;
определяет значение на момент загрузки страницы, но задача в получении данных в режиме "онлайн".

Последний раз редактировалось goooooch, 24.11.2015 в 13:59.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по jquery - как узнать какой тэг? APL Общие вопросы Javascript 7 09.06.2016 15:22
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Как узнать, что страница полностью загружена без эвентов load/onload Почемучкин Events/DOM/Window 3 07.11.2012 15:51
Как узнать, присутствует ли в окне полоса прокрутки или нет? возжаждавший Элементы интерфейса 6 12.03.2010 23:00
Подскажите как узнать существует ли объект в памяти? Yazla Общие вопросы Javascript 2 05.11.2009 20:05