Изменение размера шапки при прокрутке

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

Я тоже видел такие сайты и понимал что эти эффекты сделаны при помощи JavaScript, а так как я не слишком силен в данном языке программирования я не торопился в этом разобраться, но когда возникла безвыходная ситуация и пришлось все таки углубиться в этот вопрос все оказалось не так уж и страшно. В этой статье я хочу поделиться своим опытом, как при минимальном знание JavaScript создать эффект уменьшения header (хедера) при прокрутке окна браузера.

Первым делом напишем простенький HTML код для наших экспериментов:

  1. оформим его опять таки при помощи не сложного CSS
				
					.wrap {
height:1000px;
background:green;
}
.header {
height:50px;
background:blue;
position:fixed;
}
.header > a {
color: #ccc;
font-size:2em;
}
				
			
  1. Ну а теперь изюминка, JavaScript:
				
					$(window).scroll(function(){
if ($(window).scrollTop() > 400) {
$('.header').addClass('scroll');
}
else {
$('.header').removeClass('scroll')
}
});

				
			

Давайте разберемся подробнее, что мы делаем при помощи указанного выше скрипта: мы добавляем при скролле диву с классом .header дополнительный класс .scroll на который мы можем повесить любые стили CSS , например:

				
					.header .scroll a {
font-size:1em;
}
				
			

На этом все, дальше включайте фантазию и у вас все получиться.

В конце приведу код примера полностью:

				
					<html>
<head>

<meta charset="utf-8">

<title></title>

<style>
.wrap {
height:1000px;
background:green;
}
.header {
height:50px;
background:blue;
position:fixed;
}
.header > a {
color: #ccc;
font-size:2em;
}
.header.scroll a {
font-size:1em;
}
</style>

</head>

<body>
<script>

$(window).scroll(function(){
if ($(window).scrollTop() > 400) {
$('.header').addClass('scroll');
}
else {
$('.header').removeClass('scroll')
}
});

</script>

<div class='wrap'>
<div class='header'>
<a href='#'>link</a>
</div>
</div>
</body>
</html>
				
			
Свежие записи
Команда RD

Команда RD и RMDIR позволяют удалять как каталоги, так и

Web-Дизайн
help2site
Разделы документа в HTML 5.1

Это перевод статьи «Document Outlines in HTML 5.1», опубликованной на bitsofco.de. Оригинальную статью можно прочитать здесь. В стандарте HTML 5.1. есть определённое количество изменений, два из которых

Настройка
help2site
Как подключить компьютер к телевизору

Многие пользователи компьютера хотя бы раз задумывались о том, как подключить компьютер к телевизору — ведь кинофильмы и сериалы удобнее всего смотреть на удобном диване

Mac OS
help2site
Подключение к VPN-серверу из Mac OS X

В этой статье мы разберемся в процессе подключения к VPN-серверу для пользователей операционной системы Mac OS. Как настроить VPN-сервер на Windows server 2008 мы описывали в предыдущей статье 1. Откройте Finder, выберите пункт «Программы» и

Игры
help2site
Games Explorer — в помощь геймерам

Начиная с операционной системы Windows Vista присутствует такое полезное приложение, как «Обозреватель игр» (Games Explorer). Эта программная оболочка создана для управления играми, ( это касается не

Web-Дизайн
help2site
Расчёт расстояния при помощи API Карт Яндекс

При помощи приведенного ниже кода можно рассчитать расстояние от одной точки до другой. Код может иметь широкий спектр применения, на его базе можно разработать калькуляторы:

Web-Дизайн
help2site
Что такое IDE и зачем это нам нужно

К моменту прочтения этой статьи вы уже были должны установить и настроить Apache, установить и настроить PHP как модуль Apache и установить и настроить MySQL. «Пора бы уже и