Прокрутка страницы к нужной области

Тема в разделе "JavaScript", создана пользователем senty, 27 фев 2012.

Модераторы: ZiX
  1. senty

    senty Постоялец

    Регистр.:
    23 дек 2009
    Сообщения:
    62
    Симпатии:
    1
    Уважаемые,

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

    Для вторых ищу решение:
    Скрипт, который прокручивает страницу к заданной области.
    Т.е. если пользователь переходит с главной страницы в какой-либо раздел, то слайдшоу остается высоко.
     
  2. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    плавная прокрутка на 900px за 1 сек (jquery)

    Код:
    if($(window).scrollTop()<900) $("body").animate({scrollTop:900},1*1000);
    Или можно анкорами обойтись

    Код:
    <a name="gallery"></a>
    page.php#gallery
     
  3. senty

    senty Постоялец

    Регистр.:
    23 дек 2009
    Сообщения:
    62
    Симпатии:
    1
    Код:
    <script language="javascript">
    if($(window).scrollTop()<900) $("body").animate({scrollTop:900},1*1000);
    </script>
    не работает, потому что я устанавливаю его не так, скажите, пожалуйста, как правильно.
     
  4. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    после <body>

    Код:
    <script type="text/javascript">
    if(typeof(jQuery)=='undefined') document.write('<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"><\/script>');
    </script>
    <script type="text/javascript">
    if($(window).scrollTop()<900) $("body").animate({scrollTop:900},1*1000);
    </script>
    ↓ если где-то ошибка, можно без jquery
    Код:
    window.onload=function(){ scroll(0,900); }
     
  5. senty

    senty Постоялец

    Регистр.:
    23 дек 2009
    Сообщения:
    62
    Симпатии:
    1
    Спасибо, работает (хотя, как иначе то) :)
    ps не работает только в Opera и FF -_-