Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.01.2017, 18:02
Новичок на форуме
Отправить личное сообщение для feniksdv Посмотреть профиль Найти все сообщения от feniksdv
 
Регистрация: 20.01.2017
Сообщений: 1

Скролинг с подменой блока через 1000 пикселей
Возникла следующая задача:
На странице в сайдбаре есть код, нужно этот код менять на другой при прокрутки страницы в низ (в идеале при остановке прокрутки заменять её на третью, а при прокрутке в верх на другую)
Реализовать можно всё, но как сделать это я не знаю. Подскажите пожалуйста код.

Вот код почти готов, нехватает подмены через каждых 1000 пикселей.
<script type="text/javascript">
function getTopOffset(e) { 
  var y = 0;
  do { y += e.offsetTop; } while (e = e.offsetParent);
  return y;
}
var block = document.getElementById('fixblock'); /* fixblock - значение атрибута id блока */
if ( null != block ) {
  var topPos = getTopOffset( block );

  window.onscroll = function() {
    var scrollHeight = Math.max( document.documentElement.scrollHeight, document.documentElement.clientHeight),

        // определяем высоту рекламного блока
        blockHeight = block.offsetHeight,

        // вычисляем высоту подвала, footer заменить на значение атрибута id подвала
        footerHeight = document.getElementById('footer').offsetHeight, 	    

        // считаем позицию, до которой блок будет зафиксирован 
        stopPos = scrollHeight - blockHeight - footerHeight; 

    var newcss = (topPos < window.pageYOffset) ? 
      'top:20px; position: fixed;' : 'position:static;';

    if ( window.pageYOffset > stopPos ) 
      newcss = 'position:static;';

    block.setAttribute( 'style', newcss );
  }
}
</script>


Вот эту проверку нужно куда то вставить и все будет работать , куда её нужно вставить?

if ( topPos > 1000 ){
     block.innerHTML = "здесь html код нового баннера";
}
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не увеличивается ширина блока через style.width WhatIsJavaScript Events/DOM/Window 6 25.08.2016 10:59
Закрытие блока через заданное время! Andrey_55 Общие вопросы Javascript 1 02.03.2016 10:04
Через какой промежуток времени выпадет число 1000 Khristina SH Общие вопросы Javascript 0 26.04.2014 20:37
ктивация одного блока через другой zerofx Элементы интерфейса 6 14.01.2014 00:28
После скрытия блока через заданное время zoOmer Общие вопросы Javascript 8 13.01.2014 18:51