Скроллинг страницы и плавающая боковая колонка

3790
8.4 из 10
Проголосовало: 9






На многих сайтах реализовано плавающее боковое меню. В сегодняшней статье я покажу, как это можно сделать. Причем плавать боковое меню будет лишь только при скроллинге страницы. Данный эффект можно реализовать, используя свойство css position со значением fixed, однако для лучшего эффекта воспользуемся возможностями jQuery.

HTML-разметка

Code
<header>
<!-- "шапка" сайта -->
</header>

<div id="wrap">

<div id="sidebar">
<!-- содержимое правой боковой колонки -->
</div>

<div id="container">
<!-- содержимое основного контейнера -->
</div>

</div> <!-- end wrap -->


CSS

Code
header {
  width: 100%;
  height: 100px;
  background: #d7d53f;
  }

#wrap {
  width: 600px;
  margin: 0 auto;
  }

#sidebar {
  float: left;
  width: 200px;
  background: #c2b3c6;
  margin-left: -220px;
  }


Ну а вот перед вами и сам скрипт. Вы можете добавить его к себе непосредственно в файл, вставив его между тегами script, или занесите его в ваш общий файл с javascript кодом, если таковой имеется. Все предельно просто и я думаю, вам не составит никакого труда, при желании, реализовать плавающий боковой блок на своем сайте.

Code
$(document).ready(function(){
  //ф-я offset возвращает координаты отн-но начала страницы  
var sidebartop = $('#sidebar').offset().top;  
   
$(window).scroll(function(){
   
  if( $(window).scrollTop() > sidebartop )  
  { // ф-я scrollTop() возвращает величину вертикального скроллинга
  $('#sidebar').css({position: 'fixed', top: '30px'});
  }
  else  
  {
  $('#sidebar').css({position: 'static'});
  }
  });

  })


всё!
Автор публикации: Загрузка
Загрузка
Вовчик, это его n материал
Источник: http://www.9zap.com/jquery/floating-jquery-sidebar
  • Всего комментариев: 4

Poma
0
Poma написал: Написано 21 Апреля 2014 в 09:56
Комментарий №4
зачем усложнять?

Админинстратор
0
Админинстратор написал: Написано 16 Января 2014 в 23:47
Комментарий №3
Конечно своровано но спасибо
Осталось разобраться как зделать чтоб он ширину нетрогал

BLAzER
0
BLAzER написал: Написано 24 Октября 2012 в 11:44
Комментарий №1
Бред, TRANE73 такое делал ток горизонтальное меню было.

Вовчик
0
Вовчик написал: Написано 30 Октября 2012 в 19:25
Комментарий №2
и что?

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 25
Скрипты и модификации для Ucoz 2118
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 431
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
  • Marishka написал:
  • Можете добавить свои input поля, но сохраняйте их порядок в html для правильного сохранения и вывода.
  • Marishka написал:
  • Новая версия 1.3 (+6 новых станций):
    Установка:
    Демо: Перейти
  • Marishka написал:
  • Доп 8 станций:
    Код
    <div class="mSt"><p>Tropical</p><div data="2/trop_64">64</div><br><div data="2/trop_128">128</div><br><div data="2/trop_320">320</div></div>  
      <div class="mSt"><p>Нафталин FM</p><div data="2/naft_64">64</div><br><div data="2/naft_128">128</div><br><div data="2/naft_320">320</div></div>  
      <div class="mSt"><p>Rave FM</p><div data="2/rave_64">64</div><br><div data="2/rave_128">128</div><br><div data="2/rave_320">320</div></div>  
      <div class="mSt"><p>Gold</p><div data="2/gold_64">64</div><br><div data="2/gold_128">128</div><br><div data="2/gold_320">320</div></div>  
      <div class="mSt"><p>GOA/PSY</p><div data="2/goa_64">64</div><br><div data="2/goa_128">128</div><br><div data="2/goa_320">320</div></div>  
      <div class="mSt"><p>Minimal/Tech</p><div data="2/mini_64">64</div><br><div data="2/mini_128">128</div><br><div data="2/mini_320">320</div></div>  
      <div class="mSt"><p>House</p><div data="2/fut_64">64</div><br><div data="2/fut_128">128</div><br><div data="2/fut_320">320</div></div>  
      <div class="mSt"><p>Megamix</p><div data="2/mix_64">64</div><br><div data="2/mix_128">128</div><br><div data="2/mix_320">320</div></div>


    Fix работы радио:
    Находим: if(radUrl=="tm" || radUrl=="ps" || radUrl=="teo" || radUrl=="dc")
    Меняем на: if (radUrl == "tm" || radUrl == "ps" || radUrl == "teo" || radUrl == "dc" || radUrl == "gop")
  • CbIPoK2513 написал:
  • Мой вариант выдаёт аватарку картинкой, а не текстом.
  • waak написал:
  • и ещё забыл добавить что использую модуль каталог сайтов
    Последние темы
    Опрос
    258
    А
    Р
    Что произойдёт: $("#...
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: