Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Вывод сообщения (https://javascript.ru/forum/events/29982-vyvod-soobshheniya.html)

lolopolosko 19.07.2012 21:54

Вывод сообщения
 
Привет всем!
Есть страница, на которой очень много информации...
надо сделать так чтобы доходя до определенного места страницы, выводилось сообщения в консоль
И чтобы это сообщения выводилось не один раз, а многократно, в зависимости сколько раз мы будем на этот участок попадать

dmitriymar 19.07.2012 22:37

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела.

Aetae 20.07.2012 00:12

<!DOCTYPE HTML>
<html>
  <body style="height:2000px"><div style="position:fixed;border:1px dotted #000">moved:</div>
<script>
function scrollPoint( elem, point, callback ){
	var dir=elem.scrollTop > point,
        func = function(event){
          if(dir ^ point < elem.scrollTop)callback.call(this, event, dir=!dir)
		};
  window.addEventListener ? 
    window.addEventListener('scroll', func ,false ) :
    window.attachEvent('onscroll', func);
}

scrollPoint( document.documentElement, 1000, function(event,direction){
  document.body.firstChild.innerHTML+=' | '+(direction?'down':'up')
})
</script>
</body>
</html>

lolopolosko 20.07.2012 00:50

Спасибо... к сожалению скрипт не работает...

браузер хром.. ubuntu

Нельзя ли как то попроще сделать? чтобы не обрабатывать события, а только к примеру пользователь прокручивает к определенному слову, оно появляется видимым в окне браузера, и сразу вызывается функция?
Разве нету в яве на этот случай готовых плюшек?

Aetae 20.07.2012 01:04

Это зависит от передаваемого элемента. В хроме скролл считается у body.
Пример: for Chrome
<!DOCTYPE HTML>
<html>
  <body style="height:2000px"><div style="position:fixed;border:1px dotted #000">moved:</div>
<script>
function scrollPoint( elem, point, callback ){
	var dir=elem.scrollTop > point,
        func = function(event){
          if(dir ^ point < elem.scrollTop)callback.call(this, event, dir=!dir)
		};
  window.addEventListener ? 
    window.addEventListener('scroll', func ,false ) :
    window.attachEvent('onscroll', func);
}

scrollPoint( document.body, 1000, function(event,direction){
  document.body.firstChild.innerHTML+=' | '+(direction?'down':'up')
})
</script>
</body>
</html>


Какой элемент для отсчёта передавать выбирать должен уже ваш скрипт. Я какбэ дал универсальную функцию.

lolopolosko 20.07.2012 01:09

Спасибо! :D


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