Исправить код
Использую код для фиксации сайдбара при прокрутке страницы. При перезагрузке страницы на якоре посреди страницы сайдбар до движения скролла пропадает и находится изначально вверху. как исправить баг?
<script type="text/javascript"> $(document).ready(function(){ $(window).scroll(function() { if($(this).scrollTop() >=300) { $('#SideBar').addClass('sidebarfix'); } else{ $('#SideBar').removeClass('sidebarfix'); } }); }); </script> |
JAMLIGHT,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [html run] ... минимальный код страницы с вашей проблемой [/html] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
JAMLIGHT,
добавьте триггер скролл в строку надцать |
минимальный код страницы подготовлю
|
JAMLIGHT,
<script> $(function(){ $(window).scroll(function() { $("#SideBar").toggleClass("sidebarfix", $(this).scrollTop() >=300) }).trigger("scroll") }); </script> |
Спасибо за понимание.Действительно проблема пр загрузке решена
|
Как можно приписать такой же триггер для перезагрузки внизу страницы ко второму коду для фиксации об подвал или совместить 2 кода вместе
<script type="text/javascript"> $(function(){ $(window).scroll(function() { $("#imSideBar").toggleClass("sidebarfix", $(this).scrollTop() >=300) }).trigger("scroll") }); </script> <script type="text/javascript"> $(function(){ $(window).scroll(function (){ scrollBottom = $(document).height() - $(window).scrollTop(); if (scrollBottom <= 590){ $('#imSideBar').removeClass('sidebarfix'); $('#imSideBar').addClass('sidebarbottom'); } else { $('#imSideBar').removeClass('sidebarbottom'); } }) }); </script> |
Так?
<script type="text/javascript"> $(function(){ $(window).scroll(function (){ scrollBottom = $(document).height() - $(window).scrollTop(); if (scrollBottom <= 590){ $('#imSideBar').removeClass('sidebarfix'); $('#imSideBar').addClass('sidebarbottom'); } else { $('#imSideBar').removeClass('sidebarbottom'); } }).trigger("scroll") }); </script> |
Цитата:
|
работает, но может 2 кода следует переписать в один?
|
Часовой пояс GMT +3, время: 01:50. |